RSpec

2009-05-19 10 views
16

के लिए अनुपलब्ध स्पेक फ़ाइलें जेनरेट करना मौजूदा मॉडलों/नियंत्रकों के लिए सभी लापता spec फ़ाइलों को उत्पन्न करने के लिए कोई आदेश उपलब्ध है? मेरे पास एक प्रोजेक्ट है जिसमें कई मॉडल हैं जो स्पेक फाइलों के साथ उत्पन्न हुए हैं।RSpec

उत्तर

7

आप जनरेटर चला सकते हैं और मॉडल/माइग्रेशन/फिक्स्चर को अनदेखा कर सकते हैं।

ruby script/generate rspec_model User --skip-migration --skip-fixture --skip 

मैं ऐसा करने के लिए कुछ लिख रहा हूं लेकिन दूसरों से कोई रूचि नहीं है।

17

आरएसपीसी-रेल -2 में रेलवे 3 के लिए इरादा है, सभी आरएसपीसी जेनरेटर हटा दिए गए हैं।

आप रेल मॉडल जनरेटर चलाकर इस समस्या को हल कर सकते हैं। आप माइग्रेशन फ़ाइल बनाने के लिए किसी मौजूदा फाइल को छोड़ने के लिए जोड़ सकते हैं और माइग्रेशन = झूठी छोड़ सकते हैं।

तो जैसा

:

rails generate model example -s --migration=false 
+0

अब रेल पर काम नहीं करता 3.2.x – Rubytastic

+3

मेरे लिए काम किया! रेल 3.2.13 – Elmor

0

https://gist.github.com/omenking/7774140

require 'fileutils' 
namespace :spec do 

    def progress name, x, y 
    print "\r #{name}: #{x}/#{y} %6.2f%%" % [x.to_f/y * 100] 
    end 

    def generate_files name 
    kind  = name.to_s.singularize 
    collection = Dir.glob Rails.root.join('app',name.to_s,'**','*').to_s 
    root  = Rails.root.join('app',name.to_s).to_s<<'/' 
    ext  = case name 
        when :controllers then '_controller.rb' 
        when :models  then '.rb' 
       end 
    count = collection.count 
    collection.each_with_index do |i,index| 
     `rails g #{kind} #{$1} -s` if i =~ /#{root}(.+)#{ext}/ 
     progress name, index, count 
    end 
    end 

    task generate_missing: :environment do 
    generate_files :controllers 
    generate_files :models 
    end 
end 

# if you dont want certian things generated than 
# configure your generators in your application.rb eg. 
# 
# config.generators do |g| 
#  g.orm :active_record 
#  g.template_engine :haml 
#  g.stylesheets false 
#  g.javascripts false 
#  g.test_framework :rspec, 
#      fixture: false, 
#      fixture_replacement: nil 
# end 
# 
1

लापता चश्मा की संख्या नहीं बल्कि छोटा है, तो आप बस प्रत्येक घटक के लिए rails generate आदेशों लापता चश्मा के साथ चला सकते हैं।

जब कोई संघर्ष उत्पन्न होता है, तो बस मूल फ़ाइल को ओवरराइट न करने का विकल्प चुनें। जनरेटर मौजूदा फाइलों को अनदेखा कर देगा और गायब लोगों को उत्पन्न करेगा।