Почему тесты playframework не работают с версией 2.1.0?

Я пытаюсь следовать руководству по игровой среде, но тесты не проходят, когда я добираюсь до раздела где проводят тесты. Когда я смотрю на ошибку в своем браузере, он говорит, что не может найти индексное представление. Я не уверен, почему это так. Я предполагаю, что они используют более старую версию в видеоуроке, который находится на их веб-сайте.

Если вы знаете, почему ломается последняя версия (2.1.0), не могли бы вы объяснить мне это, пожалуйста?

package controllers;

import play.*;
import play.mvc.*;
import views.html.*;


public class Application extends Controller {

    public static Result index() {
        return ok(index.render("Hello World."));
    }

}

Это файл, который вызывает сбой теста. Когда я смотрю в IntelliJ, ошибка говорит: «Не удается разрешить индекс символа».

@Test
public void renderTemplate() {
    Content html = views.html.index.render("Hello World.");
    assertThat(contentType(html)).isEqualTo("text/html");
    assertThat(contentAsString(html)).contains("Your new application is ready.");
}

Это код, который находится в файле index.scala.html.

@(message: String)

@main("Welcome to Play 2.1") {

    @play20.welcome(message, style = "Java")

}

Это тест, который терпит неудачу. Если я избавлюсь от такого индекса, return ok("Hello World."); и внести соответствующие коррективы в тест, все пройдет. Но я хотел бы знать, почему они потерпели неудачу в первую очередь. Тем более, что почти все пришло прямо из коробки. Кроме того, все работает без ошибок. Я вижу индексную страницу при запуске сервера, но по какой-то причине, когда я пытаюсь запустить тесты, мне говорят, что тест не может видеть индексный файл.


person j.jerrod.taylor    schedule 07.03.2013    source источник
comment
Я думаю, что это может быть ошибка 2.1.0, которая исправлена ​​​​для 2.1.1. Можете ли вы предоставить тестовый код, который дает сбой, а также причину ошибки или сбоя?   -  person James Ward    schedule 07.03.2013
comment
@JamesWard Тест не проходит из-за файла index.scala.html.   -  person j.jerrod.taylor    schedule 07.03.2013
comment
@JamesWard Я добавил код из файла и тест, который приводил к сбою.   -  person j.jerrod.taylor    schedule 07.03.2013
comment
Вы изменили свой index.scala.html? Если у него все еще есть приветственное сообщение, оно должно работать, поскольку html содержит Ваше новое приложение готово.   -  person Carsten    schedule 07.03.2013
comment
Ошибка IntelliJ связана с тем, что шаблон еще не скомпилирован в класс.   -  person James Ward    schedule 07.03.2013


Ответы (1)


Похоже на ошибку в учебнике. Похоже, что тест ищет неправильную строку. Попробуйте изменить последний актив на:

assertThat(contentAsString(html)).contains("Hello World.");
person James Ward    schedule 07.03.2013