Add test for shutter objects.
All checks were successful
continuous-integration/drone/push Build is passing
All checks were successful
continuous-integration/drone/push Build is passing
This commit is contained in:
@@ -107,6 +107,7 @@ int create_outlet(devices_manager_t *dm, struct json_object *node)
|
||||
|
||||
device_set_id(outlet->device, ++dm->outlets_max_id);
|
||||
qlist_addlast(dm->outlets, outlet, sizeof(outlet_dio_t));
|
||||
free(outlet); // duplicated by qlist
|
||||
|
||||
return 0;
|
||||
}
|
||||
@@ -217,6 +218,7 @@ int create_shutter(devices_manager_t *dm, struct json_object *node)
|
||||
|
||||
device_set_id(shutter->outlet_dio->device, ++dm->shutters_max_id);
|
||||
qlist_addlast(dm->shutters, shutter, sizeof(shutter_t));
|
||||
free(shutter); // duplicated by qlist
|
||||
|
||||
return 0;
|
||||
}
|
||||
@@ -225,16 +227,45 @@ int create_shutter(devices_manager_t *dm, struct json_object *node)
|
||||
|
||||
int remove_shutter(devices_manager_t *dm, uint16_t id)
|
||||
{
|
||||
#warning "TODO"
|
||||
return 0;
|
||||
qlist_obj_t obj;
|
||||
shutter_t *shutter;
|
||||
int position = 0;
|
||||
|
||||
memset((void *)&obj, 0, sizeof(obj));
|
||||
|
||||
while (qlist_getnext(dm->shutters, &obj, true))
|
||||
{
|
||||
shutter = obj.data;
|
||||
if (shutter->outlet_dio->device->id == id)
|
||||
{
|
||||
qlist_removeat(dm->shutters, position);
|
||||
return 0;
|
||||
}
|
||||
position++;
|
||||
}
|
||||
|
||||
return -1;
|
||||
}
|
||||
|
||||
/*--------------------------------------------------------------------------*/
|
||||
|
||||
int update_shutter(devices_manager_t *dm, uint16_t id, struct json_object *node)
|
||||
{
|
||||
#warning "TODO"
|
||||
return 0;
|
||||
qlist_obj_t obj;
|
||||
shutter_t *shutter;
|
||||
|
||||
memset((void *)&obj, 0, sizeof(obj));
|
||||
|
||||
while (qlist_getnext(dm->shutters, &obj, false))
|
||||
{
|
||||
shutter = obj.data;
|
||||
if (shutter->outlet_dio->device->id == id)
|
||||
{
|
||||
return shutter_from_json(shutter, node);
|
||||
}
|
||||
}
|
||||
|
||||
return -1;
|
||||
}
|
||||
|
||||
/*--------------------------------------------------------------------------*/
|
||||
|
||||
Reference in New Issue
Block a user