assert 2.16.5 → 2.18.3
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.
- checksums.yaml +7 -7
- data/Gemfile +3 -1
- data/README.md +79 -54
- data/assert.gemspec +6 -5
- data/bin/assert +4 -4
- data/lib/assert.rb +8 -18
- data/lib/assert/actual_value.rb +127 -0
- data/lib/assert/assert_runner.rb +7 -10
- data/lib/assert/assertions.rb +15 -28
- data/lib/assert/cli.rb +41 -57
- data/lib/assert/config.rb +8 -12
- data/lib/assert/config_helpers.rb +6 -10
- data/lib/assert/context.rb +30 -24
- data/lib/assert/context/let_dsl.rb +13 -0
- data/lib/assert/context/method_missing.rb +19 -0
- data/lib/assert/context/setup_dsl.rb +0 -4
- data/lib/assert/context/subject_dsl.rb +0 -4
- data/lib/assert/context/suite_dsl.rb +0 -4
- data/lib/assert/context/test_dsl.rb +5 -9
- data/lib/assert/context_info.rb +2 -6
- data/lib/assert/default_runner.rb +1 -5
- data/lib/assert/default_suite.rb +1 -6
- data/lib/assert/default_view.rb +8 -12
- data/lib/assert/factory.rb +1 -4
- data/lib/assert/file_line.rb +0 -4
- data/lib/assert/macro.rb +1 -4
- data/lib/assert/macros/methods.rb +5 -11
- data/lib/assert/result.rb +19 -34
- data/lib/assert/runner.rb +12 -11
- data/lib/assert/stub.rb +16 -2
- data/lib/assert/suite.rb +3 -7
- data/lib/assert/test.rb +13 -18
- data/lib/assert/utils.rb +8 -12
- data/lib/assert/version.rb +1 -1
- data/lib/assert/view.rb +18 -21
- data/lib/assert/view_helpers.rb +6 -17
- data/log/{.gitkeep → .keep} +0 -0
- data/test/helper.rb +26 -41
- data/test/support/factory.rb +20 -6
- data/test/support/inherited_stuff.rb +0 -2
- data/test/system/stub_tests.rb +350 -354
- data/test/system/test_tests.rb +119 -133
- data/test/unit/actual_value_tests.rb +335 -0
- data/test/unit/assert_tests.rb +125 -52
- data/test/unit/assertions/assert_block_tests.rb +34 -37
- data/test/unit/assertions/assert_empty_tests.rb +38 -38
- data/test/unit/assertions/assert_equal_tests.rb +84 -86
- data/test/unit/assertions/assert_file_exists_tests.rb +37 -39
- data/test/unit/assertions/assert_includes_tests.rb +45 -46
- data/test/unit/assertions/assert_instance_of_tests.rb +39 -40
- data/test/unit/assertions/assert_kind_of_tests.rb +39 -40
- data/test/unit/assertions/assert_match_tests.rb +39 -40
- data/test/unit/assertions/assert_nil_tests.rb +35 -38
- data/test/unit/assertions/assert_raises_tests.rb +58 -62
- data/test/unit/assertions/assert_respond_to_tests.rb +41 -42
- data/test/unit/assertions/assert_same_tests.rb +94 -90
- data/test/unit/assertions/assert_true_false_tests.rb +67 -69
- data/test/unit/assertions_tests.rb +17 -19
- data/test/unit/config_helpers_tests.rb +41 -43
- data/test/unit/config_tests.rb +42 -46
- data/test/unit/context/let_dsl_tests.rb +10 -0
- data/test/unit/context/setup_dsl_tests.rb +72 -91
- data/test/unit/context/subject_dsl_tests.rb +18 -51
- data/test/unit/context/suite_dsl_tests.rb +19 -23
- data/test/unit/context/test_dsl_tests.rb +52 -59
- data/test/unit/context_info_tests.rb +19 -21
- data/test/unit/context_tests.rb +175 -178
- data/test/unit/default_runner_tests.rb +4 -10
- data/test/unit/default_suite_tests.rb +54 -59
- data/test/unit/factory_tests.rb +6 -9
- data/test/unit/file_line_tests.rb +34 -40
- data/test/unit/macro_tests.rb +11 -20
- data/test/unit/result_tests.rb +156 -182
- data/test/unit/runner_tests.rb +72 -79
- data/test/unit/suite_tests.rb +62 -63
- data/test/unit/test_tests.rb +143 -147
- data/test/unit/utils_tests.rb +49 -62
- data/test/unit/view_helpers_tests.rb +67 -70
- data/test/unit/view_tests.rb +26 -32
- metadata +54 -47
- data/.assert.rb +0 -3
- data/.gitignore +0 -19
data/test/unit/utils_tests.rb
CHANGED
@@ -1,148 +1,135 @@
|
|
1
|
-
require
|
2
|
-
require
|
1
|
+
require "assert"
|
2
|
+
require "assert/utils"
|
3
3
|
|
4
|
-
require
|
5
|
-
require
|
4
|
+
require "tempfile"
|
5
|
+
require "assert/config"
|
6
6
|
|
7
7
|
module Assert::Utils
|
8
|
-
|
9
8
|
class UnitTests < Assert::Context
|
10
9
|
desc "Assert::Utils"
|
11
|
-
subject{ Assert::Utils }
|
12
|
-
|
13
|
-
|
14
|
-
end
|
10
|
+
subject { Assert::Utils }
|
11
|
+
|
12
|
+
let(:objs1) { [1, "hi there", Hash.new, [:a, :b]] }
|
15
13
|
|
16
14
|
should have_imeths :show, :show_for_diff
|
17
15
|
should have_imeths :tempfile
|
18
16
|
should have_imeths :stdlib_pp_proc, :default_use_diff_proc, :syscmd_diff_proc
|
19
17
|
should have_imeths :git_changed_proc
|
20
|
-
|
21
18
|
end
|
22
19
|
|
23
20
|
class ShowTests < UnitTests
|
24
21
|
desc "`show`"
|
25
|
-
|
26
|
-
|
22
|
+
|
23
|
+
let(:pp_config1) {
|
24
|
+
Assert::Config.new({
|
27
25
|
:pp_objects => true,
|
28
|
-
:pp_proc => Proc.new{ |input|
|
26
|
+
:pp_proc => Proc.new{ |input| "herp derp" }
|
29
27
|
})
|
30
|
-
|
28
|
+
}
|
31
29
|
|
32
30
|
should "use `inspect` to show objs when `pp_objects` setting is false" do
|
33
|
-
|
34
|
-
|
31
|
+
objs1.each do |obj|
|
32
|
+
assert_that(subject.show(obj, Factory.modes_off_config)).equals(obj.inspect)
|
35
33
|
end
|
36
34
|
end
|
37
35
|
|
38
36
|
should "use `pp_proc` to show objs when `pp_objects` setting is true" do
|
39
|
-
|
40
|
-
|
37
|
+
objs1.each do |obj|
|
38
|
+
assert_that(subject.show(obj, pp_config1)).equals(pp_config1.pp_proc.call(obj))
|
41
39
|
end
|
42
40
|
end
|
43
|
-
|
44
41
|
end
|
45
42
|
|
46
43
|
class ShowForDiffTests < ShowTests
|
47
44
|
desc "`show_for_diff`"
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
end
|
45
|
+
|
46
|
+
let(:w_newlines1) { { :string => "herp derp, derp herp\nherpderpedia" } }
|
47
|
+
let(:w_obj_id1) { Class.new.new }
|
52
48
|
|
53
49
|
should "call show, escaping newlines" do
|
54
50
|
exp_out = "{:string=>\"herp derp, derp herp\nherpderpedia\"}"
|
55
|
-
|
51
|
+
assert_that(subject.show_for_diff(w_newlines1, Factory.modes_off_config)).equals(exp_out)
|
56
52
|
end
|
57
53
|
|
58
54
|
should "make any obj ids generic" do
|
59
55
|
exp_out = "#<#<Class:0xXXXXXX>:0xXXXXXX>"
|
60
|
-
|
56
|
+
assert_that(subject.show_for_diff(w_obj_id1, Factory.modes_off_config)).equals(exp_out)
|
61
57
|
end
|
62
|
-
|
63
58
|
end
|
64
59
|
|
65
60
|
class TempfileTests < UnitTests
|
66
61
|
desc "`tempfile`"
|
67
62
|
|
68
63
|
should "require tempfile, open a tempfile, write the given content, and yield it" do
|
69
|
-
subject.tempfile(
|
70
|
-
|
64
|
+
subject.tempfile("a-name", "some-content") do |tmpfile|
|
65
|
+
assert_that((require "tempfile")).equals(false)
|
71
66
|
assert tmpfile
|
72
|
-
|
67
|
+
assert_that(tmpfile).is_kind_of(Tempfile)
|
73
68
|
|
74
69
|
tmpfile.pos = 0
|
75
|
-
|
70
|
+
assert_that(tmpfile.read).equals("some-content\n")
|
76
71
|
end
|
77
72
|
end
|
78
|
-
|
79
73
|
end
|
80
74
|
|
81
75
|
class StdlibPpProcTests < UnitTests
|
82
76
|
desc "`stdlib_pp_proc`"
|
83
77
|
|
84
78
|
should "build a pp proc that uses stdlib `PP.pp` to pretty print objects" do
|
85
|
-
exp_obj_pps =
|
86
|
-
act_obj_pps =
|
87
|
-
|
79
|
+
exp_obj_pps = objs1.map{ |o| PP.pp(o, "", 79).strip }
|
80
|
+
act_obj_pps = objs1.map{ |o| subject.stdlib_pp_proc.call(o) }
|
81
|
+
assert_that(act_obj_pps).equals(exp_obj_pps)
|
88
82
|
|
89
83
|
cust_width = 1
|
90
|
-
exp_obj_pps =
|
91
|
-
act_obj_pps =
|
92
|
-
|
84
|
+
exp_obj_pps = objs1.map{ |o| PP.pp(o, "", cust_width).strip }
|
85
|
+
act_obj_pps = objs1.map{ |o| subject.stdlib_pp_proc(cust_width).call(o) }
|
86
|
+
assert_that(act_obj_pps).equals(exp_obj_pps)
|
93
87
|
end
|
94
|
-
|
95
88
|
end
|
96
89
|
|
97
90
|
class DefaultUseDiffProcTests < UnitTests
|
98
91
|
desc "`default_use_diff_proc`"
|
99
|
-
|
100
|
-
|
101
|
-
|
102
|
-
end
|
92
|
+
|
93
|
+
let(:longer1) { "i am a really long string output; use diff when working with me" }
|
94
|
+
let(:newlines1) { "i have\n newlines" }
|
103
95
|
|
104
96
|
should "be true if either output has newlines or is bigger than 29 chars" do
|
105
97
|
proc = subject.default_use_diff_proc
|
106
98
|
|
107
|
-
assert_not proc.call(
|
108
|
-
assert proc.call(
|
109
|
-
assert proc.call(
|
110
|
-
assert proc.call(
|
111
|
-
assert proc.call(
|
112
|
-
assert proc.call(
|
99
|
+
assert_not proc.call("", "")
|
100
|
+
assert proc.call(longer1, "")
|
101
|
+
assert proc.call(newlines1, "")
|
102
|
+
assert proc.call("", longer1)
|
103
|
+
assert proc.call("", newlines1)
|
104
|
+
assert proc.call(longer1, newlines1)
|
113
105
|
end
|
114
|
-
|
115
106
|
end
|
116
107
|
|
117
108
|
class SyscmdDiffProc < UnitTests
|
118
109
|
desc "`syscmd_diff_proc`"
|
119
|
-
setup do
|
120
|
-
@diff_a_file = File.join(ROOT_PATH, 'test/support/diff_a.txt')
|
121
|
-
@diff_b_file = File.join(ROOT_PATH, 'test/support/diff_b.txt')
|
122
110
|
|
123
|
-
|
124
|
-
|
125
|
-
|
111
|
+
let(:diff_a_file1) { File.join(ROOT_PATH, "test/support/diff_a.txt") }
|
112
|
+
let(:diff_b_file1) { File.join(ROOT_PATH, "test/support/diff_b.txt") }
|
113
|
+
let(:diff_a1) { File.read(diff_a_file1) }
|
114
|
+
let(:diff_b1) { File.read(diff_b_file1) }
|
126
115
|
|
127
116
|
should "use the diff syscmd to output the diff between the exp/act show output" do
|
128
|
-
exp_diff_out = `diff --unified=-1 #{
|
117
|
+
exp_diff_out = `diff --unified=-1 #{diff_a_file1} #{diff_b_file1}`.strip.tap do |out|
|
129
118
|
out.sub!(/^\-\-\- .+/, "--- expected")
|
130
119
|
out.sub!(/^\+\+\+ .+/, "+++ actual")
|
131
120
|
end
|
132
121
|
|
133
|
-
|
122
|
+
assert_that(subject.syscmd_diff_proc.call(diff_a1, diff_b1)).equals(exp_diff_out)
|
134
123
|
end
|
135
124
|
|
136
125
|
should "allow you to specify a custom syscmd" do
|
137
|
-
cust_syscmd =
|
138
|
-
exp_diff_out = `#{cust_syscmd} #{
|
126
|
+
cust_syscmd = "diff"
|
127
|
+
exp_diff_out = `#{cust_syscmd} #{diff_a_file1} #{diff_b_file1}`.strip.tap do |out|
|
139
128
|
out.sub!(/^\-\-\- .+/, "--- expected")
|
140
129
|
out.sub!(/^\+\+\+ .+/, "+++ actual")
|
141
130
|
end
|
142
131
|
|
143
|
-
|
132
|
+
assert_that(subject.syscmd_diff_proc(cust_syscmd).call(diff_a1, diff_b1)).equals(exp_diff_out)
|
144
133
|
end
|
145
|
-
|
146
134
|
end
|
147
|
-
|
148
135
|
end
|
@@ -1,22 +1,24 @@
|
|
1
|
-
require
|
2
|
-
require
|
1
|
+
require "assert"
|
2
|
+
require "assert/view_helpers"
|
3
3
|
|
4
|
-
require
|
5
|
-
require
|
6
|
-
require
|
7
|
-
require
|
8
|
-
require
|
4
|
+
require "stringio"
|
5
|
+
require "assert/config"
|
6
|
+
require "assert/config_helpers"
|
7
|
+
require "assert/result"
|
8
|
+
require "assert/view"
|
9
9
|
|
10
10
|
module Assert::ViewHelpers
|
11
|
-
|
12
11
|
class UnitTests < Assert::Context
|
13
12
|
desc "Assert::ViewHelpers"
|
14
|
-
|
15
|
-
|
16
|
-
|
13
|
+
subject { helpers_class1 }
|
14
|
+
|
15
|
+
let(:test_opt_val1) { Factory.string }
|
16
|
+
let(:helpers_class1) {
|
17
|
+
test_opt_val = test_opt_val1
|
18
|
+
Class.new do
|
17
19
|
include Assert::ViewHelpers
|
18
20
|
|
19
|
-
option
|
21
|
+
option "test_opt", test_opt_val
|
20
22
|
|
21
23
|
def config
|
22
24
|
# use the assert config since it has tests, contexts, etc
|
@@ -24,36 +26,33 @@ module Assert::ViewHelpers
|
|
24
26
|
@config ||= [Assert.config, Assert::Config.new].sample
|
25
27
|
end
|
26
28
|
end
|
27
|
-
|
28
|
-
subject{ @helpers_class }
|
29
|
+
}
|
29
30
|
|
30
31
|
should have_imeths :option
|
31
32
|
|
32
33
|
should "include the config helpers" do
|
33
|
-
|
34
|
+
assert_that(subject).includes(Assert::ConfigHelpers)
|
34
35
|
end
|
35
36
|
|
36
37
|
should "write option values" do
|
37
|
-
helpers =
|
38
|
-
|
38
|
+
helpers = helpers_class1.new
|
39
|
+
assert_that(helpers.test_opt).equals(test_opt_val1)
|
39
40
|
|
40
41
|
new_val = Factory.integer
|
41
42
|
helpers.test_opt new_val
|
42
|
-
|
43
|
+
assert_that(helpers.test_opt).equals(new_val)
|
43
44
|
|
44
45
|
other_val = Factory.integer
|
45
46
|
helpers.test_opt new_val, other_val
|
46
|
-
|
47
|
+
assert_that(helpers.test_opt).equals([new_val, other_val])
|
47
48
|
end
|
48
|
-
|
49
49
|
end
|
50
50
|
|
51
51
|
class InitTests < UnitTests
|
52
52
|
desc "when init"
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
subject{ @helpers }
|
53
|
+
subject { helpers1 }
|
54
|
+
|
55
|
+
let(:helpers1) { helpers_class1.new }
|
57
56
|
|
58
57
|
should have_imeths :captured_output, :re_run_test_cmd
|
59
58
|
should have_imeths :tests_to_run_count_statement, :result_count_statement
|
@@ -63,109 +62,109 @@ module Assert::ViewHelpers
|
|
63
62
|
|
64
63
|
should "know how to build captured output" do
|
65
64
|
output = Factory.string
|
66
|
-
exp =
|
67
|
-
|
68
|
-
|
69
|
-
|
65
|
+
exp =
|
66
|
+
"--- stdout ---\n"\
|
67
|
+
"#{output}"\
|
68
|
+
"--------------"
|
69
|
+
assert_that(subject.captured_output(output)).equals(exp)
|
70
70
|
end
|
71
71
|
|
72
72
|
should "know how to build the re-run test cmd" do
|
73
73
|
test_id = "#{Dir.pwd}/#{Factory.string}_tests.rb:#{Factory.integer}"
|
74
|
-
exp = "assert -t #{test_id.gsub(Dir.pwd,
|
75
|
-
|
74
|
+
exp = "assert -t #{test_id.gsub(Dir.pwd, ".")}"
|
75
|
+
assert_that(subject.re_run_test_cmd(test_id)).equals(exp)
|
76
76
|
end
|
77
77
|
|
78
78
|
should "know its tests-to-run count and result count statements" do
|
79
|
-
exp = "#{subject.tests_to_run_count} test#{
|
80
|
-
|
79
|
+
exp = "#{subject.tests_to_run_count} test#{"s" if subject.tests_to_run_count != 1}"
|
80
|
+
assert_that(subject.tests_to_run_count_statement).equals(exp)
|
81
81
|
|
82
|
-
exp = "#{subject.result_count} result#{
|
83
|
-
|
82
|
+
exp = "#{subject.result_count} result#{"s" if subject.result_count != 1}"
|
83
|
+
assert_that(subject.result_count_statement).equals(exp)
|
84
84
|
end
|
85
85
|
|
86
86
|
should "know how to build a sentence from a list of items" do
|
87
87
|
items = 1.times.map{ Factory.string }
|
88
|
-
|
88
|
+
assert_that(subject.to_sentence(items)).equals(items.first)
|
89
89
|
|
90
90
|
items = 2.times.map{ Factory.string }
|
91
|
-
|
91
|
+
assert_that(subject.to_sentence(items)).equals(items.join(" and "))
|
92
92
|
|
93
93
|
items = (Factory.integer(3)+2).times.map{ Factory.string }
|
94
94
|
exp = [items[0..-2].join(", "), items.last].join(", and ")
|
95
|
-
|
95
|
+
assert_that(subject.to_sentence(items)).equals(exp)
|
96
96
|
end
|
97
97
|
|
98
98
|
should "know its all pass result summary message" do
|
99
99
|
Assert.stub(subject, :result_count){ 0 }
|
100
|
-
|
100
|
+
assert_that(subject.all_pass_result_summary_msg).equals("uhh...")
|
101
101
|
|
102
102
|
Assert.stub(subject, :result_count){ 1 }
|
103
|
-
|
103
|
+
assert_that(subject.all_pass_result_summary_msg).equals("pass")
|
104
104
|
|
105
105
|
Assert.stub(subject, :result_count){ Factory.integer(10)+1 }
|
106
|
-
|
106
|
+
assert_that(subject.all_pass_result_summary_msg).equals("all pass")
|
107
107
|
end
|
108
108
|
|
109
109
|
should "know its result summary msg" do
|
110
110
|
res_type = :pass
|
111
111
|
Assert.stub(subject, :all_pass?){ true }
|
112
112
|
exp = subject.all_pass_result_summary_msg
|
113
|
-
|
113
|
+
assert_that(subject.result_summary_msg(res_type)).equals(exp)
|
114
114
|
|
115
115
|
Assert.stub(subject, :all_pass?){ false }
|
116
116
|
res_type = [:pass, :ignore, :fail, :skip, :error].sample
|
117
117
|
exp = "#{subject.send("#{res_type}_result_count")} #{res_type.to_s}"
|
118
|
-
|
118
|
+
assert_that(subject.result_summary_msg(res_type)).equals(exp)
|
119
119
|
end
|
120
120
|
|
121
121
|
should "know its results summary sentence" do
|
122
|
-
items =
|
123
|
-
subject.
|
124
|
-
|
122
|
+
items =
|
123
|
+
subject.ocurring_result_types.map do |result_sym|
|
124
|
+
subject.result_summary_msg(result_sym)
|
125
|
+
end
|
125
126
|
exp = subject.to_sentence(items)
|
126
|
-
|
127
|
+
assert_that(subject.results_summary_sentence).equals(exp)
|
127
128
|
|
128
129
|
block = proc{ |summary, result| "#{summary}--#{result}" }
|
129
|
-
items =
|
130
|
-
|
131
|
-
|
130
|
+
items =
|
131
|
+
subject.ocurring_result_types.map do |result_sym|
|
132
|
+
block.call(subject.result_summary_msg(result_sym), result_sym)
|
133
|
+
end
|
132
134
|
exp = subject.to_sentence(items)
|
133
|
-
|
135
|
+
assert_that(subject.results_summary_sentence(&block)).equals(exp)
|
134
136
|
end
|
135
|
-
|
136
137
|
end
|
137
138
|
|
138
139
|
class AnsiTests < UnitTests
|
139
140
|
desc "Ansi"
|
140
|
-
subject{ Ansi }
|
141
|
+
subject { Ansi }
|
141
142
|
|
142
143
|
should have_imeths :code_for
|
143
144
|
|
144
145
|
should "know its codes" do
|
145
|
-
|
146
|
+
assert_that(subject::CODES).is_not_empty
|
146
147
|
end
|
147
148
|
|
148
149
|
should "map its code style names to ansi code strings" do
|
149
150
|
styles = Factory.integer(3).times.map{ subject::CODES.keys.sample }
|
150
|
-
exp = styles.map{ |n| "\e[#{subject::CODES[n]}m" }.join(
|
151
|
-
|
151
|
+
exp = styles.map{ |n| "\e[#{subject::CODES[n]}m" }.join("")
|
152
|
+
assert_that(subject.code_for(*styles)).equals(exp)
|
152
153
|
|
153
154
|
styles = Factory.integer(3).times.map{ Factory.string }
|
154
|
-
|
155
|
+
assert_that(subject.code_for(*styles)).equals("")
|
155
156
|
|
156
157
|
styles = []
|
157
|
-
|
158
|
+
assert_that(subject.code_for(*styles)).equals("")
|
158
159
|
end
|
159
|
-
|
160
160
|
end
|
161
161
|
|
162
162
|
class AnsiInitTests < UnitTests
|
163
163
|
desc "when mixed in on a view"
|
164
|
-
|
165
|
-
|
166
|
-
|
167
|
-
|
168
|
-
subject{ @view }
|
164
|
+
subject { view1 }
|
165
|
+
|
166
|
+
let(:view_class1) { Class.new(Assert::View){ include Ansi } }
|
167
|
+
let(:view1) { view_class1.new(Factory.modes_off_config, StringIO.new("", "w+")) }
|
169
168
|
|
170
169
|
should have_imeths :ansi_styled_msg
|
171
170
|
|
@@ -175,28 +174,26 @@ module Assert::ViewHelpers
|
|
175
174
|
|
176
175
|
Assert.stub(subject, :is_tty?){ false }
|
177
176
|
Assert.stub(subject, :styled){ false }
|
178
|
-
|
177
|
+
assert_that(subject.ansi_styled_msg(msg, result_type)).equals(msg)
|
179
178
|
|
180
179
|
Assert.stub(subject, :is_tty?){ false }
|
181
180
|
Assert.stub(subject, :styled){ true }
|
182
|
-
|
181
|
+
assert_that(subject.ansi_styled_msg(msg, result_type)).equals(msg)
|
183
182
|
|
184
183
|
Assert.stub(subject, :is_tty?){ true }
|
185
184
|
Assert.stub(subject, :styled){ false }
|
186
|
-
|
185
|
+
assert_that(subject.ansi_styled_msg(msg, result_type)).equals(msg)
|
187
186
|
|
188
187
|
Assert.stub(subject, :is_tty?){ true }
|
189
188
|
Assert.stub(subject, :styled){ true }
|
190
189
|
Assert.stub(subject, "#{result_type}_styles"){ [] }
|
191
|
-
|
190
|
+
assert_that(subject.ansi_styled_msg(msg, result_type)).equals(msg)
|
192
191
|
|
193
192
|
styles = Factory.integer(3).times.map{ Assert::ViewHelpers::Ansi::CODES.keys.sample }
|
194
193
|
Assert.stub(subject, "#{result_type}_styles"){ styles }
|
195
194
|
exp_code = Assert::ViewHelpers::Ansi.code_for(*styles)
|
196
195
|
exp = exp_code + msg + Assert::ViewHelpers::Ansi.code_for(:reset)
|
197
|
-
|
196
|
+
assert_that(subject.ansi_styled_msg(msg, result_type)).equals(exp)
|
198
197
|
end
|
199
|
-
|
200
198
|
end
|
201
|
-
|
202
199
|
end
|