Sha256: 32a9c640a6b0eb561299097cb5caefeea54ca14f8f2bdf9467a2af72db1d1971

Contents?: true

Size: 1.32 KB

Versions: 2

Compression:

Stored size: 1.32 KB

Contents

require 'date'
require 'roo/excelx/cell/base'
require 'roo/excelx/cell/datetime'
require 'roo/link'

class TestRooExcelxCellDateTime < Minitest::Test
  def test_cell_value_is_datetime
    cell = datetime.new('30000.323212', nil, ['mm-dd-yy'], nil, nil, base_date, nil)
    assert_kind_of ::DateTime, cell.value
  end

  def test_cell_type_is_datetime
    cell = datetime.new('30000.323212', nil, [], nil, nil, base_date, nil)
    assert_equal :datetime, cell.type
  end

  def test_standard_formatted_value
    [
      ['mm-dd-yy', '01-25-15'],
      ['d-mmm-yy', '25-JAN-15'],
      ['d-mmm ', '25-JAN'],
      ['mmm-yy', 'JAN-15'],
      ['m/d/yy h:mm', '1/25/15 8:15']
    ].each do |format, formatted_value|
      cell = datetime.new '42029.34375', nil, [format], nil, nil, base_date, nil
      assert_equal formatted_value, cell.formatted_value
    end
  end

  def test_custom_formatted_value
    [
      ['yyyy/mm/dd hh:mm:ss', '2015/01/25 08:15:00'],
      ['h:mm:ss000 mm/yy', '8:15:00000 01/15'],
      ['mmm yyy', '2015-01-25 08:15:00']
    ].each do |format, formatted_value|
      cell = datetime.new '42029.34375', nil, [format], nil, nil, base_date, nil
      assert_equal formatted_value, cell.formatted_value
    end
  end

  def datetime
    Roo::Excelx::Cell::DateTime
  end

  def base_date
    Date.new(1899, 12, 30)
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
roo-2.3.0 test/excelx/cell/test_datetime.rb
roo-2.2.0 test/excelx/cell/test_datetime.rb