diff options
author | tompng <[email protected]> | 2024-10-09 13:31:48 +0900 |
---|---|---|
committer | git <[email protected]> | 2024-11-19 14:52:01 +0000 |
commit | 7b51b3c75b503de744b5988619915033a3a9b7ff (patch) | |
tree | e533d69ccaf6f3365d132f6cf06a20d0b9b39c16 | |
parent | 0de7e6ccb02dad6b067c29e4b6fdce0c3938bad5 (diff) |
[ruby/pp] Fix pretty printing range begin/end with false or nil
https://github.com/ruby/pp/commit/6d9c0f255a
-rw-r--r-- | lib/pp.rb | 5 | ||||
-rw-r--r-- | test/test_pp.rb | 4 |
2 files changed, 7 insertions, 2 deletions
@@ -488,11 +488,12 @@ end if defined?(Data.define) class Range # :nodoc: def pretty_print(q) # :nodoc: - q.pp self.begin if self.begin + both_nil = self.begin == nil && self.end == nil + q.pp self.begin if self.begin != nil || both_nil q.breakable '' q.text(self.exclude_end? ? '...' : '..') q.breakable '' - q.pp self.end if self.end + q.pp self.end if self.end != nil || both_nil end end diff --git a/test/test_pp.rb b/test/test_pp.rb index 16f6fa7485..2646846d8b 100644 --- a/test/test_pp.rb +++ b/test/test_pp.rb @@ -34,6 +34,10 @@ class PPTest < Test::Unit::TestCase assert_equal("0...1\n", PP.pp(0...1, "".dup)) assert_equal("0...\n", PP.pp(0..., "".dup)) assert_equal("...1\n", PP.pp(...1, "".dup)) + assert_equal("..false\n", PP.pp(..false, "".dup)) + assert_equal("false..\n", PP.pp(false.., "".dup)) + assert_equal("false..false\n", PP.pp(false..false, "".dup)) + assert_equal("nil..nil\n", PP.pp(nil..nil, "".dup)) end end |