activeldap 1.2.2 → 1.2.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (241) hide show
  1. data/CHANGES +24 -0
  2. data/README +9 -3
  3. data/Rakefile +24 -50
  4. data/examples/al-admin/Rakefile +6 -0
  5. data/examples/al-admin/app/controllers/application_controller.rb +9 -2
  6. data/examples/al-admin/config/environment.rb +9 -3
  7. data/examples/al-admin/config/initializers/fast_gettext.rb +3 -0
  8. data/examples/al-admin/config/session_secret.txt +1 -1
  9. data/lib/active_ldap.rb +6 -19
  10. data/lib/active_ldap/adapter/base.rb +22 -20
  11. data/lib/active_ldap/adapter/jndi.rb +2 -3
  12. data/lib/active_ldap/adapter/jndi_connection.rb +2 -2
  13. data/lib/active_ldap/adapter/ldap.rb +9 -4
  14. data/lib/active_ldap/adapter/net_ldap.rb +5 -4
  15. data/lib/active_ldap/base.rb +1 -1
  16. data/lib/active_ldap/get_text.rb +2 -2
  17. data/lib/active_ldap/get_text_fallback.rb +39 -32
  18. data/lib/active_ldap/get_text_support.rb +4 -2
  19. data/lib/active_ldap/operations.rb +3 -2
  20. data/lib/active_ldap/validations.rb +11 -21
  21. data/po/en/active-ldap.po +9 -9
  22. data/po/ja/active-ldap.po +18 -18
  23. data/test/run-test.rb +7 -1
  24. data/test/test_adapter.rb +1 -0
  25. data/test/test_base.rb +8 -1
  26. data/test/test_load.rb +2 -1
  27. data/test/test_user.rb +3 -4
  28. data/test/test_validation.rb +20 -23
  29. metadata +34 -228
  30. data/data/locale/en/LC_MESSAGES/active-ldap.mo +0 -0
  31. data/data/locale/ja/LC_MESSAGES/active-ldap.mo +0 -0
  32. data/examples/al-admin/config/initializers/gettext.rb +0 -1
  33. data/examples/al-admin/lib/tasks/gettext.rake +0 -36
  34. data/examples/al-admin/locale/en/LC_MESSAGES/al-admin.mo +0 -0
  35. data/examples/al-admin/locale/ja/LC_MESSAGES/al-admin.mo +0 -0
  36. data/examples/al-admin/locale/nl/LC_MESSAGES/al-admin.mo +0 -0
  37. data/examples/al-admin/po/al-admin.pot +0 -344
  38. data/examples/al-admin/public/images/active-ldap.png +0 -0
  39. data/examples/al-admin/vendor/locale_rails/.gitignore +0 -6
  40. data/examples/al-admin/vendor/locale_rails/COPYING +0 -56
  41. data/examples/al-admin/vendor/locale_rails/ChangeLog +0 -35
  42. data/examples/al-admin/vendor/locale_rails/README.rdoc +0 -62
  43. data/examples/al-admin/vendor/locale_rails/Rakefile +0 -73
  44. data/examples/al-admin/vendor/locale_rails/lib/locale_rails.rb +0 -18
  45. data/examples/al-admin/vendor/locale_rails/lib/locale_rails/action_controller.rb +0 -15
  46. data/examples/al-admin/vendor/locale_rails/lib/locale_rails/action_controller/base.rb +0 -82
  47. data/examples/al-admin/vendor/locale_rails/lib/locale_rails/action_controller/caching.rb +0 -51
  48. data/examples/al-admin/vendor/locale_rails/lib/locale_rails/action_controller/test_process.rb +0 -44
  49. data/examples/al-admin/vendor/locale_rails/lib/locale_rails/action_view.rb +0 -53
  50. data/examples/al-admin/vendor/locale_rails/lib/locale_rails/i18n.rb +0 -67
  51. data/examples/al-admin/vendor/locale_rails/lib/locale_rails/version.rb +0 -4
  52. data/examples/al-admin/vendor/locale_rails/sample/README +0 -22
  53. data/examples/al-admin/vendor/locale_rails/sample/Rakefile +0 -10
  54. data/examples/al-admin/vendor/locale_rails/sample/app/controllers/application.rb +0 -42
  55. data/examples/al-admin/vendor/locale_rails/sample/app/controllers/samples_controller.rb +0 -30
  56. data/examples/al-admin/vendor/locale_rails/sample/app/helpers/application_helper.rb +0 -3
  57. data/examples/al-admin/vendor/locale_rails/sample/app/views/layouts/samples.html.erb +0 -20
  58. data/examples/al-admin/vendor/locale_rails/sample/app/views/samples/_part.html.erb +0 -68
  59. data/examples/al-admin/vendor/locale_rails/sample/app/views/samples/_part_nl.html.erb +0 -2
  60. data/examples/al-admin/vendor/locale_rails/sample/app/views/samples/cached_action.html.erb +0 -6
  61. data/examples/al-admin/vendor/locale_rails/sample/app/views/samples/index.html.erb +0 -33
  62. data/examples/al-admin/vendor/locale_rails/sample/app/views/samples/index.pt.html.erb +0 -16
  63. data/examples/al-admin/vendor/locale_rails/sample/app/views/samples/index_uz_UZ.html.erb +0 -16
  64. data/examples/al-admin/vendor/locale_rails/sample/config/boot.rb +0 -109
  65. data/examples/al-admin/vendor/locale_rails/sample/config/environment.rb +0 -25
  66. data/examples/al-admin/vendor/locale_rails/sample/config/environments/development.rb +0 -17
  67. data/examples/al-admin/vendor/locale_rails/sample/config/environments/production.rb +0 -24
  68. data/examples/al-admin/vendor/locale_rails/sample/config/environments/test.rb +0 -22
  69. data/examples/al-admin/vendor/locale_rails/sample/config/initializers/inflections.rb +0 -10
  70. data/examples/al-admin/vendor/locale_rails/sample/config/initializers/mime_types.rb +0 -5
  71. data/examples/al-admin/vendor/locale_rails/sample/config/initializers/new_rails_defaults.rb +0 -17
  72. data/examples/al-admin/vendor/locale_rails/sample/config/locales/en.yml +0 -2
  73. data/examples/al-admin/vendor/locale_rails/sample/config/locales/ja.yml +0 -2
  74. data/examples/al-admin/vendor/locale_rails/sample/config/routes.rb +0 -13
  75. data/examples/al-admin/vendor/locale_rails/sample/db/schema.rb +0 -10
  76. data/examples/al-admin/vendor/locale_rails/sample/public/404.html +0 -30
  77. data/examples/al-admin/vendor/locale_rails/sample/public/422.html +0 -30
  78. data/examples/al-admin/vendor/locale_rails/sample/public/500.html +0 -33
  79. data/examples/al-admin/vendor/locale_rails/sample/public/dispatch.cgi +0 -10
  80. data/examples/al-admin/vendor/locale_rails/sample/public/dispatch.fcgi +0 -24
  81. data/examples/al-admin/vendor/locale_rails/sample/public/dispatch.rb +0 -10
  82. data/examples/al-admin/vendor/locale_rails/sample/public/favicon.ico +0 -0
  83. data/examples/al-admin/vendor/locale_rails/sample/public/images/rails.png +0 -0
  84. data/examples/al-admin/vendor/locale_rails/sample/public/javascripts/application.js +0 -2
  85. data/examples/al-admin/vendor/locale_rails/sample/public/javascripts/controls.js +0 -963
  86. data/examples/al-admin/vendor/locale_rails/sample/public/javascripts/dragdrop.js +0 -972
  87. data/examples/al-admin/vendor/locale_rails/sample/public/javascripts/effects.js +0 -1120
  88. data/examples/al-admin/vendor/locale_rails/sample/public/javascripts/prototype.js +0 -4221
  89. data/examples/al-admin/vendor/locale_rails/sample/public/robots.txt +0 -5
  90. data/examples/al-admin/vendor/locale_rails/sample/public/stylesheets/locale.css +0 -81
  91. data/examples/al-admin/vendor/locale_rails/sample/public/stylesheets/scaffold.css +0 -74
  92. data/examples/al-admin/vendor/locale_rails/sample/script/about +0 -4
  93. data/examples/al-admin/vendor/locale_rails/sample/script/console +0 -3
  94. data/examples/al-admin/vendor/locale_rails/sample/script/dbconsole +0 -3
  95. data/examples/al-admin/vendor/locale_rails/sample/script/destroy +0 -3
  96. data/examples/al-admin/vendor/locale_rails/sample/script/generate +0 -3
  97. data/examples/al-admin/vendor/locale_rails/sample/script/performance/benchmarker +0 -3
  98. data/examples/al-admin/vendor/locale_rails/sample/script/performance/profiler +0 -3
  99. data/examples/al-admin/vendor/locale_rails/sample/script/performance/request +0 -3
  100. data/examples/al-admin/vendor/locale_rails/sample/script/plugin +0 -3
  101. data/examples/al-admin/vendor/locale_rails/sample/script/process/inspector +0 -3
  102. data/examples/al-admin/vendor/locale_rails/sample/script/process/reaper +0 -3
  103. data/examples/al-admin/vendor/locale_rails/sample/script/process/spawner +0 -3
  104. data/examples/al-admin/vendor/locale_rails/sample/script/runner +0 -3
  105. data/examples/al-admin/vendor/locale_rails/sample/script/server +0 -3
  106. data/examples/al-admin/vendor/locale_rails/sample/test/performance/browsing_test.rb +0 -9
  107. data/examples/al-admin/vendor/locale_rails/sample/test/test_helper.rb +0 -38
  108. data/examples/al-admin/vendor/locale_rails/test/README +0 -243
  109. data/examples/al-admin/vendor/locale_rails/test/Rakefile +0 -10
  110. data/examples/al-admin/vendor/locale_rails/test/app/controllers/application_controller.rb +0 -10
  111. data/examples/al-admin/vendor/locale_rails/test/app/controllers/articles_controller.rb +0 -17
  112. data/examples/al-admin/vendor/locale_rails/test/app/helpers/application_helper.rb +0 -3
  113. data/examples/al-admin/vendor/locale_rails/test/app/views/articles/index.html.erb +0 -1
  114. data/examples/al-admin/vendor/locale_rails/test/app/views/articles/index_de.html.erb +0 -1
  115. data/examples/al-admin/vendor/locale_rails/test/app/views/articles/index_fr_FR.html.erb +0 -1
  116. data/examples/al-admin/vendor/locale_rails/test/app/views/articles/index_ja.html.erb +0 -1
  117. data/examples/al-admin/vendor/locale_rails/test/app/views/articles/list.html.erb +0 -1
  118. data/examples/al-admin/vendor/locale_rails/test/app/views/articles/show.html.erb +0 -0
  119. data/examples/al-admin/vendor/locale_rails/test/app/views/articles/show.js.rjs +0 -0
  120. data/examples/al-admin/vendor/locale_rails/test/config/boot.rb +0 -110
  121. data/examples/al-admin/vendor/locale_rails/test/config/environment.rb +0 -42
  122. data/examples/al-admin/vendor/locale_rails/test/config/environments/development.rb +0 -17
  123. data/examples/al-admin/vendor/locale_rails/test/config/environments/production.rb +0 -28
  124. data/examples/al-admin/vendor/locale_rails/test/config/environments/test.rb +0 -35
  125. data/examples/al-admin/vendor/locale_rails/test/config/initializers/backtrace_silencers.rb +0 -7
  126. data/examples/al-admin/vendor/locale_rails/test/config/initializers/inflections.rb +0 -10
  127. data/examples/al-admin/vendor/locale_rails/test/config/initializers/mime_types.rb +0 -5
  128. data/examples/al-admin/vendor/locale_rails/test/config/initializers/new_rails_defaults.rb +0 -19
  129. data/examples/al-admin/vendor/locale_rails/test/config/initializers/session_store.rb +0 -15
  130. data/examples/al-admin/vendor/locale_rails/test/config/locales/en.yml +0 -5
  131. data/examples/al-admin/vendor/locale_rails/test/config/routes.rb +0 -46
  132. data/examples/al-admin/vendor/locale_rails/test/db/schema.rb +0 -0
  133. data/examples/al-admin/vendor/locale_rails/test/public/404.html +0 -30
  134. data/examples/al-admin/vendor/locale_rails/test/public/422.html +0 -30
  135. data/examples/al-admin/vendor/locale_rails/test/public/500.html +0 -30
  136. data/examples/al-admin/vendor/locale_rails/test/public/favicon.ico +0 -0
  137. data/examples/al-admin/vendor/locale_rails/test/public/images/rails.png +0 -0
  138. data/examples/al-admin/vendor/locale_rails/test/public/index.html +0 -275
  139. data/examples/al-admin/vendor/locale_rails/test/public/javascripts/application.js +0 -2
  140. data/examples/al-admin/vendor/locale_rails/test/public/javascripts/controls.js +0 -963
  141. data/examples/al-admin/vendor/locale_rails/test/public/javascripts/dragdrop.js +0 -973
  142. data/examples/al-admin/vendor/locale_rails/test/public/javascripts/effects.js +0 -1128
  143. data/examples/al-admin/vendor/locale_rails/test/public/javascripts/prototype.js +0 -4320
  144. data/examples/al-admin/vendor/locale_rails/test/public/robots.txt +0 -5
  145. data/examples/al-admin/vendor/locale_rails/test/script/about +0 -4
  146. data/examples/al-admin/vendor/locale_rails/test/script/console +0 -3
  147. data/examples/al-admin/vendor/locale_rails/test/script/dbconsole +0 -3
  148. data/examples/al-admin/vendor/locale_rails/test/script/destroy +0 -3
  149. data/examples/al-admin/vendor/locale_rails/test/script/generate +0 -3
  150. data/examples/al-admin/vendor/locale_rails/test/script/performance/benchmarker +0 -3
  151. data/examples/al-admin/vendor/locale_rails/test/script/performance/profiler +0 -3
  152. data/examples/al-admin/vendor/locale_rails/test/script/plugin +0 -3
  153. data/examples/al-admin/vendor/locale_rails/test/script/runner +0 -3
  154. data/examples/al-admin/vendor/locale_rails/test/script/server +0 -3
  155. data/examples/al-admin/vendor/locale_rails/test/test/functional/articles_controller_test.rb +0 -161
  156. data/examples/al-admin/vendor/locale_rails/test/test/performance/browsing_test.rb +0 -9
  157. data/examples/al-admin/vendor/locale_rails/test/test/test_helper.rb +0 -38
  158. data/po/active-ldap.pot +0 -4010
  159. data/test-unit/COPYING +0 -56
  160. data/test-unit/GPL +0 -340
  161. data/test-unit/History.txt +0 -223
  162. data/test-unit/Manifest.txt +0 -87
  163. data/test-unit/PSFL +0 -271
  164. data/test-unit/README.txt +0 -60
  165. data/test-unit/Rakefile +0 -40
  166. data/test-unit/TODO +0 -5
  167. data/test-unit/bin/testrb +0 -5
  168. data/test-unit/images/color-diff.png +0 -0
  169. data/test-unit/lib/test/unit.rb +0 -328
  170. data/test-unit/lib/test/unit/assertionfailederror.rb +0 -25
  171. data/test-unit/lib/test/unit/assertions.rb +0 -1334
  172. data/test-unit/lib/test/unit/attribute.rb +0 -125
  173. data/test-unit/lib/test/unit/autorunner.rb +0 -360
  174. data/test-unit/lib/test/unit/collector.rb +0 -36
  175. data/test-unit/lib/test/unit/collector/descendant.rb +0 -23
  176. data/test-unit/lib/test/unit/collector/dir.rb +0 -108
  177. data/test-unit/lib/test/unit/collector/load.rb +0 -144
  178. data/test-unit/lib/test/unit/collector/objectspace.rb +0 -34
  179. data/test-unit/lib/test/unit/color-scheme.rb +0 -106
  180. data/test-unit/lib/test/unit/color.rb +0 -96
  181. data/test-unit/lib/test/unit/diff.rb +0 -740
  182. data/test-unit/lib/test/unit/error.rb +0 -130
  183. data/test-unit/lib/test/unit/exceptionhandler.rb +0 -39
  184. data/test-unit/lib/test/unit/failure.rb +0 -136
  185. data/test-unit/lib/test/unit/fixture.rb +0 -176
  186. data/test-unit/lib/test/unit/notification.rb +0 -129
  187. data/test-unit/lib/test/unit/omission.rb +0 -191
  188. data/test-unit/lib/test/unit/pending.rb +0 -150
  189. data/test-unit/lib/test/unit/priority.rb +0 -180
  190. data/test-unit/lib/test/unit/runner/console.rb +0 -52
  191. data/test-unit/lib/test/unit/runner/emacs.rb +0 -8
  192. data/test-unit/lib/test/unit/runner/tap.rb +0 -8
  193. data/test-unit/lib/test/unit/testcase.rb +0 -478
  194. data/test-unit/lib/test/unit/testresult.rb +0 -89
  195. data/test-unit/lib/test/unit/testsuite.rb +0 -110
  196. data/test-unit/lib/test/unit/ui/console/outputlevel.rb +0 -14
  197. data/test-unit/lib/test/unit/ui/console/testrunner.rb +0 -466
  198. data/test-unit/lib/test/unit/ui/emacs/testrunner.rb +0 -63
  199. data/test-unit/lib/test/unit/ui/tap/testrunner.rb +0 -92
  200. data/test-unit/lib/test/unit/ui/testrunner.rb +0 -28
  201. data/test-unit/lib/test/unit/ui/testrunnermediator.rb +0 -77
  202. data/test-unit/lib/test/unit/ui/testrunnerutilities.rb +0 -41
  203. data/test-unit/lib/test/unit/util/backtracefilter.rb +0 -42
  204. data/test-unit/lib/test/unit/util/method-owner-finder.rb +0 -28
  205. data/test-unit/lib/test/unit/util/observable.rb +0 -90
  206. data/test-unit/lib/test/unit/util/output.rb +0 -31
  207. data/test-unit/lib/test/unit/util/procwrapper.rb +0 -48
  208. data/test-unit/lib/test/unit/version.rb +0 -7
  209. data/test-unit/sample/adder.rb +0 -13
  210. data/test-unit/sample/subtracter.rb +0 -12
  211. data/test-unit/sample/test_adder.rb +0 -20
  212. data/test-unit/sample/test_subtracter.rb +0 -20
  213. data/test-unit/sample/test_user.rb +0 -23
  214. data/test-unit/test/collector/test-descendant.rb +0 -133
  215. data/test-unit/test/collector/test-load.rb +0 -442
  216. data/test-unit/test/collector/test_dir.rb +0 -406
  217. data/test-unit/test/collector/test_objectspace.rb +0 -100
  218. data/test-unit/test/run-test.rb +0 -15
  219. data/test-unit/test/test-attribute.rb +0 -86
  220. data/test-unit/test/test-color-scheme.rb +0 -69
  221. data/test-unit/test/test-color.rb +0 -47
  222. data/test-unit/test/test-diff.rb +0 -518
  223. data/test-unit/test/test-emacs-runner.rb +0 -60
  224. data/test-unit/test/test-fixture.rb +0 -287
  225. data/test-unit/test/test-notification.rb +0 -33
  226. data/test-unit/test/test-omission.rb +0 -81
  227. data/test-unit/test/test-pending.rb +0 -70
  228. data/test-unit/test/test-priority.rb +0 -119
  229. data/test-unit/test/test-testcase.rb +0 -544
  230. data/test-unit/test/test_assertions.rb +0 -1197
  231. data/test-unit/test/test_error.rb +0 -26
  232. data/test-unit/test/test_failure.rb +0 -33
  233. data/test-unit/test/test_testresult.rb +0 -113
  234. data/test-unit/test/test_testsuite.rb +0 -129
  235. data/test-unit/test/testunit-test-util.rb +0 -14
  236. data/test-unit/test/ui/test_testrunmediator.rb +0 -20
  237. data/test-unit/test/util/test-method-owner-finder.rb +0 -38
  238. data/test-unit/test/util/test-output.rb +0 -11
  239. data/test-unit/test/util/test_backtracefilter.rb +0 -41
  240. data/test-unit/test/util/test_observable.rb +0 -102
  241. data/test-unit/test/util/test_procwrapper.rb +0 -36
