Sha256: c4a3e2316f7eaeba97109f48f846bb681c8eead1d95be6ac399daf28598614eb

Contents?: true

Size: 1.72 KB

Versions: 6

Compression:

Stored size: 1.72 KB

Contents

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

describe ValidatesTimeliness::ActiveRecord::MultiparameterAttributes do
  def obj
    @obj ||= Person.new
  end

  it "should convert array for datetime type into datetime string" do
    time_string = time_array_to_string([2000,2,1,9,10,11], :datetime)
    time_string.should == "2000-02-01 09:10:11"
  end
  
  it "should convert array for date type into date string" do
    time_string = time_array_to_string([2000,2,1], :date)
    time_string.should == "2000-02-01"
  end
  
  it "should convert array for time type into time string" do
    time_string = time_array_to_string([2000,1,1,9,10,11], :time)
    time_string.should == "09:10:11"
  end
  
  describe "execute_callstack_for_multiparameter_attributes" do 
    before do      
      @callstack = {
        'birth_date_and_time' => [2000,2,1,9,10,11],
        'birth_date' => [2000,2,1,9,10,11],
        'birth_time' => [2000,2,1,9,10,11]
      }
    end
    
    it "should store datetime string for datetime column" do      
      obj.should_receive(:birth_date_and_time=).once.with("2000-02-01 09:10:11")
      obj.send(:execute_callstack_for_multiparameter_attributes, @callstack)
    end    
    
    it "should store date string for a date column" do
      obj.should_receive(:birth_date=).once.with("2000-02-01")
      obj.send(:execute_callstack_for_multiparameter_attributes, @callstack)
    end
   
    it "should store time string for a time column" do
      obj.should_receive(:birth_time=).once.with("09:10:11")
      obj.send(:execute_callstack_for_multiparameter_attributes, @callstack)
    end
  end

  def time_array_to_string(*args)
    ValidatesTimeliness::ActiveRecord.time_array_to_string(*args)
  end
  
end

Version data entries

6 entries across 6 versions & 2 rubygems

Version Path
adzap-validates_timeliness-2.2.0 spec/active_record/multiparameter_attributes_spec.rb
adzap-validates_timeliness-2.2.1 spec/active_record/multiparameter_attributes_spec.rb
adzap-validates_timeliness-2.2.2 spec/active_record/multiparameter_attributes_spec.rb
validates_timeliness-2.2.2 spec/active_record/multiparameter_attributes_spec.rb
validates_timeliness-2.2.1 spec/active_record/multiparameter_attributes_spec.rb
validates_timeliness-2.2.0 spec/active_record/multiparameter_attributes_spec.rb