我正在尝试为一些用 C 编写的遗留代码编写单元测试。我遇到的问题是我经常必须重新定义实际代码中使用的结构,以便在存根代码中使用它们。
例如,假设这是带有我要存根的函数的头文件:
typedef struct {
int value;
int type;
int format;
} some_struct_t;
int some_function(some_struct_t *pStruct);
在存根代码中,我将不得不重新定义some_struct_t以便它在存根实现和单元测试中可见。
在实践中,结构比这个例子大得多。有没有办法避免这种重复?