TEST(ArrayDeathTest, IllegalUsageWithSharedData) { float* f = new float[2]; f[0] = 1; f[1] = 2; { FloatArray a; a.setSharedPtr(f, 2); std::vector<float> sv; sv.push_back(1); EXPECT_DEATH(a.assign(&sv[0], 1), "Assertion"); EXPECT_DEATH(a.assign(sv), "Assertion"); EXPECT_DEATH(a.resize(10), "Assertion"); EXPECT_DEATH(a.setPtr(&sv[0], 1), "Assertion"); EXPECT_DEATH(a.reserve(10), "Assertion"); EXPECT_DEATH(a.squeeze(), "Assertion"); #if CVF_ENABLE_TIGHT_ASSERTS == 1 EXPECT_DEATH(a.setSizeZero(), "Assertion"); #endif } }
TEST(ArrayDeathTest, AssignWithIllegalData) { FloatArray a; EXPECT_DEATH(a.assign(NULL, 0), "Assertion"); EXPECT_DEATH(a.assign(NULL, 1), "Assertion"); }