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 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76
|
require "test_helper"
require "matrix"
class TestRooFormatterMatrix < Minitest::Test
def test_matrix
expected_result = Matrix[
[1.0, 2.0, 3.0],
[4.0, 5.0, 6.0],
[7.0, 8.0, 9.0]
]
with_each_spreadsheet(name: "matrix", format: :openoffice) do |workbook|
workbook.default_sheet = workbook.sheets.first
assert_equal expected_result, workbook.to_matrix
end
end
def test_matrix_selected_range
expected_result = Matrix[
[1.0, 2.0, 3.0],
[4.0, 5.0, 6.0],
[7.0, 8.0, 9.0]
]
with_each_spreadsheet(name: "matrix", format: :openoffice) do |workbook|
workbook.default_sheet = "Sheet2"
assert_equal expected_result, workbook.to_matrix(3, 4, 5, 6)
end
end
def test_matrix_all_nil
expected_result = Matrix[
[nil, nil, nil],
[nil, nil, nil],
[nil, nil, nil]
]
with_each_spreadsheet(name: "matrix", format: :openoffice) do |workbook|
workbook.default_sheet = "Sheet2"
assert_equal expected_result, workbook.to_matrix(10, 10, 12, 12)
end
end
def test_matrix_values_and_nil
expected_result = Matrix[
[1.0, nil, 3.0],
[4.0, 5.0, 6.0],
[7.0, 8.0, nil]
]
with_each_spreadsheet(name: "matrix", format: :openoffice) do |workbook|
workbook.default_sheet = "Sheet3"
assert_equal expected_result, workbook.to_matrix(1, 1, 3, 3)
end
end
def test_matrix_specifying_sheet
expected_result = Matrix[
[1.0, nil, 3.0],
[4.0, 5.0, 6.0],
[7.0, 8.0, nil]
]
with_each_spreadsheet(name: "matrix", format: :openoffice) do |workbook|
workbook.default_sheet = workbook.sheets.first
assert_equal expected_result, workbook.to_matrix(nil, nil, nil, nil, "Sheet3")
end
end
# #to_matrix of an empty sheet should return an empty matrix and not result in
# an error message
# 2011-06-25
def test_bug_to_matrix_empty_sheet
options = { name: "emptysheets", format: [:openoffice, :excelx] }
with_each_spreadsheet(options) do |workbook|
workbook.default_sheet = workbook.sheets.first
workbook.to_matrix
assert_equal(Matrix.empty(0, 0), workbook.to_matrix)
end
end
end
|