From 3d3d8e3aba0c49fe5adef5cf1058c3157314b2b2 Mon Sep 17 00:00:00 2001 From: Randy Morgan Date: Wed, 20 Jun 2012 19:26:25 +0900 Subject: update examples and the beginings of protected_range --- test/tc_package.rb | 2 ++ test/workbook/worksheet/tc_protected_range.rb | 18 ++++++++++++++++++ test/workbook/worksheet/tc_worksheet.rb | 14 +++++++++++++- 3 files changed, 33 insertions(+), 1 deletion(-) create mode 100644 test/workbook/worksheet/tc_protected_range.rb (limited to 'test') diff --git a/test/tc_package.rb b/test/tc_package.rb index eedd2375..3b5db288 100644 --- a/test/tc_package.rb +++ b/test/tc_package.rb @@ -7,6 +7,8 @@ class TestPackage < Test::Unit::TestCase ws = @package.workbook.add_worksheet ws.add_row ['Can', 'we', 'build it?'] ws.add_row ['Yes!', 'We', 'can!'] + ws.protect_range('A1:C1') + ws.protect_range(ws.rows.last.cells) ws.add_comment :author => 'alice', :text => 'Hi Bob', :ref => 'A12' ws.add_comment :author => 'bob', :text => 'Hi Alice', :ref => 'F19' ws.sheet_view do |vs| diff --git a/test/workbook/worksheet/tc_protected_range.rb b/test/workbook/worksheet/tc_protected_range.rb new file mode 100644 index 00000000..6a62f58c --- /dev/null +++ b/test/workbook/worksheet/tc_protected_range.rb @@ -0,0 +1,18 @@ +# encoding: UTF-8 +require 'tc_helper.rb' +class TestProtectedRange < Test::Unit::TestCase +def setup + @p = Axlsx::Package.new + @ws = @p.workbook.add_worksheet { |sheet| sheet.add_row [1,2,3,4,5,6,7,8,9] } +end + +def test_initialize_options + assert_nothing_raised {Axlsx::ProtectedRange.new(:sqref => 'A1:B1', :name => "only bob")} +end + +def test_range + assert_equal(0, @ws.protected_ranges.size) + r = @ws.protect_range('A1:B1') + assert_equal('A1:B1', r.sqref) +end +end diff --git a/test/workbook/worksheet/tc_worksheet.rb b/test/workbook/worksheet/tc_worksheet.rb index 938bf2f6..7cc44a52 100644 --- a/test/workbook/worksheet/tc_worksheet.rb +++ b/test/workbook/worksheet/tc_worksheet.rb @@ -312,7 +312,6 @@ class TestWorksheet < Test::Unit::TestCase schema = Nokogiri::XML::Schema(File.open(Axlsx::SML_XSD)) doc = Nokogiri::XML(@ws.to_xml_string) - puts @ws.to_xml_string assert(schema.validate(doc).map { |e| puts e.message; e }.empty?) end # Make sure the XML for all optional elements (like pageMargins, autoFilter, ...) @@ -373,6 +372,19 @@ class TestWorksheet < Test::Unit::TestCase assert_raise(ArgumentError, 'only accept Integer, Float or Fixnum') { @ws.column_widths 2, 7, "-1" } end + def test_protect_range + assert(@ws.protected_ranges.is_a?(Axlsx::SimpleTypedList)) + assert_equal(0, @ws.protected_ranges.size) + @ws.protect_range('A1:A3') + assert_equal('A1:A3', @ws.protected_ranges.last.sqref) + end + + def test_protect_range_with_cells + @ws.add_row [1, 2, 3] + assert_nothing_raised {@ws.protect_range(@ws.rows.first.cells) } + assert_equal('A1:C1', @ws.protected_ranges.last.sqref) + + end def test_merge_cells assert(@ws.merged_cells.is_a?(Array)) assert_equal(@ws.merged_cells.size, 0) -- cgit v1.2.3