Проблема с тестами - PullRequest
       2

Проблема с тестами

0 голосов
/ 07 мая 2010

Эй, я написал LudoGame и теперь мне нравится тестировать его с небольшим GuiceInjection ^^ У меня есть интерфейс IDie для моего кубика. Теперь для игры мне нужен только IDie вместо realdie => в тестах. Я просто даю LudoGame MokeDie для настройки чисел, которые я люблю бросать. У IDie есть только один метод: roll (), который возвращает int. НО у mokeDie теперь есть еще один публичный метод: sendNextNumber () (должно быть понятно, что это делает ^^) Теперь мне нравится @Inject a Die, и если @UseMokeDie перед тестом, я хотел бы пройти MokeDie но я очень новичок в Guice ... Нужны советы, пожалуйста! Спасибо за ответы

Ответы [ 2 ]

3 голосов
/ 07 мая 2010

Для тестов лучше всего ставить вручную создавать экземпляры.Например:

public void testAdvance() {
  MockDie die = new MockDie();
  LudoGame game = new LudoGame(die);
  die.sendNextNumber(5);
  game.advance();
}
0 голосов
/ 08 мая 2010

Вы можете попробовать:

    Injector injector = Guice.createInjector(new AbstractModule() {
        @Override
        protected void configure() {
            bind(IDie.class).toInstance(new MockDie());
        }
    });
    System.out.println(injector.getInstance(IDie.class).getClass().toString());
...