ryanbriones-ZenTest 3.11.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (70) hide show
  1. data/History.txt +523 -0
  2. data/Manifest.txt +69 -0
  3. data/README.txt +110 -0
  4. data/Rakefile +68 -0
  5. data/articles/Article.css +721 -0
  6. data/articles/getting_started_with_autotest.html +532 -0
  7. data/articles/how_to_use_zentest.txt +393 -0
  8. data/bin/autotest +55 -0
  9. data/bin/multiruby +40 -0
  10. data/bin/multiruby_setup +68 -0
  11. data/bin/rails_test_audit +80 -0
  12. data/bin/unit_diff +38 -0
  13. data/bin/zentest +28 -0
  14. data/example.txt +42 -0
  15. data/example1.rb +7 -0
  16. data/example2.rb +15 -0
  17. data/example_dot_autotest.rb +45 -0
  18. data/lib/autotest.rb +654 -0
  19. data/lib/autotest/autoupdate.rb +26 -0
  20. data/lib/autotest/camping.rb +37 -0
  21. data/lib/autotest/cctray.rb +57 -0
  22. data/lib/autotest/discover.rb +6 -0
  23. data/lib/autotest/emacs.rb +35 -0
  24. data/lib/autotest/email_notify.rb +66 -0
  25. data/lib/autotest/fixtures.rb +12 -0
  26. data/lib/autotest/growl.rb +28 -0
  27. data/lib/autotest/heckle.rb +14 -0
  28. data/lib/autotest/html_report.rb +31 -0
  29. data/lib/autotest/jabber_notify.rb +111 -0
  30. data/lib/autotest/kdenotify.rb +14 -0
  31. data/lib/autotest/menu.rb +51 -0
  32. data/lib/autotest/migrate.rb +7 -0
  33. data/lib/autotest/notify.rb +34 -0
  34. data/lib/autotest/once.rb +9 -0
  35. data/lib/autotest/pretty.rb +83 -0
  36. data/lib/autotest/rails.rb +81 -0
  37. data/lib/autotest/rcov.rb +22 -0
  38. data/lib/autotest/redgreen.rb +21 -0
  39. data/lib/autotest/restart.rb +11 -0
  40. data/lib/autotest/screen.rb +73 -0
  41. data/lib/autotest/shame.rb +45 -0
  42. data/lib/autotest/snarl.rb +51 -0
  43. data/lib/autotest/timestamp.rb +9 -0
  44. data/lib/functional_test_matrix.rb +92 -0
  45. data/lib/multiruby.rb +401 -0
  46. data/lib/test/rails.rb +295 -0
  47. data/lib/test/rails/controller_test_case.rb +382 -0
  48. data/lib/test/rails/functional_test_case.rb +79 -0
  49. data/lib/test/rails/helper_test_case.rb +64 -0
  50. data/lib/test/rails/ivar_proxy.rb +31 -0
  51. data/lib/test/rails/pp_html_document.rb +74 -0
  52. data/lib/test/rails/rake_tasks.rb +50 -0
  53. data/lib/test/rails/render_tree.rb +93 -0
  54. data/lib/test/rails/test_case.rb +28 -0
  55. data/lib/test/rails/view_test_case.rb +597 -0
  56. data/lib/test/zentest_assertions.rb +134 -0
  57. data/lib/unit_diff.rb +259 -0
  58. data/lib/zentest.rb +566 -0
  59. data/lib/zentest_mapping.rb +99 -0
  60. data/test/test_autotest.rb +449 -0
  61. data/test/test_help.rb +36 -0
  62. data/test/test_rails_autotest.rb +229 -0
  63. data/test/test_rails_controller_test_case.rb +58 -0
  64. data/test/test_rails_helper_test_case.rb +48 -0
  65. data/test/test_rails_view_test_case.rb +275 -0
  66. data/test/test_unit_diff.rb +319 -0
  67. data/test/test_zentest.rb +566 -0
  68. data/test/test_zentest_assertions.rb +128 -0
  69. data/test/test_zentest_mapping.rb +222 -0
  70. metadata +151 -0
