assert 2.18.4 → 2.19.4
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Gemfile +4 -2
- data/assert.gemspec +11 -5
- data/bin/assert +1 -0
- data/lib/assert.rb +20 -6
- data/lib/assert/actual_value.rb +26 -8
- data/lib/assert/assert_runner.rb +38 -17
- data/lib/assert/assertions.rb +145 -41
- data/lib/assert/cli.rb +19 -66
- data/lib/assert/clirb.rb +55 -0
- data/lib/assert/config.rb +22 -8
- data/lib/assert/config_helpers.rb +57 -22
- data/lib/assert/context.rb +28 -47
- data/lib/assert/context/let_dsl.rb +8 -2
- data/lib/assert/context/method_missing.rb +3 -0
- data/lib/assert/context/setup_dsl.rb +24 -16
- data/lib/assert/context/subject_dsl.rb +9 -7
- data/lib/assert/context/suite_dsl.rb +5 -1
- data/lib/assert/context/test_dsl.rb +58 -19
- data/lib/assert/context_info.rb +2 -0
- data/lib/assert/default_runner.rb +2 -0
- data/lib/assert/default_suite.rb +27 -15
- data/lib/assert/default_view.rb +49 -30
- data/lib/assert/factory.rb +2 -0
- data/lib/assert/file_line.rb +8 -6
- data/lib/assert/macro.rb +3 -1
- data/lib/assert/macros/methods.rb +73 -45
- data/lib/assert/result.rb +117 -61
- data/lib/assert/runner.rb +70 -51
- data/lib/assert/stub.rb +44 -3
- data/lib/assert/suite.rb +76 -38
- data/lib/assert/test.rb +43 -44
- data/lib/assert/utils.rb +22 -11
- data/lib/assert/version.rb +3 -1
- data/lib/assert/view.rb +46 -18
- data/lib/assert/view_helpers.rb +102 -92
- data/test/helper.rb +8 -4
- data/test/support/factory.rb +40 -21
- data/test/support/inherited_stuff.rb +2 -0
- data/test/system/stub_tests.rb +182 -144
- data/test/system/test_tests.rb +88 -60
- data/test/unit/actual_value_tests.rb +103 -46
- data/test/unit/assert_tests.rb +48 -40
- data/test/unit/assertions/assert_block_tests.rb +12 -10
- data/test/unit/assertions/assert_changes_tests.rb +103 -0
- data/test/unit/assertions/assert_empty_tests.rb +16 -12
- data/test/unit/assertions/assert_equal_tests.rb +46 -24
- data/test/unit/assertions/assert_file_exists_tests.rb +17 -13
- data/test/unit/assertions/assert_includes_tests.rb +12 -10
- data/test/unit/assertions/assert_instance_of_tests.rb +16 -14
- data/test/unit/assertions/assert_is_a_tests.rb +128 -0
- data/test/unit/assertions/assert_match_tests.rb +12 -10
- data/test/unit/assertions/assert_nil_tests.rb +18 -12
- data/test/unit/assertions/assert_raises_tests.rb +34 -23
- data/test/unit/assertions/assert_respond_to_tests.rb +12 -10
- data/test/unit/assertions/assert_same_tests.rb +26 -24
- data/test/unit/assertions/assert_true_false_tests.rb +34 -24
- data/test/unit/assertions_tests.rb +25 -17
- data/test/unit/config_helpers_tests.rb +15 -8
- data/test/unit/config_tests.rb +36 -9
- data/test/unit/context/let_dsl_tests.rb +2 -0
- data/test/unit/context/setup_dsl_tests.rb +26 -14
- data/test/unit/context/subject_dsl_tests.rb +5 -3
- data/test/unit/context/suite_dsl_tests.rb +6 -4
- data/test/unit/context/test_dsl_tests.rb +43 -19
- data/test/unit/context_info_tests.rb +6 -4
- data/test/unit/context_tests.rb +112 -54
- data/test/unit/default_runner_tests.rb +2 -0
- data/test/unit/default_suite_tests.rb +12 -6
- data/test/unit/factory_tests.rb +4 -2
- data/test/unit/file_line_tests.rb +9 -7
- data/test/unit/macro_tests.rb +13 -11
- data/test/unit/result_tests.rb +49 -41
- data/test/unit/runner_tests.rb +33 -18
- data/test/unit/suite_tests.rb +42 -24
- data/test/unit/test_tests.rb +66 -73
- data/test/unit/utils_tests.rb +52 -37
- data/test/unit/view_helpers_tests.rb +23 -14
- data/test/unit/view_tests.rb +7 -5
- metadata +40 -9
- data/test/unit/assertions/assert_kind_of_tests.rb +0 -66
@@ -1,3 +1,5 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
1
3
|
require "assert"
|
2
4
|
require "assert/view_helpers"
|
3
5
|
|
@@ -10,9 +12,9 @@ require "assert/view"
|
|
10
12
|
module Assert::ViewHelpers
|
11
13
|
class UnitTests < Assert::Context
|
12
14
|
desc "Assert::ViewHelpers"
|
13
|
-
subject
|
15
|
+
subject{ unit_class }
|
14
16
|
|
15
|
-
let(:unit_class)
|
17
|
+
let(:unit_class) do
|
16
18
|
test_opt_val = test_opt_val1
|
17
19
|
Class.new do
|
18
20
|
include Assert::ViewHelpers
|
@@ -25,9 +27,9 @@ module Assert::ViewHelpers
|
|
25
27
|
@config ||= [Assert.config, Assert::Config.new].sample
|
26
28
|
end
|
27
29
|
end
|
28
|
-
|
30
|
+
end
|
29
31
|
|
30
|
-
let(:test_opt_val1)
|
32
|
+
let(:test_opt_val1){ Factory.string }
|
31
33
|
|
32
34
|
should have_imeths :option
|
33
35
|
|
@@ -51,7 +53,7 @@ module Assert::ViewHelpers
|
|
51
53
|
|
52
54
|
class InitTests < UnitTests
|
53
55
|
desc "when init"
|
54
|
-
subject
|
56
|
+
subject{ unit_class.new }
|
55
57
|
|
56
58
|
should have_imeths :captured_output, :re_run_test_cmd
|
57
59
|
should have_imeths :tests_to_run_count_statement, :result_count_statement
|
@@ -75,7 +77,9 @@ module Assert::ViewHelpers
|
|
75
77
|
end
|
76
78
|
|
77
79
|
should "know its tests-to-run count and result count statements" do
|
78
|
-
exp =
|
80
|
+
exp =
|
81
|
+
"#{subject.tests_to_run_count} "\
|
82
|
+
"test#{"s" if subject.tests_to_run_count != 1}"
|
79
83
|
assert_that(subject.tests_to_run_count_statement).equals(exp)
|
80
84
|
|
81
85
|
exp = "#{subject.result_count} result#{"s" if subject.result_count != 1}"
|
@@ -89,7 +93,7 @@ module Assert::ViewHelpers
|
|
89
93
|
items = 2.times.map{ Factory.string }
|
90
94
|
assert_that(subject.to_sentence(items)).equals(items.join(" and "))
|
91
95
|
|
92
|
-
items = (Factory.integer(3)+2).times.map{ Factory.string }
|
96
|
+
items = (Factory.integer(3) + 2).times.map{ Factory.string }
|
93
97
|
exp = [items[0..-2].join(", "), items.last].join(", and ")
|
94
98
|
assert_that(subject.to_sentence(items)).equals(exp)
|
95
99
|
end
|
@@ -101,7 +105,7 @@ module Assert::ViewHelpers
|
|
101
105
|
Assert.stub(subject, :result_count){ 1 }
|
102
106
|
assert_that(subject.all_pass_result_summary_msg).equals("pass")
|
103
107
|
|
104
|
-
Assert.stub(subject, :result_count){ Factory.integer(10)+1 }
|
108
|
+
Assert.stub(subject, :result_count){ Factory.integer(10) + 1 }
|
105
109
|
assert_that(subject.all_pass_result_summary_msg).equals("all pass")
|
106
110
|
end
|
107
111
|
|
@@ -113,7 +117,7 @@ module Assert::ViewHelpers
|
|
113
117
|
|
114
118
|
Assert.stub(subject, :all_pass?){ false }
|
115
119
|
res_type = [:pass, :ignore, :fail, :skip, :error].sample
|
116
|
-
exp = "#{subject.send("#{res_type}_result_count")} #{res_type
|
120
|
+
exp = "#{subject.send("#{res_type}_result_count")} #{res_type}"
|
117
121
|
assert_that(subject.result_summary_msg(res_type)).equals(exp)
|
118
122
|
end
|
119
123
|
|
@@ -137,7 +141,7 @@ module Assert::ViewHelpers
|
|
137
141
|
|
138
142
|
class AnsiTests < UnitTests
|
139
143
|
desc "Ansi"
|
140
|
-
subject
|
144
|
+
subject{ Ansi }
|
141
145
|
|
142
146
|
should have_imeths :code_for
|
143
147
|
|
@@ -160,10 +164,12 @@ module Assert::ViewHelpers
|
|
160
164
|
|
161
165
|
class AnsiInitTests < UnitTests
|
162
166
|
desc "when mixed in on a view"
|
163
|
-
subject
|
167
|
+
subject{ view1 }
|
164
168
|
|
165
|
-
let(:view_class1)
|
166
|
-
let(:view1)
|
169
|
+
let(:view_class1){ Class.new(Assert::View){ include Ansi } }
|
170
|
+
let(:view1) do
|
171
|
+
view_class1.new(Factory.modes_off_config, StringIO.new(+"", "w+"))
|
172
|
+
end
|
167
173
|
|
168
174
|
should have_imeths :ansi_styled_msg
|
169
175
|
|
@@ -188,7 +194,10 @@ module Assert::ViewHelpers
|
|
188
194
|
Assert.stub(subject, "#{result_type}_styles"){ [] }
|
189
195
|
assert_that(subject.ansi_styled_msg(msg, result_type)).equals(msg)
|
190
196
|
|
191
|
-
styles =
|
197
|
+
styles =
|
198
|
+
Factory.integer(3).times.map do
|
199
|
+
Assert::ViewHelpers::Ansi::CODES.keys.sample
|
200
|
+
end
|
192
201
|
Assert.stub(subject, "#{result_type}_styles"){ styles }
|
193
202
|
exp_code = Assert::ViewHelpers::Ansi.code_for(*styles)
|
194
203
|
exp = exp_code + msg + Assert::ViewHelpers::Ansi.code_for(:reset)
|
data/test/unit/view_tests.rb
CHANGED
@@ -1,3 +1,5 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
1
3
|
require "assert"
|
2
4
|
require "assert/view"
|
3
5
|
|
@@ -9,9 +11,9 @@ require "assert/view_helpers"
|
|
9
11
|
class Assert::View
|
10
12
|
class UnitTests < Assert::Context
|
11
13
|
desc "Assert::View"
|
12
|
-
subject
|
14
|
+
subject{ unit_class }
|
13
15
|
|
14
|
-
let(:unit_class)
|
16
|
+
let(:unit_class){ Assert::View }
|
15
17
|
|
16
18
|
should have_instance_method :require_user_view
|
17
19
|
|
@@ -26,10 +28,10 @@ class Assert::View
|
|
26
28
|
|
27
29
|
class InitTests < UnitTests
|
28
30
|
desc "when init"
|
29
|
-
subject
|
31
|
+
subject{ Assert::View.new(config1, io1) }
|
30
32
|
|
31
|
-
let(:io1)
|
32
|
-
let(:config1)
|
33
|
+
let(:io1){ StringIO.new(+"", "w+") }
|
34
|
+
let(:config1){ Factory.modes_off_config }
|
33
35
|
|
34
36
|
should have_readers :config
|
35
37
|
should have_imeths :view, :is_tty?
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: assert
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.
|
4
|
+
version: 2.19.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Kelly Redding
|
@@ -9,36 +9,64 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date:
|
12
|
+
date: 2021-01-11 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
|
+
- !ruby/object:Gem::Dependency
|
15
|
+
name: much-style-guide
|
16
|
+
requirement: !ruby/object:Gem::Requirement
|
17
|
+
requirements:
|
18
|
+
- - "~>"
|
19
|
+
- !ruby/object:Gem::Version
|
20
|
+
version: 0.5.0
|
21
|
+
type: :development
|
22
|
+
prerelease: false
|
23
|
+
version_requirements: !ruby/object:Gem::Requirement
|
24
|
+
requirements:
|
25
|
+
- - "~>"
|
26
|
+
- !ruby/object:Gem::Version
|
27
|
+
version: 0.5.0
|
14
28
|
- !ruby/object:Gem::Dependency
|
15
29
|
name: much-factory
|
16
30
|
requirement: !ruby/object:Gem::Requirement
|
17
31
|
requirements:
|
18
32
|
- - "~>"
|
19
33
|
- !ruby/object:Gem::Version
|
20
|
-
version: 0.1
|
34
|
+
version: 0.2.1
|
35
|
+
type: :runtime
|
36
|
+
prerelease: false
|
37
|
+
version_requirements: !ruby/object:Gem::Requirement
|
38
|
+
requirements:
|
39
|
+
- - "~>"
|
40
|
+
- !ruby/object:Gem::Version
|
41
|
+
version: 0.2.1
|
42
|
+
- !ruby/object:Gem::Dependency
|
43
|
+
name: much-not-given
|
44
|
+
requirement: !ruby/object:Gem::Requirement
|
45
|
+
requirements:
|
46
|
+
- - "~>"
|
47
|
+
- !ruby/object:Gem::Version
|
48
|
+
version: 0.1.2
|
21
49
|
type: :runtime
|
22
50
|
prerelease: false
|
23
51
|
version_requirements: !ruby/object:Gem::Requirement
|
24
52
|
requirements:
|
25
53
|
- - "~>"
|
26
54
|
- !ruby/object:Gem::Version
|
27
|
-
version: 0.1.
|
55
|
+
version: 0.1.2
|
28
56
|
- !ruby/object:Gem::Dependency
|
29
57
|
name: much-stub
|
30
58
|
requirement: !ruby/object:Gem::Requirement
|
31
59
|
requirements:
|
32
60
|
- - "~>"
|
33
61
|
- !ruby/object:Gem::Version
|
34
|
-
version: 0.1.
|
62
|
+
version: 0.1.7
|
35
63
|
type: :runtime
|
36
64
|
prerelease: false
|
37
65
|
version_requirements: !ruby/object:Gem::Requirement
|
38
66
|
requirements:
|
39
67
|
- - "~>"
|
40
68
|
- !ruby/object:Gem::Version
|
41
|
-
version: 0.1.
|
69
|
+
version: 0.1.7
|
42
70
|
description: Assertion style testing framework.
|
43
71
|
email:
|
44
72
|
- kelly@kellyredding.com
|
@@ -58,6 +86,7 @@ files:
|
|
58
86
|
- lib/assert/assert_runner.rb
|
59
87
|
- lib/assert/assertions.rb
|
60
88
|
- lib/assert/cli.rb
|
89
|
+
- lib/assert/clirb.rb
|
61
90
|
- lib/assert/config.rb
|
62
91
|
- lib/assert/config_helpers.rb
|
63
92
|
- lib/assert/context.rb
|
@@ -95,12 +124,13 @@ files:
|
|
95
124
|
- test/unit/actual_value_tests.rb
|
96
125
|
- test/unit/assert_tests.rb
|
97
126
|
- test/unit/assertions/assert_block_tests.rb
|
127
|
+
- test/unit/assertions/assert_changes_tests.rb
|
98
128
|
- test/unit/assertions/assert_empty_tests.rb
|
99
129
|
- test/unit/assertions/assert_equal_tests.rb
|
100
130
|
- test/unit/assertions/assert_file_exists_tests.rb
|
101
131
|
- test/unit/assertions/assert_includes_tests.rb
|
102
132
|
- test/unit/assertions/assert_instance_of_tests.rb
|
103
|
-
- test/unit/assertions/
|
133
|
+
- test/unit/assertions/assert_is_a_tests.rb
|
104
134
|
- test/unit/assertions/assert_match_tests.rb
|
105
135
|
- test/unit/assertions/assert_nil_tests.rb
|
106
136
|
- test/unit/assertions/assert_raises_tests.rb
|
@@ -148,7 +178,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
148
178
|
- !ruby/object:Gem::Version
|
149
179
|
version: '0'
|
150
180
|
requirements: []
|
151
|
-
rubygems_version: 3.
|
181
|
+
rubygems_version: 3.2.4
|
152
182
|
signing_key:
|
153
183
|
specification_version: 4
|
154
184
|
summary: Assertion style testing framework.
|
@@ -163,12 +193,13 @@ test_files:
|
|
163
193
|
- test/unit/actual_value_tests.rb
|
164
194
|
- test/unit/assert_tests.rb
|
165
195
|
- test/unit/assertions/assert_block_tests.rb
|
196
|
+
- test/unit/assertions/assert_changes_tests.rb
|
166
197
|
- test/unit/assertions/assert_empty_tests.rb
|
167
198
|
- test/unit/assertions/assert_equal_tests.rb
|
168
199
|
- test/unit/assertions/assert_file_exists_tests.rb
|
169
200
|
- test/unit/assertions/assert_includes_tests.rb
|
170
201
|
- test/unit/assertions/assert_instance_of_tests.rb
|
171
|
-
- test/unit/assertions/
|
202
|
+
- test/unit/assertions/assert_is_a_tests.rb
|
172
203
|
- test/unit/assertions/assert_match_tests.rb
|
173
204
|
- test/unit/assertions/assert_nil_tests.rb
|
174
205
|
- test/unit/assertions/assert_raises_tests.rb
|
@@ -1,66 +0,0 @@
|
|
1
|
-
require "assert"
|
2
|
-
require "assert/assertions"
|
3
|
-
|
4
|
-
require "assert/utils"
|
5
|
-
|
6
|
-
module Assert::Assertions
|
7
|
-
class AssertKindOfTests < Assert::Context
|
8
|
-
include Assert::Test::TestHelpers
|
9
|
-
|
10
|
-
desc "`assert_kind_of`"
|
11
|
-
subject {
|
12
|
-
args = args1
|
13
|
-
Factory.test do
|
14
|
-
assert_kind_of(String, "object") # pass
|
15
|
-
assert_kind_of(*args) # fail
|
16
|
-
end
|
17
|
-
}
|
18
|
-
|
19
|
-
let(:desc1) { "assert kind of fail desc" }
|
20
|
-
let(:args1) { [Array, "object", desc1] }
|
21
|
-
let(:config1) { subject.config }
|
22
|
-
|
23
|
-
should "produce results as expected" do
|
24
|
-
subject.run(&test_run_callback)
|
25
|
-
|
26
|
-
assert_that(test_run_result_count).equals(2)
|
27
|
-
assert_that(test_run_result_count(:pass)).equals(1)
|
28
|
-
assert_that(test_run_result_count(:fail)).equals(1)
|
29
|
-
|
30
|
-
exp =
|
31
|
-
"#{args1[2]}\nExpected #{Assert::U.show(args1[1], config1)} (#{args1[1].class})"\
|
32
|
-
" to be a kind of #{args1[0]}."
|
33
|
-
assert_that(test_run_results(:fail).first.message).equals(exp)
|
34
|
-
end
|
35
|
-
end
|
36
|
-
|
37
|
-
class AssertNotKindOfTests < Assert::Context
|
38
|
-
include Assert::Test::TestHelpers
|
39
|
-
|
40
|
-
desc "`assert_not_kind_of`"
|
41
|
-
subject {
|
42
|
-
args = args1
|
43
|
-
Factory.test do
|
44
|
-
assert_not_kind_of(*args) # fail
|
45
|
-
assert_not_kind_of(Array, "object") # pass
|
46
|
-
end
|
47
|
-
}
|
48
|
-
|
49
|
-
let(:desc1) { "assert not kind of fail desc" }
|
50
|
-
let(:args1) { [String, "object", desc1] }
|
51
|
-
let(:config1) { subject.config }
|
52
|
-
|
53
|
-
should "produce results as expected" do
|
54
|
-
subject.run(&test_run_callback)
|
55
|
-
|
56
|
-
assert_that(test_run_result_count).equals(2)
|
57
|
-
assert_that(test_run_result_count(:pass)).equals(1)
|
58
|
-
assert_that(test_run_result_count(:fail)).equals(1)
|
59
|
-
|
60
|
-
exp =
|
61
|
-
"#{args1[2]}\nExpected #{Assert::U.show(args1[1], config1)} (#{args1[1].class})"\
|
62
|
-
" to not be a kind of #{args1[0]}."
|
63
|
-
assert_that(test_run_results(:fail).first.message).equals(exp)
|
64
|
-
end
|
65
|
-
end
|
66
|
-
end
|