ruport 0.8.0 → 0.8.1
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.
- data/AUTHORS +1 -5
- data/README +4 -4
- data/Rakefile +2 -2
- data/examples/rope_examples/itunes/README +12 -0
- data/examples/rope_examples/itunes/Rakefile +18 -0
- data/examples/rope_examples/itunes/config/ruport_config.rb +8 -0
- data/examples/rope_examples/itunes/data/mix.txt +1 -0
- data/examples/rope_examples/itunes/lib/helpers.rb +0 -0
- data/examples/rope_examples/itunes/lib/init.rb +9 -0
- data/examples/rope_examples/itunes/lib/reports.rb +1 -0
- data/examples/rope_examples/itunes/lib/reports/playlist.rb +17 -0
- data/examples/rope_examples/itunes/log/ruport.log +1 -0
- data/examples/rope_examples/itunes/test/test_playlist.rb +8 -0
- data/examples/rope_examples/itunes/util/build +62 -0
- data/examples/rope_examples/itunes/util/sql_exec +5 -0
- data/examples/rope_examples/sales_report/README +4 -0
- data/examples/rope_examples/sales_report/Rakefile +18 -0
- data/examples/rope_examples/sales_report/config/ruport_config.rb +8 -0
- data/examples/rope_examples/sales_report/lib/helpers.rb +0 -0
- data/examples/rope_examples/sales_report/lib/init.rb +9 -0
- data/examples/rope_examples/sales_report/lib/reports.rb +1 -0
- data/examples/rope_examples/sales_report/lib/reports/sales.rb +138 -0
- data/examples/rope_examples/sales_report/log/ruport.log +1 -0
- data/examples/rope_examples/sales_report/output/books.pdf +170 -0
- data/examples/rope_examples/sales_report/output/books.txt +11 -0
- data/examples/rope_examples/sales_report/test/test_sales.rb +8 -0
- data/examples/rope_examples/sales_report/util/build +62 -0
- data/examples/rope_examples/sales_report/util/sql_exec +5 -0
- data/lib/ruport.rb +1 -1
- data/lib/ruport/data/groupable.rb +1 -1
- data/lib/ruport/data/record.rb +8 -8
- data/lib/ruport/data/table.rb +17 -14
- data/test/test_groupable.rb +14 -2
- data/test/test_table.rb +24 -0
- metadata +101 -60
- data/lib/ruport.rb.rej +0 -41
- data/lib/ruport.rb~ +0 -85
- data/lib/ruport/format/latex.rb.rej +0 -26
- data/lib/ruport/format/latex.rb~ +0 -47
- data/lib/ruport/format/pdf.rb.rej +0 -168
- data/lib/ruport/format/pdf.rb~ +0 -189
- data/test/unit.log +0 -259
@@ -0,0 +1,11 @@
|
|
1
|
+
***************************************************************************
|
2
|
+
December 2006 Sales Figures
|
3
|
+
***************************************************************************
|
4
|
+
|
5
|
+
isbn |title |author |sales
|
6
|
+
###########################################################################
|
7
|
+
978111111111 |Book Number One |me |10
|
8
|
+
978222222222 |Two is better than one |you |267
|
9
|
+
978333333333 |Three Blind Mice |John Howard |1
|
10
|
+
978444444444 |The number 4 |George Bush |1829
|
11
|
+
###########################################################################
|
@@ -0,0 +1,62 @@
|
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
|
3
|
+
require 'fileutils'
|
4
|
+
include FileUtils
|
5
|
+
|
6
|
+
def format_class_name(string)
|
7
|
+
string.downcase.split("_").map { |s| s.capitalize }.join
|
8
|
+
end
|
9
|
+
|
10
|
+
unless ARGV.length > 1
|
11
|
+
puts "usage: build [command] [options]"
|
12
|
+
exit
|
13
|
+
end
|
14
|
+
|
15
|
+
class_name = format_class_name(ARGV[1])
|
16
|
+
|
17
|
+
exit if File.exist? "lib/reports/#{ARGV[1]}.rb"
|
18
|
+
if ARGV[0].eql? "report"
|
19
|
+
File.open("lib/reports.rb", "a") { |f|
|
20
|
+
f.puts("require \"lib/reports/#{ARGV[1]}\"")
|
21
|
+
}
|
22
|
+
REP = <<EOR
|
23
|
+
require "lib/init"
|
24
|
+
class #{class_name} < Ruport::Report
|
25
|
+
|
26
|
+
def prepare
|
27
|
+
|
28
|
+
end
|
29
|
+
|
30
|
+
def generate
|
31
|
+
|
32
|
+
end
|
33
|
+
|
34
|
+
def cleanup
|
35
|
+
|
36
|
+
end
|
37
|
+
|
38
|
+
end
|
39
|
+
|
40
|
+
if __FILE__ == $0
|
41
|
+
#{class_name}.run { |res| puts res.results }
|
42
|
+
end
|
43
|
+
EOR
|
44
|
+
|
45
|
+
TEST = <<EOR
|
46
|
+
require "test/unit"
|
47
|
+
require "lib/reports/#{ARGV[1]}"
|
48
|
+
|
49
|
+
class Test#{class_name} < Test::Unit::TestCase
|
50
|
+
def test_flunk
|
51
|
+
flunk "Write your real tests here or in any test/test_* file"
|
52
|
+
end
|
53
|
+
end
|
54
|
+
EOR
|
55
|
+
puts "report file: lib/reports/#{ARGV[1]}.rb"
|
56
|
+
File.open("lib/reports/#{ARGV[1]}.rb", "w") { |f| f << REP }
|
57
|
+
puts "test file: test/test_#{ARGV[1]}.rb"
|
58
|
+
puts "class name: #{class_name}"
|
59
|
+
File.open("test/test_#{ARGV[1]}.rb","w") { |f| f << TEST }
|
60
|
+
else
|
61
|
+
puts "Incorrect usage."
|
62
|
+
end
|
data/lib/ruport.rb
CHANGED
@@ -43,7 +43,7 @@ module Ruport::Data
|
|
43
43
|
def groups
|
44
44
|
#r_tags = map { |r| r.tags }.flatten.uniq
|
45
45
|
r_tags = group_names_intern
|
46
|
-
tables_hash = Hash.new { |h,k| h[k] =
|
46
|
+
tables_hash = Hash.new { |h,k| h[k] = Table(column_names) }
|
47
47
|
r_tags.each { |t|
|
48
48
|
tables_hash[t.gsub(/^grp_/,"")] = sub_table { |r| r.tags.include? t }}
|
49
49
|
r = Record.new tables_hash, :attributes => group_names
|
data/lib/ruport/data/record.rb
CHANGED
@@ -35,14 +35,14 @@ module Ruport::Data
|
|
35
35
|
# b.c #=> 3
|
36
36
|
#
|
37
37
|
# c = Record.new {"a" => 1, "c" => 3, "b" => 2}, :attributes => %w[a b c]
|
38
|
-
#
|
39
|
-
#
|
40
|
-
#
|
41
|
-
#
|
42
|
-
#
|
43
|
-
#
|
44
|
-
#
|
45
|
-
#
|
38
|
+
# c[1] #=> 2
|
39
|
+
# c['a'] #=> 1
|
40
|
+
# c.c #=> 3
|
41
|
+
#
|
42
|
+
# d = Record.new { "a" => 1, "c" => 3, "b" => 2 }
|
43
|
+
# d[1] #=> ? (without attributes, you cannot rely on order)
|
44
|
+
# d['a'] #=> 1
|
45
|
+
# d.c #=> 3
|
46
46
|
#
|
47
47
|
def initialize(data,options={})
|
48
48
|
data = data.dup
|
data/lib/ruport/data/table.rb
CHANGED
@@ -47,8 +47,7 @@ module Ruport::Data
|
|
47
47
|
# of its source (a database, manual arrays, ActiveRecord, CSVs, etc.).
|
48
48
|
#
|
49
49
|
# Table is intended to be used as the data store for structured, tabular
|
50
|
-
# data
|
51
|
-
# structured data.
|
50
|
+
# data.
|
52
51
|
#
|
53
52
|
# Once your data is in a Ruport::Data::Table object, it can be manipulated
|
54
53
|
# to suit your needs, then used to build a report.
|
@@ -98,7 +97,7 @@ module Ruport::Data
|
|
98
97
|
#
|
99
98
|
# Example:
|
100
99
|
#
|
101
|
-
# table = Table.new :data => [1,2,3], [3,4,5],
|
100
|
+
# table = Table.new :data => [[1,2,3], [3,4,5]],
|
102
101
|
# :column_names => %w[a b c]
|
103
102
|
#
|
104
103
|
# table.column_names = %w[e f g]
|
@@ -126,10 +125,10 @@ module Ruport::Data
|
|
126
125
|
#
|
127
126
|
# Example:
|
128
127
|
#
|
129
|
-
# one = Table.new :data => [1,2], [3,4],
|
128
|
+
# one = Table.new :data => [[1,2], [3,4]],
|
130
129
|
# :column_names => %w[a b]
|
131
130
|
#
|
132
|
-
# two = Table.new :data => [1,2], [3,4],
|
131
|
+
# two = Table.new :data => [[1,2], [3,4]],
|
133
132
|
# :column_names => %w[a b]
|
134
133
|
#
|
135
134
|
# one.eql?(two) #=> true
|
@@ -145,7 +144,7 @@ module Ruport::Data
|
|
145
144
|
#
|
146
145
|
# Example:
|
147
146
|
#
|
148
|
-
# data = Table.new :data => [1,2], [3,4],
|
147
|
+
# data = Table.new :data => [[1,2], [3,4]],
|
149
148
|
# :column_names => %w[a b]
|
150
149
|
# data << [8,9]
|
151
150
|
# data << { :a => 4, :b => 5}
|
@@ -160,8 +159,12 @@ module Ruport::Data
|
|
160
159
|
raise ArgumentError unless @column_names
|
161
160
|
arr = @column_names.map { |k| other[k] }
|
162
161
|
@data << record_class.new(arr, :attributes => @column_names)
|
163
|
-
when record_class
|
164
|
-
|
162
|
+
when record_class
|
163
|
+
if column_names.empty?
|
164
|
+
self << other.to_a
|
165
|
+
else
|
166
|
+
self << other.to_h
|
167
|
+
end
|
165
168
|
@data.last.tags = other.tags.dup
|
166
169
|
else
|
167
170
|
raise ArgumentError
|
@@ -198,7 +201,7 @@ module Ruport::Data
|
|
198
201
|
#
|
199
202
|
# Example:
|
200
203
|
#
|
201
|
-
# one = Table.new :data => [1,2], [3,4],
|
204
|
+
# one = Table.new :data => [[1,2], [3,4]],
|
202
205
|
# :column_names => %w[a b]
|
203
206
|
#
|
204
207
|
# two = one.reorder!([1,0])
|
@@ -239,14 +242,14 @@ module Ruport::Data
|
|
239
242
|
#
|
240
243
|
# data = Table("a","b") { |t| t << [1,2] << [3,4] }
|
241
244
|
#
|
242
|
-
#
|
245
|
+
# # basic usage, column full of 1's
|
243
246
|
# data.add_column 'new_column', :default => 1
|
244
247
|
#
|
245
|
-
# #new empty column before new_column
|
248
|
+
# # new empty column before new_column
|
246
249
|
# data.add_column 'new_col2', :before => 'new_column'
|
247
250
|
#
|
248
251
|
# # new column placed just after column a
|
249
|
-
# data.add_column
|
252
|
+
# data.add_column 'new_col3', :position => 1
|
250
253
|
#
|
251
254
|
# # new column built via a block, added at the end of the table
|
252
255
|
# data.add_column("new_col4") { |r| r.a + r.b }
|
@@ -498,7 +501,7 @@ module Ruport::Data
|
|
498
501
|
#
|
499
502
|
# Example:
|
500
503
|
#
|
501
|
-
# one = Table.new :data => [1,2], [3,4],
|
504
|
+
# one = Table.new :data => [[1,2], [3,4]],
|
502
505
|
# :column_names => %w[a b]
|
503
506
|
# two = one.dup
|
504
507
|
#
|
@@ -513,7 +516,7 @@ module Ruport::Data
|
|
513
516
|
#
|
514
517
|
# Example:
|
515
518
|
#
|
516
|
-
# data = Table.new :data => [1,2], [3,4],
|
519
|
+
# data = Table.new :data => [[1,2], [3,4]],
|
517
520
|
# :column_names => %w[a b]
|
518
521
|
# puts data.to_s
|
519
522
|
#
|
data/test/test_groupable.rb
CHANGED
@@ -24,7 +24,7 @@ class TestGroupable < Test::Unit::TestCase
|
|
24
24
|
[[1,2],[3,4],[5,6]].to_table(%w[a b]) ],
|
25
25
|
:attributes => ["foo","bar"] )
|
26
26
|
assert_equal expected, a.groups
|
27
|
-
end
|
27
|
+
end
|
28
28
|
|
29
29
|
def test_create_group
|
30
30
|
a = [[1,2,3],[4,5,6],[7,8,9]].to_table(%w[a b c])
|
@@ -39,6 +39,18 @@ class TestGroupable < Test::Unit::TestCase
|
|
39
39
|
assert_equal([[1,2,3],[7,8,9]].to_table(%w[a b c]), a.group(:starts_odd))
|
40
40
|
assert_equal([[4,5,6]].to_table(%w[a b c]), a.group("starts_even"))
|
41
41
|
|
42
|
-
end
|
42
|
+
end
|
43
|
+
|
44
|
+
#--BUG TRAPS-------------------------------------------------------------
|
45
|
+
|
46
|
+
#Ticket #155
|
47
|
+
def test_ensure_grouping_works_with_nameless_tables
|
48
|
+
a = [[1,2],[3,4],[5,6]].to_table
|
49
|
+
a.create_group("foo") { true }
|
50
|
+
a[1].tag("grp_bar")
|
51
|
+
assert_nothing_raised { a.groups }
|
52
|
+
assert_equal a, a.group("foo")
|
53
|
+
assert_equal [a[1]].to_table, a.group("bar")
|
54
|
+
end
|
43
55
|
|
44
56
|
end
|
data/test/test_table.rb
CHANGED
@@ -13,7 +13,9 @@ end
|
|
13
13
|
|
14
14
|
class TestTable < Test::Unit::TestCase
|
15
15
|
def test_constructors
|
16
|
+
|
16
17
|
table = Ruport::Data::Table.new
|
18
|
+
|
17
19
|
table2 = Ruport::Data::Table.new :column_names => %w[a b c]
|
18
20
|
table3 = Ruport::Data::Table.new :data => [[1,2,3]]
|
19
21
|
table4 = Ruport::Data::Table.new :column_names => %w[col1 col2 col3],
|
@@ -457,6 +459,28 @@ class TestTable < Test::Unit::TestCase
|
|
457
459
|
assert_equal Set.new([:bar]), b[1].tags
|
458
460
|
end
|
459
461
|
|
462
|
+
def test_ensure_serializable
|
463
|
+
a = [].to_table
|
464
|
+
assert_nothing_raised { a.to_yaml }
|
465
|
+
a = Table(%w[first_name last_name],:record_class => Person) { |t|
|
466
|
+
t << %w[joe loop]
|
467
|
+
}
|
468
|
+
assert_equal "joe loop", a[0].name
|
469
|
+
assert_nothing_raised { a.to_yaml }
|
470
|
+
end
|
471
|
+
|
472
|
+
def test_ensure_subtable_works_with_unnamed_tables
|
473
|
+
a = [[1,2,3],[4,5,6]].to_table
|
474
|
+
b = a.sub_table { |r| (r[0] % 2).zero? }
|
475
|
+
assert_equal [[4,5,6]].to_table, b
|
476
|
+
end
|
477
|
+
|
478
|
+
def test_ensure_appending_records_works_with_unnamed_tables
|
479
|
+
a = [[1,2,3],[4,5,6]].to_table
|
480
|
+
a << Ruport::Data::Record.new([7,8,9])
|
481
|
+
assert_equal [[1,2,3],[4,5,6],[7,8,9]].to_table,a
|
482
|
+
end
|
483
|
+
|
460
484
|
end
|
461
485
|
|
462
486
|
class TestTableKernelHack < Test::Unit::TestCase
|
metadata
CHANGED
@@ -3,8 +3,8 @@ rubygems_version: 0.9.1
|
|
3
3
|
specification_version: 1
|
4
4
|
name: ruport
|
5
5
|
version: !ruby/object:Gem::Version
|
6
|
-
version: 0.8.
|
7
|
-
date: 2007-02-
|
6
|
+
version: 0.8.1
|
7
|
+
date: 2007-02-08 00:00:00 -05:00
|
8
8
|
summary: A generalized Ruby report generation and templating engine.
|
9
9
|
require_paths:
|
10
10
|
- lib
|
@@ -29,85 +29,126 @@ post_install_message:
|
|
29
29
|
authors:
|
30
30
|
- Gregory Brown
|
31
31
|
files:
|
32
|
+
- examples/centered_pdf_text_box.rb
|
33
|
+
- examples/invoice.rb
|
32
34
|
- examples/invoice_report.rb
|
33
|
-
- examples/RWEmerson.jpg
|
34
35
|
- examples/line_plotter.rb
|
35
|
-
- examples/centered_pdf_text_box.rb
|
36
36
|
- examples/pdf_complex_report.rb
|
37
|
-
- examples/invoice.rb
|
38
37
|
- examples/pdf_table_with_title.rb
|
38
|
+
- examples/rope_examples
|
39
|
+
- examples/RWEmerson.jpg
|
40
|
+
- examples/rope_examples/itunes
|
41
|
+
- examples/rope_examples/sales_report
|
42
|
+
- examples/rope_examples/itunes/config
|
43
|
+
- examples/rope_examples/itunes/data
|
44
|
+
- examples/rope_examples/itunes/lib
|
45
|
+
- examples/rope_examples/itunes/log
|
46
|
+
- examples/rope_examples/itunes/output
|
47
|
+
- examples/rope_examples/itunes/Rakefile
|
48
|
+
- examples/rope_examples/itunes/README
|
49
|
+
- examples/rope_examples/itunes/sql
|
50
|
+
- examples/rope_examples/itunes/templates
|
51
|
+
- examples/rope_examples/itunes/test
|
52
|
+
- examples/rope_examples/itunes/util
|
53
|
+
- examples/rope_examples/itunes/config/ruport_config.rb
|
54
|
+
- examples/rope_examples/itunes/data/mix.txt
|
55
|
+
- examples/rope_examples/itunes/lib/helpers.rb
|
56
|
+
- examples/rope_examples/itunes/lib/init.rb
|
57
|
+
- examples/rope_examples/itunes/lib/reports
|
58
|
+
- examples/rope_examples/itunes/lib/reports.rb
|
59
|
+
- examples/rope_examples/itunes/lib/reports/playlist.rb
|
60
|
+
- examples/rope_examples/itunes/log/ruport.log
|
61
|
+
- examples/rope_examples/itunes/test/test_playlist.rb
|
62
|
+
- examples/rope_examples/itunes/util/build
|
63
|
+
- examples/rope_examples/itunes/util/sql_exec
|
64
|
+
- examples/rope_examples/sales_report/config
|
65
|
+
- examples/rope_examples/sales_report/data
|
66
|
+
- examples/rope_examples/sales_report/lib
|
67
|
+
- examples/rope_examples/sales_report/log
|
68
|
+
- examples/rope_examples/sales_report/output
|
69
|
+
- examples/rope_examples/sales_report/Rakefile
|
70
|
+
- examples/rope_examples/sales_report/README
|
71
|
+
- examples/rope_examples/sales_report/sql
|
72
|
+
- examples/rope_examples/sales_report/templates
|
73
|
+
- examples/rope_examples/sales_report/test
|
74
|
+
- examples/rope_examples/sales_report/util
|
75
|
+
- examples/rope_examples/sales_report/config/ruport_config.rb
|
76
|
+
- examples/rope_examples/sales_report/lib/helpers.rb
|
77
|
+
- examples/rope_examples/sales_report/lib/init.rb
|
78
|
+
- examples/rope_examples/sales_report/lib/reports
|
79
|
+
- examples/rope_examples/sales_report/lib/reports.rb
|
80
|
+
- examples/rope_examples/sales_report/lib/reports/sales.rb
|
81
|
+
- examples/rope_examples/sales_report/log/ruport.log
|
82
|
+
- examples/rope_examples/sales_report/output/books.pdf
|
83
|
+
- examples/rope_examples/sales_report/output/books.txt
|
84
|
+
- examples/rope_examples/sales_report/test/test_sales.rb
|
85
|
+
- examples/rope_examples/sales_report/util/build
|
86
|
+
- examples/rope_examples/sales_report/util/sql_exec
|
39
87
|
- lib/ruport
|
40
88
|
- lib/ruport.rb
|
41
89
|
- lib/uport.rb
|
42
|
-
- lib/ruport.rb
|
43
|
-
- lib/ruport.rb
|
44
|
-
- lib/ruport/format
|
45
|
-
- lib/ruport/query
|
46
|
-
- lib/ruport/renderer
|
90
|
+
- lib/ruport/attempt.rb
|
91
|
+
- lib/ruport/config.rb
|
47
92
|
- lib/ruport/data
|
48
|
-
- lib/ruport/
|
93
|
+
- lib/ruport/data.rb
|
94
|
+
- lib/ruport/format
|
95
|
+
- lib/ruport/format.rb
|
96
|
+
- lib/ruport/generator.rb
|
49
97
|
- lib/ruport/layout
|
50
98
|
- lib/ruport/layout.rb
|
51
|
-
- lib/ruport/
|
52
|
-
- lib/ruport/
|
53
|
-
- lib/ruport/format.rb
|
99
|
+
- lib/ruport/mailer.rb
|
100
|
+
- lib/ruport/query
|
54
101
|
- lib/ruport/query.rb
|
55
|
-
- lib/ruport/
|
56
|
-
- lib/ruport/system_extensions.rb
|
57
|
-
- lib/ruport/config.rb
|
102
|
+
- lib/ruport/renderer
|
58
103
|
- lib/ruport/renderer.rb
|
59
|
-
- lib/ruport/
|
104
|
+
- lib/ruport/report
|
60
105
|
- lib/ruport/report.rb
|
61
|
-
- lib/ruport/
|
106
|
+
- lib/ruport/system_extensions.rb
|
107
|
+
- lib/ruport/data/groupable.rb
|
108
|
+
- lib/ruport/data/record.rb
|
109
|
+
- lib/ruport/data/table.rb
|
110
|
+
- lib/ruport/data/taggable.rb
|
111
|
+
- lib/ruport/format/csv.rb
|
112
|
+
- lib/ruport/format/html.rb
|
62
113
|
- lib/ruport/format/latex.rb
|
63
|
-
- lib/ruport/format/
|
114
|
+
- lib/ruport/format/pdf.rb
|
115
|
+
- lib/ruport/format/plugin.rb
|
64
116
|
- lib/ruport/format/svg.rb
|
65
|
-
- lib/ruport/format/xml.rb
|
66
|
-
- lib/ruport/format/html.rb
|
67
117
|
- lib/ruport/format/text.rb
|
68
|
-
- lib/ruport/format/
|
69
|
-
- lib/ruport/
|
70
|
-
- lib/ruport/format/latex.rb.rej
|
71
|
-
- lib/ruport/format/pdf.rb~
|
72
|
-
- lib/ruport/format/pdf.rb.rej
|
118
|
+
- lib/ruport/format/xml.rb
|
119
|
+
- lib/ruport/layout/component.rb
|
73
120
|
- lib/ruport/query/sql_split.rb
|
74
121
|
- lib/ruport/renderer/graph.rb
|
75
122
|
- lib/ruport/renderer/table.rb
|
76
|
-
- lib/ruport/data/record.rb
|
77
|
-
- lib/ruport/data/groupable.rb
|
78
|
-
- lib/ruport/data/taggable.rb
|
79
|
-
- lib/ruport/data/table.rb
|
80
123
|
- lib/ruport/report/graph.rb
|
81
|
-
-
|
124
|
+
- test/_test_database.rb
|
82
125
|
- test/samples
|
83
|
-
- test/
|
84
|
-
- test/test_record.rb
|
126
|
+
- test/test_config.rb
|
85
127
|
- test/test_format_text.rb
|
86
|
-
- test/test_table.rb
|
87
|
-
- test/test_ruport.rb
|
88
128
|
- test/test_graph_renderer.rb
|
89
|
-
- test/
|
90
|
-
- test/
|
129
|
+
- test/test_groupable.rb
|
130
|
+
- test/test_mailer.rb
|
91
131
|
- test/test_query.rb
|
92
|
-
- test/
|
93
|
-
- test/test_taggable.rb
|
132
|
+
- test/test_record.rb
|
94
133
|
- test/test_renderer.rb
|
95
|
-
- test/test_mailer.rb
|
96
|
-
- test/test_sql_split.rb
|
97
134
|
- test/test_report.rb
|
98
|
-
- test/
|
99
|
-
- test/
|
100
|
-
- test/
|
101
|
-
- test/
|
135
|
+
- test/test_ruport.rb
|
136
|
+
- test/test_sql_split.rb
|
137
|
+
- test/test_table.rb
|
138
|
+
- test/test_table_renderer.rb
|
139
|
+
- test/test_taggable.rb
|
140
|
+
- test/samples/addressbook.csv
|
102
141
|
- test/samples/data.csv
|
103
|
-
- test/samples/foo.rtxt
|
104
142
|
- test/samples/data.tsv
|
105
|
-
- test/samples/stonecodeblog.sql
|
106
|
-
- test/samples/ruport_test.sql
|
107
|
-
- test/samples/addressbook.csv
|
108
143
|
- test/samples/dates.csv
|
109
144
|
- test/samples/document.xml
|
145
|
+
- test/samples/erb_test.sql
|
146
|
+
- test/samples/foo.rtxt
|
147
|
+
- test/samples/query_test.sql
|
148
|
+
- test/samples/ruport_test.sql
|
149
|
+
- test/samples/stonecodeblog.sql
|
110
150
|
- test/samples/test.sql
|
151
|
+
- test/samples/test.yaml
|
111
152
|
- bin/rope
|
112
153
|
- Rakefile
|
113
154
|
- setup.rb
|
@@ -116,20 +157,20 @@ files:
|
|
116
157
|
- TODO
|
117
158
|
- AUTHORS
|
118
159
|
test_files:
|
119
|
-
- test/
|
120
|
-
- test/test_record.rb
|
160
|
+
- test/test_config.rb
|
121
161
|
- test/test_format_text.rb
|
122
|
-
- test/test_table.rb
|
123
|
-
- test/test_ruport.rb
|
124
162
|
- test/test_graph_renderer.rb
|
125
|
-
- test/
|
163
|
+
- test/test_groupable.rb
|
164
|
+
- test/test_mailer.rb
|
126
165
|
- test/test_query.rb
|
127
|
-
- test/
|
128
|
-
- test/test_taggable.rb
|
166
|
+
- test/test_record.rb
|
129
167
|
- test/test_renderer.rb
|
130
|
-
- test/test_mailer.rb
|
131
|
-
- test/test_sql_split.rb
|
132
168
|
- test/test_report.rb
|
169
|
+
- test/test_ruport.rb
|
170
|
+
- test/test_sql_split.rb
|
171
|
+
- test/test_table.rb
|
172
|
+
- test/test_table_renderer.rb
|
173
|
+
- test/test_taggable.rb
|
133
174
|
rdoc_options:
|
134
175
|
- --title
|
135
176
|
- Ruport Documentation
|
@@ -164,7 +205,7 @@ dependencies:
|
|
164
205
|
requirements:
|
165
206
|
- - ">="
|
166
207
|
- !ruby/object:Gem::Version
|
167
|
-
version: 3.0.
|
208
|
+
version: 3.0.3
|
168
209
|
version:
|
169
210
|
- !ruby/object:Gem::Dependency
|
170
211
|
name: pdf-writer
|