0

如何将我的测试方法重写为 xtend?我已经尝试了几件事,但我失败了。

用 xtend 编写的类

import com.google.common.base.Function

class Generator {
@Property Function<Generator, CharSequence> generateSomething;

generateFoo() {
    if( null != generateSomething) {
        generateSomething.apply(this)
    }
}

用Java编写的TestClass

@Test
public void testX() {

    Generator gen = createGenerator()

    Function<Generator, CharSequence> generateSomething= new Function<Generator, CharSequence>() {
        @Override
        public CharSequence apply( Generator input ) {
            StringConcatenation result = new StringConcatenation();
            result.append(".......");

            return result;
        }
    };

    gen.setGenerateSomething( generateSomething );

}
4

1 回答 1

0

好的,我这样解决了:

import com.google.common.base.Function

class Generator {
@Property private (Generator) => CharSequence generateSomething;

generateFoo() {
    if( null != generateSomething) {
        generateSomething.apply(this)
    }
}

xtend中重写的测试方法:

@Test
def void testX() {

    Generator gen = createGenerator()

    gen.setGenerateSomething['''......''']
}
于 2013-07-04T09:45:17.447 回答