2010-12-03 12 views
5

मैं निम्नलिखित seeds.rb फ़ाइल है:मैं rpec का उपयोग कर रेल परीक्षण वातावरण के भीतर seed.rb कैसे लोड करूं?

State.create [ 
    {:name => "Alabama", :abbreviation => "AL" }, 
    {:name => "Alaska", :abbreviation => "AK" }, 
    {:name => "Arizona", :abbreviation => "AZ" }, 
    {:name => "Arkansas", :abbreviation => "AR" }, 
    {:name => "California", :abbreviation => "CA" }, 
    {:name => "Colorado", :abbreviation => "CO" }, 
    {:name => "Connecticut", :abbreviation => "CT" }, 
    {:name => "Delaware", :abbreviation => "DE" }, 
    {:name => "District Of Columbia", :abbreviation => "DC" }, 
    {:name => "Florida", :abbreviation => "FL" }, 
    {:name => "Georgia", :abbreviation => "GA" }, 
    {:name => "Hawaii", :abbreviation => "HI" }, 
    {:name => "Idaho", :abbreviation => "ID" }, 
    {:name => "Illinois", :abbreviation => "IL" }, 
    {:name => "Indiana", :abbreviation => "IN" }, 
    {:name => "Iowa", :abbreviation => "IA" }, 
    {:name => "Kansas", :abbreviation => "KS" }, 
    {:name => "Kentucky", :abbreviation => "KY" }, 
    {:name => "Louisiana", :abbreviation => "LA" }, 
    {:name => "Maine", :abbreviation => "ME" }, 
    {:name => "Maryland", :abbreviation => "MD" }, 
    {:name => "Massachusetts", :abbreviation => "MA" }, 
    {:name => "Michigan", :abbreviation => "MI" }, 
    {:name => "Minnesota", :abbreviation => "MN" }, 
    {:name => "Mississippi", :abbreviation => "MS" }, 
    {:name => "Missouri", :abbreviation => "MO" }, 
    {:name => "Montana", :abbreviation => "MT" }, 
    {:name => "Nebraska", :abbreviation => "NE" }, 
    {:name => "Nevada", :abbreviation => "NV" }, 
    {:name => "New Hampshire", :abbreviation => "NH" }, 
    {:name => "New Jersey", :abbreviation => "NJ" }, 
    {:name => "New Mexico", :abbreviation => "NM" }, 
    {:name => "New York", :abbreviation => "NY" }, 
    {:name => "North Carolina", :abbreviation => "NC" }, 
    {:name => "North Dakota", :abbreviation => "ND" }, 
    {:name => "Ohio", :abbreviation => "OH" }, 
    {:name => "Oklahoma", :abbreviation => "OK" }, 
    {:name => "Oregon", :abbreviation => "OR" }, 
    {:name => "Pennsylvania", :abbreviation => "PA" }, 
    {:name => "Rhode Island", :abbreviation => "RI" }, 
    {:name => "South Carolina", :abbreviation => "SC" }, 
    {:name => "South Dakota", :abbreviation => "SD" }, 
    {:name => "Tennessee", :abbreviation => "TN" }, 
    {:name => "Texas", :abbreviation => "TX" }, 
    {:name => "Utah", :abbreviation => "UT" }, 
    {:name => "Vermont", :abbreviation => "VT" }, 
    {:name => "Virginia", :abbreviation => "VA" }, 
    {:name => "Washington", :abbreviation => "WA" }, 
    {:name => "West Virginia", :abbreviation => "WV" }, 
    {:name => "Wisconsin", :abbreviation => "WI" }, 
    {:name => "Wyoming", :abbreviation => "WY"} 
] 

मैं एक rake db:seed कमांड के साथ विकास के वातावरण में डेटा बीज करने में सक्षम हूँ, लेकिन मुझे लगता है मैं कैसे परीक्षण वातावरण के भीतर इस करना होगा करने के लिए के रूप में उलझन में हूँ । मैं rspec और rake test:prepare कमांड का उपयोग कर रहा हूं, लेकिन यह सिर्फ एक खाली डेटाबेस सेट अप करता है।

rake test:prepare चलाते समय परीक्षण वातावरण में केवल एक बार डेटा बीज करने का कोई तरीका है?

rake RAILS_ENV=test db:seed 

वास्तव में, आप RAILS_ENV विकल्प

+0

आप राज्यों को पहले ('प्रत्येक)' क्यों नहीं लोड कर सकते हैं? – Chirantan

उत्तर

10

तुम सिर्फ परीक्षण परिवेश में rake db:seed चलाना चाहते हैं, तो आप इस आदेश को चला सकते हैं जोड़ने के लिए ...

load "#{Rails.root}/db/seeds.rb" 

मेरी spec/spec_helper.rb फ़ाइल में और यह हर बार परीक्षणों में मेरी बीज फ़ाइल चलाता है चलाते हैं।

6

मैं कर रहा था के साथ किसी भी रेल पर्यावरण पारित कर सकते हैं:

संबंधित मुद्दे