Path: blob/master/libraries/AP_Common/tests/test_cpp.cpp
9371 views
#include <AP_gtest.h>1#include <AP_Common/AP_Common.h>23int hal = 0;45class DummyDummy {6public:7double d = 42.0;8uint8_t count = 1;9};1011TEST(AP_Common, TEST_CPP)12{13DummyDummy * test_new = NEW_NOTHROW DummyDummy[1];14EXPECT_FALSE(test_new == nullptr);15EXPECT_TRUE(sizeof(test_new) == 8);16EXPECT_FLOAT_EQ(test_new->count, 1);17EXPECT_FLOAT_EQ(test_new->d, 42.0);1819DummyDummy * test_d = (DummyDummy*) ::operator new (sizeof(DummyDummy));20EXPECT_FALSE(test_d == nullptr);21EXPECT_TRUE(sizeof(test_d) == 8);22EXPECT_EQ(test_d->count, 0); // constructor isn't called23EXPECT_FLOAT_EQ(test_d->d, 0.0);2425DummyDummy * test_d2 = NEW_NOTHROW DummyDummy;26EXPECT_TRUE(sizeof(test_d2) == 8);27EXPECT_EQ(test_d2->count, 1);28EXPECT_FLOAT_EQ(test_d2->d, 42.0);2930delete[] test_new;31delete test_d;32delete test_d2;33}3435AP_GTEST_MAIN()363738