Sha256: b213bc5e3bfd86219f533758bb8a47c1ae2d90c58605c0eb3fb9e3e45eb22a8f

Contents?: true

Size: 1.35 KB

Versions: 6

Compression:

Stored size: 1.35 KB

Contents

require File.expand_path(File.dirname(__FILE__) + '/../spec_helper')

describe "FedEx Attributes" do
  it "should allow setting attributes upon initialization" do
    tracking = new_fedex.track(:tracking_number => fedex_tracking_number)
    tracking.tracking_number.should == fedex_tracking_number
  end
  
  it "should allow setting attributes individually" do
    tracking = new_fedex.track
    tracking.tracking_number = fedex_tracking_number
    tracking.tracking_number.should == fedex_tracking_number
  end
  
  it "should allow setting attributes with a hash" do
    tracking = new_fedex.track
    tracking.attributes = {:tracking_number => fedex_tracking_number}
    tracking.tracking_number.should == fedex_tracking_number
  end
  
  it "should allow reading attributes" do
    tracking = new_fedex.track
    tracking.attributes = {:tracking_number => fedex_tracking_number}
    tracking.attributes.should == {:tracking_number => fedex_tracking_number}
  end
  
  it "should implement defaults" do
    rates = new_fedex.rate
    rates.shipper_residential.should == false
  end
  
  it "should use blank array as defaults for arrays" do
    rates = new_fedex.rate
    rates.special_services_requested.should == []
  end
  
  it "should call procs during run time if a default is a proc" do
    rates = new_fedex.rate
    rates.ship_time.to_s.should == Time.now.to_s
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
binarylogic-shippinglogic-1.0.0 spec/fedex/attributes_spec.rb
binarylogic-shippinglogic-1.0.1 spec/fedex/attributes_spec.rb
binarylogic-shippinglogic-1.0.2 spec/fedex/attributes_spec.rb
binarylogic-shippinglogic-1.0.3 spec/fedex/attributes_spec.rb
binarylogic-shippinglogic-1.0.4 spec/fedex/attributes_spec.rb
binarylogic-shippinglogic-1.0.5 spec/fedex/attributes_spec.rb