GTest 自动模拟 Class

GTest Automatic Mock Class

有一段时间我的旧项目使用 gmock_gen.py 自动生成模拟 类(这是 http://code.google.com/p/cppclean/ 的一个旧项目,它似乎不活跃,它依赖于 python2 我们不想要)

我的问题: gtest 环境中是否有任何功能与 gmock_gen.py 相同并支持 python3,或者如果我们没有或不想使用 [=],gmock_gen.py 的替代方案是什么? 21=]?

此致, 努诺

看来转换成python3很简单

你只需要做两件事,而且只需要一件(第 2 步):

  1. 你可以使用python工具2to3将python2码转换成python3码(可选)

  2. 只更改一行以防止执行脚本时出现异常:

    gmock_gtest/generator/cpp/ast.py:908

    更改自:

     def _GetNextToken(self):
         if self.token_queue:
             return self.token_queue.pop()
         return next(self.tokens)
    

     def _GetNextToken(self):
         if self.token_queue:
             return self.token_queue.pop()
         return next(self.tokens, None)
    

这会奏效。