--- /dev/null
+#!/bin/sh
+
+. "${TEST_SCRIPTS_DIR}/unit.sh"
+
+define_test "3 nodes, 1st node changes IP address"
+
+setup_nodes <<EOF
+192.168.20.51
+192.168.20.42
+192.168.20.43
+EOF
+
+setup_ctdbd <<EOF
+NODEMAP
+0 192.168.20.41 0x0 CURRENT RECMASTER
+1 192.168.20.42 0x0
+2 192.168.20.43 0x0
+EOF
+
+required_result 1 <<EOF
+Node 0 has changed IP address (was 192.168.20.41, now 192.168.20.51)
+ERROR: Nodes will not be reloaded due to previous error
+EOF
+
+simple_test
--- /dev/null
+#!/bin/sh
+
+. "${TEST_SCRIPTS_DIR}/unit.sh"
+
+define_test "3 nodes, 2nd node changes IP address"
+
+setup_nodes <<EOF
+192.168.20.41
+192.168.20.52
+192.168.20.43
+EOF
+
+setup_ctdbd <<EOF
+NODEMAP
+0 192.168.20.41 0x0 CURRENT RECMASTER
+1 192.168.20.42 0x0
+2 192.168.20.43 0x0
+EOF
+
+required_result 1 <<EOF
+Node 1 has changed IP address (was 192.168.20.42, now 192.168.20.52)
+ERROR: Nodes will not be reloaded due to previous error
+EOF
+
+simple_test
--- /dev/null
+#!/bin/sh
+
+. "${TEST_SCRIPTS_DIR}/unit.sh"
+
+define_test "3 nodes, 3rd node changes IP address"
+
+setup_nodes <<EOF
+192.168.20.41
+192.168.20.42
+192.168.20.53
+EOF
+
+setup_ctdbd <<EOF
+NODEMAP
+0 192.168.20.41 0x0 CURRENT RECMASTER
+1 192.168.20.42 0x0
+2 192.168.20.43 0x0
+EOF
+
+required_result 1 <<EOF
+Node 2 has changed IP address (was 192.168.20.43, now 192.168.20.53)
+ERROR: Nodes will not be reloaded due to previous error
+EOF
+
+simple_test
--- /dev/null
+#!/bin/sh
+
+. "${TEST_SCRIPTS_DIR}/unit.sh"
+
+define_test "3 nodes, all nodes change IP address"
+
+setup_nodes <<EOF
+192.168.20.51
+192.168.20.52
+192.168.20.53
+EOF
+
+setup_ctdbd <<EOF
+NODEMAP
+0 192.168.20.41 0x0 CURRENT RECMASTER
+1 192.168.20.42 0x0
+2 192.168.20.43 0x0
+EOF
+
+required_result 1 <<EOF
+Node 0 has changed IP address (was 192.168.20.41, now 192.168.20.51)
+Node 1 has changed IP address (was 192.168.20.42, now 192.168.20.52)
+Node 2 has changed IP address (was 192.168.20.43, now 192.168.20.53)
+ERROR: Nodes will not be reloaded due to previous error
+EOF
+
+simple_test
--- /dev/null
+#!/bin/sh
+
+. "${TEST_SCRIPTS_DIR}/unit.sh"
+
+define_test "3 nodes, list reversed nodes change IP address"
+
+setup_nodes <<EOF
+192.168.20.43
+192.168.20.42
+192.168.20.41
+EOF
+
+setup_ctdbd <<EOF
+NODEMAP
+0 192.168.20.41 0x0 CURRENT RECMASTER
+1 192.168.20.42 0x0
+2 192.168.20.43 0x0
+EOF
+
+required_result 1 <<EOF
+Node 0 has changed IP address (was 192.168.20.41, now 192.168.20.43)
+Node 2 has changed IP address (was 192.168.20.43, now 192.168.20.41)
+ERROR: Nodes will not be reloaded due to previous error
+EOF
+
+simple_test
--- /dev/null
+#!/bin/sh
+
+. "${TEST_SCRIPTS_DIR}/unit.sh"
+
+define_test "3 nodes, comment at beginning, deleted node, nodes move"
+
+setup_nodes <<EOF
+# Adding a comment!
+192.168.20.41
+192.168.20.42
+192.168.20.43
+EOF
+
+setup_ctdbd <<EOF
+NODEMAP
+0 192.168.20.41 0x0 CURRENT RECMASTER
+1 192.168.20.42 0x0
+2 192.168.20.43 0x0
+EOF
+
+required_result 1 <<EOF
+Node 0 is DELETED
+ERROR: Node 0 is still connected
+Node 1 has changed IP address (was 192.168.20.42, now 192.168.20.41)
+Node 2 has changed IP address (was 192.168.20.43, now 192.168.20.42)
+ERROR: Nodes will not be reloaded due to previous error
+EOF
+
+simple_test