«Данные не получены» при запуске спецификации Jasmine - PullRequest
5 голосов
/ 08 февраля 2012

Когда я запускаю bundle exec rake jasmine, затем выбираю http://localhost:8888/ Я вижу следующее сообщение об ошибке:

No data received
Unable to load the web page because the server sent no data.
Error 324 (net::ERR_EMPTY_RESPONSE): The server closed the connection without sending any data.

В консоли я вижу:

[2012-02-08 07:54:08] INFO  WEBrick 1.3.1
[2012-02-08 07:54:08] INFO  ruby 1.9.2 (2011-07-09) [i686-linux]
[2012-02-08 07:54:08] WARN  TCPServer Error: Address already in use - bind(2)
[2012-02-08 07:54:08] INFO  WEBrick::HTTPServer#start: pid=12078 port=8888
[2012-02-08 07:54:10] ERROR ArgumentError: wrong number of arguments (2 for 0)
        /home/duncan/.rvm/gems/ruby-1.9.2-p290/gems/railroady-1.0.6/tasks/railroady.rake:11:in `format'
        /home/duncan/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/1.9.1/webrick/httpserver.rb:110:in `service'
        /home/duncan/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/1.9.1/webrick/httpserver.rb:70:in `run'
        /home/duncan/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/1.9.1/webrick/server.rb:183:in `block in start_thread'
[2012-02-08 07:54:10] ERROR ArgumentError: wrong number of arguments (3 for 0)
        /home/duncan/.rvm/gems/ruby-1.9.2-p290/gems/railroady-1.0.6/tasks/railroady.rake:11:in `format'
        /home/duncan/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/1.9.1/webrick/httpversion.rb:46:in `to_s'
        /home/duncan/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/1.9.1/webrick/httpresponse.rb:49:in `status_line'
        /home/duncan/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/1.9.1/webrick/httpresponse.rb:170:in `send_header'
        /home/duncan/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/1.9.1/webrick/httpresponse.rb:102:in `send_response'
        /home/duncan/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/1.9.1/webrick/httpserver.rb:86:in `run'
        /home/duncan/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/1.9.1/webrick/server.rb:183:in `block in start_thread'

Структура каталога spec / javascripts такова:

spec/javascripts/
├── helpers
│   ├── jasmine_helpers.js.coffee
│   ├── jasmine-jquery-1.3.1.js
│   └── mock-ajax.js
├── models
│   ├── account_spec.js.coffee
│   ├── matrices_spec.js.coffee
│   ├── matrix_spec.js.coffee
│   └── students_spec.js.coffee
├── support
│   ├── jasmine_config.rb
│   ├── jasmine_runner.rb
│   └── jasmine.yml
└── views
    ├── avia_view_spec.js.coffee
    ├── matrices_view_spec.js.coffee
    ├── students_view_spec.js.coffee
    └── student_view_spec.js.coffee

Мой файл jasmine.yml содержит:

src_dir: app/assets/javascripts

asset_paths:
  - app/assets/javascripts/views

src_files:
  - avia.js
  - jquery-1.6.4.js
  - jquery.jqGrid.min.js
  - underscore.js
  - backbone.js
  - haml.js
  - "**/*"

stylesheets:
  - stylesheets/**/*.css

helpers:
  - helpers/**/*.js
  - helpers/**/*.js.coffee

spec_files:
  - '**/*_spec.js.coffee'

spec_dir: spec/javascripts

Мои версии Gem выглядят следующим образом (я включил то, что я считаюсоответствующие, дайте мне знать, если вам нужен полный список):

  • кофейный фильтр (0.1.1)
  • кофейные рельсы (3.1.1)
  • coffee-script (2.2.0)
  • coffee-script-source (1.2.0)
  • jasmine (1.1.2)
  • jasmine-core (1.1.0)
  • жасмин-безголовый веб-набор (0.9.0.rc1 4f11cba)
  • жасминовые рельсы (0.0.2)
  • железная дорога (1.0.6)
  • рельсы (3.1.0)
  • грабли (0.9.2.2)
  • звездочки (2.0.3)
  • therubyracer (0.9.9)

Я использую Chrome 16.0.912.77 в Linux Mint 12, используя Ruby 1.9.2-p290 через RVM.

Эта установка прекрасно работает через jasmine-headless-webkit:

Running Jasmine specs...
............................
PASS: 28 tests, 0 failures, 0.076 secs.

Возможно, я делаю что-то в моем jasmine.yml, которое не поддерживается jasmine-gem?

Ответы [ 2 ]

1 голос
/ 15 февраля 2012

использовать последний исходный код. спасибо @avaynshtok за указанную проблему и отправку запроса на получение ответа!

 gem 'railroady', :git => "git://github.com/preston/railroady.git"
0 голосов
/ 13 февраля 2012

Это похоже на ошибку в железной дороге. Когда я добавляю его в свой Gemfile и запускаю jasmine, я вижу ту же ошибку, что и вы. Жасмин прекрасно работает без установленной железной дороги.

Проблема в том, что railroady определяет функцию format в tasks/railroady.rake в области действия по умолчанию.

def format
  @@DIAGRAM_FORMAT ||= 'svg'
end

Это format, который вебрик заканчивает тем, что звонит вместо Kernel.format, вызывая исключение, которое мы видим.

Достаньте железную дорогу и посмотрите, работает ли Жасмин.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...