Skip to content

Commit 6ce9709

Browse files
author
Thomaz Leite
committed
Change IO.ANSI tests to assume chardata is returned
1 parent 6538f33 commit 6ce9709

File tree

1 file changed

+31
-18
lines changed

1 file changed

+31
-18
lines changed

lib/elixir/test/elixir/io/ansi_test.exs

Lines changed: 31 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -4,63 +4,76 @@ defmodule IO.ANSITest do
44
use ExUnit.Case, async: true
55

66
test :format_ansicode do
7-
assert IO.ANSI.format(:green, true) ==
7+
assert IO.chardata_to_string(IO.ANSI.format(:green, true)) ==
88
"#{IO.ANSI.green}#{IO.ANSI.reset}"
9-
assert IO.ANSI.format(:green, false) ==
9+
assert IO.chardata_to_string(IO.ANSI.format(:green, false)) ==
1010
""
1111
end
1212

1313
test :format_binary do
14-
assert IO.ANSI.format("Hello, world!", true) ==
14+
assert IO.chardata_to_string(IO.ANSI.format("Hello, world!", true)) ==
1515
"Hello, world!"
16-
assert IO.ANSI.format("This is a map: %{foo: :bar}", false) ==
17-
"This is a map: %{foo: :bar}"
16+
assert IO.chardata_to_string(IO.ANSI.format("A map: %{foo: :bar}", false)) ==
17+
"A map: %{foo: :bar}"
1818
end
1919

2020
test :format_empty_list do
21-
assert IO.ANSI.format([], true) ==
21+
assert IO.chardata_to_string(IO.ANSI.format([], true)) ==
2222
""
23-
assert IO.ANSI.format([], false) ==
23+
assert IO.chardata_to_string(IO.ANSI.format([], false)) ==
2424
""
2525
end
2626

2727
test :format_ansicode_list do
28-
assert IO.ANSI.format([:red, :bright], true) ==
28+
assert IO.chardata_to_string(IO.ANSI.format([:red, :bright], true)) ==
2929
"#{IO.ANSI.red}#{IO.ANSI.bright}#{IO.ANSI.reset}"
30-
assert IO.ANSI.format([:red, :bright], false) ==
30+
assert IO.chardata_to_string(IO.ANSI.format([:red, :bright], false)) ==
3131
""
3232
end
3333

3434
test :format_binary_list do
35-
assert IO.ANSI.format(["Hello, ", "world!"], true) ==
35+
assert IO.chardata_to_string(IO.ANSI.format(["Hello, ", "world!"], true)) ==
3636
"Hello, world!"
37-
assert IO.ANSI.format(["Hello, ", "world!"], false) ==
37+
assert IO.chardata_to_string(IO.ANSI.format(["Hello, ", "world!"], false)) ==
3838
"Hello, world!"
3939
end
4040

4141
test :format_char_list do
42-
assert IO.ANSI.format('Hello, world!', true) ==
42+
assert IO.chardata_to_string(IO.ANSI.format('Hello, world!', true)) ==
4343
"Hello, world!"
44-
assert IO.ANSI.format('Hello, world!', false) ==
44+
assert IO.chardata_to_string(IO.ANSI.format('Hello, world!', false)) ==
4545
"Hello, world!"
4646
end
4747

4848
test :format_mixed_list do
49-
assert IO.ANSI.format(["Hello", ?,, 32, :red, "world!"], true) ==
49+
data = ["Hello", ?,, 32, :red, "world!"]
50+
51+
assert IO.chardata_to_string(IO.ANSI.format(data, true)) ==
5052
"Hello, #{IO.ANSI.red}world!#{IO.ANSI.reset}"
51-
assert IO.ANSI.format(["Hello", ?,, 32, :red, "world!"], false) ==
53+
assert IO.chardata_to_string(IO.ANSI.format(data, false)) ==
5254
"Hello, world!"
5355
end
5456

5557
test :format_nested_list do
56-
assert IO.ANSI.format(["Hello, ", ["nested", 32, :red, "world!"]], true) ==
58+
data = ["Hello, ", ["nested", 32, :red, "world!"]]
59+
60+
assert IO.chardata_to_string(IO.ANSI.format(data, true)) ==
5761
"Hello, nested #{IO.ANSI.red}world!#{IO.ANSI.reset}"
58-
assert IO.ANSI.format(["Hello, ", ["nested", 32, :red, "world!"]], false) ==
62+
assert IO.chardata_to_string(IO.ANSI.format(data, false)) ==
5963
"Hello, nested world!"
6064
end
6165

66+
test :format_improper_list do
67+
data = ["Hello, ", :red, "world!" | :reset]
68+
69+
assert IO.chardata_to_string(IO.ANSI.format(data, true)) ==
70+
"Hello, #{IO.ANSI.red}world!#{IO.ANSI.reset}"
71+
assert IO.chardata_to_string(IO.ANSI.format(data, false)) ==
72+
"Hello, world!"
73+
end
74+
6275
test :format_fragment do
63-
assert IO.ANSI.format_fragment([:red, "Hello!"], true) ==
76+
assert IO.chardata_to_string(IO.ANSI.format_fragment([:red, "Hello!"], true)) ==
6477
"#{IO.ANSI.red}Hello!"
6578
end
6679

0 commit comments

Comments
 (0)