Tests for vendor-specific status code management

This commit is contained in:
Pavel Kirienko
2015-03-20 00:32:24 +03:00
parent a63c9510fc
commit 79d167a84c
@@ -70,6 +70,22 @@ TEST(NodeStatusProvider, Basic)
ASSERT_TRUE(status_sub.collector.msg.get()); // Was published at startup
ASSERT_EQ(uavcan::protocol::NodeStatus::STATUS_OK, status_sub.collector.msg->status_code);
ASSERT_EQ(0, status_sub.collector.msg->vendor_specific_status_code);
ASSERT_GE(1, status_sub.collector.msg->uptime_sec);
/*
* Altering the vendor-specific status code, forcePublish()-ing it and checking the result
*/
ASSERT_EQ(0, nsp.getVendorSpecificStatusCode());
nsp.setVendorSpecificStatusCode(1234);
ASSERT_EQ(1234, nsp.getVendorSpecificStatusCode());
ASSERT_LE(0, nsp.forcePublish());
nodes.spinBoth(uavcan::MonotonicDuration::fromMSec(10));
ASSERT_EQ(uavcan::protocol::NodeStatus::STATUS_OK, status_sub.collector.msg->status_code);
ASSERT_EQ(1234, status_sub.collector.msg->vendor_specific_status_code);
ASSERT_GE(1, status_sub.collector.msg->uptime_sec);
/*