Sha256: 5a657e0a342a53806064d6b974be89d62a76102c3038ff0675d765de087a5ecf
Contents?: true
Size: 1.18 KB
Versions: 3
Compression:
Stored size: 1.18 KB
Contents
# frozen_string_literal: true RSpec.shared_examples 'a cuboid' do let(:args) do { dimensions: [ Measured::Length.new(1.1, :cm), Measured::Length.new(3.3, :cm), Measured::Length.new(2.2, :cm) ] } end it { is_expected.to be_a(Physical::Cuboid) } it "has dimensions as Measured::Length objects with rational values" do expect(subject.dimensions).to eq( [ Measured::Length.new(1.1, :cm), Measured::Length.new(3.3, :cm), Measured::Length.new(2.2, :cm) ] ) end it "has getter methods for each dimension as Measured::Length object" do expect(subject.length).to eq(Measured::Length.new(1.1, :cm)) expect(subject.width).to eq(Measured::Length.new(3.3, :cm)) expect(subject.height).to eq(Measured::Length.new(2.2, :cm)) end describe "#==" do let(:args) { Hash[id: 123] } let(:other_cuboid) { described_class.new(**args) } let(:non_cuboid) { double(id: 123) } it "compares cuboids" do aggregate_failures do expect(subject == other_cuboid).to be(true) expect(subject == non_cuboid).to be(false) expect(subject.nil?).to be(false) end end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
physical-0.4.8 | lib/physical/spec_support/shared_examples.rb |
physical-0.4.7 | lib/physical/spec_support/shared_examples.rb |
physical-0.4.5 | lib/physical/spec_support/shared_examples.rb |