ruport 0.6.1 → 0.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (83) hide show
  1. data/AUTHORS +6 -0
  2. data/Rakefile +4 -4
  3. data/TODO +3 -2
  4. data/bin/rope +2 -103
  5. data/examples/pdf_complex_report.rb +53 -0
  6. data/lib/ruport/config.rb +7 -7
  7. data/lib/ruport/data/collection.rb +8 -7
  8. data/lib/ruport/data/groupable.rb +3 -2
  9. data/lib/ruport/data/record.rb +13 -16
  10. data/lib/ruport/data/table.rb +89 -18
  11. data/lib/ruport/format/csv.rb +29 -0
  12. data/lib/ruport/format/html.rb +40 -0
  13. data/lib/ruport/format/latex.rb +50 -0
  14. data/lib/ruport/format/pdf.rb +78 -0
  15. data/lib/ruport/format/plugin.rb +20 -65
  16. data/lib/ruport/format/svg.rb +39 -0
  17. data/lib/ruport/format/text.rb +77 -0
  18. data/lib/ruport/format/xml.rb +32 -0
  19. data/lib/ruport/format.rb +1 -159
  20. data/lib/ruport/generator.rb +158 -0
  21. data/lib/ruport/layout/component.rb +7 -0
  22. data/lib/ruport/layout.rb +1 -0
  23. data/lib/ruport/query.rb +3 -3
  24. data/lib/ruport/renderer/graph.rb +48 -0
  25. data/lib/ruport/renderer/table.rb +132 -0
  26. data/lib/ruport/renderer.rb +193 -0
  27. data/lib/ruport/report/graph.rb +2 -2
  28. data/lib/ruport/report.rb +94 -96
  29. data/lib/ruport/system_extensions.rb +3 -6
  30. data/lib/ruport.rb +6 -4
  31. data/test/samples/dates.csv +1409 -0
  32. data/test/samples/foo.rtxt +3 -0
  33. data/test/test_collection.rb +0 -14
  34. data/test/test_config.rb +6 -6
  35. data/test/test_graph_renderer.rb +97 -0
  36. data/test/test_groupable.rb +1 -0
  37. data/test/test_query.rb +325 -324
  38. data/test/test_record.rb +3 -2
  39. data/test/test_renderer.rb +74 -0
  40. data/test/test_report.rb +29 -26
  41. data/test/test_table.rb +54 -29
  42. data/test/test_table_renderer.rb +93 -0
  43. data/test/test_text_table.rb +61 -0
  44. data/test/unit.log +24 -0
  45. metadata +41 -63
  46. data/CHANGELOG +0 -587
  47. data/examples/basic_grouping.rb +0 -19
  48. data/examples/fieldless_table.rb +0 -13
  49. data/examples/latex_table.rb +0 -17
  50. data/examples/line_graph.rb +0 -22
  51. data/examples/line_graph_report.rb +0 -23
  52. data/examples/line_plotter.rb +0 -46
  53. data/examples/long.txt +0 -24
  54. data/examples/new_plugin.rb +0 -24
  55. data/examples/report.rb +0 -35
  56. data/examples/sample_invoice_report.rb +0 -32
  57. data/examples/simple_mail.rb +0 -15
  58. data/examples/simple_table_interface.rb +0 -20
  59. data/examples/sql_erb.rb +0 -20
  60. data/examples/template.rb +0 -15
  61. data/examples/text_processors.rb +0 -13
  62. data/lib/ruport/format/engine/document.rb +0 -28
  63. data/lib/ruport/format/engine/graph.rb +0 -18
  64. data/lib/ruport/format/engine/invoice.rb +0 -23
  65. data/lib/ruport/format/engine/table.rb +0 -54
  66. data/lib/ruport/format/engine.rb +0 -108
  67. data/lib/ruport/format/plugin/csv_plugin.rb +0 -26
  68. data/lib/ruport/format/plugin/html_plugin.rb +0 -32
  69. data/lib/ruport/format/plugin/latex_plugin.rb +0 -50
  70. data/lib/ruport/format/plugin/pdf_plugin.rb +0 -126
  71. data/lib/ruport/format/plugin/svg_plugin.rb +0 -61
  72. data/lib/ruport/format/plugin/text_plugin.rb +0 -77
  73. data/lib/ruport/meta_tools.rb +0 -66
  74. data/lib/ruport/report/invoice.rb +0 -29
  75. data/test/_test_groupable.rb +0 -0
  76. data/test/test_format.rb +0 -39
  77. data/test/test_format_engine.rb +0 -264
  78. data/test/test_graph.rb +0 -93
  79. data/test/test_invoice.rb +0 -32
  80. data/test/test_latex.rb +0 -20
  81. data/test/test_meta_tools.rb +0 -14
  82. data/test/test_plugin.rb +0 -277
  83. data/test/ts_all.rb +0 -21
