test-unit-activesupport 1.0.6 → 1.1.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: ee232c1a36b8324a842707a1956fafef2fd3fbee
4
- data.tar.gz: 9d6747dc2b117d9ed06c98db2d89cbc9938060dd
2
+ SHA256:
3
+ metadata.gz: 72fb6f3db588c7c5fa4538ea41afb3946b625f619648b7dd5e3e7cb193cd0dc1
4
+ data.tar.gz: '0887c23e8337a1bc12aa7d2cef2055d451b414b0eea049bc5023b9ce54aa7d26'
5
5
  SHA512:
6
- metadata.gz: f4902be929ea3f959eb2d7073bea197abf31b08a989dfd5192b19d3ea6cacaff9ebbf717fcff744c29b13d18b942caf42397b3b3579ba60b6ea5c2ca688d4673
7
- data.tar.gz: 09e9d30d6214d6a071ba24a2b9af599091529dc1fa58107c1beda3fe50c1959a1cc48e01f731b7f7a035065a0fd7fbcf1c45a7b4746cc1eb2867373b18955b4d
6
+ metadata.gz: 2b8506271e926f244864c9207ad4080b63bbfc80de7460032b20df8a87f7e319b4a653f50c4969210596c5fbb6a496a819a259fb09adc0347d7d89cfcf459fa7
7
+ data.tar.gz: 4c851c2b43def691b781fb5d48ef3115edf7299dd1204f6496a04b5b0e1eba1ddb19e4251c477a6df18e3821c9152ff177f6e01f0a01ff0b6de3b141d84f8acb
data/README.md CHANGED
@@ -12,16 +12,14 @@ test-unit-activesupport is an ActiveSupport adapter for test-unit 3. You can use
12
12
 
13
13
  Require `test/unit/active_support`:
14
14
 
15
- ```
15
+ ```ruby
16
16
  require "test/unit/active_support"
17
17
  require "active_support"
