2012-05-30 59 views
0

我有一個測試,工程,並通過,在第一時間,但未能規範套件運行第二個時間:測試失敗使用VCR與紙夾當

VCR.use_cassette("master_image_create_2", :match_requests_on => [:method, :uri]) do 
     mi = Factory.build(:master_asset) 
     img = File.new(File.join(Rails.root, "spec", "support", "fonzi.jpg")) 
     mi.image = img 
     mi.valid? 
     mi.sha.should eql("f70393ee4d6e1f6a735df9526694e038371e5b3c") 
     mi.url.to_s.include?("http://domain.com/test-brand/original-test-product_f_test-color-1_test-color-2_test-color-3.jpg").should be_true 
    end 

MasterAsset類使用紙夾(要求)到將正在處理的圖像上傳到S3。

的錯誤我得到的回覆是:

AWS::Errors::Base: 
# (eval):3:in `head_object' 

這是紙夾和AWS-S3之間的接口的誤差。

我一直在進行故障排除,現在用Google搜索幾個小時。這似乎應該是一個非常普遍的情況,但我似乎無法再通過測試。

+0

如果您刪除卡帶,是否會再次通過測試?這是你第二次的意思嗎? – x1a4

+0

是的,確切地說。當盒子不存在時,測試通過。如果盒帶存在,則測試失敗。 – brycemcd

回答

0

這可能是VCR或底層庫VCR掛鉤的錯誤(例如WebMock)。

你能提交一份issue on github嗎?我很樂意看看。我需要但更詳細:

  • 你的錯誤錄像機配置
  • 一個小的,孤立的可執行例子證明了的錯誤將是很好的
  • 代碼片段的完整回溯。
+0

是否提交了該問題?很高興知道:) – Rimian

+0

我不記得在github上看到這個問題。 –

+0

謝謝你讓我們知道! – Rimian