Pact
取决于称为make-error-cause
的程序包。它在index.js
中声明一个方法,然后立即声明一个具有相同名称的var。
玩笑/打字稿不喜欢这样。当使用Jest
运行时,我们所做的一切都不会让我们的测试运行,我们不断收到此错误:
SyntaxError: /Users/user1234/Documents/Workspace/aws_stack/node_modules/make-error-cause/dist/index.js: Identifier 'makeErrorCause' has already been declared (12:4)
这是make-error-cause
的index.js
中的代码段:
var makeError = require('make-error');
function makeErrorCause(value, _super) {
if (_super === void 0) { _super = makeErrorCause.BaseError; }
return makeError(value, _super);
}
var makeErrorCause;
我们尝试过@pact-foundation/pact
和pact-jest
都存在相同的问题。
版本:“ @ pact-foundation / pact”:“ ^ 9.10.0”“ typescript”:“ ^ 3.8.3”“笑话”:“ 24.9.0”“ ts-jest”:“ ^ 24.3.0”“ @ types / jest”:“ ^ 24.0.25”
如果我将var makeErrorCause;
更改为var makeErrorCause2;
,问题将消失。显然,这对尝试构建它的任何其他人都无效....
感谢任何帮助。
嗯,真糟!此问题应属于https://github.com/pact-foundation/pact-js。看起来是致命的-您能在那儿提出我们可以使用的复制品吗?
我们的构建(两个项目)在每次提交中都对Jest进行测试,因此很可能是我们需要进行排序的依赖关系版本的组合。