Koleksiyon matchers (dizeleri, sağlamalarının ve diziler karşı olduğunu beyan eden tüm matchers), rspec-collection_matchers . Eğer bir taş üzerinde çalışıyorsanız
gem 'rspec-collection_matchers'
Ya senin .gemspec
: Bu matchers sizin Gemfile
eklemek bu kullanmak için
spec.add_development_dependency 'rspec-collection_matchers'
Ardından, spec_helper.rb
bu ekleyin:
require 'rspec/collection_matchers'
Ve sonra kullanabileceksiniz senin spec toplama matchers: Eğer birbirlerinin yerine items
ve characters
kullanabilirsiniz
require spec_helper
describe 'array' do
subject { [1,2,3] }
it { is_expected.to have(3).items }
it { is_expected.to_not have(2).items }
it { is_expected.to_not have(4).items }
it { is_expected.to have_exactly(3).items }
it { is_expected.to_not have_exactly(2).items }
it { is_expected.to_not have_exactly(4).items }
it { is_expected.to have_at_least(2).items }
it { is_expected.to have_at_most(4).items }
# deliberate failures
it { is_expected.to_not have(3).items }
it { is_expected.to have(2).items }
it { is_expected.to have(4).items }
it { is_expected.to_not have_exactly(3).items }
it { is_expected.to have_exactly(2).items }
it { is_expected.to have_exactly(4).items }
it { is_expected.to have_at_least(4).items }
it { is_expected.to have_at_most(2).items }
end
Not onlar sadece sözdizimi şeker, ve have
eşleştirici ve bunun varyantları, diziler, sağlamalarının ve dize kullanılabilir .