X-Git-Url: https://git.tokkee.org/?p=sysdb.git;a=blobdiff_plain;f=t%2Fintegration%2Fsimple_query.sh;h=86ac03fd80962dae080dc08c7425ee4319f172c3;hp=3be00655392eae11d377cf25acd0172d617dd480;hb=3f0db5bd32f136de9e7cfa8250f0c20469261241;hpb=d8077043c91f5a519f20afa97b5c8720ac703f21 diff --git a/t/integration/simple_query.sh b/t/integration/simple_query.sh index 3be0065..86ac03f 100755 --- a/t/integration/simple_query.sh +++ b/t/integration/simple_query.sh @@ -29,7 +29,7 @@ # Integration tests using simple queries. # -set -e +set -ex source "$( dirname "$0" )/test_lib.sh" @@ -39,12 +39,11 @@ PluginDir "$PLUGIN_DIR" Interval 2 LoadBackend mock_plugin - + EOF -run_sysdbd -D -C "$SYSDBD_CONF" & -sysdbd_pid=$! +run_sysdbd -D -C "$SYSDBD_CONF" wait_for_sysdbd sleep 3 @@ -54,6 +53,7 @@ output="$( run_sysdb -H "$SOCKET_FILE" -c INVALID )" && exit 1 echo "$output" | grep "Failed to parse query 'INVALID'" echo "$output" | grep "parse error: syntax error" +# Simple, successful commands. output="$( run_sysdb -H "$SOCKET_FILE" -c LIST )" echo "$output" \ | grep -F '"host1.example.com"' \ @@ -62,6 +62,14 @@ echo "$output" \ | grep -F '"other.host.name"' \ | grep -F '"some.host.name"' +output="$( echo 'LIST;' | run_sysdb -H "$SOCKET_FILE" )" || echo $? +echo "$output" \ + | grep -F '"host1.example.com"' \ + | grep -F '"host2.example.com"' \ + | grep -F '"localhost"' \ + | grep -F '"other.host.name"' \ + | grep -F '"some.host.name"' + output="$( run_sysdb -H "$SOCKET_FILE" -c "FETCH 'host1.example.com'" )" echo "$output" \ | grep -F '"host1.example.com"' \ @@ -72,13 +80,16 @@ echo "$output" | grep -F 'localhost' && exit 1 echo "$output" | grep -F 'other.host.name' && exit 1 echo "$output" | grep -F 'some.host.name' && exit 1 +(echo 'LIST;'; sleep 1; echo "FETCH 'host1.example.com'") \ + | run_sysdb -H "$SOCKET_FILE" + # When requesting information for unknown hosts, expect a non-zero exit code. output="$( run_sysdb -H "$SOCKET_FILE" -c "FETCH 'does.not.exist'" )" \ && exit 1 echo "$output" | grep -F 'not found' output="$( run_sysdb -H "$SOCKET_FILE" \ - -c "LOOKUP hosts WHERE attribute.architecture = 'x42'" )" + -c "LOOKUP hosts MATCHING attribute.architecture = 'x42'" )" echo "$output" \ | grep -F '"host1.example.com"' \ | grep -F '"host2.example.com"' @@ -87,7 +98,7 @@ echo "$output" | grep -F 'other.host.name' && exit 1 echo "$output" | grep -F 'some.host.name' && exit 1 output="$( run_sysdb -H "$SOCKET_FILE" \ - -c "LOOKUP hosts WHERE attribute.name != 'architecture'" )" + -c "LOOKUP hosts MATCHING attribute != 'architecture'" )" echo "$output" \ | grep -F '"some.host.name"' \ | grep -F '"localhost"' @@ -96,7 +107,22 @@ echo "$output" | grep -F 'host1.example.com' && exit 1 echo "$output" | grep -F 'host2.example.com' && exit 1 output="$( run_sysdb -H "$SOCKET_FILE" \ - -c "LOOKUP hosts WHERE service.name = 'sysdbd'" )" + -c "LOOKUP hosts MATCHING attribute != 'architecture' + FILTER :age >= 0s" )" +echo "$output" \ + | grep -F '"some.host.name"' \ + | grep -F '"localhost"' +echo "$output" | grep -F 'other.host.name' && exit 1 +echo "$output" | grep -F 'host1.example.com' && exit 1 +echo "$output" | grep -F 'host2.example.com' && exit 1 + +output="$( run_sysdb -H "$SOCKET_FILE" \ + -c "LOOKUP hosts MATCHING attribute != 'architecture' + FILTER :last_update < 2Y" )" +echo $output | grep -E '^\[\]$' + +output="$( run_sysdb -H "$SOCKET_FILE" \ + -c "LOOKUP hosts MATCHING service = 'sysdbd'" )" echo "$output" | grep -F '"localhost"' echo "$output" | grep -F 'some.host.name' && exit 1 echo "$output" | grep -F 'other.host.name' && exit 1 @@ -104,7 +130,7 @@ echo "$output" | grep -F 'host1.example.com' && exit 1 echo "$output" | grep -F 'host2.example.com' && exit 1 output="$( run_sysdb -H "$SOCKET_FILE" \ - -c "LOOKUP hosts WHERE host.name =~ 'example.com'" )" + -c "LOOKUP hosts MATCHING host =~ 'example.com'" )" echo "$output" \ | grep -F '"host1.example.com"' \ | grep -F '"host2.example.com"' @@ -114,9 +140,8 @@ echo "$output" | grep -F 'localhost' && exit 1 # When querying hosts that don't exist, expect a zero exit code. output="$( run_sysdb -H "$SOCKET_FILE" \ - -c "LOOKUP hosts WHERE attribute.invalid = 'none'" )" + -c "LOOKUP hosts MATCHING attribute.invalid = 'none'" )" echo $output | grep -E '^\[\]$' -kill $sysdbd_pid -wait $sysdbd_pid +stop_sysdbd