Невозможно запустить базовый тест JMockit

Это моя первая попытка использования jmockit. У меня есть проект gradle (весенняя загрузка). Гарантировал, что jmockit является первым в тестовом пути к классам.

compile "net.bytebuddy:byte-buddy:1.4.5"

testCompile "org.jmockit:jmockit:1.8"
testCompile "org.springframework.boot:spring-boot-starter-test"

И тогда я хочу подделать TranslatorFactory такой, что он возвращает подделку Translator,

Класс TranslatorFactory - это что-то вроде

public class TranslatorFactory {
  public ArgTranslator getTranslator(Class<?> aClass) {
    return new ArgTranslator() {
      @Override
      public Object translate(String arg) {
        return "Real translation " + arg;
      }
    };
  }
}

И мой тестовый класс отмечен @RunWith(JMockit.class)

@Test
  public void testTranslatorFactory() {
    new MockUp<TranslatorFactory>() {
      public ArgTranslator getTranslator(Class<?> baseClass) {
        return new MockUp<ArgTranslator>() {
          public Object translate(String arg) {
            return "Fake translation " + arg;
          }
        }.getMockInstance();
      }
    };

    assertEquals("Fake translation something", new TranslatorFactory().getTranslator(String
        .class).translate("something"));
  }

Но я просто не понимаю, как это работает. Тест всегда не проходит. (Работает в IntelliJ)

org.junit.ComparisonFailure: 
Expected :Fake translation something
Actual   :Real translation something

Любая помощь / указатели будут с благодарностью.

0 ответов

Другие вопросы по тегам