@@ -1,129 +0,0 @@
1
- require 'test/unit/util/backtracefilter'
2
-
3
- module Test
4
- module Unit
5
- class Notification
6
- include Util::BacktraceFilter
7
- attr_reader :test_name, :location, :message
8
-
9
- SINGLE_CHARACTER = 'N'
10
- LABEL = "Notification"
11
-
12
- # Creates a new Notification with the given location and
13
- # message.
14
- def initialize(test_name, location, message)
15
- @test_name = test_name
16
- @location = location
17
- @message = message
18
- end
19
-
20
- # Returns a single character representation of a notification.
21
- def single_character_display
22
- SINGLE_CHARACTER
23
- end
24
-
25
- def label
26
- LABEL
27
- end
28
-
29
- # Returns a brief version of the error description.
30
- def short_display
31
- "#{@test_name}: #{@message.split("\n")[0]}"
32
- end
33
-
34
- # Returns a verbose version of the error description.
35
- def long_display
36
- backtrace = filter_backtrace(location).join("\n")
37
- "#{label}: #{@message}\n#{@test_name}\n#{backtrace}"
38
- end
39
-
40
- # Overridden to return long_display.
41
- def to_s
42
- long_display
43
- end
44
-
45
- def critical?
46
- false
47
- end
48
- end
49
-
50
- class NotifiedError < StandardError
51
- end
52
-
53
-
54
- module TestCaseNotificationSupport
55
- class << self
56
- def included(base)
57
- base.class_eval do
58
- include NotificationHandler
59
- end
60
- end
61
- end
62
-
63
- # Notify some information.
64
- #
65
- # Example:
66
- # def test_notification
67
- # notify("I'm here!")
68
- # # Reached here
69
- # notify("Special!") if special_case?
70
- # # Reached here too
71
- # end
72
- def notify(message, &block)
73
- notification = Notification.new(name, filter_backtrace(caller), message)
74
- add_notification(notification)
75
- end
76
-
77
- private
78
- def add_notification(notification)
79
- current_result.add_notification(notification)
80
- end
81
- end
82
-
83
- module NotificationHandler
84
- class << self
85
- def included(base)
86
- base.exception_handler(:handle_notified_error)
87
- end
88
- end
89
-
90
- private
91
- def handle_notified_error(exception)
92
- return false unless exception.is_a?(NotifiedError)
93
- notification = Notification.new(name,
94
- filter_backtrace(exception.backtrace),
95
- exception.message)
96
- add_notification(notification)
97
- true
98
- end
99
- end
100
-
101
- module TestResultNotificationSupport
102
- attr_reader :notifications
103
-
104
- # Records a Test::Unit::Notification.
105
- def add_notification(notification)
106
- @notifications << notification
107
- notify_fault(notification)
108
- notify_changed
109
- end
110
-
111
- # Returns the number of notifications this TestResult has
112
- # recorded.
113
- def notification_count
114
- @notifications.size
115
- end
116
-
117
- private
118
- def initialize_containers
119
- super
120
- @notifications = []
121
- @summary_generators << :notification_summary
122
- end
123
-
124
- def notification_summary
125
- "#{notification_count} notifications"
126
- end
127
- end
128
- end
129
- end
@@ -1,191 +0,0 @@
1
- require 'test/unit/util/backtracefilter'
2
-
3
- module Test
4
- module Unit
5
- class Omission
6
- include Util::BacktraceFilter
7
- attr_reader :test_name, :location, :message
8
-
9
- SINGLE_CHARACTER = 'O'
10
- LABEL = "Omission"
11
-
12
- # Creates a new Omission with the given location and
13
- # message.
14
- def initialize(test_name, location, message)
15
- @test_name = test_name
16
- @location = location
17
- @message = message
18
- end
19
-
20
- # Returns a single character representation of a omission.
21
- def single_character_display
22
- SINGLE_CHARACTER
23
- end
24
-
25
- def label
26
- LABEL
27
- end
28
-
29
- # Returns a brief version of the error description.
30
- def short_display
31
- "#{@test_name}: #{@message.split("\n")[0]}"
32
- end
33
-
34
- # Returns a verbose version of the error description.
35
- def long_display
36
- backtrace = filter_backtrace(location).join("\n")
37
- "#{label}: #{@message}\n#{@test_name}\n#{backtrace}"
38
- end
39
-
40
- # Overridden to return long_display.
41
- def to_s
42
- long_display
43
- end
44
-
45
- def critical?
46
- true
47
- end
48
- end
49
-
50
- class OmittedError < StandardError
51
- end
52
-
53
-
54
- module TestCaseOmissionSupport
55
- class << self
56
- def included(base)
57
- base.class_eval do
58
- include OmissionHandler
59
- end
60
- end
61
- end
62
-
63
- # Omit the test or part of the test.
64
- #
65
- # Example:
66
- # def test_omission
67
- # omit
68
- # # Not reached here
69
- # end
70
- #
71
- # def test_omission_with_here
72
- # omit do
73
- # # Not ran here
74
- # end
75
- # # Reached here
76
- # end
77
- def omit(message=nil, &block)
78
- message ||= "omitted."
79
- if block_given?
80
- omission = Omission.new(name, filter_backtrace(caller), message)
81
- add_omission(omission)
82
- else
83
- raise OmittedError.new(message)
84
- end
85
- end
86
-
87
- # Omit the test or part of the test if _condition_ is
88
- # true.
89
- #
90
- # Example:
91
- # def test_omission
92
- # omit_if("".empty?)
93
- # # Not reached here
94
- # end
95
- #
96
- # def test_omission_with_here
97
- # omit_if(true) do
98
- # # Not ran here
99
- # end
100
- # omit_if(false) do
101
- # # Reached here
102
- # end
103
- # # Reached here too
104
- # end
105
- def omit_if(condition, *args, &block)
106
- if condition
107
- omit(*args, &block)
108
- else
109
- block.call if block
110
- end
111
- end
112
-
113
- # Omit the test or part of the test if _condition_ is
114
- # not true.
115
- #
116
- # Example:
117
- # def test_omission
118
- # omit_unless("string".empty?)
119
- # # Not reached here
120
- # end
121
- #
122
- # def test_omission_with_here
123
- # omit_unless(true) do
124
- # # Reached here
125
- # end
126
- # omit_unless(false) do
127
- # # Not ran here
128
- # end
129
- # # Reached here too
130
- # end
131
- def omit_unless(condition, *args, &block)
132
- if condition
133
- block.call if block
134
- else
135
- omit(*args, &block)
136
- end
137
- end
138
-
139
- private
140
- def add_omission(omission)
141
- current_result.add_omission(omission)
142
- end
143
- end
144
-
145
- module OmissionHandler
146
- class << self
147
- def included(base)
148
- base.exception_handler(:handle_omitted_error)
149
- end
150
- end
151
-
152
- private
153
- def handle_omitted_error(exception)
154
- return false unless exception.is_a?(OmittedError)
155
- omission = Omission.new(name,
156
- filter_backtrace(exception.backtrace),
157
- exception.message)
158
- add_omission(omission)
159
- true
160
- end
161
- end
162
-
163
- module TestResultOmissionSupport
164
- attr_reader :omissions
165
-
166
- # Records a Test::Unit::Omission.
167
- def add_omission(omission)
168
- @omissions << omission
169
- notify_fault(omission)
170
- notify_changed
171
- end
172
-
173
- # Returns the number of omissions this TestResult has
174
- # recorded.
175
- def omission_count
176
- @omissions.size
177
- end
178
-
179
- private
180
- def initialize_containers
181
- super
182
- @omissions = []
183
- @summary_generators << :omission_summary
184
- end
185
-
186
- def omission_summary
187
- "#{omission_count} omissions"
188
- end
189
- end
190
- end
191
- end
@@ -1,150 +0,0 @@
1
- require 'test/unit/util/backtracefilter'
2
-
3
- module Test
4
- module Unit
5
- class Pending
6
- include Util::BacktraceFilter
7
- attr_reader :test_name, :location, :message
8
-
9
- SINGLE_CHARACTER = 'P'
10
- LABEL = "Pending"
11
-
12
- # Creates a new Pending with the given location and
13
- # message.
14
- def initialize(test_name, location, message)
15
- @test_name = test_name
16
- @location = location
17
- @message = message
18
- end
19
-
20
- # Returns a single character representation of a pending.
21
- def single_character_display
22
- SINGLE_CHARACTER
23
- end
24
-
25
- def label
26
- LABEL
27
- end
28
-
29
- # Returns a brief version of the error description.
30
- def short_display
31
- "#{@test_name}: #{@message.split("\n")[0]}"
32
- end
33
-
34
- # Returns a verbose version of the error description.
35
- def long_display
36
- backtrace = filter_backtrace(location).join("\n")
37
- "#{label}: #{@message}\n#{@test_name}\n#{backtrace}"
38
- end
39
-
40
- # Overridden to return long_display.
41
- def to_s
42
- long_display
43
- end
44
-
45
- def critical?
46
- true
47
- end
48
- end
49
-
50
- class PendedError < StandardError
51
- end
52
-
53
-
54
- module TestCasePendingSupport
55
- class << self
56
- def included(base)
57
- base.class_eval do
58
- include PendingHandler
59
- end
60
- end
61
- end
62
-
63
- # Marks the test or part of the test is pending.
64
- #
65
- # Example:
66
- # def test_pending
67
- # pend
68
- # # Not reached here
69
- # end
70
- #
71
- # def test_pending_with_here
72
- # pend do
73
- # # Ran here
74
- # # Fails if the block doesn't raise any error.
75
- # # Because it means the block is passed unexpectedly.
76
- # end
77
- # # Reached here
78
- # end
79
- def pend(message=nil, &block)
80
- message ||= "pended."
81
- if block_given?
82
- pending = nil
83
- begin
84
- yield
85
- rescue Exception
86
- pending = Pending.new(name, filter_backtrace(caller), message)
87
- add_pending(pending)
88
- end
89
- unless pending
90
- flunk("Pending block should not be passed: #{message}")
91
- end
92
- else
93
- raise PendedError.new(message)
94
- end
95
- end
96
-
97
- private
98
- def add_pending(pending)
99
- problem_occurred
100
- current_result.add_pending(pending)
101
- end
102
- end
103
-
104
- module PendingHandler
105
- class << self
106
- def included(base)
107
- base.exception_handler(:handle_pended_error)
108
- end
109
- end
110
-
111
- private
112
- def handle_pended_error(exception)
113
- return false unless exception.is_a?(PendedError)
114
- pending = Pending.new(name,
115
- filter_backtrace(exception.backtrace),
116
- exception.message)
117
- add_pending(pending)
118
- true
119
- end
120
- end
121
-
122
- module TestResultPendingSupport
123
- attr_reader :pendings
124
-
125
- # Records a Test::Unit::Pending.
126
- def add_pending(pending)
127
- @pendings << pending
128
- notify_fault(pending)
129
- notify_changed
130
- end
131
-
132
- # Returns the number of pendings this TestResult has
133
- # recorded.
134
- def pending_count
135
- @pendings.size
136
- end
137
-
138
- private
139
- def initialize_containers
140
- super
141
- @pendings = []
142
- @summary_generators << :pending_summary
143
- end
144
-
145
- def pending_summary
146
- "#{pending_count} pendings"
147
- end
148
- end
149
- end
150
- end