@@ -0,0 +1,128 @@
1
+ require 'test/unit'
2
+ require 'test/zentest_assertions'
3
+
4
+ class TestZenTestAssertions < Test::Unit::TestCase
5
+ @@has_mini = defined? Mini
6
+ @@exception = if @@has_mini then
7
+ Mini::Assertion
8
+ else
9
+ Test::Unit::AssertionFailedError
10
+ end
11
+
12
+ def util_assert_triggered expected
13
+ e = assert_raises @@exception do
14
+ yield
15
+ end
16
+
17
+ assert_equal expected, e.message.sub(/(---Backtrace---).*/m, '\1')
18
+ end
19
+
20
+ def test_assert_empty
21
+ assert_empty []
22
+
23
+ msg = if @@has_mini then
24
+ "Expected [true] to be empty."
25
+ else
26
+ "[true] expected to be empty."
27
+ end
28
+
29
+ util_assert_triggered msg do
30
+ assert_empty [true]
31
+ end
32
+ end
33
+
34
+ def test_assert_include
35
+ assert_include [true], true
36
+
37
+ msg = if @@has_mini then
38
+ "Expected [true] to include false."
39
+ else
40
+ "[true]\ndoes not include\nfalse."
41
+ end
42
+
43
+ util_assert_triggered msg do
44
+ assert_include [true], false
45
+ end
46
+ end
47
+
48
+ def test_assert_in_epsilon
49
+ assert_in_epsilon 1.234, 1.234, 0.0001
50
+
51
+ msg = if @@has_mini then
52
+ "Expected 1.235 - 1.234 (0.00100000000000011) to be < 0.0001234."
53
+ else
54
+ "1.235 expected to be within 0.01% of 1.234, was 0.000809716599190374"
55
+ end
56
+
57
+ util_assert_triggered msg do
58
+ assert_in_epsilon 1.235, 1.234, 0.0001
59
+ end
60
+ end
61
+
62
+ def test_deny
63
+ deny false
64
+ deny nil
65
+
66
+ e = assert_raises Test::Unit::AssertionFailedError do
67
+ deny true
68
+ end
69
+
70
+ assert_match(/Failed refutation, no message given/, e.message)
71
+ end
72
+
73
+ def test_deny_empty
74
+ deny_empty [true]
75
+
76
+ msg = if @@has_mini then
77
+ "Expected [] to not be empty."
78
+ else
79
+ "[] expected to have stuff."
80
+ end
81
+
82
+ util_assert_triggered msg do
83
+ deny_empty []
84
+ end
85
+
86
+ end
87
+
88
+ def test_deny_equal
89
+ deny_equal true, false
90
+
91
+ assert_raises Test::Unit::AssertionFailedError do
92
+ deny_equal true, true
93
+ end
94
+ end
95
+
96
+ def test_deny_include
97
+ deny_include [true], false
98
+
99
+ msg = if @@has_mini then
100
+ "Expected [true] to not include true."
101
+ else
102
+ "[true] includes true."
103
+ end
104
+
105
+ util_assert_triggered msg do
106
+ deny_include [true], true
107
+ end
108
+ end
109
+
110
+ def test_deny_nil
111
+ deny_nil false
112
+
113
+ assert_raises Test::Unit::AssertionFailedError do
114
+ deny_nil nil
115
+ end
116
+ end
117
+
118
+ def test_util_capture
119
+ out, err = util_capture do
120
+ puts 'out'
121
+ $stderr.puts 'err'
122
+ end
123
+
124
+ assert_equal "out\n", out
125
+ assert_equal "err\n", err
126
+ end
127
+ end
128
+
@@ -0,0 +1,222 @@
1
+ require 'test/unit' unless defined? $ZENTEST and $ZENTEST
2
+
3
+ $TESTING = true
4
+
5
+ require 'zentest_mapping' unless defined? $ZENTEST
6
+
7
+ class Dummy
8
+ attr_accessor :inherited_methods
9
+ include ZenTestMapping
10
+ end
11
+
12
+ class TestZentestMapping < Test::Unit::TestCase
13
+ def setup
14
+ @tester = Dummy.new
15
+ end
16
+
17
+ def util_simple_setup
18
+ klasses = {
19
+ "Something" =>
20
+ {
21
+ "method1" => true,
22
+ "method1!" => true,
23
+ "method1=" => true,
24
+ "method1?" => true,
25
+ "attrib" => true,
26
+ "attrib=" => true,
27
+ "equal?" => true,
28
+ "self.method3" => true,
29
+ "self.[]" => true,
30
+ },
31
+ }
32
+ test_klasses = {
33
+ "TestSomething" =>
34
+ {
35
+ "test_class_method4" => true,
36
+ "test_method2" => true,
37
+ "setup" => true,
38
+ "teardown" => true,
39
+ "test_class_index" => true,
40
+ },
41
+ }
42
+ @tester.inherited_methods = test_klasses.merge(klasses)
43
+ @generated_code = "
44
+ require 'test/unit' unless defined? $ZENTEST and $ZENTEST
45
+
46
+ class Something
47
+ def self.method4(*args)
48
+ raise NotImplementedError, 'Need to write self.method4'
49
+ end
50
+
51
+ def method2(*args)
52
+ raise NotImplementedError, 'Need to write method2'
53
+ end
54
+ end
55
+
56
+ class TestSomething < Test::Unit::TestCase
57
+ def test_class_method3
58
+ raise NotImplementedError, 'Need to write test_class_method3'
59
+ end
60
+
61
+ def test_attrib
62
+ raise NotImplementedError, 'Need to write test_attrib'
63
+ end
64
+
65
+ def test_attrib_equals
66
+ raise NotImplementedError, 'Need to write test_attrib_equals'
67
+ end
68
+
69
+ def test_equal_eh
70
+ raise NotImplementedError, 'Need to write test_equal_eh'
71
+ end
72
+
73
+ def test_method1
74
+ raise NotImplementedError, 'Need to write test_method1'
75
+ end
76
+
77
+ def test_method1_bang
78
+ raise NotImplementedError, 'Need to write test_method1_bang'
79
+ end
80
+
81
+ def test_method1_eh
82
+ raise NotImplementedError, 'Need to write test_method1_eh'
83
+ end
84
+
85
+ def test_method1_equals
86
+ raise NotImplementedError, 'Need to write test_method1_equals'
87
+ end
88
+ end
89
+
90
+ # Number of errors detected: 10
91
+ "
92
+ end
93
+
94
+ def test_normal_to_test
95
+ self.util_simple_setup
96
+ assert_equal("test_method1", @tester.normal_to_test("method1"))
97
+ assert_equal("test_method1_bang", @tester.normal_to_test("method1!"))
98
+ assert_equal("test_method1_eh", @tester.normal_to_test("method1?"))
99
+ assert_equal("test_method1_equals", @tester.normal_to_test("method1="))
100
+ end
101
+
102
+ def test_normal_to_test_cls
103
+ self.util_simple_setup
104
+ assert_equal("test_class_method1", @tester.normal_to_test("self.method1"))
105
+ assert_equal("test_class_method1_bang", @tester.normal_to_test("self.method1!"))
106
+ assert_equal("test_class_method1_eh", @tester.normal_to_test("self.method1?"))
107
+ assert_equal("test_class_method1_equals", @tester.normal_to_test("self.method1="))
108
+ end
109
+
110
+ def test_normal_to_test_operators
111
+ self.util_simple_setup
112
+ assert_equal("test_and", @tester.normal_to_test("&"))
113
+ assert_equal("test_bang", @tester.normal_to_test("!"))
114
+ assert_equal("test_carat", @tester.normal_to_test("^"))
115
+ assert_equal("test_div", @tester.normal_to_test("/"))
116
+ assert_equal("test_equalstilde", @tester.normal_to_test("=~"))
117
+ assert_equal("test_minus", @tester.normal_to_test("-"))
118
+ assert_equal("test_or", @tester.normal_to_test("|"))
119
+ assert_equal("test_percent", @tester.normal_to_test("%"))
120
+ assert_equal("test_plus", @tester.normal_to_test("+"))
121
+ assert_equal("test_tilde", @tester.normal_to_test("~"))
122
+ end
123
+
124
+ def test_normal_to_test_overlap
125
+ self.util_simple_setup
126
+ assert_equal("test_equals2", @tester.normal_to_test("=="))
127
+ assert_equal("test_equals3", @tester.normal_to_test("==="))
128
+ assert_equal("test_ge", @tester.normal_to_test(">="))
129
+ assert_equal("test_gt", @tester.normal_to_test(">"))
130
+ assert_equal("test_gt2", @tester.normal_to_test(">>"))
131
+ assert_equal("test_index", @tester.normal_to_test("[]"))
132
+ assert_equal("test_index_equals", @tester.normal_to_test("[]="))
133
+ assert_equal("test_lt", @tester.normal_to_test("<"))
134
+ assert_equal("test_lt2", @tester.normal_to_test("<\<"))
135
+ assert_equal("test_lte", @tester.normal_to_test("<="))
136
+ assert_equal("test_method", @tester.normal_to_test("method"))
137
+ assert_equal("test_method_equals", @tester.normal_to_test("method="))
138
+ assert_equal("test_spaceship", @tester.normal_to_test("<=>"))
139
+ assert_equal("test_times", @tester.normal_to_test("*"))
140
+ assert_equal("test_times2", @tester.normal_to_test("**"))
141
+ assert_equal("test_unary_minus", @tester.normal_to_test("-@"))
142
+ assert_equal("test_unary_plus", @tester.normal_to_test("+@"))
143
+ assert_equal("test_class_index", @tester.normal_to_test("self.[]"))
144
+ end
145
+
146
+ def test_test_to_normal
147
+ self.util_simple_setup
148
+ assert_equal("method1!", @tester.test_to_normal("test_method1_bang", "Something"))
149
+ assert_equal("method1", @tester.test_to_normal("test_method1", "Something"))
150
+ assert_equal("method1=", @tester.test_to_normal("test_method1_equals", "Something"))
151
+ assert_equal("method1?", @tester.test_to_normal("test_method1_eh", "Something"))
152
+ end
153
+
154
+ def test_test_to_normal_cls
155
+ self.util_simple_setup
156
+ assert_equal("self.method1", @tester.test_to_normal("test_class_method1"))
157
+ assert_equal("self.method1!", @tester.test_to_normal("test_class_method1_bang"))
158
+ assert_equal("self.method1?", @tester.test_to_normal("test_class_method1_eh"))
159
+ assert_equal("self.method1=", @tester.test_to_normal("test_class_method1_equals"))
160
+ assert_equal("self.[]", @tester.test_to_normal("test_class_index"))
161
+ end
162
+
163
+ def test_test_to_normal_extended
164
+ self.util_simple_setup
165
+ assert_equal("equal?", @tester.test_to_normal("test_equal_eh_extension", "Something"))
166
+ assert_equal("equal?", @tester.test_to_normal("test_equal_eh_extension_again", "Something"))
167
+ assert_equal("method1", @tester.test_to_normal("test_method1_extension", "Something"))
168
+ assert_equal("method1", @tester.test_to_normal("test_method1_extension_again", "Something"))
169
+ end
170
+
171
+ def test_test_to_normal_mapped
172
+ self.util_simple_setup
173
+ assert_equal("*", @tester.test_to_normal("test_times"))
174
+ assert_equal("*", @tester.test_to_normal("test_times_ext"))
175
+ assert_equal("==", @tester.test_to_normal("test_equals2"))
176
+ assert_equal("==", @tester.test_to_normal("test_equals2_ext"))
177
+ assert_equal("===", @tester.test_to_normal("test_equals3"))
178
+ assert_equal("===", @tester.test_to_normal("test_equals3_ext"))
179
+ assert_equal("[]", @tester.test_to_normal("test_index"))
180
+ assert_equal("[]", @tester.test_to_normal("test_index_ext"))
181
+ assert_equal("[]=", @tester.test_to_normal("test_index_equals"))
182
+ assert_equal("[]=", @tester.test_to_normal("test_index_equals_ext"))
183
+ end
184
+
185
+ def test_test_to_normal_operators
186
+ self.util_simple_setup
187
+ assert_equal("&", @tester.test_to_normal("test_and"))
188
+ assert_equal("!", @tester.test_to_normal("test_bang"))
189
+ assert_equal("^", @tester.test_to_normal("test_carat"))
190
+ assert_equal("/", @tester.test_to_normal("test_div"))
191
+ assert_equal("=~", @tester.test_to_normal("test_equalstilde"))
192
+ assert_equal("-", @tester.test_to_normal("test_minus"))
193
+ assert_equal("|", @tester.test_to_normal("test_or"))
194
+ assert_equal("%", @tester.test_to_normal("test_percent"))
195
+ assert_equal("+", @tester.test_to_normal("test_plus"))
196
+ assert_equal("~", @tester.test_to_normal("test_tilde"))
197
+ end
198
+
199
+ def test_test_to_normal_overlap
200
+ self.util_simple_setup
201
+ assert_equal("==", @tester.test_to_normal("test_equals2"))
202
+ assert_equal("===", @tester.test_to_normal("test_equals3"))
203
+ assert_equal(">=", @tester.test_to_normal("test_ge"))
204
+ assert_equal(">", @tester.test_to_normal("test_gt"))
205
+ assert_equal(">>", @tester.test_to_normal("test_gt2"))
206
+ assert_equal("[]", @tester.test_to_normal("test_index"))
207
+ assert_equal("[]=", @tester.test_to_normal("test_index_equals"))
208
+ assert_equal("<", @tester.test_to_normal("test_lt"))
209
+ assert_equal("<\<", @tester.test_to_normal("test_lt2"))
210
+ assert_equal("<=", @tester.test_to_normal("test_lte"))
211
+ assert_equal("<=>", @tester.test_to_normal("test_spaceship"))
212
+ assert_equal("*", @tester.test_to_normal("test_times"))
213
+ assert_equal("**", @tester.test_to_normal("test_times2"))
214
+ assert_equal("-@", @tester.test_to_normal("test_unary_minus"))
215
+ assert_equal("+@", @tester.test_to_normal("test_unary_plus"))
216
+ end
217
+
218
+ def test_to_normal_subset
219
+ self.util_simple_setup
220
+ assert_equal("get_foo", @tester.test_to_normal("test_get_foo"))
221
+ end
222
+ end
metadata ADDED
@@ -0,0 +1,151 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: ryanbriones-ZenTest
3
+ version: !ruby/object:Gem::Version
4
+ version: 3.11.1
5
+ platform: ruby
6
+ authors:
7
+ - Ryan Davis
8
+ - Eric Hodel
9
+ autorequire:
10
+ bindir: bin
11
+ cert_chain: []
12
+
13
+ date: 2008-10-23 00:00:00 -07:00
14
+ default_executable:
15
+ dependencies:
16
+ - !ruby/object:Gem::Dependency
17
+ name: hoe
18
+ version_requirement:
19
+ version_requirements: !ruby/object:Gem::Requirement
20
+ requirements:
21
+ - - ">="
22
+ - !ruby/object:Gem::Version
23
+ version: 1.8.1
24
+ version:
25
+ description: "ZenTest provides 4 different tools and 1 library: zentest, unit_diff, autotest, multiruby, and Test::Rails. ZenTest scans your target and unit-test code and writes your missing code based on simple naming rules, enabling XP at a much quicker pace. ZenTest only works with Ruby and Test::Unit. unit_diff is a command-line filter to diff expected results from actual results and allow you to quickly see exactly what is wrong. autotest is a continous testing facility meant to be used during development. As soon as you save a file, autotest will run the corresponding dependent tests. multiruby runs anything you want on multiple versions of ruby. Great for compatibility checking! Use multiruby_setup to manage your installed versions. Test::Rails helps you build industrial-strength Rails code."
26
+ email:
27
+ - ryand-ruby@zenspider.com
28
+ - drbrain@segment7.net
29
+ executables:
30
+ - autotest
31
+ - multiruby
32
+ - multiruby_setup
33
+ - rails_test_audit
34
+ - unit_diff
35
+ - zentest
36
+ extensions: []
37
+
38
+ extra_rdoc_files:
39
+ - History.txt
40
+ - Manifest.txt
41
+ - README.txt
42
+ - articles/how_to_use_zentest.txt
43
+ - example.txt
44
+ files:
45
+ - History.txt
46
+ - Manifest.txt
47
+ - README.txt
48
+ - Rakefile
49
+ - articles/Article.css
50
+ - articles/getting_started_with_autotest.html
51
+ - articles/how_to_use_zentest.txt
52
+ - bin/autotest
53
+ - bin/multiruby
54
+ - bin/multiruby_setup
55
+ - bin/rails_test_audit
56
+ - bin/unit_diff
57
+ - bin/zentest
58
+ - example.txt
59
+ - example1.rb
60
+ - example2.rb
61
+ - example_dot_autotest.rb
62
+ - lib/autotest.rb
63
+ - lib/autotest/autoupdate.rb
64
+ - lib/autotest/camping.rb
65
+ - lib/autotest/cctray.rb
66
+ - lib/autotest/discover.rb
67
+ - lib/autotest/emacs.rb
68
+ - lib/autotest/email_notify.rb
69
+ - lib/autotest/fixtures.rb
70
+ - lib/autotest/growl.rb
71
+ - lib/autotest/heckle.rb
72
+ - lib/autotest/html_report.rb
73
+ - lib/autotest/jabber_notify.rb
74
+ - lib/autotest/kdenotify.rb
75
+ - lib/autotest/menu.rb
76
+ - lib/autotest/migrate.rb
77
+ - lib/autotest/notify.rb
78
+ - lib/autotest/once.rb
79
+ - lib/autotest/pretty.rb
80
+ - lib/autotest/rails.rb
81
+ - lib/autotest/rcov.rb
82
+ - lib/autotest/redgreen.rb
83
+ - lib/autotest/restart.rb
84
+ - lib/autotest/screen.rb
85
+ - lib/autotest/shame.rb
86
+ - lib/autotest/snarl.rb
87
+ - lib/autotest/timestamp.rb
88
+ - lib/functional_test_matrix.rb
89
+ - lib/multiruby.rb
90
+ - lib/test/rails.rb
91
+ - lib/test/rails/controller_test_case.rb
92
+ - lib/test/rails/functional_test_case.rb
93
+ - lib/test/rails/helper_test_case.rb
94
+ - lib/test/rails/ivar_proxy.rb
95
+ - lib/test/rails/pp_html_document.rb
96
+ - lib/test/rails/rake_tasks.rb
97
+ - lib/test/rails/render_tree.rb
98
+ - lib/test/rails/test_case.rb
99
+ - lib/test/rails/view_test_case.rb
100
+ - lib/test/zentest_assertions.rb
101
+ - lib/unit_diff.rb
102
+ - lib/zentest.rb
103
+ - lib/zentest_mapping.rb
104
+ - test/test_autotest.rb
105
+ - test/test_help.rb
106
+ - test/test_rails_autotest.rb
107
+ - test/test_rails_controller_test_case.rb
108
+ - test/test_rails_helper_test_case.rb
109
+ - test/test_rails_view_test_case.rb
110
+ - test/test_unit_diff.rb
111
+ - test/test_zentest.rb
112
+ - test/test_zentest_assertions.rb
113
+ - test/test_zentest_mapping.rb
114
+ has_rdoc: true
115
+ homepage: http://www.zenspider.com/ZSS/Products/ZenTest/
116
+ post_install_message:
117
+ rdoc_options:
118
+ - --main
119
+ - README.txt
120
+ require_paths:
121
+ - lib
122
+ required_ruby_version: !ruby/object:Gem::Requirement
123
+ requirements:
124
+ - - ">="
125
+ - !ruby/object:Gem::Version
126
+ version: "0"
127
+ version:
128
+ required_rubygems_version: !ruby/object:Gem::Requirement
129
+ requirements:
130
+ - - ">="
131
+ - !ruby/object:Gem::Version
132
+ version: "0"
133
+ version:
134
+ requirements: []
135
+
136
+ rubyforge_project: zentest
137
+ rubygems_version: 1.2.0
138
+ signing_key:
139
+ specification_version: 2
140
+ summary: "ZenTest provides 4 different tools and 1 library: zentest, unit_diff, autotest, multiruby, and Test::Rails"
141
+ test_files:
142
+ - test/test_autotest.rb
143
+ - test/test_help.rb
144
+ - test/test_rails_autotest.rb
145
+ - test/test_rails_controller_test_case.rb
146
+ - test/test_rails_helper_test_case.rb
147
+ - test/test_rails_view_test_case.rb
148
+ - test/test_unit_diff.rb
149
+ - test/test_zentest.rb
150
+ - test/test_zentest_assertions.rb
151
+ - test/test_zentest_mapping.rb