gpt4 book ai didi

java - Hamcrest 匹配枚举值?

转载 作者:行者123 更新时间:2023-11-30 06:58:18 26 4
gpt4 key购买 nike

我可能在这里遗漏了一些非常明显的东西,当我看到它时,我会打自己的耳光。

我正在尝试使用 Hamcrest 测试返回 Enum 的方法的输出:

@Test
public void testGetBuildInfo() throws Exception {
BuildType build = repository.getBuildInfo(169552, null, 582892L);
assertThat(build.getPolicyComplianceStatus(), IsEqual.equalTo(PolicyComplianceType.DID_NOT_PASS));
}

但我收到以下错误:

The method assertThat(T, Matcher<? super T>) in the type MatcherAssert is not applicable for the arguments (PolicyComplianceType, Matcher<PolicyComplianceType>)

有问题的 BuildType 的签名:

public PolicyComplianceType getPolicyComplianceStatus();

枚举 PolicyComplianceType:

  public enum PolicyComplianceType {
CALCULATING("Calculating..."),
NOT_ASSESSED("Not Assessed"),
DID_NOT_PASS("Did Not Pass");
...
...
}

我没看到什么?

最佳答案

假设这是一个编译器错误——它看起来是——而不是运行时错误,我必须假设你在不同的包中有两种名为 PolicyComplianceType 的不同类型,并且 BuildType.getBuildInfo() 返回一个与在您的测试类中 import 不同的类型。如果这与您当前的代码不一致,则 BuildType 类可能已过时,需要重新编译(似乎不太可能是过时的测试类)。同样,编译器可能依赖于类 BuildType 的过时版本,即使该类的当前是最新的。

关于java - Hamcrest 匹配枚举值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32829430/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com