2017-10-19 45 views
1

如何測試來自方法的返回值是否包含散列,散列值是元素數不小於3且不大於5的散列?使用minitest測試該散列包含特定大小的數組值

這裏是哈希:

{455=>[638205575, 298486374, 51848956, 113629430], 310=>[457008489, 587967610, 241469500, 991788158], 430=>[1047793131,5, 1018350795, 281110143, 980190962]} 

我會展示我嘗試這個,但他們是可悲的。我仍然在測試中包紮頭。

回答

1

我敢肯定有一個更好的解決方案,但如何對這樣的事情:

array_of_element_lengths = result_of_method.map {|_key, value| value.length} 
assert array_of_element_lengths.min >= 3 && array_of_element_lengths.max <= 5 
+1

@isea這只是測試,有3至5元之間。你是否還需要測試返回的值是否爲數組的哈希值? –

+0

這很好。我大概可以找出一個。坦率地說,我應該也可以做到這一點。謝謝 – isea