TEST(Outputs, json_es) { int ret; int size = sizeof(JSON_ES) - 1; flb_ctx_t *ctx; flb_input_t *input; flb_output_t *output; ctx = flb_create(); EXPECT_TRUE(ctx != NULL); input = flb_input(ctx, (char *) "lib", NULL); EXPECT_TRUE(input != NULL); flb_input_set(input, "tag", "test"); output = flb_output(ctx, (char *) "es", NULL); EXPECT_TRUE(output != NULL); flb_output_set(output, "tag", "test"); ret = flb_start(ctx); EXPECT_EQ(ret, 0); flb_lib_push(input, (char *) JSON_ES, size); flb_stop(ctx); flb_destroy(ctx); }
TEST(Outputs, json_invalid) { int i; int ret; int total; int bytes; char *p = (char *) JSON_INVALID; flb_ctx_t *ctx; flb_input_t *input; flb_output_t *output; ctx = flb_create(); input = flb_input(ctx, (char *) "lib", NULL); EXPECT_TRUE(input != NULL); flb_input_set(input, "tag", "test"); output = flb_output(ctx, (char *) "stdout", NULL); EXPECT_TRUE(output != NULL); flb_output_set(output, "tag", "test"); ret = flb_start(ctx); EXPECT_EQ(ret, 0); total = 0; for (i = 0; i < (int) sizeof(JSON_INVALID) - 1; i++) { bytes = flb_lib_push(input, p + i, 1); EXPECT_EQ(bytes, 1); total++; } flb_stop(ctx); flb_destroy(ctx); }
TEST(Inputs, flush_5s) { int ret = 0; flb_ctx_t *ctx = NULL; int in_ffd; int out_ffd; /* initialize */ ret = pthread_mutex_init(&result_mutex, NULL); result = 0; EXPECT_EQ(ret, 0); ctx = flb_create(); in_ffd = flb_input(ctx, (char *) "random", NULL); EXPECT_TRUE(in_ffd >= 0); flb_input_set(ctx, in_ffd, "tag", "test", NULL); out_ffd = flb_output(ctx, (char *) "lib", (void*)callback_test); EXPECT_TRUE(out_ffd >= 0); flb_output_set(ctx, out_ffd, "match", "test", NULL); ret = flb_start(ctx); EXPECT_EQ(ret, 0); /* start test */ sleep(2); pthread_mutex_lock(&result_mutex); ret = result; /* 2sec passed, no data should be flushed */ pthread_mutex_unlock(&result_mutex); EXPECT_EQ(ret, 0); sleep(3); pthread_mutex_lock(&result_mutex); ret = result; /* 5sec passed, data should be flushed */ pthread_mutex_unlock(&result_mutex); EXPECT_EQ(ret, 1); /* finalize */ flb_stop(ctx); flb_destroy(ctx); ret = pthread_mutex_destroy(&result_mutex); EXPECT_EQ(ret, 0); }