1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
|
require 'test_helper'
class TestRooExcelxCellTime < Minitest::Test
def roo_time
Roo::Excelx::Cell::Time
end
def base_timestamp
DateTime.new(1899, 12, 30).to_time.to_i
end
def test_formatted_value
value = '0.0751' # 6488.64 seconds, or 1:48:08.64
[
['h:mm', '1:48'],
['h:mm:ss', '1:48:09'],
['mm:ss', '48:09'],
['[h]:mm:ss', '[1]:48:09'],
['mmss.0', '4809.0'] # Cell::Time always get rounded to the nearest second.
].each do |style_format, result|
cell = roo_time.new(value, nil, [:numeric_or_formula, style_format], 6, nil, base_timestamp, nil)
assert_equal result, cell.formatted_value, "Style=#{style_format} is not properly formatted"
end
end
def test_value
cell = roo_time.new('0.0751', nil, [:numeric_or_formula, 'h:mm'], 6, nil, base_timestamp, nil)
assert_kind_of Integer, cell.value
end
end
|