我在rspec郵件列表上問了這個問題,但沒有得到回覆,所以我想我會在這裏嘗試。rake spec失敗,其中rake spec:(models | controllers | views)通過
使用rspec的1.3.2和RSpec護欄1.3.4與1.9.2紅寶石-P180軌2.3.11,當我
$ rake spec:models
它們全部通過。當我
$ rake spec:controllers
他們都通過。當我
$ rake spec:views
他們都通過。但是,當我
$ rake spec
我得到
<path to gem>/activesupport-2.3.11/lib/active_support/dependencies.rb:177: stack level too deep (SystemStackError)
我已經耙文件修修補補左右,而當我在默認任務改變
t.spec_files = FileList['spec/**/*_spec.rb']
到僅命中其中一個子目錄,如
t.spec_files = FileList['spec/models/**/*_spec.rb']
然後rake spec的作品。我已經爲模型,控制器和視圖做了這個,並且rake spec對每個都適用。但包括所有的人都喜歡(如上面提到的同樣的錯誤)
t.spec_files = FileList['spec/models/**/*_spec.rb', 'spec/controllers/**/*_spec.rb', 'spec/views/**/*_spec.rb']
不不工作。諷刺的是,包括剛纔模型和視圖做工作:
t.spec_files = FileList['spec/models/**/*_spec.rb', 'spec/views/**/*_spec.rb']
但似乎包括控制器的任何組合將失敗。這對我來說很奇怪,因爲rake spec:controllers工作。除非它與文件和/或示例的數量有關。文件和示例每個天賦型的數量是
models: 25 files, 391 examples
controllers: 26 files, 973 examples
views: 52 files, 508 examples
只需使用耙規範做了關於Ruby 1.8.7(-p302)和1.9.1(-p243)工作。
有沒有人有任何想法?我可以單獨運行每個組(甚至可以創建一個別名一次完成所有操作),但是rspec必須啓動應用程序3次。此外,這並沒有解決爲什麼這不適用於Ruby 1.9.2。