index 7ddd50bcf4a1c4aaf2bb2e8f0a6231113025fca5..50d041ece884464501cd1768c2b6a990216a3662 100644 (file)
--- a/t/unit/core/store_test.c
+++ b/t/unit/core/store_test.c
{
sdb_data_t datum;
- sdb_memstore_host(store, "h1", 1);
- sdb_memstore_host(store, "h2", 3);
+ sdb_memstore_host(store, "h1", 1, 0);
+ sdb_memstore_host(store, "h2", 3, 0);
datum.type = SDB_TYPE_STRING;
datum.data.string = "v1";
- sdb_memstore_attribute(store, "h1", "k1", &datum, 1);
+ sdb_memstore_attribute(store, "h1", "k1", &datum, 1, 0);
datum.data.string = "v2";
- sdb_memstore_attribute(store, "h1", "k2", &datum, 2);
+ sdb_memstore_attribute(store, "h1", "k2", &datum, 2, 0);
datum.data.string = "v3";
- sdb_memstore_attribute(store, "h1", "k3", &datum, 2);
+ sdb_memstore_attribute(store, "h1", "k3", &datum, 2, 0);
/* make sure that older updates don't overwrite existing values */
datum.data.string = "fail";
- sdb_memstore_attribute(store, "h1", "k2", &datum, 1);
- sdb_memstore_attribute(store, "h1", "k3", &datum, 2);
+ sdb_memstore_attribute(store, "h1", "k2", &datum, 1, 0);
+ sdb_memstore_attribute(store, "h1", "k3", &datum, 2, 0);
- sdb_memstore_metric(store, "h1", "m1", /* store */ NULL, 2);
- sdb_memstore_metric(store, "h1", "m2", /* store */ NULL, 1);
- sdb_memstore_metric(store, "h2", "m1", /* store */ NULL, 1);
+ sdb_memstore_metric(store, "h1", "m1", /* store */ NULL, 2, 0);
+ sdb_memstore_metric(store, "h1", "m2", /* store */ NULL, 1, 0);
+ sdb_memstore_metric(store, "h2", "m1", /* store */ NULL, 1, 0);
- sdb_memstore_service(store, "h2", "s1", 1);
- sdb_memstore_service(store, "h2", "s2", 2);
+ sdb_memstore_service(store, "h2", "s1", 1, 0);
+ sdb_memstore_service(store, "h2", "s2", 2, 0);
datum.type = SDB_TYPE_INTEGER;
datum.data.integer = 42;
- sdb_memstore_metric_attr(store, "h1", "m1", "k3", &datum, 2);
+ sdb_memstore_metric_attr(store, "h1", "m1", "k3", &datum, 2, 0);
datum.data.integer = 123;
- sdb_memstore_service_attr(store, "h2", "s2", "k1", &datum, 2);
+ sdb_memstore_service_attr(store, "h2", "s2", "k1", &datum, 2, 0);
datum.data.integer = 4711;
- sdb_memstore_service_attr(store, "h2", "s2", "k2", &datum, 1);
+ sdb_memstore_service_attr(store, "h2", "s2", "k2", &datum, 1, 0);
/* don't overwrite k1 */
datum.data.integer = 666;
- sdb_memstore_service_attr(store, "h2", "s2", "k1", &datum, 2);
+ sdb_memstore_service_attr(store, "h2", "s2", "k1", &datum, 2, 0);
} /* populate */
static void
} golden_data[] = {
{ "a", 1, 0 },
{ "a", 2, 0 },
- { "a", 1, 1 },
{ "b", 1, 0 },
- { "b", 1, 1 },
- { "A", 1, 1 }, /* case-insensitive */
- { "A", 3, 0 },
};
struct {
const char *name;
bool have;
} golden_hosts[] = {
- { "a", 1 == 1 },
- { "b", 1 == 1 },
- { "c", 0 == 1 },
- { "A", 1 == 1 },
+ { "a", 1 },
+ { "b", 1 },
+ { "c", 0 },
+ { "A", 1 },
};
size_t i;
int status;
status = sdb_memstore_host(store, golden_data[i].name,
- golden_data[i].last_update);
+ golden_data[i].last_update, 0);
fail_unless(status == golden_data[i].expected,
- "sdb_memstore_host(%s, %d) = %d; expected: %d",
+ "sdb_memstore_host(%s, %d, 0) = %d; expected: %d",
golden_data[i].name, (int)golden_data[i].last_update,
status, golden_data[i].expected);
}
size_t i;
for (i = 0; i < SDB_STATIC_ARRAY_LEN(golden_hosts); ++i) {
- int status = sdb_memstore_host(store, golden_hosts[i], 1);
+ int status = sdb_memstore_host(store, golden_hosts[i], 1, 0);
fail_unless(status >= 0,
"sdb_memstore_host(%s) = %d; expected: >=0",
golden_hosts[i], status);
{ "k", "k", "v", 1, -1 }, /* retry to ensure the host is not created */
{ "l", "k1", "v1", 1, 0 },
{ "l", "k1", "v2", 2, 0 },
- { "l", "k1", "v3", 2, 1 },
{ "l", "k2", "v1", 1, 0 },
{ "m", "k", "v1", 1, 0 },
- { "m", "k", "v2", 1, 1 },
};
size_t i;
- sdb_memstore_host(store, "l", 1);
- sdb_memstore_host(store, "m", 1);
+ sdb_memstore_host(store, "l", 1, 0);
+ sdb_memstore_host(store, "m", 1, 0);
for (i = 0; i < SDB_STATIC_ARRAY_LEN(golden_data); ++i) {
sdb_data_t datum;
int status;
status = sdb_memstore_attribute(store, golden_data[i].host,
golden_data[i].key, &datum,
- golden_data[i].last_update);
+ golden_data[i].last_update, 0);
fail_unless(status == golden_data[i].expected,
"sdb_memstore_attribute(%s, %s, %s, %d) = %d; expected: %d",
golden_data[i].host, golden_data[i].key, golden_data[i].value,
- golden_data[i].last_update, status, golden_data[i].expected);
+ golden_data[i].last_update, status, golden_data[i].expected, 0);
}
}
END_TEST
{ "l", "m1", NULL, 1, 0 },
{ "l", "m1", &store1, 2, 0 },
{ "l", "m1", &store1, 3, 0 },
- { "l", "m1", NULL, 3, 1 },
{ "l", "m2", &store1, 1, 0 },
{ "l", "m2", &store2, 2, 0 },
{ "l", "m2", NULL, 3, 0 },
{ "m", "m", &store1, 1, 0 },
{ "m", "m", NULL, 2, 0 },
- { "m", "m", NULL, 2, 1 },
{ "m", "m", &store1, 3, 0 },
{ "m", "m", &store2, 4, 0 },
{ "m", "m", NULL, 5, 0 },
size_t i;
- sdb_memstore_host(store, "m", 1);
- sdb_memstore_host(store, "l", 1);
+ sdb_memstore_host(store, "m", 1, 0);
+ sdb_memstore_host(store, "l", 1, 0);
for (i = 0; i < SDB_STATIC_ARRAY_LEN(golden_data); ++i) {
int status;
status = sdb_memstore_metric(store, golden_data[i].host,
golden_data[i].metric, golden_data[i].store,
- golden_data[i].last_update);
+ golden_data[i].last_update, 0);
fail_unless(status == golden_data[i].expected,
- "sdb_memstore_metric(%s, %s, %p, %d) = %d; expected: %d",
+ "sdb_memstore_metric(%s, %s, %p, %d, 0) = %d; expected: %d",
golden_data[i].host, golden_data[i].metric,
golden_data[i].store, golden_data[i].last_update,
status, golden_data[i].expected);
/* retry, it should still fail */
{ "l", "mX", "a1", { SDB_TYPE_INTEGER, { .integer = 123 } }, 1, -1 },
{ "l", "m1", "a1", { SDB_TYPE_INTEGER, { .integer = 123 } }, 1, 0 },
- { "l", "m1", "a1", { SDB_TYPE_INTEGER, { .integer = 123 } }, 1, 1 },
{ "l", "m1", "a1", { SDB_TYPE_INTEGER, { .integer = 123 } }, 2, 0 },
{ "l", "m1", "a2", { SDB_TYPE_INTEGER, { .integer = 123 } }, 1, 0 },
- { "l", "m1", "a2", { SDB_TYPE_INTEGER, { .integer = 123 } }, 1, 1 },
{ "l", "m2", "a2", { SDB_TYPE_INTEGER, { .integer = 123 } }, 1, 0 },
{ "m", "m1", "a1", { SDB_TYPE_INTEGER, { .integer = 123 } }, 1, 0 },
};
size_t i;
- sdb_memstore_host(store, "m", 1);
- sdb_memstore_host(store, "l", 1);
- sdb_memstore_metric(store, "m", "m1", NULL, 1);
- sdb_memstore_metric(store, "l", "m1", NULL, 1);
- sdb_memstore_metric(store, "l", "m2", NULL, 1);
+ sdb_memstore_host(store, "m", 1, 0);
+ sdb_memstore_host(store, "l", 1, 0);
+ sdb_memstore_metric(store, "m", "m1", NULL, 1, 0);
+ sdb_memstore_metric(store, "l", "m1", NULL, 1, 0);
+ sdb_memstore_metric(store, "l", "m2", NULL, 1, 0);
for (i = 0; i < SDB_STATIC_ARRAY_LEN(golden_data); ++i) {
int status;
status = sdb_memstore_metric_attr(store, golden_data[i].host,
golden_data[i].metric, golden_data[i].attr,
- &golden_data[i].value, golden_data[i].last_update);
+ &golden_data[i].value, golden_data[i].last_update, 0);
fail_unless(status == golden_data[i].expected,
- "sdb_memstore_metric_attr(%s, %s, %s, %d, %d) = %d; "
+ "sdb_memstore_metric_attr(%s, %s, %s, %d, %d, 0) = %d; "
"expected: %d", golden_data[i].host, golden_data[i].metric,
golden_data[i].attr, golden_data[i].value.data.integer,
golden_data[i].last_update, status, golden_data[i].expected);
{ "k", "s", 1, -1 }, /* retry to ensure the host is not created */
{ "l", "s1", 1, 0 },
{ "l", "s1", 2, 0 },
- { "l", "s1", 2, 1 },
{ "l", "s2", 1, 0 },
{ "m", "s", 1, 0 },
- { "m", "s", 1, 1 },
};
size_t i;
- sdb_memstore_host(store, "m", 1);
- sdb_memstore_host(store, "l", 1);
+ sdb_memstore_host(store, "m", 1, 0);
+ sdb_memstore_host(store, "l", 1, 0);
for (i = 0; i < SDB_STATIC_ARRAY_LEN(golden_data); ++i) {
int status;
status = sdb_memstore_service(store, golden_data[i].host,
- golden_data[i].svc, golden_data[i].last_update);
+ golden_data[i].svc, golden_data[i].last_update, 0);
fail_unless(status == golden_data[i].expected,
- "sdb_memstore_service(%s, %s, %d) = %d; expected: %d",
+ "sdb_memstore_service(%s, %s, %d, 0) = %d; expected: %d",
golden_data[i].host, golden_data[i].svc,
golden_data[i].last_update, status, golden_data[i].expected);
}
/* retry, it should still fail */
{ "l", "sX", "a1", { SDB_TYPE_INTEGER, { .integer = 123 } }, 1, -1 },
{ "l", "s1", "a1", { SDB_TYPE_INTEGER, { .integer = 123 } }, 1, 0 },
- { "l", "s1", "a1", { SDB_TYPE_INTEGER, { .integer = 123 } }, 1, 1 },
{ "l", "s1", "a1", { SDB_TYPE_INTEGER, { .integer = 123 } }, 2, 0 },
{ "l", "s1", "a2", { SDB_TYPE_INTEGER, { .integer = 123 } }, 1, 0 },
- { "l", "s1", "a2", { SDB_TYPE_INTEGER, { .integer = 123 } }, 1, 1 },
{ "l", "s2", "a2", { SDB_TYPE_INTEGER, { .integer = 123 } }, 1, 0 },
{ "m", "s1", "a1", { SDB_TYPE_INTEGER, { .integer = 123 } }, 1, 0 },
};
size_t i;
- sdb_memstore_host(store, "m", 1);
- sdb_memstore_host(store, "l", 1);
- sdb_memstore_service(store, "m", "s1", 1);
- sdb_memstore_service(store, "l", "s1", 1);
- sdb_memstore_service(store, "l", "s2", 1);
+ sdb_memstore_host(store, "m", 1, 0);
+ sdb_memstore_host(store, "l", 1, 0);
+ sdb_memstore_service(store, "m", "s1", 1, 0);
+ sdb_memstore_service(store, "l", "s1", 1, 0);
+ sdb_memstore_service(store, "l", "s2", 1, 0);
for (i = 0; i < SDB_STATIC_ARRAY_LEN(golden_data); ++i) {
int status;
status = sdb_memstore_service_attr(store, golden_data[i].host,
golden_data[i].svc, golden_data[i].attr,
- &golden_data[i].value, golden_data[i].last_update);
+ &golden_data[i].value, golden_data[i].last_update, 0);
fail_unless(status == golden_data[i].expected,
- "sdb_memstore_service_attr(%s, %s, %s, %d, %d) = %d; "
+ "sdb_memstore_service_attr(%s, %s, %s, %d, %d, 0) = %d; "
"expected: %d", golden_data[i].host, golden_data[i].svc,
golden_data[i].attr, golden_data[i].value.data.integer,
golden_data[i].last_update, status, golden_data[i].expected);
sdb_time_t now = sdb_gettime();
int check;
- sdb_memstore_host(store, "host", 10);
- sdb_memstore_host(store, "host", 20);
- sdb_memstore_attribute(store, "host", "attr", &get_field_data[_i].value, 10);
- sdb_memstore_attribute(store, "host", "attr", &get_field_data[_i].value, 20);
+ sdb_memstore_host(store, "host", 20, 10);
+ sdb_memstore_attribute(store, "host", "attr", &get_field_data[_i].value, 20, 10);
if (get_field_data[_i].hostname) {
obj = sdb_memstore_get_host(store, get_field_data[_i].hostname);
}
END_TEST
+/* TODO: move these tests into generic store tests */
+#if 0
START_TEST(test_interval)
{
sdb_memstore_obj_t *host;
sdb_object_deref(SDB_OBJ(host));
}
END_TEST
+#endif
static int
scan_count(sdb_memstore_obj_t *obj, sdb_memstore_matcher_t *filter, void *user_data)
tcase_add_test(tc, test_store_service_attr);
TC_ADD_LOOP_TEST(tc, get_field);
tcase_add_test(tc, test_get_child);
- tcase_add_test(tc, test_interval);
tcase_add_test(tc, test_scan);
ADD_TCASE(tc);
}