2 // Created by jlr on 4/9/18.
10 #include <mon_internal.h>
12 #define JSON_DUMP_OPTS 0
14 static char *show_success()
17 MON_RESP *resp = NULL;
18 json_t *resp_json = NULL;
19 json_t *payload = NULL;
22 req = mon_req_new(NULL, MON_CMD_SHOW);
23 // Only need the command to be set in req, don't actually need the options
26 payload = json_object();
28 assert(! json_object_set_new(payload,
29 mon_opt_type_to_string(OPT_TYPE_SHOW_VERSION),
30 json_string("1.2.3-4")));
31 assert(! json_object_set_new(payload,
32 mon_opt_type_to_string(OPT_TYPE_SHOW_CONFIG_FILES),
33 json_integer(1234567890)));
34 assert(! json_object_set_new(payload,
35 mon_opt_type_to_string(OPT_TYPE_SHOW_CONFIG_FILES),
36 json_integer(86400)));
37 assert(! json_object_set_new(payload,
38 mon_opt_type_to_string(OPT_TYPE_SHOW_TID_REQS_PENDING),
40 assert(! json_object_set_new(payload,
41 mon_opt_type_to_string(OPT_TYPE_SHOW_TID_REQS_PROCESSED),
44 resp = mon_resp_new(NULL, MON_RESP_SUCCESS, "success", payload);
47 resp_json = mon_resp_encode(resp);
50 result = json_dumps(resp_json, JSON_DUMP_OPTS);
53 json_decref(resp_json);
59 static char *read_file(const char *filename)
61 FILE *f = fopen(filename, "r");
64 ssize_t n = getline(&s, &nn, f);
67 if( (n > 0) && (s[n-1] == '\n'))
73 int run_test(const char *filename, char *(generator)())
76 char *expected = NULL;
78 // Test reconfigure command
80 expected = read_file(filename);
82 assert(strcmp(expected, s) == 0);
91 assert(run_test("resp_show_success.test", show_success));