src.dualinventive.com/jjacobs/dinetrpcll-sniffer/libdi/tests/rpc_sensor.cpp

93 lines
3.9 KiB
C++

#include <di/rpc/sensor.h>
#include <gtest/gtest.h>
#include "tests/rpc_serialize.h"
#include "rpc_sensor.h"
TEST(rpc_sensor, INFO_BATTERY_VOLTAGE_ITEM)
{
auto writer = TEST_RPC_SERIALIZE_WRITER;
/* Battery 1 voltage */
ASSERT_EQ(1U, sensor_info_INFO_BATTERY_VOLTAGE_ITEM[0].uid);
ASSERT_STREQ("bat1-voltage", sensor_info_INFO_BATTERY_VOLTAGE_ITEM[0].label);
ASSERT_EQ(DI_RPC_DATA_TYPE_NUMBER, sensor_info_INFO_BATTERY_VOLTAGE_ITEM[0].data_type);
/* Battery 2 voltage */
ASSERT_EQ(3U, sensor_info_INFO_BATTERY_VOLTAGE_ITEM[1].uid);
ASSERT_STREQ("bat2-voltage", sensor_info_INFO_BATTERY_VOLTAGE_ITEM[1].label);
ASSERT_EQ(DI_RPC_DATA_TYPE_NUMBER, sensor_info_INFO_BATTERY_VOLTAGE_ITEM[1].data_type);
/* Battery 3 voltage */
ASSERT_EQ(5U, sensor_info_INFO_BATTERY_VOLTAGE_ITEM[2].uid);
ASSERT_STREQ("bat3-voltage", sensor_info_INFO_BATTERY_VOLTAGE_ITEM[2].label);
ASSERT_EQ(DI_RPC_DATA_TYPE_NUMBER, sensor_info_INFO_BATTERY_VOLTAGE_ITEM[2].data_type);
/* Battery 4 voltage */
ASSERT_EQ(7U, sensor_info_INFO_BATTERY_VOLTAGE_ITEM[3].uid);
ASSERT_STREQ("bat4-voltage", sensor_info_INFO_BATTERY_VOLTAGE_ITEM[3].label);
ASSERT_EQ(DI_RPC_DATA_TYPE_NUMBER, sensor_info_INFO_BATTERY_VOLTAGE_ITEM[3].data_type);
di_rpc_serialize_result_array(writer->get(), sensor_info_INFO_BATTERY_VOLTAGE_ITEM, DI_ARRAY_SIZE(sensor_info_INFO_BATTERY_VOLTAGE_ITEM));
}
TEST(rpc_sensor, INFO_BATTERY_STATE_ITEM)
{
auto writer = TEST_RPC_SERIALIZE_WRITER;
/* Battery 1 state */
ASSERT_EQ(2U, sensor_info_INFO_BATTERY_STATE_ITEM[0].uid);
ASSERT_STREQ("bat1-state", sensor_info_INFO_BATTERY_STATE_ITEM[0].label);
ASSERT_EQ(DI_RPC_DATA_TYPE_ENUM, sensor_info_INFO_BATTERY_STATE_ITEM[0].data_type);
/* Battery 2 state */
ASSERT_EQ(4U, sensor_info_INFO_BATTERY_STATE_ITEM[1].uid);
ASSERT_STREQ("bat2-state", sensor_info_INFO_BATTERY_STATE_ITEM[1].label);
ASSERT_EQ(DI_RPC_DATA_TYPE_ENUM, sensor_info_INFO_BATTERY_STATE_ITEM[1].data_type);
/* Battery 3 state */
ASSERT_EQ(6U, sensor_info_INFO_BATTERY_STATE_ITEM[2].uid);
ASSERT_STREQ("bat3-state", sensor_info_INFO_BATTERY_STATE_ITEM[2].label);
ASSERT_EQ(DI_RPC_DATA_TYPE_ENUM, sensor_info_INFO_BATTERY_STATE_ITEM[2].data_type);
/* Battery 4 state */
ASSERT_EQ(8U, sensor_info_INFO_BATTERY_STATE_ITEM[3].uid);
ASSERT_STREQ("bat4-state", sensor_info_INFO_BATTERY_STATE_ITEM[3].label);
ASSERT_EQ(DI_RPC_DATA_TYPE_ENUM, sensor_info_INFO_BATTERY_STATE_ITEM[3].data_type);
di_rpc_serialize_result_array(writer->get(), sensor_info_INFO_BATTERY_STATE_ITEM, DI_ARRAY_SIZE(sensor_info_INFO_BATTERY_STATE_ITEM));
}
TEST(rpc_sensor, INFO_CHARGER_VOLTAGE_ITEM)
{
auto writer = TEST_RPC_SERIALIZE_WRITER;
/* Charger 1 voltage */
ASSERT_EQ(9U, sensor_info_INFO_CHARGER_VOLTAGE_ITEM[0].uid);
ASSERT_STREQ("charger1-voltage", sensor_info_INFO_CHARGER_VOLTAGE_ITEM[0].label);
ASSERT_EQ(DI_RPC_DATA_TYPE_NUMBER, sensor_info_INFO_CHARGER_VOLTAGE_ITEM[0].data_type);
/* Charger 2 voltage */
ASSERT_EQ(11U, sensor_info_INFO_CHARGER_VOLTAGE_ITEM[1].uid);
ASSERT_STREQ("charger2-voltage", sensor_info_INFO_CHARGER_VOLTAGE_ITEM[1].label);
ASSERT_EQ(DI_RPC_DATA_TYPE_NUMBER, sensor_info_INFO_CHARGER_VOLTAGE_ITEM[1].data_type);
di_rpc_serialize_result_array(writer->get(), sensor_info_INFO_CHARGER_VOLTAGE_ITEM, DI_ARRAY_SIZE(sensor_info_INFO_CHARGER_VOLTAGE_ITEM));
}
TEST(rpc_sensor, INFO_CHARGER_STATE_ITEM)
{
auto writer = TEST_RPC_SERIALIZE_WRITER;
/* Charger 1 state */
ASSERT_EQ(10U, sensor_info_INFO_CHARGER_STATE_ITEM[0].uid);
ASSERT_STREQ("charger1-state", sensor_info_INFO_CHARGER_STATE_ITEM[0].label);
ASSERT_EQ(DI_RPC_DATA_TYPE_ENUM, sensor_info_INFO_CHARGER_STATE_ITEM[0].data_type);
/* Charger 2 state */
ASSERT_EQ(12U, sensor_info_INFO_CHARGER_STATE_ITEM[1].uid);
ASSERT_STREQ("charger2-state", sensor_info_INFO_CHARGER_STATE_ITEM[1].label);
ASSERT_EQ(DI_RPC_DATA_TYPE_ENUM, sensor_info_INFO_CHARGER_STATE_ITEM[1].data_type);
di_rpc_serialize_result_array(writer->get(), sensor_info_INFO_CHARGER_STATE_ITEM, DI_ARRAY_SIZE(sensor_info_INFO_CHARGER_STATE_ITEM));
}