mocktest.groovy
来自「Groovy动态语言 运行在JVM中的动态语言 可以方便的处理业务逻辑变化大的业」· GROOVY 代码 · 共 96 行
GROOVY
96 行
package groovy.mock
import groovy.mock.GroovyMock
import junit.framework.AssertionFailedError
class MockTest extends GroovyTestCase {
def mock
void setUp() {
mock = GroovyMock.newInstance()
}
void testASimpleExpectationCanBeSetAndMet() {
// expectation
mock.doSomething("hello")
// execute
mock.instance.doSomething("hello")
// verify
mock.verify()
}
void testASimpleExpectationCanBeSetAndFailed() {
// expectation
mock.doSomething("hello")
// execute
try {
mock.instance.doSomething("goodbye")
fail("expected exception")
}
catch (RuntimeException goodException) {
}
}
void testASimpleExpectationCanBeSetButNeverCalledSoVerifyFails() {
// expectation
mock.doSomething("hello")
// execute
// don't call it
// verify
try {
mock.verify()
fail("should not have verified")
}
catch (AssertionFailedError goodException) {
}
}
void testAnExpectationWithAClosureGivesErrorIFCalledAndClosureFails() {
mock.doSomething( {arg -> assert arg=="poo" } )
// verify
try {
mock.instance.doSomething("hello")
fail("Expected verify to fail");
}
catch (RuntimeException ex) {
//expected
}
}
/*
* was GROOVY-76
*/
void testAnExpectationwithAClosurePassesIfClosurePasses() {
mock.doSomething {arg -> assert arg=="hello" }
// execute
mock.instance.doSomething("hello")
//verify
mock.verify()
}
void testAnExpectationWithAClosureGivesErrorIFNotCalled() {
mock.doSomething( {arg -> assert arg=="poo" } )
// verify
try {
mock.verify()
fail("Expected verify to fail");
}
catch (AssertionFailedError ex) {
//expected
}
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?