我们目前正在使用Microsoft.VisualStudio.TestTools.CppUnitTestFramework,它使用宏定义了测试类,例如:
TEST_CLASS(Class1)
{
public:
TEST_METHOD(Method1)
{
Logger::WriteMessage("In Method1");
Assert::AreEqual(0, 0);
}
};
我很难获取clang格式来“理解” TEST_CLASS是一个结构/类定义。尝试了几件事之后,我目前得到的最佳解决方案是定义两个新的宏来包装该类:
#define START_TEST(className) TEST_CLASS(className){
#define END_TEST };
并将它们定义为块的开始/结束:
MacroBlockBegin: ^START_TEST.*$
MacroBlockEnd: ^END_TEST.*$
我想知道是否有一个更好的解决方案,不涉及添加更多的宏...