summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAbinoam P. Marques Jr <abinoam@gmail.com>2017-06-24 10:51:33 -0300
committerAbinoam P. Marques Jr <abinoam@gmail.com>2017-06-24 13:44:09 -0300
commit36bd9f6398e957e5281b0476214ce5535065c945 (patch)
tree12b378254b9644c6e01b54c22a729f6ef597d1e7
parent245a450225fa2d112b5db5d570d1a46fb2d66e29 (diff)
downloadhighline-36bd9f6398e957e5281b0476214ce5535065c945.tar.gz
Add test for class not influencing instance
-rwxr-xr-xtest/test_highline.rb31
1 files changed, 31 insertions, 0 deletions
diff --git a/test/test_highline.rb b/test/test_highline.rb
index 8b93f9b..5294009 100755
--- a/test/test_highline.rb
+++ b/test/test_highline.rb
@@ -538,6 +538,37 @@ class TestHighLine < Minitest::Test
cli.say("This should be <%= color('cyan', CYAN) %>!")
assert_equal("This should be cyan!\n", cli_output.string)
+ @output.truncate(@output.rewind)
+ cli_output.truncate(cli_output.rewind)
+
+ # Now check when class and instance doesn't agree about use_color
+
+ # Class false, instance true
+ HighLine.use_color = false
+ cli.use_color = true
+
+ @terminal.say("This should be <%= color('cyan', CYAN) %>!")
+ assert_equal("This should be cyan!\n", @output.string)
+
+ cli.say("This should be <%= color('cyan', CYAN) %>!")
+ assert_equal("This should be \e[36mcyan\e[0m!\n", cli_output.string)
+
+ @output.truncate(@output.rewind)
+ cli_output.truncate(cli_output.rewind)
+
+ # Class true, instance false
+ HighLine.use_color = true
+ cli.use_color = false
+
+ @terminal.say("This should be <%= color('cyan', CYAN) %>!")
+ assert_equal("This should be \e[36mcyan\e[0m!\n", @output.string)
+
+ cli.say("This should be <%= color('cyan', CYAN) %>!")
+ assert_equal("This should be cyan!\n", cli_output.string )
+
+ @output.truncate(@output.rewind)
+ cli_output.truncate(cli_output.rewind)
+
HighLine.use_color = old_setting
end