libuav original
Dependents: UAVCAN UAVCAN_Subscriber
event.cpp
00001 /* 00002 * Copyright (C) 2015 Pavel Kirienko <pavel.kirienko@gmail.com> 00003 */ 00004 00005 #include <gtest/gtest.h> 00006 #include <uavcan/protocol/dynamic_node_id_server/event.hpp> 00007 #include "event_tracer.hpp" 00008 00009 00010 TEST(dynamic_node_id_server_EventTracer, EventCodeToString) 00011 { 00012 using namespace uavcan::dynamic_node_id_server; 00013 00014 // Simply checking some error codes 00015 ASSERT_STREQ("Error", IEventTracer::getEventName(TraceError)); 00016 ASSERT_STREQ("RaftAppendEntriesCallFailure", IEventTracer::getEventName(TraceRaftAppendEntriesCallFailure)); 00017 ASSERT_STREQ("RaftDiscoveryReceived", IEventTracer::getEventName(TraceRaftDiscoveryReceived)); 00018 ASSERT_STREQ("DiscoveryNodeRestartDetected", IEventTracer::getEventName(TraceDiscoveryNodeRestartDetected)); 00019 ASSERT_STREQ("AllocationUnexpectedStage", IEventTracer::getEventName(TraceAllocationUnexpectedStage)); 00020 } 00021 00022 00023 TEST(dynamic_node_id_server_EventTracer, EnvironmentSelfTest) 00024 { 00025 using namespace uavcan::dynamic_node_id_server; 00026 00027 EventTracer tracer; 00028 00029 ASSERT_EQ(0, tracer.getNumEvents()); 00030 00031 tracer.onEvent(TraceRaftAppendEntriesCallFailure, 123); 00032 ASSERT_EQ(1, tracer.getNumEvents()); 00033 tracer.onEvent(TraceRaftAppendEntriesCallFailure, -456); 00034 ASSERT_EQ(2, tracer.getNumEvents()); 00035 tracer.onEvent(TraceError, -0xFFFFFFFFFFFFFFFLL); 00036 ASSERT_EQ(3, tracer.getNumEvents()); 00037 00038 ASSERT_EQ(0, tracer.countEvents(TraceAllocationActivity)); 00039 ASSERT_EQ(2, tracer.countEvents(TraceRaftAppendEntriesCallFailure)); 00040 ASSERT_EQ(1, tracer.countEvents(TraceError)); 00041 00042 ASSERT_EQ(-456, tracer.getLastEventArgumentOrFail(TraceRaftAppendEntriesCallFailure)); 00043 00044 ASSERT_EQ(-0xFFFFFFFFFFFFFFFLL, tracer.getLastEventArgumentOrFail(TraceError)); 00045 }
Generated on Tue Jul 12 2022 17:17:31 by 1.7.2