2012-04-11 12 views
8

मेरे आरएसपीसी परीक्षणों में मैं पेपरक्लिप की मेरी प्रणाली में फोटो अपलोड करने की क्षमता का परीक्षण करता हूं और उन्हें किसी दिए गए उपयोगकर्ता से सहेजता हूं।आरएसपीसी सूट खत्म होने के बाद फ़ाइलों को नष्ट कर देता है

यह मेरे परीक्षण खत्म होने पर बहुत अच्छा है, मेरे पास मेरे सिस्टम पर ये सभी अतिरिक्त फ़ाइलें हैं। मैं अपने परीक्षण सूट को पूरा करने के बाद इसे कैसे हटा सकता हूं।

धन्यवाद माइक

+0

आप Photo.delete_all चलाना चाहिए तो वह निकाल देता है डाटाबेस प्रविष्टि और छवि –

+0

MInitest में अपलोड किए गए अनुलग्नकों के फ़ोल्डर को हटाने के लिए कैसे पता है? – Jwan622

उत्तर

5

मैं पेपरक्लिप उपयोग नहीं किया है, लेकिन मैं उन फ़ाइलों को इस तरह के (यादृच्छिक उदाहरण) tmp/पेपरक्लिप/तस्वीरें/ के रूप में कुछ हद तक एक निरंतर जगह में सहेजे जाते हैं, मान लेते हैं।

अगर ऐसी बात है, अपने spec_helper के भीतर, आप जोड़ सकते हैं:

config.after(:suite) do # or :each or :all 
    Dir["#{Rails.root}/tmp/paperclip/**/*"].each do |file| 
     File.delete(file) 
    end 
end 
+1

यदि आप अंतिम '*' से '* * * बदलते हैं तो आप निर्देशिकाओं को हटाने की कोशिश से बचें। – thomasfedb

+0

यदि आप न्यूनतम उपयोग करते हैं तो क्या होगा? – Jwan622

9

यह सिर्फ पूरे test निर्देशिका नष्ट करने के लिए आसान है। इसके अलावा, थोड़ा कम ओवरहेड और पढ़ने में आसान।

# spec_helper.rb 

config.after(:suite) do 
    FileUtils.rm_rf(Dir["#{Rails.root}/public/system/test"]) 
end 
प्रत्येक के बाद
+1

यह मानता है कि आप इसका उपयोग कर रहे हैं: rails_env में: पथ: जैसे: 'पथ:': rails_root/public/system /: rails_env /: class /: attachment /: id_partition /: style /: filename'' – Karen