0
*我是新来测试!使用RSpec测试设置对象
代码:
class SetTest
def remove_duplicates(array)
new_set = Set.new
array.each {|number| new_set << number}
new_set
end
end
RSpec的:
describe SetTest do
before(:each) do
@new_set = SetTest.new
end
describe '#remove_duplicates' do
it 'removes duplicates from an array' do
array = [1,2,3,4,5,5,5,5,5,6,7,8,9,10]
expect(@new_set.remove_duplicates(array)).to eql([{1,2,3,4,5,6,7,8,9,10}])
end
end
end
它得到以下错误:
syntax error, unexpected ',', expecting tASSOC (SyntaxError)...e_duplicates(array)).to eql({1,2,3,4,5,6,7,8,9,10})
然后,当我只是试试这个:
expect(@new_set.remove_duplicates(array)).to eql([1])
我得到:
expected: [1]
got: #<Set: {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}>
任何想法,我怎么能去测试这个?
*注意:我知道我可以使用.uniq!从阵列中删除重复项。我简单地使用这个例子来说明如何测试Set对象
谢谢!这正是我所需要的。欣赏它! – user3007294