diff options
| author | Randy Morgan <[email protected]> | 2012-05-03 09:10:23 +0900 |
|---|---|---|
| committer | Randy Morgan <[email protected]> | 2012-05-03 09:10:23 +0900 |
| commit | e622dc54069074198990beb0462da630bad38dd0 (patch) | |
| tree | 4065eb11cf4dcd68440bf8347af4509c130fb11e /test | |
| parent | 2dfdd1f26b1fc748da3b4edad9aeeaeae842aedb (diff) | |
| download | caxlsx-e622dc54069074198990beb0462da630bad38dd0.tar.gz caxlsx-e622dc54069074198990beb0462da630bad38dd0.zip | |
rebuild series data base objects with full implementation.
Address shape validation error.
Diffstat (limited to 'test')
| -rw-r--r-- | test/drawing/tc_bar_series.rb | 13 | ||||
| -rw-r--r-- | test/drawing/tc_cat_axis_data.rb | 44 | ||||
| -rw-r--r-- | test/drawing/tc_chart.rb | 2 | ||||
| -rw-r--r-- | test/drawing/tc_data_source.rb | 17 | ||||
| -rw-r--r-- | test/drawing/tc_line_series.rb | 12 | ||||
| -rw-r--r-- | test/drawing/tc_named_axis_data.rb | 44 | ||||
| -rw-r--r-- | test/drawing/tc_num_data.rb | 27 | ||||
| -rw-r--r-- | test/drawing/tc_num_val.rb | 29 | ||||
| -rw-r--r-- | test/drawing/tc_pie_series.rb | 15 | ||||
| -rw-r--r-- | test/drawing/tc_scatter_series.rb | 6 | ||||
| -rw-r--r-- | test/drawing/tc_str_data.rb | 18 | ||||
| -rw-r--r-- | test/drawing/tc_str_val.rb | 21 |
12 files changed, 166 insertions, 82 deletions
diff --git a/test/drawing/tc_bar_series.rb b/test/drawing/tc_bar_series.rb index 443427c1..93ebbbbb 100644 --- a/test/drawing/tc_bar_series.rb +++ b/test/drawing/tc_bar_series.rb @@ -11,23 +11,16 @@ class TestBarSeries < Test::Unit::TestCase def test_initialize assert_equal(@series.title.text, "bob", "series title has been applied") - assert_equal(@series.data, [0,1,2], "data option applied") - assert_equal(@series.labels, ["zero", "one","two"], "labels option applied") + assert_equal(@series.data.class, Axlsx::NumDataSource, "data option applied") assert_equal(@series.shape, :cone, "series shape has been applied") + assert(@series.data.is_a?(Axlsx::NumDataSource)) + assert(@series.labels.is_a?(Axlsx::AxDataSource)) end def test_colors assert_equal(@series.colors.size, 3) end - def test_data - assert_equal(@series.data, [0,1,2]) - end - - def test_labels - assert_equal(@series.labels, ["zero", "one", "two"]) - end - def test_shape assert_raise(ArgumentError, "require valid shape") { @series.shape = :teardropt } assert_nothing_raised("allow valid shape") { @series.shape = :box } diff --git a/test/drawing/tc_cat_axis_data.rb b/test/drawing/tc_cat_axis_data.rb index 4c90cf60..09b14be6 100644 --- a/test/drawing/tc_cat_axis_data.rb +++ b/test/drawing/tc_cat_axis_data.rb @@ -1,27 +1,27 @@ -require 'tc_helper.rb' +# require 'tc_helper.rb' -class TestCatAxisData < Test::Unit::TestCase +# class TestCatAxisData < Test::Unit::TestCase - def setup - p = Axlsx::Package.new - @ws = p.workbook.add_worksheet - @chart = @ws.drawing.add_chart Axlsx::Bar3DChart - @series = @chart.add_series :labels=>["zero", "one", "two"] - end +# def setup +# p = Axlsx::Package.new +# @ws = p.workbook.add_worksheet +# @chart = @ws.drawing.add_chart Axlsx::Bar3DChart +# @series = @chart.add_series :labels=>["zero", "one", "two"] +# end - def test_initialize - assert(@series.labels.is_a?Axlsx::SimpleTypedList) - assert_equal(@series.labels, ["zero", "one", "two"]) - end +# def test_initialize +# assert(@series.labels.is_a?Axlsx::SimpleTypedList) +# assert_equal(@series.labels, ["zero", "one", "two"]) +# end - def test_to_xml_string - doc = Nokogiri::XML(@chart.to_xml_string) - assert_equal(doc.xpath("//c:cat/c:strRef/c:f").size,1) - assert_equal(doc.xpath("//c:strCache/c:ptCount[@val='#{@series.labels.size}']").size,1) - @series.labels.each_with_index do |label, index| - assert_equal(doc.xpath("//c:strCache/c:pt[@idx='#{index}']").size,1) - assert_equal(doc.xpath("//c:strCache/c:pt/c:v[text()='#{label}']").size,1) - end - end +# def test_to_xml_string +# doc = Nokogiri::XML(@chart.to_xml_string) +# assert_equal(doc.xpath("//c:cat/c:strRef/c:f").size,1) +# assert_equal(doc.xpath("//c:strCache/c:ptCount[@val='#{@series.labels.size}']").size,1) +# @series.labels.each_with_index do |label, index| +# assert_equal(doc.xpath("//c:strCache/c:pt[@idx='#{index}']").size,1) +# assert_equal(doc.xpath("//c:strCache/c:pt/c:v[text()='#{label}']").size,1) +# end +# end -end +# end diff --git a/test/drawing/tc_chart.rb b/test/drawing/tc_chart.rb index 8047c018..98a72e9c 100644 --- a/test/drawing/tc_chart.rb +++ b/test/drawing/tc_chart.rb @@ -50,8 +50,6 @@ class TestChart < Test::Unit::TestCase s = @chart.add_series :data=>[0,1,2,3], :labels => ["one", 1, "anything"], :title=>"bob" assert_equal(@chart.series.last, s, "series has been added to chart series collection") assert_equal(s.title.text, "bob", "series title has been applied") - assert_equal(s.data, [0,1,2,3], "data option applied") - assert_equal(s.labels, ["one",1,"anything"], "labels option applied") end def test_pn diff --git a/test/drawing/tc_data_source.rb b/test/drawing/tc_data_source.rb new file mode 100644 index 00000000..6b35e008 --- /dev/null +++ b/test/drawing/tc_data_source.rb @@ -0,0 +1,17 @@ + require 'tc_helper.rb' + + class TestNumDataSource < Test::Unit::TestCase + + def setup + @data_source = Axlsx::NumDataSource.new :data => ["1", "2", "3"] + end + + def test_to_xml_string_strLit + str = '<?xml version="1.0" encoding="UTF-8"?>' + str << '<c:chartSpace xmlns:c="' << Axlsx::XML_NS_C << '">' + str << @data_source.to_xml_string + doc = Nokogiri::XML(str) + assert_equal(doc.xpath("//c:val").size, 1) + end + + end diff --git a/test/drawing/tc_line_series.rb b/test/drawing/tc_line_series.rb index a2417549..ef180e39 100644 --- a/test/drawing/tc_line_series.rb +++ b/test/drawing/tc_line_series.rb @@ -11,16 +11,10 @@ class TestLineSeries < Test::Unit::TestCase def test_initialize assert_equal(@series.title.text, "bob", "series title has been applied") - assert_equal(@series.data, [0,1,2], "data option applied") - assert_equal(@series.labels, ["zero", "one","two"], "labels option applied") - end - - def test_data - assert_equal(@series.data, [0,1,2]) - end + assert_equal(@series.labels.class, Axlsx::AxDataSource) + assert_equal(@series.data.class, Axlsx::NumDataSource) - def test_labels - assert_equal(@series.labels, ["zero", "one", "two"]) end + #TODO serialization testing end diff --git a/test/drawing/tc_named_axis_data.rb b/test/drawing/tc_named_axis_data.rb index fe3a32fb..63fb4610 100644 --- a/test/drawing/tc_named_axis_data.rb +++ b/test/drawing/tc_named_axis_data.rb @@ -1,27 +1,27 @@ -require 'tc_helper.rb' +# require 'tc_helper.rb' -class TestNamedAxisData < Test::Unit::TestCase +# class TestNamedAxisData < Test::Unit::TestCase - def setup - p = Axlsx::Package.new - @ws = p.workbook.add_worksheet - @chart = @ws.drawing.add_chart Axlsx::Line3DChart - @series = @chart.add_series :data=>[0,1,2] - end +# def setup +# p = Axlsx::Package.new +# @ws = p.workbook.add_worksheet +# @chart = @ws.drawing.add_chart Axlsx::Line3DChart +# @series = @chart.add_series :data=>[0,1,2] +# end - def test_initialize - assert(@series.data.is_a?Axlsx::SimpleTypedList) - assert_equal(@series.data, [0,1,2]) - end +# def test_initialize +# assert(@series.data.is_a?Axlsx::SimpleTypedList) +# assert_equal(@series.data, [0,1,2]) +# end - def test_to_xml_string - doc = Nokogiri::XML(@chart.to_xml_string) - assert_equal(doc.xpath("//c:val/c:numRef/c:f").size,1) - assert_equal(doc.xpath("//c:numCache/c:ptCount[@val='#{@series.data.size}']").size,1) - @series.data.each_with_index do |datum, index| - assert_equal(doc.xpath("//c:numCache/c:pt[@idx='#{index}']").size,1) - assert_equal(doc.xpath("//c:numCache/c:pt/c:v[text()='#{datum}']").size,1) - end - end +# def test_to_xml_string +# doc = Nokogiri::XML(@chart.to_xml_string) +# assert_equal(doc.xpath("//c:val/c:numRef/c:f").size,1) +# assert_equal(doc.xpath("//c:numCache/c:ptCount[@val='#{@series.data.size}']").size,1) +# @series.data.each_with_index do |datum, index| +# assert_equal(doc.xpath("//c:numCache/c:pt[@idx='#{index}']").size,1) +# assert_equal(doc.xpath("//c:numCache/c:pt/c:v[text()='#{datum}']").size,1) +# end +# end -end +# end diff --git a/test/drawing/tc_num_data.rb b/test/drawing/tc_num_data.rb new file mode 100644 index 00000000..85bf5614 --- /dev/null +++ b/test/drawing/tc_num_data.rb @@ -0,0 +1,27 @@ +require 'tc_helper.rb' + +class TestNumData < Test::Unit::TestCase + + def setup + @num_data = Axlsx::NumData.new :data => [1, 2, 3] + end + + def test_initialize + assert_equal(@num_data.format_code, "General") + end + + def test_format_code + assert_raise(ArgumentError) {@num_data.format_code = 7} + assert_nothing_raised {@num_data.format_code = 'foo_bar'} + end + + def test_to_xml_string + str = '<?xml version="1.0" encoding="UTF-8"?>' + str << '<c:chartSpace xmlns:c="' << Axlsx::XML_NS_C << '">' + str << @num_data.to_xml_string + doc = Nokogiri::XML(str) + assert_equal(doc.xpath("//c:numLit/c:ptCount[@val=3]").size, 1) + assert_equal(doc.xpath("//c:numLit/c:pt/c:v[text()='1']").size, 1) + end + +end diff --git a/test/drawing/tc_num_val.rb b/test/drawing/tc_num_val.rb new file mode 100644 index 00000000..ef27deb9 --- /dev/null +++ b/test/drawing/tc_num_val.rb @@ -0,0 +1,29 @@ +require 'tc_helper.rb' + +class TestNumVal < Test::Unit::TestCase + + def setup + @num_val = Axlsx::NumVal.new :v => 1 + end + + def test_initialize + assert_equal(@num_val.format_code, "General") + assert_equal(@num_val.v, "1") + end + + def test_format_code + assert_raise(ArgumentError) {@num_val.format_code = 7} + assert_nothing_raised {@num_val.format_code = 'foo_bar'} + end + + def test_to_xml_string + str = '<?xml version="1.0" encoding="UTF-8"?>' + str << '<c:chartSpace xmlns:c="' << Axlsx::XML_NS_C << '">' + str << @num_val.to_xml_string(0) + doc = Nokogiri::XML(str) + # lets see if this works? + assert_equal(doc.xpath("//c:pt/c:v[text()='1']").size, 1) + + end + +end diff --git a/test/drawing/tc_pie_series.rb b/test/drawing/tc_pie_series.rb index 66c8da81..d9853850 100644 --- a/test/drawing/tc_pie_series.rb +++ b/test/drawing/tc_pie_series.rb @@ -11,24 +11,17 @@ class TestPieSeries < Test::Unit::TestCase def test_initialize assert_equal(@series.title.text, "bob", "series title has been applied") - assert_equal(@series.data, [0,1,2], "data option applied") - assert_equal(@series.labels, ["zero", "one","two"], "labels option applied") + assert_equal(@series.labels.class, Axlsx::AxDataSource) + assert_equal(@series.data.class, Axlsx::NumDataSource) assert_equal(@series.explosion, nil, "series shape has been applied") end - def test_data - assert_equal(@series.data, [0,1,2]) - end - - def test_labels - assert_equal(@series.labels, ["zero", "one", "two"]) - - end - def test_explosion assert_raise(ArgumentError, "require valid explosion") { @series.explosion = :lots } assert_nothing_raised("allow valid explosion") { @series.explosion = 20 } assert(@series.explosion == 20) end + #TODO test unique serialization parts + end diff --git a/test/drawing/tc_scatter_series.rb b/test/drawing/tc_scatter_series.rb index f84d4697..e97abca7 100644 --- a/test/drawing/tc_scatter_series.rb +++ b/test/drawing/tc_scatter_series.rb @@ -13,15 +13,9 @@ class TestScatterSeries < Test::Unit::TestCase assert_equal(@series.title.text, "exponents", "series title has been applied") end - def test_data - assert_equal(@series.xData, [1,2,4]) - assert_equal(@series.yData, [1,3,9]) - end - def test_to_xml_string doc = Nokogiri::XML(@chart.to_xml_string) assert_equal(doc.xpath("//a:srgbClr[@val='#{@series.color}']").size,4) - end end diff --git a/test/drawing/tc_str_data.rb b/test/drawing/tc_str_data.rb new file mode 100644 index 00000000..a116965b --- /dev/null +++ b/test/drawing/tc_str_data.rb @@ -0,0 +1,18 @@ +require 'tc_helper.rb' + +class TestStrData < Test::Unit::TestCase + + def setup + @str_data = Axlsx::StrData.new :data => ["1", "2", "3"] + end + + def test_to_xml_string_strLit + str = '<?xml version="1.0" encoding="UTF-8"?>' + str << '<c:chartSpace xmlns:c="' << Axlsx::XML_NS_C << '">' + str << @str_data.to_xml_string + doc = Nokogiri::XML(str) + assert_equal(doc.xpath("//c:strLit/c:ptCount[@val=3]").size, 1) + assert_equal(doc.xpath("//c:strLit/c:pt/c:v[text()='1']").size, 1) + end + +end diff --git a/test/drawing/tc_str_val.rb b/test/drawing/tc_str_val.rb new file mode 100644 index 00000000..0e4ca835 --- /dev/null +++ b/test/drawing/tc_str_val.rb @@ -0,0 +1,21 @@ +require 'tc_helper.rb' + +class TestStrVal < Test::Unit::TestCase + + def setup + @str_val = Axlsx::StrVal.new :v => "1" + end + + def test_initialize + assert_equal(@str_val.v, "1") + end + + def test_to_xml_string + str = '<?xml version="1.0" encoding="UTF-8"?>' + str << '<c:chartSpace xmlns:c="' << Axlsx::XML_NS_C << '">' + str << @str_val.to_xml_string(0) + doc = Nokogiri::XML(str) + assert_equal(doc.xpath("//c:pt/c:v[text()='1']").size, 1) + end + +end |
