index 62a7e9047a70ea4541ad5f6e8fab487846267930..14977ff820f91e63dfc69b822fdcf98f2ebc5c38 100644 (file)
#include "parser/parser.h"
#include "core/object.h"
#include "parser/parser.h"
#include "core/object.h"
-#include "core/store.h"
+#include "core/memstore.h"
#include "testutils.h"
#include <check.h>
#include "testutils.h"
#include <check.h>
"host.name = 'p'", -1, 1, SDB_AST_TYPE_LOOKUP, SDB_SERVICE },
{ "LOOKUP services MATCHING "
"service.name = 'p'", -1, 1, SDB_AST_TYPE_LOOKUP, SDB_SERVICE },
"host.name = 'p'", -1, 1, SDB_AST_TYPE_LOOKUP, SDB_SERVICE },
{ "LOOKUP services MATCHING "
"service.name = 'p'", -1, 1, SDB_AST_TYPE_LOOKUP, SDB_SERVICE },
+ { "LOOKUP services MATCHING ANY "
+ "host.backend =~ 'b'", -1, 1, SDB_AST_TYPE_LOOKUP, SDB_SERVICE },
{ "LOOKUP metrics", -1, 1, SDB_AST_TYPE_LOOKUP, SDB_METRIC },
{ "LOOKUP metrics MATCHING ANY "
"attribute.name =~ 'a'", -1, 1, SDB_AST_TYPE_LOOKUP, SDB_METRIC },
{ "LOOKUP metrics", -1, 1, SDB_AST_TYPE_LOOKUP, SDB_METRIC },
{ "LOOKUP metrics MATCHING ANY "
"attribute.name =~ 'a'", -1, 1, SDB_AST_TYPE_LOOKUP, SDB_METRIC },
"host.name = 'p'", -1, 1, SDB_AST_TYPE_LOOKUP, SDB_METRIC },
{ "LOOKUP metrics MATCHING "
"metric.name = 'p'", -1, 1, SDB_AST_TYPE_LOOKUP, SDB_METRIC },
"host.name = 'p'", -1, 1, SDB_AST_TYPE_LOOKUP, SDB_METRIC },
{ "LOOKUP metrics MATCHING "
"metric.name = 'p'", -1, 1, SDB_AST_TYPE_LOOKUP, SDB_METRIC },
+ { "LOOKUP metrics MATCHING ANY "
+ "host.service.name = 'p'", -1, 1, SDB_AST_TYPE_LOOKUP, SDB_METRIC },
/* TIMESERIES commands */
{ "TIMESERIES 'host'.'metric' "
/* TIMESERIES commands */
{ "TIMESERIES 'host'.'metric' "
"STORE 'typ' 'id' "
"LAST UPDATE "
"2015-02-01", -1, 1, SDB_AST_TYPE_STORE, SDB_METRIC },
"STORE 'typ' 'id' "
"LAST UPDATE "
"2015-02-01", -1, 1, SDB_AST_TYPE_STORE, SDB_METRIC },
+ { "STORE metric "
+ "'host'.'metric' "
+ "STORE 'typ' 'id' 2015-02-01 13:37 "
+ "LAST UPDATE "
+ "2015-02-01", -1, 1, SDB_AST_TYPE_STORE, SDB_METRIC },
{ "STORE metric attribute "
"'host'.'metric'.'key' "
"123", -1, 1, SDB_AST_TYPE_STORE, SDB_ATTRIBUTE },
{ "STORE metric attribute "
"'host'.'metric'.'key' "
"123", -1, 1, SDB_AST_TYPE_STORE, SDB_ATTRIBUTE },
"ALL backend =~ 'b'", -1, 1, SDB_AST_TYPE_LOOKUP, SDB_HOST },
{ "LOOKUP hosts MATCHING "
"ALL backend !~ 'b'", -1, 1, SDB_AST_TYPE_LOOKUP, SDB_HOST },
"ALL backend =~ 'b'", -1, 1, SDB_AST_TYPE_LOOKUP, SDB_HOST },
{ "LOOKUP hosts MATCHING "
"ALL backend !~ 'b'", -1, 1, SDB_AST_TYPE_LOOKUP, SDB_HOST },
+ { "LOOKUP hosts MATCHING "
+ "ANY backend || 'a' = 'b'",
+ -1, 1, SDB_AST_TYPE_LOOKUP, SDB_HOST },
/* attribute type is unknown */
{ "LOOKUP hosts MATCHING "
"ANY backend = attribute['backend']",
/* attribute type is unknown */
{ "LOOKUP hosts MATCHING "
"ANY backend = attribute['backend']",
"ALL 1 || '2' < '3'", -1, -1, 0, 0 },
{ "LOOKUP hosts MATCHING "
"ALL name =~ 'a'", -1, -1, 0, 0 },
"ALL 1 || '2' < '3'", -1, -1, 0, 0 },
{ "LOOKUP hosts MATCHING "
"ALL name =~ 'a'", -1, -1, 0, 0 },
- /* this could work in theory but is not supported atm */
- { "LOOKUP hosts MATCHING "
- "ANY backend || 'a' = 'b'",
- -1, -1, 0, 0 },
+ { "LOOKUP hosts MATCHING ANY "
+ "host.name = 'h'", -1, -1, 0, 0 },
+ { "LOOKUP services MATCHING ANY "
+ "host.name = 'h'", -1, -1, 0, 0 },
+ { "LOOKUP metrics MATCHING ANY "
+ "host.name = 'h'", -1, -1, 0, 0 },
+ { "LOOKUP hosts MATCHING ANY "
+ "name || 'a' = 'b'", -1, -1, 0, 0 },
/* invalid LIST commands */
{ "LIST", -1, -1, 0, 0 },
/* invalid LIST commands */
{ "LIST", -1, -1, 0, 0 },
sdb_strbuf_t *errbuf = sdb_strbuf_create(64);
sdb_llist_t *check;
sdb_ast_node_t *node;
sdb_strbuf_t *errbuf = sdb_strbuf_create(64);
sdb_llist_t *check;
sdb_ast_node_t *node;
- sdb_store_query_t *q;
+ sdb_memstore_query_t *q;
_Bool ok;
check = sdb_parser_parse(parse_data[_i].query,
_Bool ok;
check = sdb_parser_parse(parse_data[_i].query,
}
/* TODO: this should move into front-end specific tests */
}
/* TODO: this should move into front-end specific tests */
- q = sdb_store_query_prepare(node);
+ q = sdb_memstore_query_prepare(node);
fail_unless(q != NULL,
fail_unless(q != NULL,
- "sdb_store_query_prepare(AST<%s>) = NULL; expected: <query>",
+ "sdb_memstore_query_prepare(AST<%s>) = NULL; expected: <query>",
parse_data[_i].query);
sdb_object_deref(SDB_OBJ(node));
parse_data[_i].query);
sdb_object_deref(SDB_OBJ(node));