Когда я запускаю этот выход спецификации, я получаю «Ожидаемый 0 равным 2.» 2 - это правильная длина объектов модели в моем приборе, поэтому FakeServer Sinon правильно реагирует на насмешливый ответ. Я не могу понять, почему моя коллекция имеет нулевые объекты после выборки. Любая помощь могла бы быть полезна!Массивная коллекция fetch не заполняется в Jasmine + Sinon spec
FYI: это исходит из следующих по Backbone Sinon + жасмин учебник здесь: http://tinnedfruit.com/2011/03/25/testing-backbone-apps-with-jasmine-sinon-2.html
Spec:
describe "Todos collection", ->
describe "when fetching models from the server", ->
beforeEach ->
@todo = sinon.stub(window, "Todo")
@todos = new Todos()
@fixture = @fixtures.Todos.valid
@server = sinon.fakeServer.create()
@server.respondWith "GET", "/todos", @validResponse(@fixture)
afterEach ->
@todo.restore()
@server.restore()
it "should parse todos from the response", ->
@todos.fetch()
@server.respond()
expect(@todos.length).toEqual @fixture.response.todos.length
Модель:
class window.Todos extends Backbone.Collection
model: window.Todo
url: "/todos"
comparator: (todo) ->
todo.get('priority')
parse: (res) ->
res.response.todos
EDIT:
Buck Дойль внизу помог мне понять, что проблемы с spec нет. У меня есть какая-то проблема с моей конфигурацией Jasmine Headless Webkit, и если спецификации работают с автономным Jasmine, они проходят.
кого есть ссылка на то, что синтаксических средств @? –