Sha256: fb9f2b2f398e5169fbb69e7af1df1d6ab6d9a23d0800f7ee14bfdc27210ba21c

Contents?: true

Size: 966 Bytes

Versions: 1

Compression:

Stored size: 966 Bytes

Contents

require_relative '../spec_helper'

describe Rats::Quarter do
  it "initializes" do
    data = Rats::Quarter.new
    data.is_a?(Rats::Quarter).should be_true
  end

  it "returns the full_name" do
    data = Rats::Quarter.new('NE')
    data.fullname.should == "the Northeast Quarter"
  end

  it "detects half" do
    Rats::Quarter.half?('NE').should be_false
    Rats::Quarter.half?('N').should be_true
    Rats::Quarter.half?('North').should be_true
  end

  it "transform input" do
    Rats::Quarter.transform('ne').should == 'NE'
    Rats::Quarter.transform('north').should == 'N'
    Rats::Quarter.transform('n').should == 'N'
  end

  describe "boundaries" do
    it "knows valid data" do
      data = Rats::Quarter.new('NE')
      data.valid?.should be_true
      data.error.should be_nil
    end

    it "knows invalid data" do
      data = Rats::Quarter.new('bad')
      data.valid?.should be_false
      data.error.should == "not allowed"
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
rats-0.5.0 spec/data/quarter_spec.rb