|
@@ -32,23 +32,23 @@ api() {
|
|
@test "cli - first decisions list: must be empty" {
|
|
@test "cli - first decisions list: must be empty" {
|
|
# delete community pull
|
|
# delete community pull
|
|
run -0 cscli decisions delete --all
|
|
run -0 cscli decisions delete --all
|
|
- run -0 cscli decisions list -o json
|
|
|
|
|
|
+ run -0 --separate-stderr cscli decisions list -o json
|
|
assert_output 'null'
|
|
assert_output 'null'
|
|
}
|
|
}
|
|
|
|
|
|
@test "adding decision for range aaaa:2222:3333:4444::/64" {
|
|
@test "adding decision for range aaaa:2222:3333:4444::/64" {
|
|
- run -0 cscli decisions add -r 'aaaa:2222:3333:4444::/64'
|
|
|
|
- assert_output --partial 'Decision successfully added'
|
|
|
|
|
|
+ run -0 --separate-stderr cscli decisions add -r 'aaaa:2222:3333:4444::/64'
|
|
|
|
+ assert_stderr --partial 'Decision successfully added'
|
|
}
|
|
}
|
|
|
|
|
|
@test "CLI - all decisions (2)" {
|
|
@test "CLI - all decisions (2)" {
|
|
- run -0 cscli decisions list -o json
|
|
|
|
|
|
+ run -0 --separate-stderr cscli decisions list -o json
|
|
run -0 jq -r '.[].decisions[0].value' <(output)
|
|
run -0 jq -r '.[].decisions[0].value' <(output)
|
|
assert_output 'aaaa:2222:3333:4444::/64'
|
|
assert_output 'aaaa:2222:3333:4444::/64'
|
|
}
|
|
}
|
|
|
|
|
|
@test "API - all decisions (2)" {
|
|
@test "API - all decisions (2)" {
|
|
- run -0 api '/v1/decisions'
|
|
|
|
|
|
+ run -0 --separate-stderr api '/v1/decisions'
|
|
run -0 jq -r '.[].value' <(output)
|
|
run -0 jq -r '.[].value' <(output)
|
|
assert_output 'aaaa:2222:3333:4444::/64'
|
|
assert_output 'aaaa:2222:3333:4444::/64'
|
|
}
|
|
}
|
|
@@ -56,162 +56,162 @@ api() {
|
|
# check ip within/out of range
|
|
# check ip within/out of range
|
|
|
|
|
|
@test "CLI - decisions for ip aaaa:2222:3333:4444:5555:6666:7777:8888" {
|
|
@test "CLI - decisions for ip aaaa:2222:3333:4444:5555:6666:7777:8888" {
|
|
- run -0 cscli decisions list -i 'aaaa:2222:3333:4444:5555:6666:7777:8888' -o json
|
|
|
|
|
|
+ run -0 --separate-stderr cscli decisions list -i 'aaaa:2222:3333:4444:5555:6666:7777:8888' -o json
|
|
run -0 jq -r '.[].decisions[0].value' <(output)
|
|
run -0 jq -r '.[].decisions[0].value' <(output)
|
|
assert_output 'aaaa:2222:3333:4444::/64'
|
|
assert_output 'aaaa:2222:3333:4444::/64'
|
|
}
|
|
}
|
|
|
|
|
|
@test "API - decisions for ip aaaa:2222:3333:4444:5555:6666:7777:8888" {
|
|
@test "API - decisions for ip aaaa:2222:3333:4444:5555:6666:7777:8888" {
|
|
- run -0 api '/v1/decisions?ip=aaaa:2222:3333:4444:5555:6666:7777:8888'
|
|
|
|
|
|
+ run -0 --separate-stderr api '/v1/decisions?ip=aaaa:2222:3333:4444:5555:6666:7777:8888'
|
|
run -0 jq -r '.[].value' <(output)
|
|
run -0 jq -r '.[].value' <(output)
|
|
assert_output 'aaaa:2222:3333:4444::/64'
|
|
assert_output 'aaaa:2222:3333:4444::/64'
|
|
}
|
|
}
|
|
|
|
|
|
@test "CLI - decisions for ip aaaa:2222:3333:4445:5555:6666:7777:8888" {
|
|
@test "CLI - decisions for ip aaaa:2222:3333:4445:5555:6666:7777:8888" {
|
|
- run -0 cscli decisions list -i 'aaaa:2222:3333:4445:5555:6666:7777:8888' -o json
|
|
|
|
|
|
+ run -0 --separate-stderr cscli decisions list -i 'aaaa:2222:3333:4445:5555:6666:7777:8888' -o json
|
|
assert_output 'null'
|
|
assert_output 'null'
|
|
}
|
|
}
|
|
|
|
|
|
@test "API - decisions for ip aaaa:2222:3333:4445:5555:6666:7777:8888" {
|
|
@test "API - decisions for ip aaaa:2222:3333:4445:5555:6666:7777:8888" {
|
|
- run -0 api '/v1/decisions?ip=aaaa:2222:3333:4445:5555:6666:7777:8888'
|
|
|
|
|
|
+ run -0 --separate-stderr api '/v1/decisions?ip=aaaa:2222:3333:4445:5555:6666:7777:8888'
|
|
assert_output 'null'
|
|
assert_output 'null'
|
|
}
|
|
}
|
|
|
|
|
|
@test "CLI - decisions for ip aaa1:2222:3333:4444:5555:6666:7777:8887" {
|
|
@test "CLI - decisions for ip aaa1:2222:3333:4444:5555:6666:7777:8887" {
|
|
- run -0 cscli decisions list -i 'aaa1:2222:3333:4444:5555:6666:7777:8887' -o json
|
|
|
|
|
|
+ run -0 --separate-stderr cscli decisions list -i 'aaa1:2222:3333:4444:5555:6666:7777:8887' -o json
|
|
assert_output 'null'
|
|
assert_output 'null'
|
|
}
|
|
}
|
|
|
|
|
|
@test "API - decisions for ip aaa1:2222:3333:4444:5555:6666:7777:8887" {
|
|
@test "API - decisions for ip aaa1:2222:3333:4444:5555:6666:7777:8887" {
|
|
- run -0 api '/v1/decisions?ip=aaa1:2222:3333:4444:5555:6666:7777:8887'
|
|
|
|
|
|
+ run -0 --separate-stderr api '/v1/decisions?ip=aaa1:2222:3333:4444:5555:6666:7777:8887'
|
|
assert_output 'null'
|
|
assert_output 'null'
|
|
}
|
|
}
|
|
|
|
|
|
# check subrange within/out of range
|
|
# check subrange within/out of range
|
|
|
|
|
|
@test "CLI - decisions for range aaaa:2222:3333:4444:5555::/80" {
|
|
@test "CLI - decisions for range aaaa:2222:3333:4444:5555::/80" {
|
|
- run -0 cscli decisions list -r 'aaaa:2222:3333:4444:5555::/80' -o json
|
|
|
|
|
|
+ run -0 --separate-stderr cscli decisions list -r 'aaaa:2222:3333:4444:5555::/80' -o json
|
|
run -0 jq -r '.[].decisions[0].value' <(output)
|
|
run -0 jq -r '.[].decisions[0].value' <(output)
|
|
assert_output 'aaaa:2222:3333:4444::/64'
|
|
assert_output 'aaaa:2222:3333:4444::/64'
|
|
}
|
|
}
|
|
|
|
|
|
@test "API - decisions for range aaaa:2222:3333:4444:5555::/80" {
|
|
@test "API - decisions for range aaaa:2222:3333:4444:5555::/80" {
|
|
- run -0 api '/v1/decisions?range=aaaa:2222:3333:4444:5555::/80'
|
|
|
|
|
|
+ run -0 --separate-stderr api '/v1/decisions?range=aaaa:2222:3333:4444:5555::/80'
|
|
run -0 jq -r '.[].value' <(output)
|
|
run -0 jq -r '.[].value' <(output)
|
|
assert_output 'aaaa:2222:3333:4444::/64'
|
|
assert_output 'aaaa:2222:3333:4444::/64'
|
|
}
|
|
}
|
|
|
|
|
|
@test "CLI - decisions for range aaaa:2222:3333:4441:5555::/80" {
|
|
@test "CLI - decisions for range aaaa:2222:3333:4441:5555::/80" {
|
|
- run -0 cscli decisions list -r 'aaaa:2222:3333:4441:5555::/80' -o json
|
|
|
|
|
|
+ run -0 --separate-stderr cscli decisions list -r 'aaaa:2222:3333:4441:5555::/80' -o json
|
|
assert_output 'null'
|
|
assert_output 'null'
|
|
|
|
|
|
}
|
|
}
|
|
|
|
|
|
@test "API - decisions for range aaaa:2222:3333:4441:5555::/80" {
|
|
@test "API - decisions for range aaaa:2222:3333:4441:5555::/80" {
|
|
- run -0 api '/v1/decisions?range=aaaa:2222:3333:4441:5555::/80'
|
|
|
|
|
|
+ run -0 --separate-stderr api '/v1/decisions?range=aaaa:2222:3333:4441:5555::/80'
|
|
assert_output 'null'
|
|
assert_output 'null'
|
|
}
|
|
}
|
|
|
|
|
|
@test "CLI - decisions for range aaa1:2222:3333:4444:5555::/80" {
|
|
@test "CLI - decisions for range aaa1:2222:3333:4444:5555::/80" {
|
|
- run -0 cscli decisions list -r 'aaa1:2222:3333:4444:5555::/80' -o json
|
|
|
|
|
|
+ run -0 --separate-stderr cscli decisions list -r 'aaa1:2222:3333:4444:5555::/80' -o json
|
|
assert_output 'null'
|
|
assert_output 'null'
|
|
}
|
|
}
|
|
|
|
|
|
@test "API - decisions for range aaa1:2222:3333:4444:5555::/80" {
|
|
@test "API - decisions for range aaa1:2222:3333:4444:5555::/80" {
|
|
- run -0 api '/v1/decisions?range=aaa1:2222:3333:4444:5555::/80'
|
|
|
|
|
|
+ run -0 --separate-stderr api '/v1/decisions?range=aaa1:2222:3333:4444:5555::/80'
|
|
assert_output 'null'
|
|
assert_output 'null'
|
|
}
|
|
}
|
|
|
|
|
|
# check outer range
|
|
# check outer range
|
|
|
|
|
|
@test "CLI - decisions for range aaaa:2222:3333:4444:5555:6666:7777:8888/48" {
|
|
@test "CLI - decisions for range aaaa:2222:3333:4444:5555:6666:7777:8888/48" {
|
|
- run -0 cscli decisions list -r 'aaaa:2222:3333:4444:5555:6666:7777:8888/48' -o json
|
|
|
|
|
|
+ run -0 --separate-stderr cscli decisions list -r 'aaaa:2222:3333:4444:5555:6666:7777:8888/48' -o json
|
|
assert_output 'null'
|
|
assert_output 'null'
|
|
}
|
|
}
|
|
|
|
|
|
@test "API - decisions for range aaaa:2222:3333:4444:5555:6666:7777:8888/48" {
|
|
@test "API - decisions for range aaaa:2222:3333:4444:5555:6666:7777:8888/48" {
|
|
- run -0 api '/v1/decisions?range=aaaa:2222:3333:4444:5555:6666:7777:8888/48'
|
|
|
|
|
|
+ run -0 --separate-stderr api '/v1/decisions?range=aaaa:2222:3333:4444:5555:6666:7777:8888/48'
|
|
assert_output 'null'
|
|
assert_output 'null'
|
|
}
|
|
}
|
|
|
|
|
|
@test "CLI - decisions for ip/range in aaaa:2222:3333:4444:5555:6666:7777:8888/48" {
|
|
@test "CLI - decisions for ip/range in aaaa:2222:3333:4444:5555:6666:7777:8888/48" {
|
|
- run -0 cscli decisions list -r 'aaaa:2222:3333:4444:5555:6666:7777:8888/48' -o json --contained
|
|
|
|
|
|
+ run -0 --separate-stderr cscli decisions list -r 'aaaa:2222:3333:4444:5555:6666:7777:8888/48' -o json --contained
|
|
run -0 jq -r '.[].decisions[0].value' <(output)
|
|
run -0 jq -r '.[].decisions[0].value' <(output)
|
|
assert_output 'aaaa:2222:3333:4444::/64'
|
|
assert_output 'aaaa:2222:3333:4444::/64'
|
|
}
|
|
}
|
|
|
|
|
|
@test "API - decisions for ip/range in aaaa:2222:3333:4444:5555:6666:7777:8888/48" {
|
|
@test "API - decisions for ip/range in aaaa:2222:3333:4444:5555:6666:7777:8888/48" {
|
|
- run -0 api '/v1/decisions?range=aaaa:2222:3333:4444:5555:6666:7777:8888/48&contains=false'
|
|
|
|
|
|
+ run -0 --separate-stderr api '/v1/decisions?range=aaaa:2222:3333:4444:5555:6666:7777:8888/48&contains=false'
|
|
run -0 jq -r '.[].value' <(output)
|
|
run -0 jq -r '.[].value' <(output)
|
|
assert_output 'aaaa:2222:3333:4444::/64'
|
|
assert_output 'aaaa:2222:3333:4444::/64'
|
|
}
|
|
}
|
|
|
|
|
|
@test "CLI - decisions for ip/range in aaaa:2222:3333:4445:5555:6666:7777:8888/48" {
|
|
@test "CLI - decisions for ip/range in aaaa:2222:3333:4445:5555:6666:7777:8888/48" {
|
|
- run -0 cscli decisions list -r 'aaaa:2222:3333:4445:5555:6666:7777:8888/48' -o json
|
|
|
|
|
|
+ run -0 --separate-stderr cscli decisions list -r 'aaaa:2222:3333:4445:5555:6666:7777:8888/48' -o json
|
|
assert_output 'null'
|
|
assert_output 'null'
|
|
}
|
|
}
|
|
|
|
|
|
@test "API - decisions for ip/range in aaaa:2222:3333:4445:5555:6666:7777:8888/48" {
|
|
@test "API - decisions for ip/range in aaaa:2222:3333:4445:5555:6666:7777:8888/48" {
|
|
- run -0 api '/v1/decisions?range=aaaa:2222:3333:4445:5555:6666:7777:8888/48'
|
|
|
|
|
|
+ run -0 --separate-stderr api '/v1/decisions?range=aaaa:2222:3333:4445:5555:6666:7777:8888/48'
|
|
assert_output 'null'
|
|
assert_output 'null'
|
|
}
|
|
}
|
|
|
|
|
|
# bbbb:db8:: -> bbbb:db8:0000:0000:0000:7fff:ffff:ffff
|
|
# bbbb:db8:: -> bbbb:db8:0000:0000:0000:7fff:ffff:ffff
|
|
|
|
|
|
@test "adding decision for range bbbb:db8::/81" {
|
|
@test "adding decision for range bbbb:db8::/81" {
|
|
- run -0 cscli decisions add -r 'bbbb:db8::/81'
|
|
|
|
- assert_output --partial 'Decision successfully added'
|
|
|
|
|
|
+ run -0 --separate-stderr cscli decisions add -r 'bbbb:db8::/81'
|
|
|
|
+ assert_stderr --partial 'Decision successfully added'
|
|
}
|
|
}
|
|
|
|
|
|
@test "CLI - decisions for ip bbbb:db8:0000:0000:0000:6fff:ffff:ffff" {
|
|
@test "CLI - decisions for ip bbbb:db8:0000:0000:0000:6fff:ffff:ffff" {
|
|
- run -0 cscli decisions list -o json -i 'bbbb:db8:0000:0000:0000:6fff:ffff:ffff'
|
|
|
|
|
|
+ run -0 --separate-stderr cscli decisions list -o json -i 'bbbb:db8:0000:0000:0000:6fff:ffff:ffff'
|
|
run -0 jq -r '.[].decisions[0].value' <(output)
|
|
run -0 jq -r '.[].decisions[0].value' <(output)
|
|
assert_output 'bbbb:db8::/81'
|
|
assert_output 'bbbb:db8::/81'
|
|
}
|
|
}
|
|
|
|
|
|
@test "API - decisions for ip in bbbb:db8:0000:0000:0000:6fff:ffff:ffff" {
|
|
@test "API - decisions for ip in bbbb:db8:0000:0000:0000:6fff:ffff:ffff" {
|
|
- run -0 api '/v1/decisions?ip=bbbb:db8:0000:0000:0000:6fff:ffff:ffff'
|
|
|
|
|
|
+ run -0 --separate-stderr api '/v1/decisions?ip=bbbb:db8:0000:0000:0000:6fff:ffff:ffff'
|
|
run -0 jq -r '.[].value' <(output)
|
|
run -0 jq -r '.[].value' <(output)
|
|
assert_output 'bbbb:db8::/81'
|
|
assert_output 'bbbb:db8::/81'
|
|
}
|
|
}
|
|
|
|
|
|
@test "CLI - decisions for ip bbbb:db8:0000:0000:0000:8fff:ffff:ffff" {
|
|
@test "CLI - decisions for ip bbbb:db8:0000:0000:0000:8fff:ffff:ffff" {
|
|
- run -0 cscli decisions list -o json -i 'bbbb:db8:0000:0000:0000:8fff:ffff:ffff'
|
|
|
|
|
|
+ run -0 --separate-stderr cscli decisions list -o json -i 'bbbb:db8:0000:0000:0000:8fff:ffff:ffff'
|
|
assert_output 'null'
|
|
assert_output 'null'
|
|
}
|
|
}
|
|
|
|
|
|
@test "API - decisions for ip in bbbb:db8:0000:0000:0000:8fff:ffff:ffff" {
|
|
@test "API - decisions for ip in bbbb:db8:0000:0000:0000:8fff:ffff:ffff" {
|
|
- run -0 api '/v1/decisions?ip=bbbb:db8:0000:0000:0000:8fff:ffff:ffff'
|
|
|
|
|
|
+ run -0 --separate-stderr api '/v1/decisions?ip=bbbb:db8:0000:0000:0000:8fff:ffff:ffff'
|
|
assert_output 'null'
|
|
assert_output 'null'
|
|
}
|
|
}
|
|
|
|
|
|
@test "deleting decision for range aaaa:2222:3333:4444:5555:6666:7777:8888/48" {
|
|
@test "deleting decision for range aaaa:2222:3333:4444:5555:6666:7777:8888/48" {
|
|
- run -0 cscli decisions delete -r 'aaaa:2222:3333:4444:5555:6666:7777:8888/48' --contained
|
|
|
|
- assert_output --partial '1 decision(s) deleted'
|
|
|
|
|
|
+ run -0 --separate-stderr cscli decisions delete -r 'aaaa:2222:3333:4444:5555:6666:7777:8888/48' --contained
|
|
|
|
+ assert_stderr --partial '1 decision(s) deleted'
|
|
}
|
|
}
|
|
|
|
|
|
@test "CLI - decisions for range aaaa:2222:3333:4444::/64 after delete" {
|
|
@test "CLI - decisions for range aaaa:2222:3333:4444::/64 after delete" {
|
|
- run -0 cscli decisions list -o json -r 'aaaa:2222:3333:4444::/64'
|
|
|
|
|
|
+ run -0 --separate-stderr cscli decisions list -o json -r 'aaaa:2222:3333:4444::/64'
|
|
assert_output 'null'
|
|
assert_output 'null'
|
|
}
|
|
}
|
|
|
|
|
|
@test "adding decision for ip bbbb:db8:0000:0000:0000:8fff:ffff:ffff" {
|
|
@test "adding decision for ip bbbb:db8:0000:0000:0000:8fff:ffff:ffff" {
|
|
- run -0 cscli decisions add -i 'bbbb:db8:0000:0000:0000:8fff:ffff:ffff'
|
|
|
|
- assert_output --partial 'Decision successfully added'
|
|
|
|
|
|
+ run -0 --separate-stderr cscli decisions add -i 'bbbb:db8:0000:0000:0000:8fff:ffff:ffff'
|
|
|
|
+ assert_stderr --partial 'Decision successfully added'
|
|
}
|
|
}
|
|
|
|
|
|
@test "adding decision for ip bbbb:db8:0000:0000:0000:6fff:ffff:ffff" {
|
|
@test "adding decision for ip bbbb:db8:0000:0000:0000:6fff:ffff:ffff" {
|
|
- run -0 cscli decisions add -i 'bbbb:db8:0000:0000:0000:6fff:ffff:ffff'
|
|
|
|
- assert_output --partial 'Decision successfully added'
|
|
|
|
|
|
+ run -0 --separate-stderr cscli decisions add -i 'bbbb:db8:0000:0000:0000:6fff:ffff:ffff'
|
|
|
|
+ assert_stderr --partial 'Decision successfully added'
|
|
}
|
|
}
|
|
|
|
|
|
@test "deleting decisions for range bbbb:db8::/81" {
|
|
@test "deleting decisions for range bbbb:db8::/81" {
|
|
- run -0 cscli decisions delete -r 'bbbb:db8::/81' --contained
|
|
|
|
- assert_output --partial '2 decision(s) deleted'
|
|
|
|
|
|
+ run -0 --separate-stderr cscli decisions delete -r 'bbbb:db8::/81' --contained
|
|
|
|
+ assert_stderr --partial '2 decision(s) deleted'
|
|
}
|
|
}
|
|
|
|
|
|
@test "CLI - all decisions (3)" {
|
|
@test "CLI - all decisions (3)" {
|
|
- run -0 cscli decisions list -o json
|
|
|
|
|
|
+ run -0 --separate-stderr cscli decisions list -o json
|
|
run -0 jq -r '.[].decisions[0].value' <(output)
|
|
run -0 jq -r '.[].decisions[0].value' <(output)
|
|
assert_output 'bbbb:db8:0000:0000:0000:8fff:ffff:ffff'
|
|
assert_output 'bbbb:db8:0000:0000:0000:8fff:ffff:ffff'
|
|
}
|
|
}
|