ruport 1.6.3 → 1.8.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/AUTHORS +11 -0
- data/CHANGELOG.md +38 -0
- data/HACKING +1 -17
- data/README.md +97 -0
- data/Rakefile +9 -50
- data/examples/add_row_table.rb +46 -0
- data/examples/data/wine.csv +255 -0
- data/examples/pdf_grouping.rb +39 -0
- data/examples/pdf_table.rb +28 -0
- data/examples/pdf_table_from_csv.rb +26 -0
- data/examples/pdf_table_prawn.rb +30 -0
- data/examples/pdf_table_simple.rb +13 -0
- data/examples/row_renderer.rb +1 -1
- data/examples/simple_pdf_lines.rb +1 -1
- data/examples/trac_ticket_status.rb +1 -1
- data/lib/ruport/controller.rb +17 -21
- data/lib/ruport/data/feeder.rb +2 -2
- data/lib/ruport/data/grouping.rb +8 -8
- data/lib/ruport/data/record.rb +4 -4
- data/lib/ruport/data/table.rb +318 -206
- data/lib/ruport/formatter/csv.rb +6 -7
- data/lib/ruport/formatter/html.rb +13 -11
- data/lib/ruport/formatter/markdown.rb +105 -0
- data/lib/ruport/formatter/prawn_pdf.rb +159 -0
- data/lib/ruport/formatter/template.rb +1 -1
- data/lib/ruport/formatter/text.rb +1 -1
- data/lib/ruport/formatter.rb +54 -54
- data/lib/ruport/version.rb +1 -1
- data/lib/ruport.rb +7 -23
- data/test/controller_test.rb +201 -225
- data/test/csv_formatter_test.rb +36 -36
- data/test/data_feeder_test.rb +64 -64
- data/test/expected_outputs/prawn_pdf_formatter/pdf_basic.pdf.test +265 -0
- data/test/grouping_test.rb +103 -102
- data/test/helpers.rb +29 -10
- data/test/html_formatter_test.rb +46 -46
- data/test/markdown_formatter_test.rb +142 -0
- data/test/prawn_pdf_formatter_test.rb +108 -0
- data/test/record_test.rb +91 -91
- data/test/samples/sales.csv +21 -0
- data/test/table_pivot_test.rb +77 -26
- data/test/table_test.rb +376 -354
- data/test/template_test.rb +13 -13
- data/test/text_formatter_test.rb +52 -52
- data/util/bench/data/table/bench_column_manip.rb +0 -1
- data/util/bench/data/table/bench_dup.rb +0 -1
- data/util/bench/data/table/bench_init.rb +1 -2
- data/util/bench/data/table/bench_manip.rb +0 -1
- data/util/bench/formatter/bench_csv.rb +0 -1
- data/util/bench/formatter/bench_html.rb +0 -1
- data/util/bench/formatter/bench_pdf.rb +0 -1
- data/util/bench/formatter/bench_text.rb +0 -1
- metadata +131 -82
- data/README +0 -114
- data/lib/ruport/formatter/pdf.rb +0 -591
- data/test/pdf_formatter_test.rb +0 -354
data/test/template_test.rb
CHANGED
@@ -1,31 +1,31 @@
|
|
1
1
|
#!/usr/bin/env ruby -w
|
2
|
-
require File.join(File.expand_path(File.dirname(__FILE__)), "helpers")
|
2
|
+
require File.join(File.expand_path(File.dirname(__FILE__)), "helpers")
|
3
|
+
|
4
|
+
class TemplateTest < Minitest::Test
|
3
5
|
|
4
|
-
class TemplateTest < Test::Unit::TestCase
|
5
|
-
|
6
6
|
def setup
|
7
7
|
@template_class = Ruport::Formatter::Template.dup
|
8
8
|
end
|
9
|
-
|
9
|
+
|
10
10
|
def teardown
|
11
11
|
Ruport::Formatter::Template.instance_variable_set(:@templates, nil)
|
12
12
|
end
|
13
|
-
|
13
|
+
|
14
14
|
def test_template_should_exist
|
15
15
|
@template_class.create(:foo)
|
16
|
-
assert_instance_of @template_class,
|
16
|
+
assert_instance_of @template_class,
|
17
17
|
@template_class[:foo]
|
18
|
-
end
|
19
|
-
|
18
|
+
end
|
19
|
+
|
20
20
|
def test_template_creation_yields_an_options_object
|
21
21
|
@template_class.create(:foo) do |template|
|
22
22
|
template.page_format = { :layout => :landscape,
|
23
23
|
:paper_size => :letter }
|
24
24
|
end
|
25
25
|
assert_equal :landscape, @template_class[:foo].page_format[:layout]
|
26
|
-
assert_equal :letter, @template_class[:foo].page_format[:paper_size]
|
26
|
+
assert_equal :letter, @template_class[:foo].page_format[:paper_size]
|
27
27
|
end
|
28
|
-
|
28
|
+
|
29
29
|
def test_create_derived_template
|
30
30
|
Ruport::Formatter::Template.create(:foo) do |template|
|
31
31
|
template.page_format = { :layout => :landscape,
|
@@ -35,14 +35,14 @@ class TemplateTest < Test::Unit::TestCase
|
|
35
35
|
assert_equal :landscape,
|
36
36
|
Ruport::Formatter::Template[:bar].page_format[:layout]
|
37
37
|
assert_equal :letter,
|
38
|
-
Ruport::Formatter::Template[:bar].page_format[:paper_size]
|
38
|
+
Ruport::Formatter::Template[:bar].page_format[:paper_size]
|
39
39
|
end
|
40
|
-
|
40
|
+
|
41
41
|
def test_default_template
|
42
42
|
assert_nil Ruport::Formatter::Template.default
|
43
43
|
Ruport::Formatter::Template.create(:default)
|
44
44
|
assert_equal Ruport::Formatter::Template[:default],
|
45
45
|
Ruport::Formatter::Template.default
|
46
46
|
end
|
47
|
-
|
47
|
+
|
48
48
|
end
|
data/test/text_formatter_test.rb
CHANGED
@@ -1,8 +1,8 @@
|
|
1
1
|
#!/usr/bin/env ruby -w
|
2
2
|
require File.join(File.expand_path(File.dirname(__FILE__)), "helpers")
|
3
3
|
|
4
|
-
class TestRenderTextTable < Test
|
5
|
-
|
4
|
+
class TestRenderTextTable < Minitest::Test
|
5
|
+
|
6
6
|
def setup
|
7
7
|
Ruport::Formatter::Template.create(:simple) do |format|
|
8
8
|
format.table = {
|
@@ -22,67 +22,67 @@ class TestRenderTextTable < Test::Unit::TestCase
|
|
22
22
|
|
23
23
|
def test_basic
|
24
24
|
tf = "+-------+\n"
|
25
|
-
|
26
|
-
a = Table([], :data => [[1,2],[3,4]]).to_text
|
25
|
+
|
26
|
+
a = Ruport.Table([], :data => [[1,2],[3,4]]).to_text
|
27
27
|
assert_equal("#{tf}| 1 | 2 |\n| 3 | 4 |\n#{tf}",a)
|
28
28
|
|
29
|
-
a = Table(%w[a b], :data => [[1,2],[3,4]]).to_text
|
29
|
+
a = Ruport.Table(%w[a b], :data => [[1,2],[3,4]]).to_text
|
30
30
|
assert_equal("#{tf}| a | b |\n#{tf}| 1 | 2 |\n| 3 | 4 |\n#{tf}", a)
|
31
31
|
end
|
32
|
-
|
32
|
+
|
33
33
|
def test_centering
|
34
|
-
tf = "+---------+\n"
|
34
|
+
tf = "+---------+\n"
|
35
35
|
|
36
|
-
a = Table([], :data => [[1,2],[300,4]])
|
36
|
+
a = Ruport.Table([], :data => [[1,2],[300,4]])
|
37
37
|
assert_equal( "#{tf}| 1 | 2 |\n| 300 | 4 |\n#{tf}",
|
38
38
|
a.to_text(:alignment => :center) )
|
39
39
|
|
40
40
|
tf = "+------------+\n"
|
41
|
-
a.column_names = %w[a bark]
|
41
|
+
a.column_names = %w[a bark]
|
42
42
|
assert_equal("#{tf}| a | bark |\n#{tf}| 1 | 2 |\n"+
|
43
|
-
"| 300 | 4 |\n#{tf}", a.to_text(:alignment => :center) )
|
43
|
+
"| 300 | 4 |\n#{tf}", a.to_text(:alignment => :center) )
|
44
44
|
end
|
45
45
|
|
46
46
|
def test_justified
|
47
47
|
tf = "+----------+\n"
|
48
|
-
a = Table([], :data => [[1,'Z'],[300,'BB']])
|
49
|
-
|
48
|
+
a = Ruport.Table([], :data => [[1,'Z'],[300,'BB']])
|
49
|
+
|
50
50
|
# justified alignment can be set explicitly
|
51
|
-
assert_equal "#{tf}| 1 | Z |\n| 300 | BB |\n#{tf}",
|
52
|
-
a.to_text(:alignment => :justified)
|
53
|
-
|
54
|
-
# justified alignment is also default
|
55
|
-
assert_equal "#{tf}| 1 | Z |\n| 300 | BB |\n#{tf}", a.to_s
|
51
|
+
assert_equal "#{tf}| 1 | Z |\n| 300 | BB |\n#{tf}",
|
52
|
+
a.to_text(:alignment => :justified)
|
53
|
+
|
54
|
+
# justified alignment is also default
|
55
|
+
assert_equal "#{tf}| 1 | Z |\n| 300 | BB |\n#{tf}", a.to_s
|
56
56
|
end
|
57
57
|
|
58
|
-
def test_wrapping
|
59
|
-
a = Table([], :data => [[1,2],[300,4]]).to_text(:table_width => 10)
|
58
|
+
def test_wrapping
|
59
|
+
a = Ruport.Table([], :data => [[1,2],[300,4]]).to_text(:table_width => 10)
|
60
60
|
assert_equal("+------->>\n| 1 | >>\n| 300 | >>\n+------->>\n",a)
|
61
|
-
end
|
62
|
-
|
61
|
+
end
|
62
|
+
|
63
63
|
def test_ignore_wrapping
|
64
|
-
a = Table([], :data => [[1,2],[300,4]]).to_text(:table_width => 10,
|
64
|
+
a = Ruport.Table([], :data => [[1,2],[300,4]]).to_text(:table_width => 10,
|
65
65
|
:ignore_table_width => true )
|
66
66
|
assert_equal("+---------+\n| 1 | 2 |\n| 300 | 4 |\n+---------+\n",a)
|
67
|
-
end
|
68
|
-
|
67
|
+
end
|
68
|
+
|
69
69
|
def test_render_empty_table
|
70
|
-
|
71
|
-
|
70
|
+
assert_raises(Ruport::FormatterError) { Ruport.Table([]).to_text }
|
71
|
+
Ruport.Table(%w[a b c]).to_text
|
72
72
|
|
73
|
-
a = Table(%w[a b c]).to_text
|
73
|
+
a = Ruport.Table(%w[a b c]).to_text
|
74
74
|
expected = "+-----------+\n"+
|
75
75
|
"| a | b | c |\n"+
|
76
76
|
"+-----------+\n"
|
77
77
|
assert_equal expected, a
|
78
78
|
end
|
79
|
-
|
79
|
+
|
80
80
|
def test_render_with_template
|
81
81
|
formatter = Ruport::Formatter::Text.new
|
82
82
|
formatter.options = Ruport::Controller::Options.new
|
83
83
|
formatter.options.template = :simple
|
84
84
|
formatter.apply_template
|
85
|
-
|
85
|
+
|
86
86
|
assert_equal false, formatter.options.show_table_headers
|
87
87
|
assert_equal 50, formatter.options.table_width
|
88
88
|
assert_equal true, formatter.options.ignore_table_width
|
@@ -92,10 +92,10 @@ class TestRenderTextTable < Test::Unit::TestCase
|
|
92
92
|
|
93
93
|
assert_equal false, formatter.options.show_group_headers
|
94
94
|
end
|
95
|
-
|
95
|
+
|
96
96
|
def test_options_hashes_override_template
|
97
97
|
opts = nil
|
98
|
-
table = Table(%w[a b c])
|
98
|
+
table = Ruport.Table(%w[a b c])
|
99
99
|
table.to_text(
|
100
100
|
:template => :simple,
|
101
101
|
:table_format => {
|
@@ -113,7 +113,7 @@ class TestRenderTextTable < Test::Unit::TestCase
|
|
113
113
|
) do |r|
|
114
114
|
opts = r.options
|
115
115
|
end
|
116
|
-
|
116
|
+
|
117
117
|
assert_equal true, opts.show_table_headers
|
118
118
|
assert_equal 25, opts.table_width
|
119
119
|
assert_equal false, opts.ignore_table_width
|
@@ -126,7 +126,7 @@ class TestRenderTextTable < Test::Unit::TestCase
|
|
126
126
|
|
127
127
|
def test_individual_options_override_template
|
128
128
|
opts = nil
|
129
|
-
table = Table(%w[a b c])
|
129
|
+
table = Ruport.Table(%w[a b c])
|
130
130
|
table.to_text(
|
131
131
|
:template => :simple,
|
132
132
|
:show_table_headers => true,
|
@@ -138,7 +138,7 @@ class TestRenderTextTable < Test::Unit::TestCase
|
|
138
138
|
) do |r|
|
139
139
|
opts = r.options
|
140
140
|
end
|
141
|
-
|
141
|
+
|
142
142
|
assert_equal true, opts.show_table_headers
|
143
143
|
assert_equal 75, opts.table_width
|
144
144
|
assert_equal false, opts.ignore_table_width
|
@@ -148,21 +148,21 @@ class TestRenderTextTable < Test::Unit::TestCase
|
|
148
148
|
|
149
149
|
assert_equal true, opts.show_group_headers
|
150
150
|
end
|
151
|
-
|
151
|
+
|
152
152
|
# -- BUG TRAPS ------------------------------
|
153
153
|
|
154
154
|
def test_should_render_without_column_names
|
155
|
-
a = Table([], :data => [[1,2,3]]).to_text
|
155
|
+
a = Ruport.Table([], :data => [[1,2,3]]).to_text
|
156
156
|
expected = "+-----------+\n"+
|
157
157
|
"| 1 | 2 | 3 |\n"+
|
158
158
|
"+-----------+\n"
|
159
159
|
assert_equal(expected,a)
|
160
160
|
end
|
161
|
-
|
161
|
+
|
162
162
|
end
|
163
|
-
|
164
163
|
|
165
|
-
|
164
|
+
|
165
|
+
class TestRenderTextRow < Minitest::Test
|
166
166
|
|
167
167
|
def test_row_basic
|
168
168
|
actual = Ruport::Controller::Row.render_text(:data => [1,2,3])
|
@@ -170,9 +170,9 @@ class TestRenderTextRow < Test::Unit::TestCase
|
|
170
170
|
end
|
171
171
|
|
172
172
|
end
|
173
|
-
|
174
173
|
|
175
|
-
|
174
|
+
|
175
|
+
class TestRenderTextGroup < Minitest::Test
|
176
176
|
|
177
177
|
def test_render_text_group
|
178
178
|
group = Ruport::Data::Group.new(:name => 'test',
|
@@ -196,7 +196,7 @@ class TestRenderTextGroup < Test::Unit::TestCase
|
|
196
196
|
:data => [ %w[is this more],
|
197
197
|
%w[interesting red snapper]],
|
198
198
|
:column_names => %w[i hope so])
|
199
|
-
|
199
|
+
|
200
200
|
actual = Ruport::Controller::Group.render(:text, :data => group,
|
201
201
|
:show_table_headers => false )
|
202
202
|
expected = "test:\n\n"+
|
@@ -205,17 +205,17 @@ class TestRenderTextGroup < Test::Unit::TestCase
|
|
205
205
|
"| interesting | red | snapper |\n"+
|
206
206
|
"+------------------------------+\n"
|
207
207
|
assert_equal(expected, actual)
|
208
|
-
end
|
209
|
-
end
|
210
|
-
|
208
|
+
end
|
209
|
+
end
|
210
|
+
|
211
211
|
|
212
|
-
class TestRenderTextGrouping < Test
|
212
|
+
class TestRenderTextGrouping < Minitest::Test
|
213
213
|
|
214
214
|
def test_render_text_grouping
|
215
215
|
table = Ruport::Data::Table.new(:data => [ %w[is this more],
|
216
216
|
%w[interesting red snapper]],
|
217
217
|
:column_names => %w[i hope so])
|
218
|
-
grouping = Grouping(table, :by => "i")
|
218
|
+
grouping = Grouping(table, :by => "i", :order => :name)
|
219
219
|
|
220
220
|
actual = Ruport::Controller::Grouping.render(:text, :data => grouping)
|
221
221
|
expected = "interesting:\n\n"+
|
@@ -230,8 +230,8 @@ class TestRenderTextGrouping < Test::Unit::TestCase
|
|
230
230
|
"+-------------+\n"+
|
231
231
|
"| this | more |\n"+
|
232
232
|
"+-------------+\n\n"
|
233
|
-
assert_equal(expected, actual)
|
234
|
-
|
233
|
+
assert_equal(expected, actual)
|
234
|
+
|
235
235
|
actual = grouping.to_s
|
236
236
|
assert_equal(expected,actual)
|
237
237
|
end
|
@@ -240,7 +240,7 @@ class TestRenderTextGrouping < Test::Unit::TestCase
|
|
240
240
|
table = Ruport::Data::Table.new(:data => [ %w[is this more],
|
241
241
|
%w[interesting red snapper]],
|
242
242
|
:column_names => %w[i hope so])
|
243
|
-
grouping = Grouping(table, :by => "i")
|
243
|
+
grouping = Grouping(table, :by => "i", :order => :name)
|
244
244
|
|
245
245
|
actual = Ruport::Controller::Grouping.render(:text, :data => grouping,
|
246
246
|
:show_table_headers => false)
|
@@ -254,5 +254,5 @@ class TestRenderTextGrouping < Test::Unit::TestCase
|
|
254
254
|
"+-------------+\n\n"
|
255
255
|
assert_equal(expected, actual)
|
256
256
|
end
|
257
|
-
|
258
|
-
end
|
257
|
+
|
258
|
+
end
|
@@ -1,5 +1,4 @@
|
|
1
1
|
require "ruport"
|
2
|
-
require "enumerator"
|
3
2
|
require "rubygems"
|
4
3
|
require "ruport/util/bench"
|
5
4
|
|
@@ -62,6 +61,6 @@ bench_suite do
|
|
62
61
|
}
|
63
62
|
|
64
63
|
bench_case("FasterCSV Table loading", CSV_N) {
|
65
|
-
|
64
|
+
::CSV::Table.new(::CSV.read("util/bench/samples/tattle.csv"))
|
66
65
|
}
|
67
66
|
end
|
metadata
CHANGED
@@ -1,65 +1,92 @@
|
|
1
|
-
--- !ruby/object:Gem::Specification
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
2
|
name: ruport
|
3
|
-
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 1.8.0
|
5
5
|
platform: ruby
|
6
|
-
authors:
|
6
|
+
authors:
|
7
7
|
- Gregory Brown
|
8
8
|
- Mike Milner
|
9
9
|
- Andrew France
|
10
|
-
autorequire:
|
10
|
+
autorequire:
|
11
11
|
bindir: bin
|
12
12
|
cert_chain: []
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
13
|
+
date: 2022-09-19 00:00:00.000000000 Z
|
14
|
+
dependencies:
|
15
|
+
- !ruby/object:Gem::Dependency
|
16
|
+
name: prawn
|
17
|
+
requirement: !ruby/object:Gem::Requirement
|
18
|
+
requirements:
|
19
|
+
- - "~>"
|
20
|
+
- !ruby/object:Gem::Version
|
21
|
+
version: 2.4.0
|
19
22
|
type: :runtime
|
20
|
-
|
21
|
-
version_requirements: !ruby/object:Gem::Requirement
|
22
|
-
requirements:
|
23
|
-
- - "
|
24
|
-
- !ruby/object:Gem::Version
|
25
|
-
version:
|
26
|
-
|
27
|
-
|
28
|
-
|
23
|
+
prerelease: false
|
24
|
+
version_requirements: !ruby/object:Gem::Requirement
|
25
|
+
requirements:
|
26
|
+
- - "~>"
|
27
|
+
- !ruby/object:Gem::Version
|
28
|
+
version: 2.4.0
|
29
|
+
- !ruby/object:Gem::Dependency
|
30
|
+
name: prawn-table
|
31
|
+
requirement: !ruby/object:Gem::Requirement
|
32
|
+
requirements:
|
33
|
+
- - "~>"
|
34
|
+
- !ruby/object:Gem::Version
|
35
|
+
version: 0.2.0
|
29
36
|
type: :runtime
|
30
|
-
|
31
|
-
version_requirements: !ruby/object:Gem::Requirement
|
32
|
-
requirements:
|
33
|
-
- - "
|
34
|
-
- !ruby/object:Gem::Version
|
35
|
-
version:
|
36
|
-
|
37
|
-
|
37
|
+
prerelease: false
|
38
|
+
version_requirements: !ruby/object:Gem::Requirement
|
39
|
+
requirements:
|
40
|
+
- - "~>"
|
41
|
+
- !ruby/object:Gem::Version
|
42
|
+
version: 0.2.0
|
43
|
+
- !ruby/object:Gem::Dependency
|
44
|
+
name: rake
|
45
|
+
requirement: !ruby/object:Gem::Requirement
|
46
|
+
requirements:
|
47
|
+
- - ">="
|
48
|
+
- !ruby/object:Gem::Version
|
49
|
+
version: '0'
|
50
|
+
type: :development
|
51
|
+
prerelease: false
|
52
|
+
version_requirements: !ruby/object:Gem::Requirement
|
53
|
+
requirements:
|
54
|
+
- - ">="
|
55
|
+
- !ruby/object:Gem::Version
|
56
|
+
version: '0'
|
57
|
+
description: |
|
58
|
+
Ruby Reports is a software library that aims to make the task of reporting
|
59
|
+
less tedious and painful. It provides tools for data acquisition,
|
60
|
+
database interaction, formatting, and parsing/munging.
|
38
61
|
email: gregory.t.brown@gmail.com
|
39
62
|
executables: []
|
40
|
-
|
41
63
|
extensions: []
|
42
|
-
|
43
|
-
|
44
|
-
- LICENSE
|
45
|
-
- README
|
46
|
-
files:
|
64
|
+
extra_rdoc_files: []
|
65
|
+
files:
|
47
66
|
- AUTHORS
|
67
|
+
- CHANGELOG.md
|
48
68
|
- COPYING
|
49
69
|
- HACKING
|
50
70
|
- LICENSE
|
51
|
-
- README
|
71
|
+
- README.md
|
52
72
|
- Rakefile
|
53
73
|
- examples/RWEmerson.jpg
|
74
|
+
- examples/add_row_table.rb
|
54
75
|
- examples/anon.rb
|
55
76
|
- examples/btree/commaleon/commaleon.rb
|
56
77
|
- examples/btree/commaleon/sample_data/ticket_count.csv
|
57
78
|
- examples/btree/commaleon/sample_data/ticket_count2.csv
|
58
79
|
- examples/centered_pdf_text_box.rb
|
59
80
|
- examples/data/tattle.dump
|
81
|
+
- examples/data/wine.csv
|
60
82
|
- examples/example.csv
|
61
83
|
- examples/line_plotter.rb
|
84
|
+
- examples/pdf_grouping.rb
|
62
85
|
- examples/pdf_report_with_common_base.rb
|
86
|
+
- examples/pdf_table.rb
|
87
|
+
- examples/pdf_table_from_csv.rb
|
88
|
+
- examples/pdf_table_prawn.rb
|
89
|
+
- examples/pdf_table_simple.rb
|
63
90
|
- examples/png_embed.rb
|
64
91
|
- examples/roadmap.png
|
65
92
|
- examples/row_renderer.rb
|
@@ -81,7 +108,8 @@ files:
|
|
81
108
|
- lib/ruport/formatter.rb
|
82
109
|
- lib/ruport/formatter/csv.rb
|
83
110
|
- lib/ruport/formatter/html.rb
|
84
|
-
- lib/ruport/formatter/
|
111
|
+
- lib/ruport/formatter/markdown.rb
|
112
|
+
- lib/ruport/formatter/prawn_pdf.rb
|
85
113
|
- lib/ruport/formatter/template.rb
|
86
114
|
- lib/ruport/formatter/text.rb
|
87
115
|
- lib/ruport/version.rb
|
@@ -89,10 +117,12 @@ files:
|
|
89
117
|
- test/controller_test.rb
|
90
118
|
- test/csv_formatter_test.rb
|
91
119
|
- test/data_feeder_test.rb
|
120
|
+
- test/expected_outputs/prawn_pdf_formatter/pdf_basic.pdf.test
|
92
121
|
- test/grouping_test.rb
|
93
122
|
- test/helpers.rb
|
94
123
|
- test/html_formatter_test.rb
|
95
|
-
- test/
|
124
|
+
- test/markdown_formatter_test.rb
|
125
|
+
- test/prawn_pdf_formatter_test.rb
|
96
126
|
- test/record_test.rb
|
97
127
|
- test/samples/addressbook.csv
|
98
128
|
- test/samples/data.csv
|
@@ -101,6 +131,7 @@ files:
|
|
101
131
|
- test/samples/erb_test.sql
|
102
132
|
- test/samples/query_test.sql
|
103
133
|
- test/samples/ruport_test.sql
|
134
|
+
- test/samples/sales.csv
|
104
135
|
- test/samples/test.sql
|
105
136
|
- test/samples/test.yaml
|
106
137
|
- test/samples/ticket_count.csv
|
@@ -124,60 +155,78 @@ files:
|
|
124
155
|
- util/bench/samples/tattle.csv
|
125
156
|
- util/release/freshmeat.rb
|
126
157
|
- util/release/raa.rb
|
127
|
-
|
128
|
-
homepage: http://rubyreports.org
|
158
|
+
homepage: http://github.com/ruport/ruport
|
129
159
|
licenses: []
|
130
|
-
|
131
|
-
|
132
|
-
|
133
|
-
|
134
|
-
|
135
|
-
|
136
|
-
- README
|
137
|
-
- -q
|
138
|
-
require_paths:
|
160
|
+
metadata:
|
161
|
+
source_code_uri: https://github.com/ruport/ruport
|
162
|
+
changelog_uri: https://github.com/ruport/ruport/blob/master/CHANGELOG.md
|
163
|
+
post_install_message:
|
164
|
+
rdoc_options: []
|
165
|
+
require_paths:
|
139
166
|
- lib
|
140
|
-
required_ruby_version: !ruby/object:Gem::Requirement
|
141
|
-
requirements:
|
167
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
168
|
+
requirements:
|
142
169
|
- - ">="
|
143
|
-
- !ruby/object:Gem::Version
|
144
|
-
version:
|
145
|
-
|
146
|
-
|
147
|
-
requirements:
|
170
|
+
- !ruby/object:Gem::Version
|
171
|
+
version: '0'
|
172
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
173
|
+
requirements:
|
148
174
|
- - ">="
|
149
|
-
- !ruby/object:Gem::Version
|
150
|
-
version:
|
151
|
-
version:
|
175
|
+
- !ruby/object:Gem::Version
|
176
|
+
version: '0'
|
152
177
|
requirements: []
|
153
|
-
|
154
|
-
|
155
|
-
|
156
|
-
signing_key:
|
157
|
-
specification_version: 3
|
178
|
+
rubygems_version: 3.1.6
|
179
|
+
signing_key:
|
180
|
+
specification_version: 4
|
158
181
|
summary: A generalized Ruby report generation and templating engine.
|
159
|
-
test_files:
|
160
|
-
-
|
161
|
-
-
|
162
|
-
-
|
163
|
-
-
|
164
|
-
-
|
165
|
-
-
|
166
|
-
- test/table_test.rb
|
167
|
-
- test/text_formatter_test.rb
|
168
|
-
- test/html_formatter_test.rb
|
169
|
-
- test/grouping_test.rb
|
170
|
-
- test/controller_test.rb
|
171
|
-
- test/pdf_formatter_test.rb
|
182
|
+
test_files:
|
183
|
+
- examples/RWEmerson.jpg
|
184
|
+
- examples/add_row_table.rb
|
185
|
+
- examples/anon.rb
|
186
|
+
- examples/btree/commaleon/commaleon.rb
|
187
|
+
- examples/btree/commaleon/sample_data/ticket_count.csv
|
188
|
+
- examples/btree/commaleon/sample_data/ticket_count2.csv
|
172
189
|
- examples/centered_pdf_text_box.rb
|
190
|
+
- examples/data/tattle.dump
|
191
|
+
- examples/data/wine.csv
|
192
|
+
- examples/example.csv
|
173
193
|
- examples/line_plotter.rb
|
174
|
-
- examples/
|
175
|
-
- examples/anon.rb
|
194
|
+
- examples/pdf_grouping.rb
|
176
195
|
- examples/pdf_report_with_common_base.rb
|
196
|
+
- examples/pdf_table.rb
|
197
|
+
- examples/pdf_table_from_csv.rb
|
198
|
+
- examples/pdf_table_prawn.rb
|
199
|
+
- examples/pdf_table_simple.rb
|
200
|
+
- examples/png_embed.rb
|
201
|
+
- examples/roadmap.png
|
177
202
|
- examples/row_renderer.rb
|
178
|
-
- examples/tattle_ruby_version.rb
|
179
203
|
- examples/simple_pdf_lines.rb
|
180
|
-
- examples/png_embed.rb
|
181
|
-
- examples/trac_ticket_status.rb
|
182
|
-
- examples/tattle_rubygems_version.rb
|
183
204
|
- examples/simple_templating_example.rb
|
205
|
+
- examples/tattle_ruby_version.rb
|
206
|
+
- examples/tattle_rubygems_version.rb
|
207
|
+
- examples/trac_ticket_status.rb
|
208
|
+
- test/controller_test.rb
|
209
|
+
- test/csv_formatter_test.rb
|
210
|
+
- test/data_feeder_test.rb
|
211
|
+
- test/expected_outputs/prawn_pdf_formatter/pdf_basic.pdf.test
|
212
|
+
- test/grouping_test.rb
|
213
|
+
- test/helpers.rb
|
214
|
+
- test/html_formatter_test.rb
|
215
|
+
- test/markdown_formatter_test.rb
|
216
|
+
- test/prawn_pdf_formatter_test.rb
|
217
|
+
- test/record_test.rb
|
218
|
+
- test/samples/addressbook.csv
|
219
|
+
- test/samples/data.csv
|
220
|
+
- test/samples/data.tsv
|
221
|
+
- test/samples/dates.csv
|
222
|
+
- test/samples/erb_test.sql
|
223
|
+
- test/samples/query_test.sql
|
224
|
+
- test/samples/ruport_test.sql
|
225
|
+
- test/samples/sales.csv
|
226
|
+
- test/samples/test.sql
|
227
|
+
- test/samples/test.yaml
|
228
|
+
- test/samples/ticket_count.csv
|
229
|
+
- test/table_pivot_test.rb
|
230
|
+
- test/table_test.rb
|
231
|
+
- test/template_test.rb
|
232
|
+
- test/text_formatter_test.rb
|