18
18
  ```
19
19
 
20
20
  Now you can use full test-unit 3.x features with ActiveSupport.
21
21
 
22
- ```
23
- require "test/unit/active_support"
24
- require "active_support"
22
+ ```ruby
25
23
 
26
24
  class YourTest < ActiveSupport::TestCase
27
25
  # ...
data/doc/text/news.md CHANGED
@@ -1,5 +1,54 @@
1
1
  # News
2
2
 
3
+ ## 1.1.0 - 2021-02-20 {#1-1-0}
4
+
5
+ ### Improvements
6
+
7
+ * Added support for exception in assertions defined by Active
8
+ Support 6 or later.
9
+ [GitHub#14][Reported by Yuki Morohoshi]
10
+
11
+ ### Thanks
12
+
13
+ * Yuki Morohoshi
14
+
15
+ ## 1.0.9 - 2017-07-26 {#1-0-9}
16
+
17
+ ### Improvements
18
+
19
+ * Supported `#before_setup` and `#after_teardown`.
20
+ [GitHub:test-unit-rails#15][Reported by naofumi-fujii]
21
+
22
+ ### Thanks
23
+
24
+ * naofumi-fujii
25
+
26
+ ## 1.0.8 - 2016-12-20 {#1-0-8}
27
+
28
+ ### Fixes
29
+
30
+ * Supported Active Support 4 again.
31
+ [GitHub#12][Patch by Akira Matsuda]
32
+
33
+ ### Thanks
34
+
35
+ * Akira Matsuda
36
+
37
+ ## 1.0.7 - 2016-12-15 {#1-0-7}
38
+
39
+ ### Improvements
40
+
41
+ * Supported `ActiveSupport::Testing::FileFixtures`.
42
+
43
+ ### Fixes
44
+
45
+ * Removed duplicated description in README.
46
+ [GitHub#11][Patch by James Pinto]
47
+
48
+ ### Thanks
49
+
50
+ * James Pinto
51
+
3
52
  ## 1.0.6 - 2016-05-20 {#1-0-6}
4
53
 
5
54
  Rails 5.0 RC1 support release.
@@ -1,4 +1,4 @@
1
- # Copyright (C) 2012-2016 Kouhei Sutou <kou@clear-code.com>
1
+ # Copyright (C) 2012-2017 Kouhei Sutou <kou@clear-code.com>
2
2
  #
3
3
  # This library is free software; you can redistribute it and/or
4
4
  # modify it under the terms of the GNU Lesser General Public
@@ -17,7 +17,7 @@
17
17
  module Test
18
18
  module Unit
19
19
  module ActiveSupport
20
- VERSION = "1.0.6"
20
+ VERSION = "1.1.0"
21
21
  end
22
22
  end
23
23
  end
@@ -1,6 +1,4 @@
1
- # -*- coding: utf-8 -*-
2
- #
3
- # Copyright (C) 2012-2015 Kouhei Sutou <kou@clear-code.com>
1
+ # Copyright (C) 2012-2022 Sutou Kouhei <kou@clear-code.com>
4
2
  #
5
3
  # This library is free software; you can redistribute it and/or
6
4
  # modify it under the terms of the GNU Lesser General Public
@@ -17,7 +15,19 @@
17
15
  # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
18
16
 
19
17
  require "test-unit"
18
+ require "active_support"
19
+ require 'active_support/core_ext/class/attribute'
20
20
  require "active_support/testing/assertions"
21
+ begin
22
+ require 'active_support/testing/file_fixtures'
23
+ rescue LoadError
24
+ # Active Support < 5 doesn't have file_fixtures
25
+ end
26
+ begin
27
+ require "active_support/testing/tagged_logging"
28
+ rescue LoadError
29
+ # Active Support < 7 doesn't have tagged_logging
30
+ end
21
31
 
22
32
  as_test_case_name = "active_support/test_case.rb"
23
33
  unless $LOADED_FEATURES.any? {|feature| feature.end_with?(as_test_case_name)}
@@ -38,12 +48,24 @@ module ActiveSupport
38
48
  end
39
49
 
40
50
  class TestCase < ::Test::Unit::TestCase
51
+ alias_method :assert_nothing_raised_original, :assert_nothing_raised
41
52
  include ActiveSupport::Testing::Assertions
53
+ alias_method :assert_nothing_raised, :assert_nothing_raised_original
54
+ include ActiveSupport::Testing::FileFixtures if defined?(ActiveSupport::Testing::FileFixtures)
55
+ include ActiveSupport::Testing::TaggedLogging if defined?(ActiveSupport::Testing::TaggedLogging)
42
56
 
43
57
  # shoulda needs ActiveSupport::TestCase::Assertion, which is not
44
58
  # set in test-unit 3
45
59
  Assertion = Test::Unit::AssertionFailedError
46
60
 
61
+ setup :before => :prepend
62
+ def before_setup
63
+ end
64
+
65
+ teardown :after => :append
66
+ def after_teardown
67
+ end
68
+
47
69
  # rails 4.1 (action dispatch assertions) needs the 'message'
48
70
  # method which is not defined in test-unit 3
49
71
  def message(msg=nil, ending=nil, &default)
@@ -64,5 +86,22 @@ module ActiveSupport
64
86
  def mu_pp(object)
65
87
  AssertionMessage.convert(object)
66
88
  end
89
+
90
+ if private_method_defined?(:_assert_nothing_raised_or_warn)
91
+ def _assert_nothing_raised_or_warn(assertion, &block)
92
+ assert_nothing_raised(&block)
93
+ rescue Test::Unit::AssertionFailedError => e
94
+ if tagged_logger && tagged_logger.warn?
95
+ warning = <<~MSG
96
+ #{self.class} - #{name}: #{e.error.class} raised.
97
+ If you expected this exception, use `assert_raise` as near to the code that raises as possible.
98
+ Other block based assertions (e.g. `#{assertion}`) can be used, as long as `assert_raise` is inside their block.
99
+ MSG
100
+ tagged_logger.warn warning
101
+ end
102
+
103
+ raise
104
+ end
105
+ end
67
106
  end
68
107
  end
data/test/run-test.rb CHANGED
@@ -1,6 +1,6 @@
1
1
  #!/usr/bin/env ruby
2
2
  #
3
- # Copyright (C) 2015 Kouhei Sutou <kou@clear-code.com>
3
+ # Copyright (C) 2015-2022 Kouhei Sutou <kou@clear-code.com>
4
4
  #
5
5
  # This library is free software; you can redistribute it and/or
6
6
  # modify it under the terms of the GNU Lesser General Public
@@ -16,10 +16,11 @@
16
16
  # License along with this library; if not, write to the Free Software
17
17
  # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
18
18
 
19
- base_dir = File.expand_path("..")
20
- lib_dir = File.join(base_dir)
19
+ base_dir = File.expand_path(File.join(__dir__, ".."))
20
+ lib_dir = File.join(base_dir, "lib")
21
21
  $LOAD_PATH.unshift(lib_dir)
22
22
 
23
23
  require "test/unit/active_support"
24
24
 
25
- exit(Test::Unit::AutoRunner.run(true))
25
+ test_dir = File.join(base_dir, "test")
26
+ exit(Test::Unit::AutoRunner.run(true, test_dir))
@@ -1,4 +1,4 @@
1
- # Copyright (C) 2015 Kouhei Sutou <kou@clear-code.com>
1
+ # Copyright (C) 2015-2022 Kouhei Sutou <kou@clear-code.com>
2
2
  #
3
3
  # This library is free software; you can redistribute it and/or
4
4
  # modify it under the terms of the GNU Lesser General Public
@@ -26,12 +26,38 @@ class TestAssertions < ActiveSupport::TestCase
26
26
  end
27
27
  end
28
28
 
29
+ test "assert_difference: raise" do
30
+ x = 1
31
+ if ActiveSupport.version < Gem::Version.new("6")
32
+ assert_raise(RuntimeError.new("Unexpected")) do
33
+ assert_difference("x", 1) do
34
+ raise "Unexpected"
35
+ end
36
+ end
37
+ else
38
+ assert_raise(Test::Unit::AssertionFailedError) do
39
+ assert_difference("x", 1) do
40
+ raise "Unexpected"
41
+ end
42
+ end
43
+ end
44
+ end
45
+
29
46
  test "assert_no_difference" do
30
47
  x = 1
31
48
  assert_no_difference("x") do
32
49
  end
33
50
  end
34
51
 
52
+
53
+ test "assert_nothing_raised" do
54
+ assert_raise(Test::Unit::AssertionFailedError) do
55
+ assert_nothing_raised do
56
+ raise "Unexpected"
57
+ end
58
+ end
59
+ end
60
+
35
61
  test "message method" do
36
62
  delayed_message = message("test", "bernd") do
37
63
  "hans"
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: test-unit-activesupport
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.6
4
+ version: 1.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Kouhei Sutou
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-05-20 00:00:00.000000000 Z
11
+ date: 2022-02-19 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activesupport
@@ -143,13 +143,11 @@ required_rubygems_version: !ruby/object:Gem::Requirement
143
143
  - !ruby/object:Gem::Version
144
144
  version: '0'
145
145
  requirements: []
146
- rubyforge_project:
147
- rubygems_version: 2.5.1
146
+ rubygems_version: 3.4.0.dev
148
147
  signing_key:
149
148
  specification_version: 4
150
149
  summary: test-unit-activesupport is an ActiveSupport adapter for test-unit 3. You
151
150
  can use full test-unit 3 features with `ActiveSupport::TestCase`.
152
151
  test_files:
153
- - test/test_assertions.rb
154
152
  - test/run-test.rb
155
- has_rdoc:
153
+ - test/test_assertions.rb