2013-01-04 6 views
7

Ho scritto alcuni test per la mia app meteorica. Poiché hanno metodi di installazione e rimozione che rimuovono tutti i documenti o li popolano con nuovi, mi piacerebbe eseguirli su un database dedicato ai test.Come impostare un database di test e sviluppo separato in meteora

Ho notato che il db è memorizzato in .meteor/local/db. Idealmente mi piacerebbe avere db_test e db_dev accessibili da diverse porte.

È possibile?

risposta

9

Dovrai eseguire due processi mongod, ad es.

# Dev 
mongod --port 27017 --dbpath .meteor/local/db_dev 

# Testing 
mongod --port 28017 --dbpath .meteor/local/db_test 


[Edit] Questo dovrebbe funzionare. Utilizzo del progetto di esempio della classifica:

MONGO_URL="mongodb://127.0.0.1:27017/appname_dev" meteor run --port 3000 
MONGO_URL="mongodb://127.0.0.1:28017/appname_test" meteor run --port 4000 

Questo utilizzerà database separati.

+0

Sarebbe l'ideale. Comunque per avviare il processo di mongo in un progetto meteorico devo usare il comando meteor, che ha un flag --port ma non c'è modo di specificare un database diverso - per quanto ne so. Grazie comunque. –

+0

Aggiornato la mia risposta. Fateci sapere come va. –

+0

Hai capito che funziona con la classifica? Ho appena provato nel mio progetto e quando eseguo i comandi sulla seconda riga ottengo alcuni errori: Inaspettato mongo exit code 100. Riavvio. Impossibile avviare mongod. Verificare la presenza di altri processi in ascolto sulla porta 4002 o altre meteore in esecuzione nello stesso progetto. Comincio a pensare che i ragazzi di Meteor abbiano una filosofia diversa per i test e io soffro solo di una sbornia di Rails;) Grazie ancora per il tuo contributo. Mi ha mostrato dove dovrei esplorare. –