1
template <typename T> class ClassA : public ::testing::Test {
public:
ClassA() {}
constexpr static uint ZERO = 0;
};
typedef ::testing::Types<ClassB, ClassC, ClassD> ParamTypes;
TYPED_TEST_CASE(ClassA, ParamTypes);
template <> constexpr uint ClassA<test::ClassB>::ZERO;
template <> constexpr uint ClassA<test::ClassC>::ZERO;
template <> constexpr uint ClassA<test::ClassD>::ZERO;
TYPED_TEST(ClassA, testSomething) { ASSERT_EQ(ClassA::ZERO, 0); } ??
TYPED_TEST(ClassA, testSomething) { ASSERT_EQ(this->ZERO, 0); } ??
Was ist der richtige Weg, um statische constexpr typisierte Test mit Google-Test zu verwenden?Verwenden eines statischen consExpr in gtest typisierten Tests
denke ich beide Formen Sie legitim ... –
@ W.F präsentiert sind. sie arbeiten nicht – Lorac
Ich dachte, dass Sie fragen, ob man auf statischen consExpr durch 'this->' zugreifen kann. Meine Vermutung ist, dass es nicht funktioniert, wenn Sie an die unvollständige Testvorlage übergeben ... "ClassA" ist als Vorlage gedacht und sollte daher darauf spezialisiert sein, als vollständiger Typ interpretiert zu werden ... –