#include #include "oi/ContainerInfo.h" TEST(ContainerInfoTest, matcher) { ContainerInfo info{"std::vector", SEQ_TYPE, "vector"}; EXPECT_TRUE(info.matches("std::vector")); EXPECT_TRUE(info.matches("std::vector>")); EXPECT_TRUE(info.matches("std::vector")); EXPECT_FALSE(info.matches("vector")); EXPECT_FALSE(info.matches("non_std::vector")); EXPECT_FALSE(info.matches("std::vector_other")); EXPECT_FALSE(info.matches("std::list>")); EXPECT_FALSE(info.matches("std::vector::value_type")); EXPECT_FALSE(info.matches("std::vector::value_type")); EXPECT_FALSE(info.matches("std::vector>::value_type")); // Uh-oh, here's a case that I don't think regexes are powerful enough to // match: EXPECT_FALSE(info.matches("std::vector::subtype")); }