mirror of
https://github.com/ruby/ruby.git
synced 2025-09-22 03:53:58 +02:00
[ruby/error_highlight] Support hard tabs
Now, the highlight line is created by replacing non-tab characters with
spaces, and keeping all hard tabs as-is. This means the highlight line
has the completely same indentation as the code snippet line.
Fixes #7
38f20fa542
This commit is contained in:
parent
b18f6fff69
commit
23c8bc367c
2 changed files with 19 additions and 1 deletions
|
@ -1,6 +1,7 @@
|
|||
require "test/unit"
|
||||
|
||||
require "error_highlight"
|
||||
require "tempfile"
|
||||
|
||||
class ErrorHighlightTest < Test::Unit::TestCase
|
||||
class DummyFormatter
|
||||
|
@ -999,4 +1000,20 @@ undefined method `time' for 1:Integer
|
|||
ensure
|
||||
ErrorHighlight.formatter = original_formatter
|
||||
end
|
||||
|
||||
def test_hard_tabs
|
||||
tmp = Tempfile.new(["error_highlight_test", ".rb"])
|
||||
tmp << "\t \t1.time {}\n"
|
||||
tmp.close(false)
|
||||
|
||||
assert_error_message(NoMethodError, <<~END.gsub("_", "\t")) do
|
||||
undefined method `time' for 1:Integer
|
||||
|
||||
_ _1.time {}
|
||||
_ _ ^^^^^
|
||||
END
|
||||
|
||||
load tmp.path
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue