mirror of https://github.com/ArduPilot/ardupilot
36 lines
837 B
C++
36 lines
837 B
C++
#include <AP_gtest.h>
|
|
|
|
int hal = 0;
|
|
|
|
class DummyDummy {
|
|
public:
|
|
double d = 42.0;
|
|
uint8_t count = 1;
|
|
};
|
|
|
|
TEST(AP_Common, TEST_CPP)
|
|
{
|
|
DummyDummy * test_new = new DummyDummy[1];
|
|
EXPECT_FALSE(test_new == nullptr);
|
|
EXPECT_TRUE(sizeof(test_new) == 8);
|
|
EXPECT_FLOAT_EQ(test_new->count, 1);
|
|
EXPECT_FLOAT_EQ(test_new->d, 42.0);
|
|
|
|
DummyDummy * test_d = (DummyDummy*) ::operator new (sizeof(DummyDummy));
|
|
EXPECT_FALSE(test_d == nullptr);
|
|
EXPECT_TRUE(sizeof(test_d) == 8);
|
|
EXPECT_EQ(test_d->count, 0); // constructor isn't called
|
|
EXPECT_FLOAT_EQ(test_d->d, 0.0);
|
|
|
|
DummyDummy * test_d2 = new DummyDummy;
|
|
EXPECT_TRUE(sizeof(test_d2) == 8);
|
|
EXPECT_EQ(test_d2->count, 1);
|
|
EXPECT_FLOAT_EQ(test_d2->d, 42.0);
|
|
|
|
delete[] test_new;
|
|
delete test_d;
|
|
delete test_d2;
|
|
}
|
|
|
|
AP_GTEST_MAIN()
|