summaryrefslogtreecommitdiff
path: root/test/misc/test_ruby_mode.rb
diff options
context:
space:
mode:
authorKazuhiro NISHIYAMA <zn@mbf.nifty.com>2020-05-07 14:56:08 +0900
committerKazuhiro NISHIYAMA <zn@mbf.nifty.com>2020-05-07 14:56:08 +0900
commit6300e6d3782e48ea4d41e37a2edc247544e4303a (patch)
tree4e97d851bb80244fd9bfa654e2af5ef2650a7f10 /test/misc/test_ruby_mode.rb
parenta5073c053fd2d5352d098a3747c49ae0cab6451c (diff)
Remove test of ruby-mode.el
Because ruby-mode.el already removed at f03e68edb80dca962290d1fb3a6d49dabdbb911e
Diffstat (limited to 'test/misc/test_ruby_mode.rb')
-rw-r--r--test/misc/test_ruby_mode.rb183
1 files changed, 0 insertions, 183 deletions
diff --git a/test/misc/test_ruby_mode.rb b/test/misc/test_ruby_mode.rb
deleted file mode 100644
index bc5101911b..0000000000
--- a/test/misc/test_ruby_mode.rb
+++ /dev/null
@@ -1,183 +0,0 @@
-# frozen_string_literal: false
-require 'test/unit'
-require 'tempfile'
-
-class TestRubyMode < Test::Unit::TestCase
- MISCDIR = File.expand_path("../../../misc", __FILE__)
- e = ENV["EMACS"] || "emacs"
- emacs = %W"#{e} -q --no-site-file --batch --load #{MISCDIR}/ruby-mode.el"
- begin
- raise if IO.popen([e, "--version", :err=>[:child, :out]]) {|f| f.read}[/[0-9]+/].to_i < 23
- IO.popen([*emacs, :err=>[:child, :out]]) {|f| f.read}
- rescue
- EMACS = nil
- else
- EMACS = (emacs if $? and $?.success?)
- end
-end
-
-class TestRubyMode
- EVAL_OPT = "--eval"
- EXPR_SAVE = "(save-buffer 0)"
- finish_mark = "ok-#{$$}"
- FINISH_MARK = /^#{finish_mark}$/
- EXPR_FINISH = "(print \'#{finish_mark})"
- EXPR_RUBYMODE = "(ruby-mode)"
-
- def run_emacs(src, *exprs)
- tmp = Tempfile.new(%w"ruby-mode.test. .rb")
- tmp.puts(src)
- tmp.close
- exprs = exprs.map {|expr| [EVAL_OPT, expr]}.flatten
- exprs.unshift(EVAL_OPT, EXPR_RUBYMODE)
- exprs.push(EVAL_OPT, EXPR_SAVE)
- exprs.push(EVAL_OPT, EXPR_FINISH)
- output = IO.popen([*EMACS, tmp.path, *exprs, err:[:child, :out]], "r") {|e| e.read}
- tmp.open
- result = tmp.read
- return result, output
- ensure
- tmp.close!
- end
-
- class TestIndent < self
- EXPR_INDENT = "(indent-region (point-min) (point-max))"
-
- def assert_indent(expected, source, *message)
- if space = expected[/\A\n?(\s*\|)/, 1]
- space = /^#{Regexp.quote(space)}/m
- expected.gsub!(space, '')
- source.gsub!(space, '')
- end
- result, output = run_emacs(source, EXPR_INDENT)
- assert_match(FINISH_MARK, output)
- assert_equal(expected, result, message(*message) {diff expected, result})
- end
-
- def test_simple
- assert_indent('
- |if foo
- | bar
- |end
- |zot
- |', '
- |if foo
- |bar
- | end
- | zot
- |')
- end
-
- def test_keyword_label
- assert_indent('
- |bar(class: XXX) do
- | foo
- |end
- |bar
- |', '
- |bar(class: XXX) do
- | foo
- | end
- | bar
- |')
- end
-
- def test_method_with_question_mark
- assert_indent('
- |if x.is_a?(XXX)
- | foo
- |end
- |', '
- |if x.is_a?(XXX)
- | foo
- | end
- |')
- end
-
- def test_expr_in_regexp
- assert_indent('
- |if /#{foo}/ =~ s
- | x = 1
- |end
- |', '
- |if /#{foo}/ =~ s
- | x = 1
- | end
- |')
- end
-
- def test_singleton_class
- skip("pending")
- assert_indent('
- |class<<bar
- | foo
- |end
- |', '
- |class<<bar
- |foo
- | end
- |')
- end
-
- def test_array_literal
- assert_indent('
- |foo = [
- | bar
- |]
- |', '
- |foo = [
- | bar
- | ]
- |')
- assert_indent('
- |foo do
- | [bar]
- |end
- |', '
- |foo do
- |[bar]
- | end
- |')
- end
-
- def test_begin_end
- assert_indent('
- |begin
- | a[b]
- |end
- |', '
- |begin
- | a[b]
- | end
- |')
- end
-
- def test_array_after_paren_and_space
- assert_indent('
- |class A
- | def foo
- | foo( [])
- | end
- |end
- |', '
- |class A
- | def foo
- |foo( [])
- |end
- | end
- |')
- end
-
- def test_spread_arguments
- assert_indent('
- |foo(1,
- | 2,
- | 3)
- |', '
- |foo(1,
- | 2,
- | 3)
- |')
- end
- end
-end if TestRubyMode::EMACS