# -*- coding: utf-8 -*- require 'helper' require 'write_xlsx' require 'stringio' class TestCondFormat20 < Test::Unit::TestCase def setup @workbook = WriteXLSX.new(StringIO.new) @worksheet = @workbook.add_worksheet('') end ############################################################################### # # Test the _assemble_xml_file() method. # # Test conditional formats. # def test_conditional_formats @worksheet.select # Start test code. @worksheet.write('A1', 10) @worksheet.write('A2', 20) @worksheet.write('A3', 30) @worksheet.write('A4', 40) @worksheet.conditional_formatting('A1:A4', { :type => 'text', :criteria => 'begins with', :value => 'b', :format => nil } ) @worksheet.conditional_formatting('A1:A4', { :type => 'text', :criteria => 'begins with', :value => 'bc', :format => nil } ) @worksheet.conditional_formatting('A1:A4', { :type => 'text', :criteria => 'ends with', :value => 'z', :format => nil } ) @worksheet.conditional_formatting('A1:A4', { :type => 'text', :criteria => 'ends with', :value => 'yz', :format => nil } ) @worksheet.assemble_xml_file result = got_to_array(@worksheet.instance_variable_get(:@writer).string) expected = expected_to_array(expected_xml) assert_equal(expected, result) end def expected_xml < 10 20 30 40 LEFT(A1,1)="b" LEFT(A1,2)="bc" RIGHT(A1,1)="z" RIGHT(A1,2)="yz" EOS end end