Sha256: 4936e251b79ce211b485bfbf68937255374bbf41a6757b9976b162d7cc54f69f
Contents?: true
Size: 1.55 KB
Versions: 1
Compression:
Stored size: 1.55 KB
Contents
# frozen_string_literal: true require 'spec_helper' describe Arstotzka::Builder do describe 'yard' do let!(:instance) { klass.new(hash) } let(:options) { Arstotzka::Options.new(options_hash) } let(:hash) do { 'name' => { first: 'John', last: 'Williams' }, :age => '20', 'cars' => 2.0 } end let(:builder) { described_class.new(attributes, klass, options) } describe '#first_name' do let(:klass) { Class.new(MyModel) } let(:attributes) { [:first_name] } let(:options_hash) { { full_path: 'name.first' } } before do builder.build end it 'crawls into the hash to find the value of the first name' do expect(instance.first_name).to eq('John') end end describe '#age' do let(:klass) { Class.new(MyModel) } let(:attributes) { [:age, 'cars'] } let(:options_hash) { { type: :integer } } before do builder.build end it 'crawls into the hash to find the value of the age' do expect(instance.age).to eq(20) end it do expect(instance.age).to be_a(Integer) end end describe '#cars' do let(:klass) { Class.new(MyModel) } let(:attributes) { [:age, 'cars'] } let(:options_hash) { { type: :integer } } before do builder.build end it 'crawls into the hash to find the value of the age' do expect(instance.cars).to eq(2) end it do expect(instance.cars).to be_a(Integer) end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
arstotzka-1.1.0 | spec/integration/yard/arstotzka/builder_spec.rb |