benchmarkinterceptortest.groovy

来自「Groovy动态语言 运行在JVM中的动态语言 可以方便的处理业务逻辑变化大的业」· GROOVY 代码 · 共 36 行

GROOVY
36
字号
package groovy.lang

/**
* Test for the BenchmarkInterceptor
* @author Dierk Koenig
**/
class BenchmarkInterceptorTest extends GroovyTestCase{

    Interceptor benchmarkInterceptor
    def proxy

    void setUp() {
        benchmarkInterceptor = new BenchmarkInterceptor()
        proxy = ProxyMetaClass.getInstance(Date.class)
        proxy.setInterceptor(benchmarkInterceptor)
    }

    void testSimpleInterception() {
        proxy.use {
             def x = new Date(0)
             x++
        }
        def stats = benchmarkInterceptor.statistic()
        assertEquals 2, stats.size()
        assert stats.find{it[0] == 'ctor'}
        assert stats.find{it[0] == 'next'}
        assert stats.every{it[1] == 1}
        assert stats.every{it[2] < 200}
    }


}



⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?