Как да се използва в база данни с памет с инжектиран тест с play java

документацията за възпроизвеждане относно функционални тестове в java показва два режима

  • използване на fakeApplication за указване на персонализирана конфигурация (в база данни с памет в примера)
  • използване на инжектиране на зависимости за конфигуриране на приложението

Бих искал да използвам инжектиране на зависимости, но трябва да задам персонализирана конфигурация при стартиране на приложението, като използването на в база данни с памет.

Не мога да постигна това. Предполагам, че това трябва да се направи в guice builder, но не знам как.


person Seb Cesbron    schedule 05.06.2015    source източник
comment
Погледнахте ли това? playframework.com/documentation/2.4.x/JavaTestingWithDatabases   -  person Mon Calamari    schedule 05.06.2015
comment
тази глава е, ако искате да тествате с база данни, но без приложение. Искам да стартирам приложение с базата данни в паметта   -  person Seb Cesbron    schedule 05.06.2015
comment
Разгледайте github.com/schaloner/deadbolt-2-java/blob/master/test-app/test/ - може да ви помогне да започнете.   -  person Steve Chaloner    schedule 16.06.2015
comment
във вашия пример вие не използвате нито DI, нито процес на настройка на DI, така че не разбирам как може да ми помогне в моя случай   -  person Seb Cesbron    schedule 22.06.2015


Отговори (1)


Предполагам, че използвате Guice за DI.

Дискусията по проблем 4809 в репото на github на рамката трябва да помогне при отговора на вашия въпрос.

Успях да го накарам да работи, използвайки едно от решенията по проблема:

       new GuiceApplicationBuilder()
            .configure((Map) Helpers.inMemoryDatabase())
            .in(Mode.TEST)         
            .build();
person Raquel Guimarães    schedule 20.10.2015