Dato che Ember ha raggiunto 1.0.0
recentemente, volevo iniziare a usarlo con i test. Sto usando Yeoman 1.0 con Karma. Voglio modelli di test unitari ma trovo molto difficile realizzare l'isolamento.Test unitario in Ember.js
L'esempio che ho ora è:
describe("Expense", function() {
return it("has a computed property called `explained`", function() {
var expense = App.Expense.create({
name: "My first expense",
value: 34
});
return expect(expense.get("explained")).to.equal("My first expense -- 34");
});
});
A partire dal 1.0.0
, ottengo il seguente errore:
Error: You should not call `create` on a model. Instead, call
`store.createRecord` with the attributes you would like to set.
Come devo accedere negozio al fine di creare un'istanza di modello? Più idealmente, come posso semplicemente generare modelli come questo senza nemmeno ricorrere al negozio, è fattibile? Non ha senso creare l'intera app solo per testare un modello, IMO.
Grazie.
L'unico il modo in cui posso pensare è quello di cercare il negozio tramite l'app .__ container __. lookup ('store: main'). Forse si può anche dare un'occhiata a come lo fanno in ember-data DS.Model test –
Per coloro che cercano una risposta, questo hack funziona. Contrassegnarlo come risolto. – josemota