Sha256: be646b958db5b18fc2c66886b2423c43c6429fa889e9711cdf7a84d5c69c0d04
Contents?: true
Size: 871 Bytes
Versions: 3
Compression:
Stored size: 871 Bytes
Contents
# frozen_string_literal: true describe Grape::Validations::Types::SetCoercer do subject { described_class.new(type) } describe '#call' do context 'a set of primitives' do let(:type) { Set[String] } it 'coerces elements to the set' do expect(subject.call([10, 20])).to eq(Set['10', '20']) end end context 'a set of sets' do let(:type) { Set[Set[Integer]] } it 'coerces elements in the nested set' do expect(subject.call([%w[10 20]])).to eq(Set[Set[10, 20]]) expect(subject.call([['10'], ['20']])).to eq(Set[Set[10], Set[20]]) end end context 'a set of sets of arrays' do let(:type) { Set[Set[Array[Integer]]] } it 'coerces elements in the nested set' do expect(subject.call([[['10'], ['20']]])).to eq(Set[Set[Array[10], Array[20]]]) end end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
grape-1.8.0 | spec/grape/validations/types/set_coercer_spec.rb |
grape-1.7.1 | spec/grape/validations/types/set_coercer_spec.rb |
grape-1.7.0 | spec/grape/validations/types/set_coercer_spec.rb |