assert 2.19.1 → 2.19.6

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