2014-09-04 44 views
2

我无法弄清楚使用gmock在groovy中的部分嘲笑。我有以下代码:部分模拟使用groovy gmock v 0.8

class Foo { 
    Integer val 
    Foo() { 
     this.val = 4; 
    } 

    Integer printHello() { 
     return getValue() 
    } 

    Integer getValue() { 
     return val+1; 
    } 
} 

和测试用例:

class FooTester { 
    @Test 
    void test() { 
     def lol = new Foo(4) 
     def mocker = mock(lol) 
     mocker.getValue().returns(5) 

     play { 
     assertEquals(5, lol.printHello()) 
     } 
    } 
} 

我指的是文档here。断言与java.lang.AssertionError失败:验证期望不匹配:

可能出现什么问题?

+0

会发生什么事,如果你嘲笑为'mocker.value.returns(5)',使用属性语法,而不是方法的语法? – BalRog 2014-10-17 00:04:17

回答

0

文档的快速检查后,我想这应该工作:

class FooTester { 
    @Test 
    void test() { 
     def lol = new Foo(4) 
     mock(lol).value.returns(5) 

     play { 
     assertEquals(5, lol.printHello()) 
     } 
    } 
}