plsql_unit_test 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
data/README.md ADDED
File without changes
@@ -0,0 +1,15 @@
1
+ module PLSQLUnitTest
2
+ class Setup
3
+ def self.connect(user, password, service, host, port)
4
+ interface = SimpleOracleJDBC::Interface.create(user,
5
+ password,
6
+ service,
7
+ host,
8
+ port
9
+ )
10
+
11
+ Test::Unit::TestCase.set_database_interface(interface)
12
+ DataFactory::Base.set_database_interface interface
13
+ end
14
+ end
15
+ end
@@ -0,0 +1,32 @@
1
+ class Test::Unit::TestCase
2
+
3
+
4
+ def self.set_database_interface(interface)
5
+ @@db_interface = interface
6
+ end
7
+
8
+ def assert_table_has_one_row(table, where_clause=nil, message=nil)
9
+ assert_table_has_many_rows(table, 1, where_clause, message)
10
+ end
11
+
12
+ def assert_table_has_zero_rows(table, where_clause=nil, message=nil)
13
+ assert_table_has_many_rows(table, 0, where_clause, message)
14
+ end
15
+
16
+ def assert_table_has_many_rows(table, row_count, where_clause=nil, message=nil)
17
+ results = @@db_interface.execute_sql("select count(*) from #{table} #{where_clause}").all_array
18
+ message = build_message(message, "A count of <?> was expected but was <?> for <?> <?>", row_count.to_s, results[0][0].to_i, table, where_clause)
19
+ assert_block(message) do
20
+ row_count == results[0][0].to_i
21
+ end
22
+ end
23
+
24
+ def time_as_oracle_dtm(time)
25
+ "to_date('#{time.strftime('%Y%m%d %H:%M:%S')}', 'YYYYMMDD HH24:MI:SS')"
26
+ end
27
+
28
+ def time_as_oracle_dt(time)
29
+ "to_date('#{time.strftime('%Y%m%d')}', 'YYYYMMDD')"
30
+ end
31
+
32
+ end
@@ -0,0 +1,9 @@
1
+ require 'test/unit'
2
+ require 'rubygems'
3
+ require 'simple_oracle_jdbc'
4
+ require 'data_factory'
5
+
6
+ require 'plsql_unit_test/test_unit_patch'
7
+ require 'plsql_unit_test/setup'
8
+
9
+
metadata ADDED
@@ -0,0 +1,85 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: plsql_unit_test
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.1.0
5
+ prerelease:
6
+ platform: ruby
7
+ authors:
8
+ - Stephen O'Donnell
9
+ autorequire:
10
+ bindir: bin
11
+ cert_chain: []
12
+ date: 2013-03-04 00:00:00.000000000 Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
15
+ name: data_factory
16
+ requirement: !ruby/object:Gem::Requirement
17
+ none: false
18
+ requirements:
19
+ - - '='
20
+ - !ruby/object:Gem::Version
21
+ version: 0.1.2
22
+ type: :runtime
23
+ prerelease: false
24
+ version_requirements: !ruby/object:Gem::Requirement
25
+ none: false
26
+ requirements:
27
+ - - '='
28
+ - !ruby/object:Gem::Version
29
+ version: 0.1.2
30
+ - !ruby/object:Gem::Dependency
31
+ name: simpleOracleJDBC
32
+ requirement: !ruby/object:Gem::Requirement
33
+ none: false
34
+ requirements:
35
+ - - '='
36
+ - !ruby/object:Gem::Version
37
+ version: 0.1.1
38
+ type: :runtime
39
+ prerelease: false
40
+ version_requirements: !ruby/object:Gem::Requirement
41
+ none: false
42
+ requirements:
43
+ - - '='
44
+ - !ruby/object:Gem::Version
45
+ version: 0.1.1
46
+ description: Monkey patches Test::Unit::TestCase to add some additional assert methods,
47
+ a global database_interface object (via a class variable) and a few helper functions
48
+ designed to enable plsql unit testing
49
+ email: stephen@betteratoracle.com
50
+ executables: []
51
+ extensions: []
52
+ extra_rdoc_files:
53
+ - README.md
54
+ files:
55
+ - lib/plsql_unit_test/setup.rb
56
+ - lib/plsql_unit_test/test_unit_patch.rb
57
+ - lib/plsql_unit_test.rb
58
+ - README.md
59
+ homepage: http://betteratoracle.com
60
+ licenses: []
61
+ post_install_message:
62
+ rdoc_options: []
63
+ require_paths:
64
+ - lib
65
+ required_ruby_version: !ruby/object:Gem::Requirement
66
+ none: false
67
+ requirements:
68
+ - - ! '>='
69
+ - !ruby/object:Gem::Version
70
+ version: '0'
71
+ required_rubygems_version: !ruby/object:Gem::Requirement
72
+ none: false
73
+ requirements:
74
+ - - ! '>='
75
+ - !ruby/object:Gem::Version
76
+ version: '0'
77
+ requirements: []
78
+ rubyforge_project:
79
+ rubygems_version: 1.8.24
80
+ signing_key:
81
+ specification_version: 3
82
+ summary: A gem that monkey patches Test::Unit::TestCase to add some features to allow
83
+ unit testing of PLSQL code
84
+ test_files: []
85
+ has_rdoc: true