Ich schreibe eine Web-App mit Play 2, Salat (für MongoDB Bindin). Ich würde gerne einige Methoden im Lesson Model testen (zB testen, ob ich die richtige Lektion per ID erhalte). Das Problem ist, dass ich meine aktuelle DB nicht mit Dummy-Unterricht verleumden möchte. Wie kann ich eine gefälschte Datenbank mit Salat and Scala Test verwenden? Hier ist eine meiner Testdateien. Es erstellt zwei Lektionen und fügt sie in die Datenbank ein, und es werden einige Tests durchgeführt.So testen Sie Methoden basierend auf Salat mit ScalaTest
LessonSpec extends FlatSpec with ShouldMatchers {
object FakeApp extends FakeApplication()
val newLesson1 = Lesson(
title = "lesson1",
level = 5,
explanations = "expl1",
questions = Seq.empty)
LessonDAO.insert(newLesson1)
val newLesson2 = Lesson(
title = "lesson2",
level = 5,
explanations = "expl2",
questions = Seq.empty)
LessonDAO.insert(newLesson2)
"Lesson Model" should "be retrieved by level" in {
running(FakeApp) {
assert(Lesson.findByLevel(5).size === 2)
}
}
it should "be of size 0 if no lesson of the level is found" in {
running(FakeApp) {
Lesson.findByLevel(4) should be(Nil)
}
}
it should "be retrieved by title" in {
running(FakeApp) {
Lesson.findOneByTitle("lesson1") should be(Some(Lesson("lesson1", 5, "expl1", List())))
}
}
}
Ich suchte im Internet, aber ich kann keinen guten Link oder ein Projekt finden, die Salat und ScalaTest verwenden.
Vielen Dank für Ihre Antwort, es hat sehr geholfen! Nur eine Sache, um vorhandene Daten zu löschen, können Sie diese Methode verwenden: db.dropDatabase – TeaBough