मेरे पास रूबी 2.1/रेल 3.2 एप्लिकेशन है जो संपत्ति पाइपलाइन का उपयोग करता है। हम एक नाजुक (अल्फा) मणि का भी उपयोग कर रहे हैं जो कई बार असफल होने के लिए "रेक संपत्ति: प्रीकंपाइल" का कारण बनता है। मैं एक आरएसपीईसी परीक्षण लिखना चाहता हूं जो सुनिश्चित करता है कि यह कोड हमारे कोड को करने से पहले हमेशा गुजरता है।आरएसपीसी के साथ रेक रेक का परीक्षण कैसे करें?
मैं कल्पना में एक परीक्षण/asset_precompile_spec.rb जो इस तरह दिखता है लिखा है:
require 'spec_helper'
require 'rake'
describe 'assets:precompile' do
before { MyApp::Application.load_tasks }
it { expect { Rake::Task['assets:precompile'].invoke }.not_to raise_exception }
end
मैं तो
rspec spec/lib/assets_precompile_spec.rb
उत्पादन मैं इस तरह देखा गया का उपयोग कर कमांड लाइन पर यह भाग गया:
1) assets:precompile
Failure/Error: it { expect { Rake::Task['assets:precompile'].invoke }.not_to raise_exception }
expected no Exception, got #<RuntimeError: Command failed with status (1): [/home/railsdev/.rvm/rubies/ruby-2.1.2/bin/...]> with backtrace:
# ./spec/lib/assets_precompile_spec.rb:7:in `block (3 levels) in <top (required)>'
# ./spec/lib/assets_precompile_spec.rb:7:in `block (2 levels) in <top (required)>'
# ./spec/lib/assets_precompile_spec.rb:7:in `block (2 levels) in <top (required)>'
Finished in 0.71247 seconds
1 example, 1 failure
Failed examples:
rspec ./spec/lib/assets_precompile_spec.rb:7 # assets:precompile
मैं अब तक & विस्तृत ध्यान दिया है, और मैं "r को चलाने के लिए किसी भी उदाहरण नहीं मिल सकता है एके संपत्ति: प्रीकंपाइल "जो वास्तव में मेरे आरएसपीसी पर्यावरण में काम करता है। मैंने spec_helper.rb फ़ाइल को स्पष्ट रूप से लोड करने का प्रयास किया है, मैंने स्पष्ट रूप से "factory_girl" की आवश्यकता है, लेकिन मुझे कुछ भी नहीं मिल रहा है जो काम करता है।
क्या इस रेक कार्य को आरएसपीईसी परीक्षण में चलाने के लिए कोई तरीका है?
मुझे आपके द्वारा प्रदान किए गए कोड का उपयोग करने में कोई समस्या नहीं थी। – hmak
मैं एक ही मुद्दे में भाग गया और @ spr के समाधान ने मेरे लिए काम किया। – etagwerker