@@ -0,0 +1,3 @@
1
+ <%= @results %>
2
+ <%= 2 + 2 %>
3
+ ---
@@ -27,18 +27,4 @@ class TestCollection < Test::Unit::TestCase
27
27
  assert_equal @ghost_set, @ghost_collection.to_set
28
28
  end
29
29
 
30
- def test_to_csv
31
- assert_equal "inky,blue\nblinky,red\nclyde,orange\n",
32
- @ghost_collection.to_csv
33
- end
34
-
35
- def test_as_csv
36
- assert_equal @ghost_collection.to_csv, @ghost_collection.as(:csv)
37
- end
38
-
39
- def test_invalid_plugin_throws_an_error
40
- assert_raise(InvalidPluginError) { @ghost_collection.to_papyrus_scroll }
41
- assert_raise(InvalidPluginError) { @ghost_collection.as(:stone_tablet)}
42
- end
43
-
44
30
  end
data/test/test_config.rb CHANGED
@@ -65,12 +65,12 @@ class TestConfiguration < Test::Unit::TestCase
65
65
 
66
66
  end
67
67
 
68
- def test_paranoia
69
- assert_equal(false, Ruport::Config.paranoid?)
70
- Ruport::Config.enable_paranoia
71
- assert_equal(true, Ruport::Config.paranoid?)
72
- Ruport::Config.disable_paranoia
73
- assert_equal(false, Ruport::Config.paranoid?)
68
+ def test_debug
69
+ assert_equal(false, Ruport::Config.debug_mode?)
70
+ Ruport::Config.debug_mode = true
71
+ assert_equal(true, Ruport::Config.debug_mode?)
72
+ Ruport::Config.debug_mode = false
73
+ assert_equal(false, Ruport::Config.debug_mode?)
74
74
  end
75
75
 
76
76
  end
@@ -0,0 +1,97 @@
1
+ require "test/unit"
2
+ require "ruport"
3
+
4
+ begin
5
+ require "rubygems"
6
+ rescue LoadError
7
+ nil
8
+ end
9
+
10
+ class MockGraphPlugin < Ruport::Format::Plugin
11
+ def prepare_graph
12
+ output << "prepare"
13
+ end
14
+ def build_graph
15
+ output << "build"
16
+ end
17
+ def finalize_graph
18
+ output << "finalize"
19
+ end
20
+ end
21
+
22
+ Ruport::Renderer::Graph.add_format MockGraphPlugin, :mock
23
+
24
+ class TestGraphRenderer < Test::Unit::TestCase
25
+
26
+ def test_basics
27
+ out = Ruport::Renderer::Graph.render_mock do |r|
28
+ r.layout do |l|
29
+ assert l.height.kind_of?(Numeric)
30
+ assert l.width.kind_of?(Numeric)
31
+ assert_equal :line, l.style
32
+ end
33
+ end
34
+
35
+ assert_equal("preparebuildfinalize",out)
36
+ end
37
+
38
+ def test_report_shortcut
39
+ a = Ruport::Report.new
40
+ a.extend(Ruport::Report::Graph)
41
+
42
+ p = lambda { |e| e.data = [[1,2,3]].to_table(%w[a b c]) }
43
+
44
+ b = a.build_graph(&p)
45
+ c = b.run
46
+ assert_not_nil b.plugin.output
47
+
48
+ assert_equal c, a.render_graph(&p)
49
+
50
+ end
51
+
52
+ end
53
+
54
+
55
+ class TestSVGPlugin < Test::Unit::TestCase
56
+
57
+ def test_output
58
+ assert_not_nil Ruport::Renderer::Graph.render_svg { |r|
59
+ r.data = [[1,2,3],[4,5,6]].to_table
60
+ }
61
+ end
62
+
63
+ end
64
+
65
+ class TestXMLSWFPlugin < Test::Unit::TestCase
66
+
67
+ def test_output
68
+
69
+ expected = <<-EOS
70
+ <chart>
71
+ <chart_type>line</chart_type>
72
+ <chart_data>
73
+ <row>
74
+ <null/>
75
+ </row>
76
+ <row>
77
+ <string>Region 0</string>
78
+ <number>1</number>
79
+ <number>2</number>
80
+ <number>3</number>
81
+ </row>
82
+ <row>
83
+ <string>Region 1</string>
84
+ <number>4</number>
85
+ <number>5</number>
86
+ <number>6</number>
87
+ </row>
88
+ </chart_data>
89
+ </chart>
90
+ EOS
91
+ assert_equal expected,
92
+ Ruport::Renderer::Graph.render_xml { |r|
93
+ r.data = [[1,2,3],[4,5,6]].to_table
94
+ }
95
+ end
96
+
97
+ end
@@ -36,6 +36,7 @@ class TestGroupable < Test::Unit::TestCase
36
36
 
37
37
  assert_equal expected, a.group_by_tag
38
38
  end
39
+
39
40
  end
40
41
 
41
42