This commit is contained in:
@@ -116,16 +116,45 @@ int create_outlet(devices_manager_t *dm, struct json_object *node)
|
|||||||
|
|
||||||
int remove_outlet(devices_manager_t *dm, uint16_t id)
|
int remove_outlet(devices_manager_t *dm, uint16_t id)
|
||||||
{
|
{
|
||||||
#warning "TODO"
|
qlist_obj_t obj;
|
||||||
return 0;
|
outlet_dio_t *outlet_dio;
|
||||||
|
int position = 0;
|
||||||
|
|
||||||
|
memset((void *)&obj, 0, sizeof(obj));
|
||||||
|
|
||||||
|
while (qlist_getnext(dm->outlets, &obj, true))
|
||||||
|
{
|
||||||
|
outlet_dio = obj.data;
|
||||||
|
if (outlet_dio->device->id == id)
|
||||||
|
{
|
||||||
|
qlist_removeat(dm->outlets, position);
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
position++;
|
||||||
|
}
|
||||||
|
|
||||||
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
/*--------------------------------------------------------------------------*/
|
/*--------------------------------------------------------------------------*/
|
||||||
|
|
||||||
int update_outlet(devices_manager_t *dm, uint16_t id, struct json_object *node)
|
int update_outlet(devices_manager_t *dm, uint16_t id, struct json_object *node)
|
||||||
{
|
{
|
||||||
#warning "TODO"
|
qlist_obj_t obj;
|
||||||
return 0;
|
outlet_dio_t *outlet_dio;
|
||||||
|
|
||||||
|
memset((void *)&obj, 0, sizeof(obj));
|
||||||
|
|
||||||
|
while (qlist_getnext(dm->outlets, &obj, false))
|
||||||
|
{
|
||||||
|
outlet_dio = obj.data;
|
||||||
|
if (outlet_dio->device->id == id)
|
||||||
|
{
|
||||||
|
return outlet_dio_from_json(outlet_dio, node);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
/*--------------------------------------------------------------------------*/
|
/*--------------------------------------------------------------------------*/
|
||||||
|
|||||||
@@ -48,6 +48,7 @@ void device_create_set_state_remove(const char *capability, const char *test_nam
|
|||||||
|
|
||||||
// Check Objets.
|
// Check Objets.
|
||||||
device_serialized = devices_manager_get_by_id(dm, capability, 1);
|
device_serialized = devices_manager_get_by_id(dm, capability, 1);
|
||||||
|
// printf ("device: %s\n", device_serialized);
|
||||||
ASSERT_EQUAL_STR(device_serialized, test_name_false);
|
ASSERT_EQUAL_STR(device_serialized, test_name_false);
|
||||||
free(device_serialized);
|
free(device_serialized);
|
||||||
|
|
||||||
|
|||||||
@@ -38,7 +38,7 @@ QUNIT_START("Test Data Model");
|
|||||||
|
|
||||||
/*--------------------------------------------------------------------------*/
|
/*--------------------------------------------------------------------------*/
|
||||||
|
|
||||||
TEST("devices_manager create and free")
|
TEST("devices_manager create and free\t")
|
||||||
{
|
{
|
||||||
devices_manager_t *dm;
|
devices_manager_t *dm;
|
||||||
|
|
||||||
@@ -50,27 +50,18 @@ TEST("devices_manager create and free")
|
|||||||
#include "test_devices.c"
|
#include "test_devices.c"
|
||||||
#include "test_sprinkler.c"
|
#include "test_sprinkler.c"
|
||||||
#include "test_shutter.c"
|
#include "test_shutter.c"
|
||||||
//#include "test_outlet.c"
|
#include "test_outlet.c"
|
||||||
|
|
||||||
#if 0
|
#if 0
|
||||||
devices_manager_t
|
|
||||||
|
|
||||||
kOutletEntry
|
|
||||||
kShutterEntry
|
|
||||||
kSprinklerEntry
|
|
||||||
|
|
||||||
|
|
||||||
extern int devices_manager_load(devices_manager_t *dm, char *config_path);
|
extern int devices_manager_load(devices_manager_t *dm, char *config_path);
|
||||||
extern int devices_manager_save(devices_manager_t *dm);
|
extern int devices_manager_save(devices_manager_t *dm);
|
||||||
|
|
||||||
extern char *devices_manager_get(devices_manager_t *dm, const char *capability);
|
extern char *devices_manager_get(devices_manager_t *dm, const char *capability);
|
||||||
extern char *devices_manager_get_by_id(devices_manager_t *dm, const char *capability, uint32_t id);
|
|
||||||
|
|
||||||
extern int devices_manager_set(devices_manager_t *dm, const char *capability, struct json_object *node);
|
extern int devices_manager_set(devices_manager_t *dm, const char *capability, struct json_object *node);
|
||||||
extern int devices_manager_set_state(devices_manager_t *dm, const char *capability, int id, bool state);
|
extern int devices_manager_set_state(devices_manager_t *dm, const char *capability, int id, bool state);
|
||||||
|
|
||||||
extern int devices_manager_create(devices_manager_t *dm, const char *capability, struct json_object *node);
|
|
||||||
extern int devices_manager_update(devices_manager_t *dm, const char *capability, struct json_object *node);
|
|
||||||
extern int devices_manager_delete(devices_manager_t *dm, const char *capability, struct json_object *node);
|
extern int devices_manager_delete(devices_manager_t *dm, const char *capability, struct json_object *node);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|||||||
@@ -26,30 +26,33 @@
|
|||||||
// This is an independent project of an individual developer. Dear PVS-Studio, please check it.
|
// This is an independent project of an individual developer. Dear PVS-Studio, please check it.
|
||||||
// PVS-Studio Static Code Analyzer for C, C++, C#, and Java: http://www.viva64.com
|
// PVS-Studio Static Code Analyzer for C, C++, C#, and Java: http://www.viva64.com
|
||||||
|
|
||||||
|
#define kOutletTestNameTrue "{ \"id\": 1, \"name\": \"test_name\", \"state\": true, \"zone\": \"\", \"sender\": 0, \"switch\": 0 }"
|
||||||
|
#define kOutletTestNameFalse "{ \"id\": 1, \"name\": \"test_name\", \"state\": false, \"zone\": \"\", \"sender\": 0, \"switch\": 0 }"
|
||||||
|
|
||||||
/*--------------------------------------------------------------------------*/
|
/*--------------------------------------------------------------------------*/
|
||||||
|
|
||||||
TEST("Outlet - create set_state remove.")
|
TEST("Outlet - create set_state remove\t")
|
||||||
{
|
{
|
||||||
device_create_set_state_remove(kOutletEntry);
|
device_create_set_state_remove(kOutletEntry, kOutletTestNameTrue, kOutletTestNameFalse);
|
||||||
}
|
}
|
||||||
|
|
||||||
/*--------------------------------------------------------------------------*/
|
/*--------------------------------------------------------------------------*/
|
||||||
|
|
||||||
TEST("Outlet - create - Error case")
|
TEST("Outlet - create - Error case\t")
|
||||||
{
|
{
|
||||||
device_create_error_case(kOutletEntry);
|
device_create_error_case(kOutletEntry);
|
||||||
}
|
}
|
||||||
|
|
||||||
/*--------------------------------------------------------------------------*/
|
/*--------------------------------------------------------------------------*/
|
||||||
|
|
||||||
TEST("Outlet - get_by_id - Error case")
|
TEST("Outlet - get_by_id - Error case\t")
|
||||||
{
|
{
|
||||||
device_get_by_id_error_case(kOutletEntry);
|
device_get_by_id_error_case(kOutletEntry);
|
||||||
}
|
}
|
||||||
|
|
||||||
/*--------------------------------------------------------------------------*/
|
/*--------------------------------------------------------------------------*/
|
||||||
|
|
||||||
TEST("Outlet - update - Error case")
|
TEST("Outlet - update - Error case\t")
|
||||||
{
|
{
|
||||||
device_get_by_id_error_case(kOutletEntry);
|
device_get_by_id_error_case(kOutletEntry);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -26,34 +26,33 @@
|
|||||||
// This is an independent project of an individual developer. Dear PVS-Studio, please check it.
|
// This is an independent project of an individual developer. Dear PVS-Studio, please check it.
|
||||||
// PVS-Studio Static Code Analyzer for C, C++, C#, and Java: http://www.viva64.com
|
// PVS-Studio Static Code Analyzer for C, C++, C#, and Java: http://www.viva64.com
|
||||||
|
|
||||||
|
|
||||||
#define kShutterTestNameTrue "{ \"id\": 1, \"name\": \"test_name\", \"state\": true, \"zone\": \"\", \"sender\": 0, \"switch\": 0, \"speed_up\": 0, \"speed_down\": 0 }"
|
#define kShutterTestNameTrue "{ \"id\": 1, \"name\": \"test_name\", \"state\": true, \"zone\": \"\", \"sender\": 0, \"switch\": 0, \"speed_up\": 0, \"speed_down\": 0 }"
|
||||||
#define kShutterTestNameFalse "{ \"id\": 1, \"name\": \"test_name\", \"state\": false, \"zone\": \"\", \"sender\": 0, \"switch\": 0, \"speed_up\": 0, \"speed_down\": 0 }"
|
#define kShutterTestNameFalse "{ \"id\": 1, \"name\": \"test_name\", \"state\": false, \"zone\": \"\", \"sender\": 0, \"switch\": 0, \"speed_up\": 0, \"speed_down\": 0 }"
|
||||||
|
|
||||||
/*--------------------------------------------------------------------------*/
|
/*--------------------------------------------------------------------------*/
|
||||||
|
|
||||||
TEST("Shutter - create set_state remove.")
|
TEST("Shutter - create set_state remove\t")
|
||||||
{
|
{
|
||||||
device_create_set_state_remove(kShutterEntry, kShutterTestNameTrue, kShutterTestNameFalse);
|
device_create_set_state_remove(kShutterEntry, kShutterTestNameTrue, kShutterTestNameFalse);
|
||||||
}
|
}
|
||||||
|
|
||||||
/*--------------------------------------------------------------------------*/
|
/*--------------------------------------------------------------------------*/
|
||||||
|
|
||||||
TEST("Shutter - create - Error case")
|
TEST("Shutter - create - Error case\t")
|
||||||
{
|
{
|
||||||
device_create_error_case(kShutterEntry);
|
device_create_error_case(kShutterEntry);
|
||||||
}
|
}
|
||||||
|
|
||||||
/*--------------------------------------------------------------------------*/
|
/*--------------------------------------------------------------------------*/
|
||||||
|
|
||||||
TEST("Shutter - get_by_id - Error case")
|
TEST("Shutter - get_by_id - Error case\t")
|
||||||
{
|
{
|
||||||
device_get_by_id_error_case(kShutterEntry);
|
device_get_by_id_error_case(kShutterEntry);
|
||||||
}
|
}
|
||||||
|
|
||||||
/*--------------------------------------------------------------------------*/
|
/*--------------------------------------------------------------------------*/
|
||||||
|
|
||||||
TEST("Shutter - update - Error case")
|
TEST("Shutter - update - Error case\t")
|
||||||
{
|
{
|
||||||
device_get_by_id_error_case(kShutterEntry);
|
device_get_by_id_error_case(kShutterEntry);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -32,28 +32,28 @@
|
|||||||
|
|
||||||
/*--------------------------------------------------------------------------*/
|
/*--------------------------------------------------------------------------*/
|
||||||
|
|
||||||
TEST("Sprinkler - create set_state remove.")
|
TEST("Sprinkler - create set_state remove\t")
|
||||||
{
|
{
|
||||||
device_create_set_state_remove(kSprinklerEntry, kSprinklerTestNameTrue, kSprinklerTestNameFalse);
|
device_create_set_state_remove(kSprinklerEntry, kSprinklerTestNameTrue, kSprinklerTestNameFalse);
|
||||||
}
|
}
|
||||||
|
|
||||||
/*--------------------------------------------------------------------------*/
|
/*--------------------------------------------------------------------------*/
|
||||||
|
|
||||||
TEST("Sprinkler - create - Error case")
|
TEST("Sprinkler - create - Error case\t")
|
||||||
{
|
{
|
||||||
device_create_error_case(kSprinklerEntry);
|
device_create_error_case(kSprinklerEntry);
|
||||||
}
|
}
|
||||||
|
|
||||||
/*--------------------------------------------------------------------------*/
|
/*--------------------------------------------------------------------------*/
|
||||||
|
|
||||||
TEST("Sprinkler - get_by_id - Error case")
|
TEST("Sprinkler - get_by_id - Error case\t")
|
||||||
{
|
{
|
||||||
device_get_by_id_error_case(kSprinklerEntry);
|
device_get_by_id_error_case(kSprinklerEntry);
|
||||||
}
|
}
|
||||||
|
|
||||||
/*--------------------------------------------------------------------------*/
|
/*--------------------------------------------------------------------------*/
|
||||||
|
|
||||||
TEST("Sprinkler - update - Error case")
|
TEST("Sprinkler - update - Error case\t")
|
||||||
{
|
{
|
||||||
device_get_by_id_error_case(kSprinklerEntry);
|
device_get_by_id_error_case(kSprinklerEntry);
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user