. "${TEST_SCRIPTS_DIR}/unit.sh"
-define_test "3 nodes, all ok"
+define_test "3 nodes, no LVS, all ok"
-# This isn't very useful, since the stub for capabilities does set LVS :-)
required_result 0 <<EOF
EOF
--- /dev/null
+#!/bin/sh
+
+. "${TEST_SCRIPTS_DIR}/unit.sh"
+
+define_test "3 nodes, all LVS, all ok"
+
+required_result 0 <<EOF
+0:192.168.20.41
+1:192.168.20.42
+2:192.168.20.43
+EOF
+
+simple_test <<EOF
+NODEMAP
+0 192.168.20.41 0x0 CURRENT RECMASTER CTDB_CAP_LVS
+1 192.168.20.42 0x0 CTDB_CAP_LVS
+2 192.168.20.43 0x0 CTDB_CAP_LVS
+
+IFACES
+:Name:LinkStatus:References:
+:eth2:1:2:
+:eth1:1:4:
+
+VNNMAP
+654321
+0
+1
+2
+EOF
--- /dev/null
+#!/bin/sh
+
+. "${TEST_SCRIPTS_DIR}/unit.sh"
+
+define_test "3 nodes, some LVS, all ok"
+
+required_result 0 <<EOF
+0:192.168.20.41
+2:192.168.20.43
+EOF
+
+simple_test <<EOF
+NODEMAP
+0 192.168.20.41 0x0 CURRENT RECMASTER CTDB_CAP_LVS
+1 192.168.20.42 0x0
+2 192.168.20.43 0x0 CTDB_CAP_LVS
+
+IFACES
+:Name:LinkStatus:References:
+:eth2:1:2:
+:eth1:1:4:
+
+VNNMAP
+654321
+0
+1
+2
+EOF
. "${TEST_SCRIPTS_DIR}/unit.sh"
-define_test "3 nodes, all ok"
+define_test "3 nodes, no LVS, all ok"
-# This isn't very useful, since the stub for capabilities doesn't set LVS :-)
required_result 255 <<EOF
There is no LVS master
EOF
define_test "3 nodes, current disconnected"
-# This isn't very useful, since the stub for capabilities doesn't set LVS :-)
required_result 10 <<EOF
DATE TIME [PID]: Unable to get nodemap from local node
EOF
--- /dev/null
+#!/bin/sh
+
+. "${TEST_SCRIPTS_DIR}/unit.sh"
+
+define_test "3 nodes, all LVS, all ok"
+
+required_result 0 <<EOF
+Node 0 is LVS master
+EOF
+
+simple_test <<EOF
+NODEMAP
+0 192.168.20.41 0x0 CURRENT RECMASTER CTDB_CAP_LVS
+1 192.168.20.42 0x0 CTDB_CAP_LVS
+2 192.168.20.43 0x0 CTDB_CAP_LVS
+
+IFACES
+:Name:LinkStatus:References:
+:eth2:1:2:
+:eth1:1:4:
+
+VNNMAP
+654321
+0
+1
+2
+EOF
--- /dev/null
+#!/bin/sh
+
+. "${TEST_SCRIPTS_DIR}/unit.sh"
+
+define_test "3 nodes, all LVS, node 0 unhealthy"
+
+required_result 0 <<EOF
+Node 1 is LVS master
+EOF
+
+simple_test <<EOF
+NODEMAP
+0 192.168.20.41 0x2 CURRENT RECMASTER CTDB_CAP_LVS
+1 192.168.20.42 0x0 CTDB_CAP_LVS
+2 192.168.20.43 0x0 CTDB_CAP_LVS
+
+IFACES
+:Name:LinkStatus:References:
+:eth2:1:2:
+:eth1:1:4:
+
+VNNMAP
+654321
+0
+1
+2
+EOF
--- /dev/null
+#!/bin/sh
+
+. "${TEST_SCRIPTS_DIR}/unit.sh"
+
+define_test "3 nodes, all LVS, all unhealthy"
+
+required_result 0 <<EOF
+Node 0 is LVS master
+EOF
+
+simple_test <<EOF
+NODEMAP
+0 192.168.20.41 0x2 CURRENT RECMASTER CTDB_CAP_LVS
+1 192.168.20.42 0x2 CTDB_CAP_LVS
+2 192.168.20.43 0x2 CTDB_CAP_LVS
+
+IFACES
+:Name:LinkStatus:References:
+:eth2:1:2:
+:eth1:1:4:
+
+VNNMAP
+654321
+0
+1
+2
+EOF
--- /dev/null
+#!/bin/sh
+
+. "${TEST_SCRIPTS_DIR}/unit.sh"
+
+define_test "3 nodes, all LVS, nodes 0,1 disabled, node 2 unhealthy"
+
+required_result 0 <<EOF
+Node 2 is LVS master
+EOF
+
+simple_test <<EOF
+NODEMAP
+0 192.168.20.41 0x4 CURRENT RECMASTER CTDB_CAP_LVS
+1 192.168.20.42 0x4 CTDB_CAP_LVS
+2 192.168.20.43 0x2 CTDB_CAP_LVS
+
+IFACES
+:Name:LinkStatus:References:
+:eth2:1:2:
+:eth1:1:4:
+
+VNNMAP
+654321
+0
+1
+2
+EOF
--- /dev/null
+#!/bin/sh
+
+. "${TEST_SCRIPTS_DIR}/unit.sh"
+
+define_test "3 nodes, all LVS, all nodes disabled"
+
+required_result 255 <<EOF
+There is no LVS master
+EOF
+
+simple_test <<EOF
+NODEMAP
+0 192.168.20.41 0x4 CURRENT RECMASTER CTDB_CAP_LVS
+1 192.168.20.42 0x4 CTDB_CAP_LVS
+2 192.168.20.43 0x4 CTDB_CAP_LVS
+
+IFACES
+:Name:LinkStatus:References:
+:eth2:1:2:
+:eth1:1:4:
+
+VNNMAP
+654321
+0
+1
+2
+EOF