ruport 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (12) hide show
  1. data/LICENSE +7 -0
  2. data/README +69 -0
  3. data/Rakefile +51 -0
  4. data/TODO +106 -0
  5. data/bin/ruport +86 -0
  6. data/bin/ruport.rb +4 -0
  7. data/lib/mailer.rb +44 -0
  8. data/lib/query.rb +140 -0
  9. data/lib/sql.rb +93 -0
  10. data/setup.rb +1360 -0
  11. data/tests/tc_ruport.rb +69 -0
  12. metadata +65 -0
@@ -0,0 +1,69 @@
1
+ #tc_ruport.rb
2
+ #
3
+ # Created by Gregory Thomas Brown on 2005-08-09
4
+ # Copyright 2005 (Gregory Brown) All rights reserved.
5
+
6
+ require "test/unit"
7
+ require "lib/query"
8
+ class TestRuport < Test::Unit::TestCase
9
+
10
+ def setup
11
+ config = YAML.load(File.open("config/ruport.yaml"))
12
+ @query = Query.new("#{config[:driver]}:#{config[:database]}",
13
+ config[:db_user], config[:db_password])
14
+ @query.query_table = config[:query_table]
15
+ @month_days = [6,7,8,9]
16
+ @low_tide1 = ['05:11:00 am', '05:50:00 am',
17
+ '06:29:00 am', '07:08:00 am']
18
+ @low_tide2 = ['05:22:00 pm', '06:06:00 pm',
19
+ '06:50:00 pm', '07:37:00 pm']
20
+ @high_tide1 = ['11:01:00 am', '11:38:00 am',
21
+ '12:15:00 pm', '12:22:00 am']
22
+ @high_tide2 = ['11:06:00 pm', '11:43:00 pm',
23
+ '', '12:51:00 pm']
24
+ end
25
+
26
+ def test_sql
27
+ @query.select("* FROM ruport_test WHERE day_of_month > 5 and
28
+ day_of_month < 10 ") do |row|
29
+ assert_equal(@low_tide1.shift, row["low_tide1"].to_s)
30
+ assert_equal(@low_tide2.shift, row["low_tide2"].to_s)
31
+ assert_equal(@high_tide1.shift, row["high_tide1"].to_s)
32
+ assert_equal(@high_tide2.shift, row["high_tide2"].to_s)
33
+ end
34
+ end
35
+
36
+ def test_sql_stored
37
+ @query.select( "sql_stored_test", :db) do |row|
38
+ assert_equal(@low_tide1.shift, row["low_tide1"].to_s)
39
+ assert_equal(@low_tide2.shift, row["low_tide2"].to_s)
40
+ assert_equal(@high_tide1.shift, row["high_tide1"].to_s)
41
+ assert_equal(@high_tide2.shift, row["high_tide2"].to_s)
42
+ end
43
+ end
44
+
45
+ def test_sql_file
46
+ @query.select("../tests/test.sql", :file) do |row|
47
+ assert_equal(@low_tide1.shift, row["low_tide1"].to_s)
48
+ assert_equal(@low_tide2.shift, row["low_tide2"].to_s)
49
+ assert_equal(@high_tide1.shift, row["high_tide1"].to_s)
50
+ assert_equal(@high_tide2.shift, row["high_tide2"].to_s)
51
+ end
52
+ end
53
+
54
+ def test_sql_generation
55
+ sql = @query.fetch do
56
+ from :ruport_test
57
+ end
58
+ assert_equal("SELECT * FROM ruport_test;", sql)
59
+ sql = @query.fetch do
60
+ from :ruport_test
61
+ condition :last_name, :"=", "Brown"
62
+ order :first_name
63
+ end
64
+ assert_equal("SELECT * FROM ruport_test WHERE last_name = 'Brown' " +
65
+ "ORDER BY first_name;",sql)
66
+
67
+ end
68
+
69
+ end
metadata ADDED
@@ -0,0 +1,65 @@
1
+ --- !ruby/object:Gem::Specification
2
+ rubygems_version: 0.8.10
3
+ specification_version: 1
4
+ name: ruport
5
+ version: !ruby/object:Gem::Version
6
+ version: 0.1.0
7
+ date: 2005-08-28
8
+ summary: A generalized Ruby report generation and templating engine.
9
+ require_paths:
10
+ - lib
11
+ email: "\tgregory.t.brown@gmail.com"
12
+ homepage: http://ruport.rubyforge.org
13
+ rubyforge_project: ruport
14
+ description: Ruport is a powerful report generation engine that allows users to generate custom ERb templates and easily query various forms of SQL databases via DBI. It provides helper methods and utilities to generate professional reports quickly and cleanly.
15
+ autorequire:
16
+ default_executable:
17
+ bindir: bin
18
+ has_rdoc: true
19
+ required_ruby_version: !ruby/object:Gem::Version::Requirement
20
+ requirements:
21
+ -
22
+ - ">"
23
+ - !ruby/object:Gem::Version
24
+ version: 0.0.0
25
+ version:
26
+ platform: ruby
27
+ authors:
28
+ - Gregory Brown
29
+ files:
30
+ - bin/ruport.rb
31
+ - lib/mailer.rb
32
+ - lib/query.rb
33
+ - lib/sql.rb
34
+ - tests/tc_ruport.rb
35
+ - Rakefile
36
+ - setup.rb
37
+ - README
38
+ - LICENSE
39
+ - TODO
40
+ test_files: []
41
+ rdoc_options:
42
+ - "--title"
43
+ - Ruport Documentation
44
+ - "--main"
45
+ - README
46
+ extra_rdoc_files:
47
+ - README
48
+ - LICENSE
49
+ - TODO
50
+ executables:
51
+ - ruport
52
+ - ruport.rb
53
+ extensions: []
54
+ requirements: []
55
+ dependencies:
56
+ - !ruby/object:Gem::Dependency
57
+ name: parseinput
58
+ version_requirement:
59
+ version_requirements: !ruby/object:Gem::Version::Requirement
60
+ requirements:
61
+ -
62
+ - ">="
63
+ - !ruby/object:Gem::Version
64
+ version: 0.0.1
65
+ version: