Je regarde un projet de jouet avec Grails, mais j'ai quelques problèmes concernant la base de données HSQLDB. Mon fichier DataSource.groovy est par défaut:Confusion avec Grails base de données de développement
environments {
development {
dataSource {
dbCreate = "create-drop" // one of 'create', 'create-drop','update'
url = "jdbc:hsqldb:mem:devDB"
loggingSql = true
}
}
test {
dataSource {
dbCreate = "update"
url = "jdbc:hsqldb:mem:testDb"
loggingSql = true
}
}
production {
dataSource {
dbCreate = "update"
url = "jdbc:hsqldb:file:prodDb;shutdown=true"
}
}
}
Et je suis en cours d'exécution d'un test simple:
class BookTests extends GrailsUnitTestCase {
protected void setUp() {
super.setUp()
mockDomain (Book)
def book = new Book ("The shinning","Some guy who wrote it")
if (book.save()){
println ("YEAH")
}
else{
print ("AWWWWHH")
}
}
protected void tearDown() {
super.tearDown()
}
void testSomething() {
def books = Book.getAll()
print (books.size())
}
}
Après la book.save()
dans la méthode setUp()
, je reçois un "YEAH", mais le procédé testSomething()
, le books.size()
se révèle être 0.
1 classe de test trouvée dans le paquet 'test'
YEAH 0 Processus terminé avec le code de sortie
Suis-je sur quelque chose? J'avais l'impression que ce HSQLDB a été mis en place pour les tests de développement, mais j'ai eu des problèmes dans les deux environnements (soit avec ce test, soit avec une application très simple.)