I have a specification for the Backbone collection (todos, of course) that uses Sinon to fake a server response with binding data. This runs with standalone Jasmine, but does not work under the Jasmine Headless Webkit setup.
Error:
Todos collection when fetching models from the server should parse todos from the response. Expected 0 to equal 2. (line ~58) expect(this.todos.length).toEqual(this.fixture.response.todos.length);
Sinon and my device correctly return a fake answer with 2 todos, but no todos are parsed in the collection.
There is a scenario showing all this while working with Jasmine standalone here
The boot order for My Jasmine Headless Webkit is as follows:
clyde:backbone-jasmine andy$ jasmine-headless-webkit -l /Users/andy/.rbenv/versions/1.9.3-p0/lib/ruby/gems/1.9.1/gems/jasmine-core-1.1.0/lib/jasmine-core/jasmine.js /Users/andy/.rbenv/versions/1.9.3-p0/lib/ruby/gems/1.9.1/gems/jasmine-core-1.1.0/lib/jasmine-core/jasmine-html.js /Users/andy/.rbenv/versions/1.9.3-p0/lib/ruby/gems/1.9.1/gems/jasmine-core-1.1.0/lib/jasmine-core/jasmine.css /Users/andy/.rbenv/versions/1.9.3-p0/lib/ruby/gems/1.9.1/gems/jasmine-headless-webkit-0.8.4/vendor/assets/javascripts/jasmine-extensions.js /Users/andy/.rbenv/versions/1.9.3-p0/lib/ruby/gems/1.9.1/gems/jasmine-headless-webkit-0.8.4/vendor/assets/javascripts/intense.js /Users/andy/.rbenv/versions/1.9.3-p0/lib/ruby/gems/1.9.1/gems/jasmine-headless-webkit-0.8.4/vendor/assets/javascripts/headless_reporter_result.js /Users/andy/.rbenv/versions/1.9.3-p0/lib/ruby/gems/1.9.1/gems/jasmine-headless-webkit-0.8.4/vendor/assets/javascripts/jasmine.HeadlessConsoleReporter.js /Users/andy/.rbenv/versions/1.9.3-p0/lib/ruby/gems/1.9.1/gems/jasmine-headless-webkit-0.8.4/vendor/assets/javascripts/jsDump.js /Users/andy/.rbenv/versions/1.9.3-p0/lib/ruby/gems/1.9.1/gems/jasmine-headless-webkit-0.8.4/vendor/assets/javascripts/beautify-html.js /Users/andy/.rbenv/versions/1.9.3-p0/lib/ruby/gems/1.9.1/gems/jquery-rails-2.0.2/vendor/assets/javascripts/jquery.js /Users/andy/.rbenv/versions/1.9.3-p0/lib/ruby/gems/1.9.1/gems/jquery-rails-2.0.2/vendor/assets/javascripts/jquery_ujs.js /Users/andy/.rbenv/versions/1.9.3-p0/lib/ruby/gems/1.9.1/gems/jasmine-core-1.1.0/lib/jasmine-core/json2.js /Users/andy/.rbenv/versions/1.9.3-p0/lib/ruby/gems/1.9.1/gems/backbone-rails-0.9.2/vendor/assets/javascripts/underscore.js /Users/andy/.rbenv/versions/1.9.3-p0/lib/ruby/gems/1.9.1/gems/backbone-rails-0.9.2/vendor/assets/javascripts/backbone.js /Users/andy/.rbenv/versions/1.9.3-p0/lib/ruby/gems/1.9.1/gems/backbone-rails-0.9.2/vendor/assets/javascripts/backbone-rails.js /Users/andy/Code/backbone-jasmine/app/assets/javascripts/app/collections/todos.js.coffee /Users/andy/Code/backbone-jasmine/app/assets/javascripts/app/models/todo.js.coffee /Users/andy/Code/backbone-jasmine/app/assets/javascripts/application.js /Users/andy/.rbenv/versions/1.9.3-p0/lib/ruby/gems/1.9.1/gems/jasmine-spec-extras-0.0.2/vendor/assets/javascripts/jasmine-jquery.js /Users/andy/.rbenv/versions/1.9.3-p0/lib/ruby/gems/1.9.1/gems/jasmine-spec-extras-0.0.2/vendor/assets/javascripts/sinon.js /Users/andy/.rbenv/versions/1.9.3-p0/lib/ruby/gems/1.9.1/gems/jasmine-spec-extras-0.0.2/vendor/assets/javascripts/jasmine-sinon.js /Users/andy/Code/backbone-jasmine/spec/javascripts/helpers/spec_helper.js.coffee /Users/andy/Code/backbone-jasmine/spec/javascripts/helpers/valid_response.js.coffee /Users/andy/Code/backbone-jasmine/spec/javascripts/fixtures/todos_fixture.js.coffee /Users/andy/Code/backbone-jasmine/spec/javascripts/app/models/todo_spec.js.coffee /Users/andy/Code/backbone-jasmine/spec/javascripts/app/collections/todos_spec.js.coffee
And the code (also in the fiddle, of course):
Some of the tools used are new to me, so I really appreciate any help - thanks!
source share