test outlet API WIP.
All checks were successful
continuous-integration/drone/push Build is passing

This commit is contained in:
NADAL Jean-Baptiste
2020-02-24 14:41:06 +01:00
parent c5e62514bc
commit e4de72a4f6
5 changed files with 385 additions and 152 deletions

View File

@@ -46,29 +46,12 @@ char *load_capabilities(devices_manager_t *dm)
/*--------------------------------------------------------------------------*/
TEST("Domo - Server - Create Free\t")
restd_server_t *setup_server(devices_manager_t *dm)
{
restd_server_t *rest_server;
rest_server = restd_server_new();
ASSERT_NOT_NULL(rest_server);
restd_server_free(rest_server);
}
/*--------------------------------------------------------------------------*/
TEST("Domo - Test API correct access\t")
{
struct event_base *ev_base;
restd_server_t *rest_server;
devices_manager_t *dm;
char *config_path, *capabilities_path;
int ret;
char *capabilities;
dm = devices_manager_new();
ASSERT_NOT_NULL(dm);
struct event_base *ev_base;
char *config_path, *capabilities_path;
restd_server_t *rest_server = NULL;
ev_base = event_base_new();
ASSERT_NOT_NULL(ev_base);
@@ -92,21 +75,103 @@ TEST("Domo - Test API correct access\t")
restd_server_set_option(rest_server, "server.thread", "1");
free(config_path);
ret = restd_server_start(rest_server);
ASSERT_EQUAL_INT(ret, 0);
return rest_server;
}
/*--------------------------------------------------------------------------*/
TEST("Domo - Server - Create Free\t")
{
restd_server_t *rest_server;
rest_server = restd_server_new();
ASSERT_NOT_NULL(rest_server);
restd_server_free(rest_server);
}
/*--------------------------------------------------------------------------*/
TEST("Domo - Test API /api/v1/capabilities - correct access\t")
{
restd_server_t *rest_server;
devices_manager_t *dm;
int ret;
char *capabilities;
dm = devices_manager_new();
ASSERT_NOT_NULL(dm);
rest_server = setup_server(dm);
ASSERT_NOT_NULL(rest_server);
sleep(1);
// Capabilites
capabilities = load_capabilities(dm);
ASSERT_NOT_NULL(capabilities);
ret = exec_request(kget_method, "http://localhost:" kserver_port "/api/v1/capabilities", 200, "", capabilities, false);
ASSERT_EQUAL_INT(ret, 0);
free(capabilities);
// TODO
restd_server_free(rest_server);
devices_manager_free(dm);
}
/*--------------------------------------------------------------------------*/
TEST("Domo - Test API /api/v1/outlets - correct access\t")
{
restd_server_t *rest_server;
devices_manager_t *dm;
int ret;
dm = devices_manager_new();
ASSERT_NOT_NULL(dm);
rest_server = setup_server(dm);
ASSERT_NOT_NULL(rest_server);
sleep(1);
// Outlets
// Get All Devices. Should be empty.
ret = exec_request(kget_method, "http://localhost:" kserver_port "/api/v1/capabilities", 200, "", k_device_list_empty, false);
ASSERT_EQUAL_INT(ret, 0);
// Create An Outlet. Should be empty.
// Get All Devices. Should Contain One Device.
// Create A second Outlet. Should Contain two Device.
// Update the second Outlet. Device should contain.
// Get Device 2 only. Should Contain Device two updated.
// Delete Device 2.
// Get All Devices. Should Contain One Device.
restd_server_free(rest_server);
devices_manager_free(dm);
free(config_path);
}
#if 0
// Outlets
restd_server_register_hook_on_path(rest_server, EVHTTP_REQ_POST, "/api/v1/outlets", outlet_create_handler, dm);
restd_server_register_hook_on_path(rest_server, EVHTTP_REQ_GET, "/api/v1/outlets", outlet_list_handler, dm);
restd_server_register_hook_on_path(rest_server, EVHTTP_REQ_GET, "/api/v1/outlets/:id", outlet_get_handler, dm);
restd_server_register_hook_on_path(rest_server, EVHTTP_REQ_PUT, "/api/v1/outlets/:id", outlet_update_handler, dm);
restd_server_register_hook_on_path(rest_server, EVHTTP_REQ_DELETE, "/api/v1/outlets/:id", outlet_remove_handler, dm);
#endif