2012-11-05 57 views
0

我使用Test::Unit,我想測試回形針網址。如何測試回形針網址?

現在,我有一個測試,看起來像這樣:

def test_our_custom_url 
    dummy = Dummy.new(:image => File.open("#{RAILS_ROOT}/test/fixtures/12k.png")) 
    dummy.save! 
    assert_match "/system/images/1/original/12k.png", dummy.image.url 
    dummy.reload 
    assert_match "/system/images/1/original/12k.png", dummy.image.url 
    end 

,也未能像這樣:

Expected /\/system\/images\/1\/original\/12k.png/ to match "/system/dummies/images/000/000/001/original/12k.png?1352140343". 

我怎樣才能獲得?1352140343部分添加到測試?

我回形針源代碼中看到,他們似乎把它定義like this

def timestamp_as_needed(url, options) 
    if options[:timestamp] && timestamp_possible? 
    delimiter_char = url.match(/\?.+=/) ? '&' : '?' 
    "#{url}#{delimiter_char}#{@attachment.updated_at.to_s}" 
    else 
    url 
    end 
end 

但這樣做dummy.updated_at.to_s返回正常的日期/時間戳記,不1352140343(在這種情況下)。

我使用本地存儲,如果它有所作爲。

回答

2

它不好比較?1352140343部分的網址。

您可以比較received_url.starts_with?(expected_url)檢查字符串的那一部分......

+0

謝謝!這解決了我的問題。 – jrg