Sha256: 382a50a21cce6b768749e93a56b182d8b630081c3d686360199a60349b2021ed
Contents?: true
Size: 1.76 KB
Versions: 1
Compression:
Stored size: 1.76 KB
Contents
require_relative '../../spec_helper' describe AIXM::F do subject do AIXM::Factory.f end describe :freq= do it "fails on invalid values" do [:foobar].wont_be_written_to subject, :freq end it "converts Numeric to Float" do subject.tap { |s| s.freq = 5 }.freq.must_equal 5.0 end end describe :unit= do it "fails on invalid values" do [:foobar, 123].wont_be_written_to subject, :unit end it "symbolizes and downcases values" do subject.tap { |s| s.unit = "MHz" }.unit.must_equal :mhz end end describe :between? do subject do AIXM.f(100, :mhz) end it "detect frequencies within a frequency band" do subject.between?(90, 110, :mhz).must_equal true subject.between?(90, 100, :mhz).must_equal true subject.between?(100.0, 100.1, :mhz).must_equal true end it "detect frequencies outside of a frequency band" do subject.between?(90, 110, :khz).must_equal false subject.between?(90, 95, :mhz).must_equal false end end describe :== do it "recognizes objects with identical frequency and unit as equal" do a = AIXM.f(123.0, :mhz) b = AIXM.f(123, 'MHZ') a.must_equal b end it "recognizes objects with different frequency or unit as unequal" do a = AIXM.f(123.35, :mhz) b = AIXM.f(123.35, :khz) a.wont_equal b end it "recognizes objects of different class as unequal" do a = AIXM.f(123.35, :mhz) b = :oggy a.wont_equal b end end describe :hash do it "returns an integer" do subject.hash.must_be_instance_of Integer end it "allows for the use of instances as hash keys" do dupe = subject.dup { subject => true }[dupe].must_equal true end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
aixm-0.3.3 | spec/lib/aixm/f_spec.rb |