X-Git-Url: https://git.tokkee.org/?p=sysdb.git;a=blobdiff_plain;f=t%2Fintegration%2Fquery_timeseries.sh;fp=t%2Fintegration%2Fquery_timeseries.sh;h=e0eb9c88f60bd0f14c4996edb446841efa6d0d94;hp=0000000000000000000000000000000000000000;hb=b67b9c78f848a3bb1110be1eaf8bf93ac454b3aa;hpb=80cb24f5015433b3d63084bb4c230b10d1c33652 diff --git a/t/integration/query_timeseries.sh b/t/integration/query_timeseries.sh new file mode 100755 index 0000000..e0eb9c8 --- /dev/null +++ b/t/integration/query_timeseries.sh @@ -0,0 +1,90 @@ +#! /bin/bash +# +# SysDB -- t/integration/basic_query.sh +# Copyright (C) 2012 Sebastian 'tokkee' Harl +# All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions +# are met: +# 1. Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# 2. Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in the +# documentation and/or other materials provided with the distribution. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +# ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +# TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +# PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDERS OR +# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, +# EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, +# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; +# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR +# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF +# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +# +# Integration tests using basic queries. +# + +set -ex + +source "$( dirname "$0" )/test_lib.sh" + +cat < "$SYSDBD_CONF" +Listen "$SOCKET_FILE" +PluginDir "$PLUGIN_DIR" +Interval 2 + +LoadPlugin mock_timeseries +EOF + +run_sysdbd -D -C "$SYSDBD_CONF" +wait_for_sysdbd + +cat < "${SYSDBD_CONF}.sender" +Listen "${SOCKET_FILE}.sender" +PluginDir "$PLUGIN_DIR" +Interval 2 + +LoadPlugin "store::network" + + Server "$SOCKET_FILE" + + +LoadBackend mock_plugin + + +EOF + +run_sysdbd_foreground -D -C "${SYSDBD_CONF}.sender" & +SYSDBD_PID2=$! +trap "kill \$SYSDBD_PID2" EXIT +wait_for_sysdbd "${SOCKET_FILE}.sender" + +# wait for initial data +sleep 3 + +# TIMESERIES commands. +run_sysdb -H "$SOCKET_FILE" \ + -c "TIMESERIES 'invalid.host'.'invalid-metric'" && exit 1 + +output="$( run_sysdb -H "$SOCKET_FILE" \ + -c "TIMESERIES 'some.host.name'.'foo/bar/qux'" )" +echo "$output" \ + | grep -F '"value": "1.000000"' \ + | grep -F '"value": "2.000000"' \ + | grep -F '"value": "3.000000"' \ + | grep -F '"value": "4.000000"' \ + | grep -F '"value": "5.000000"' \ + | grep -F '"value": "6.000000"' \ + | grep -F '"value": "7.000000"' \ + | grep -F '"value": "8.000000"' \ + | grep -F '"value": "9.000000"' \ + | grep -F '"value": "10.000000"' + +stop_sysdbd + +# vim: set tw=78 sw=4 ts=4 noexpandtab :