diff options
| author | William Woodruff | 2015-08-26 16:50:36 -0400 |
|---|---|---|
| committer | Xu Cheng | 2015-08-28 18:02:04 +0800 |
| commit | b0d5e17906229e95f2bc548e4b607297e7e907ab (patch) | |
| tree | 2a4b4d4a73bed5eef958230503accb0120b99785 /Library | |
| parent | 3b88c070c616788492aebdef2702d584fe3527b6 (diff) | |
| download | brew-b0d5e17906229e95f2bc548e4b607297e7e907ab.tar.bz2 | |
tweak String#undent so that only leading whitespace up to the first indentation level is gsubbed, change test_undent to reflect change and add test_undent_nested to test new behavior
Diffstat (limited to 'Library')
| -rw-r--r-- | Library/Homebrew/extend/string.rb | 2 | ||||
| -rw-r--r-- | Library/Homebrew/test/test_string.rb | 15 |
2 files changed, 15 insertions, 2 deletions
diff --git a/Library/Homebrew/extend/string.rb b/Library/Homebrew/extend/string.rb index fc507e151..632d8ae8a 100644 --- a/Library/Homebrew/extend/string.rb +++ b/Library/Homebrew/extend/string.rb @@ -1,6 +1,6 @@ class String def undent - gsub(/^.{#{(slice(/^ +/) || '').length}}/, "") + gsub(/^[ \t]{#{(slice(/^[ \t]+/) || '').length}}/, "") end # eg: diff --git a/Library/Homebrew/test/test_string.rb b/Library/Homebrew/test/test_string.rb index 1d8c3c246..44582c510 100644 --- a/Library/Homebrew/test/test_string.rb +++ b/Library/Homebrew/test/test_string.rb @@ -8,7 +8,7 @@ class StringTest < Homebrew::TestCase ....my friend over there EOS - assert_equal "hi\nmy friend over\nthere\n", undented + assert_equal "hi\n....my friend over\nthere\n", undented end def test_undent_not_indented @@ -18,4 +18,17 @@ I'm not indented EOS assert_equal "hi\nI'm not indented\n", undented end + + def test_undent_nested + nest = <<-EOS.undent + goodbye + EOS + + undented = <<-EOS.undent + hello + #{nest} + EOS + + assert_equal "hello\ngoodbye\n\n", undented + end end |
