Sha256: dcd69efd2b0eeb635573a323cb57a9a26b1528c32970e0339c8e1a545de6374f

Contents?: true

Size: 780 Bytes

Versions: 3

Compression:

Stored size: 780 Bytes

Contents

require 'spec_helper'

RSpec.describe Roo::Excelx::Cell::Time do
  it "should set the cell value to the correct number of seconds" do
    value = 0.05513888888888888 # '1:19:24'
    excelx_type = [:numeric_or_formula, "h:mm:ss"]
    base_timestamp = Date.new(1899, 12, 30).to_time.to_i
    time_cell = Roo::Excelx::Cell::Time.new(value, nil, excelx_type, 1, nil, base_timestamp, nil)
    expect(time_cell.value).to eq(1*60*60 + 19*60 + 24) # '1:19:24' in seconds
    # use case from https://github.com/roo-rb/roo/issues/310
    value = 0.523761574074074   # '12:34:13' in seconds
    time_cell = Roo::Excelx::Cell::Time.new(value, nil, excelx_type, 1, nil, base_timestamp, nil)
    expect(time_cell.value).to eq(12*60*60 + 34*60 + 13) # 12:34:13 in seconds
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
roo-2.10.1 spec/lib/roo/excelx/cell/time_spec.rb
roo-2.10.0 spec/lib/roo/excelx/cell/time_spec.rb
roo-2.9.0 spec/lib/roo/excelx/cell/time_spec.rb