在Guava中,谓词类有一种实用程序方法,称为“或”或“和”,您可以传递一个可迭代的谓词或两个谓词。

我有一个如下的代码示例:

class AccountNamePredicate implements Predicate<Account> {}
class AccountTypePredicate implements Predicate<Account> {}
class AccountManager {
    public Predicate<Account> getPredicate() {
         return Predicates.and(new AccountNamePredicate(), new AccountTypePredicate());
    }
}


我的问题是AccountManager类中的getPredicate方法,如何测试该方法?

如果要声明此方法的返回类型,如何编写正确的代码。我的assert语句没有通过:

assertThat(getPredicate(), is(instanceOf(Predicate.class)));


有什么想法吗?

最佳答案

在您的方案中没有要测试的东西。如果您坚持要测试自己正在测试guava框架(guava开发团队已经做得很好),而不是您的应用程序。

关于java - Google Guava Predicates.or()或Predicates.and()类型,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/24856904/

10-11 14:23