From 97bea6efd66c3679a17287bc476c2993290ab117 Mon Sep 17 00:00:00 2001 From: Mike Dillon Date: Mon, 10 Oct 2016 17:06:07 -0700 Subject: Allow a Row to be passed to merge_cells --- lib/axlsx/workbook/worksheet/merged_cells.rb | 2 ++ test/tc_axlsx.rb | 10 ++++++++++ test/workbook/worksheet/tc_worksheet.rb | 7 +++++++ 3 files changed, 19 insertions(+) diff --git a/lib/axlsx/workbook/worksheet/merged_cells.rb b/lib/axlsx/workbook/worksheet/merged_cells.rb index 6ea1edc9..67753bd3 100644 --- a/lib/axlsx/workbook/worksheet/merged_cells.rb +++ b/lib/axlsx/workbook/worksheet/merged_cells.rb @@ -19,6 +19,8 @@ module Axlsx cells elsif cells.is_a?(Array) Axlsx::cell_range(cells, false) + elsif cells.is_a?(Row) + Axlsx::cell_range(cells, false) end end diff --git a/test/tc_axlsx.rb b/test/tc_axlsx.rb index 1be9166c..63b17f74 100644 --- a/test/tc_axlsx.rb +++ b/test/tc_axlsx.rb @@ -45,6 +45,16 @@ class TestAxlsx < Test::Unit::TestCase assert_equal(Axlsx.cell_range([c2, c1], true), "'Sheet <''>" 1'!$A$1:$B$1") end + def test_cell_range_row + p = Axlsx::Package.new + ws = p.workbook.add_worksheet + row = ws.add_row + c1 = row.add_cell + c2 = row.add_cell + c3 = row.add_cell + assert_equal("A1:C1", Axlsx.cell_range(row, false)) + end + def test_name_to_indices setup_wide @wide_test_points.each do |key, value| diff --git a/test/workbook/worksheet/tc_worksheet.rb b/test/workbook/worksheet/tc_worksheet.rb index f8bd69ae..df9da22f 100644 --- a/test/workbook/worksheet/tc_worksheet.rb +++ b/test/workbook/worksheet/tc_worksheet.rb @@ -323,6 +323,13 @@ class TestWorksheet < Test::Unit::TestCase assert_equal(doc.xpath('//xmlns:worksheet/xmlns:mergeCells/xmlns:mergeCell[@ref="E1:F1"]').size, 1) end + def test_to_xml_string_merge_cells_row + row = @ws.add_row [1, "two"] + @ws.merge_cells row + doc = Nokogiri::XML(@ws.to_xml_string) + assert_equal(doc.xpath('//xmlns:worksheet/xmlns:mergeCells/xmlns:mergeCell[@ref="A1:B1"]').size, 1) + end + def test_to_xml_string_row_breaks @ws.add_page_break("A1") doc = Nokogiri::XML(@ws.to_xml_string) -- cgit v1.2.3