2011-12-08 22 views
4

我如何測試RSpec的以下發現器?RSpec:測試沒有觸及數據庫的AR發現器

def self.find_by_mbid(mbid) 
    super(mbid.downcase()) 
end 

我看到這是可能的。將它存儲在數據庫中預先,我想避免,因爲這是一個單元測試的唯一方法。我沒有看到如何在這裏返回一個模擬,因爲RSpec幾乎無法訪問super

有沒有更好的方法來做到這一點?還是單元測試對於這種事情來說太低級了?

+0

補充評論:找出你是否真的需要這個。即使DB默認情況下,我也讓AR做不區分大小寫的搜索。另外,在方法調用中丟失'()';這不是Java。 :) –

回答

5

可能模擬這個,如果你願意改變實現,但我建議spec'ing查找與數據庫。