X-Git-Url: https://www.tinc-vpn.org/git/browse?a=blobdiff_plain;f=test%2Fvariables.test;h=897059dec0cfc22d618684146916803e94027bea;hb=df687b5ca86b93e0801db54ba4bca0f81ff02548;hp=d4c606fe6eba49de421b1424241877d23376871b;hpb=046a10d692d1ac22de4daf783ee4fe025c4eb6ec;p=tinc diff --git a/test/variables.test b/test/variables.test index d4c606fe..897059de 100755 --- a/test/variables.test +++ b/test/variables.test @@ -1,7 +1,6 @@ #!/bin/sh -# shellcheck source=testlib.sh -. "${0%/*}/testlib.sh" +. ./testlib.sh echo [STEP] Initialize one node @@ -23,7 +22,7 @@ test "$(tinc foo get Mode)" = "Switch" echo [STEP] Test deletion -must_fail tinc foo del Mode hub +expect_code "$EXIT_FAILURE" tinc foo del Mode hub tinc foo del Mode switch test -z "$(tinc foo get Mode)" @@ -35,17 +34,17 @@ test "$(tinc foo get Mode)" = "hub" echo [STEP] Test addition/deletion of multivalued variables -tinc foo add Subnet 1 -tinc foo add Subnet 2 -tinc foo add Subnet 2 -tinc foo add Subnet 3 -test "$(tinc foo get Subnet | rm_cr)" = "1 -2 -3" +tinc foo add Subnet 1.1.1.1 +tinc foo add Subnet 2.2.2.2 +tinc foo add Subnet 2.2.2.2 +tinc foo add Subnet 3.3.3.3 +test "$(tinc foo get Subnet | rm_cr)" = "1.1.1.1 +2.2.2.2 +3.3.3.3" -tinc foo del Subnet 2 -test "$(tinc foo get Subnet | rm_cr)" = "1 -3" +tinc foo del Subnet 2.2.2.2 +test "$(tinc foo get Subnet | rm_cr)" = "1.1.1.1 +3.3.3.3" tinc foo del Subnet test -z "$(tinc foo get Subnet)" @@ -53,7 +52,7 @@ test -z "$(tinc foo get Subnet)" echo [STEP] We should not be able to get/set server variables using node.variable syntax test -z "$(tinc foo get foo.Name)" -must_fail tinc foo set foo.Name bar +expect_code "$EXIT_FAILURE" tinc foo set foo.Name bar echo [STEP] Test getting/setting host variables for other nodes @@ -63,17 +62,17 @@ tinc foo add bar.PMTU 1 tinc foo add bar.PMTU 2 test "$(tinc foo get bar.PMTU)" = "2" -tinc foo add bar.Subnet 1 -tinc foo add bar.Subnet 2 -tinc foo add bar.Subnet 2 -tinc foo add bar.Subnet 3 -test "$(tinc foo get bar.Subnet | rm_cr)" = "1 -2 -3" +tinc foo add bar.Subnet 1.1.1.1 +tinc foo add bar.Subnet 2.2.2.2 +tinc foo add bar.Subnet 2.2.2.2 +tinc foo add bar.Subnet 3.3.3.3 +test "$(tinc foo get bar.Subnet | rm_cr)" = "1.1.1.1 +2.2.2.2 +3.3.3.3" -tinc foo del bar.Subnet 2 -test "$(tinc foo get bar.Subnet | rm_cr)" = "1 -3" +tinc foo del bar.Subnet 2.2.2.2 +test "$(tinc foo get bar.Subnet | rm_cr)" = "1.1.1.1 +3.3.3.3" tinc foo del bar.Subnet test -z "$(tinc foo get bar.Subnet)" @@ -81,13 +80,32 @@ test -z "$(tinc foo get bar.Subnet)" echo [STEP] We should not be able to get/set for nodes with invalid names touch "$DIR_FOO/hosts/qu-ux" -must_fail tinc foo set qu-ux.Subnet 1 +expect_code "$EXIT_FAILURE" tinc foo set qu-ux.Subnet 1.1.1.1 echo [STEP] We should not be able to set obsolete variables unless forced -must_fail tinc foo set PrivateKey 12345 +expect_code "$EXIT_FAILURE" tinc foo set PrivateKey 12345 tinc foo --force set PrivateKey 12345 test "$(tinc foo get PrivateKey)" = "12345" tinc foo del PrivateKey test -z "$(tinc foo get PrivateKey)" + +echo [STEP] We should not be able to set/add malformed Subnets + +expect_code "$EXIT_FAILURE" tinc foo add Subnet 1.1.1 +expect_code "$EXIT_FAILURE" tinc foo add Subnet 1:2:3:4:5: +expect_code "$EXIT_FAILURE" tinc foo add Subnet 1:2:3:4:5:::6 +expect_code "$EXIT_FAILURE" tinc foo add Subnet 1:2:3:4:5:6:7:8:9 +expect_code "$EXIT_FAILURE" tinc foo add Subnet 256.256.256.256 +expect_code "$EXIT_FAILURE" tinc foo add Subnet 1:2:3:4:5:6:7:8.123 +expect_code "$EXIT_FAILURE" tinc foo add Subnet 1:2:3:4:5:6:7:1.2.3.4 +expect_code "$EXIT_FAILURE" tinc foo add Subnet a:b:c:d:e:f:g:h +expect_code "$EXIT_FAILURE" tinc foo add Subnet 1.1.1.1/0 +expect_code "$EXIT_FAILURE" tinc foo add Subnet 1.1.1.1/-1 +expect_code "$EXIT_FAILURE" tinc foo add Subnet 1.1.1.1/33 +expect_code "$EXIT_FAILURE" tinc foo add Subnet 1::/0 +expect_code "$EXIT_FAILURE" tinc foo add Subnet 1::/-1 +expect_code "$EXIT_FAILURE" tinc foo add Subnet 1::/129 +expect_code "$EXIT_FAILURE" tinc foo add Subnet :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: +test -z "$(tinc foo get Subnet)"