2019-11-16 12:43:18 -05:00
|
|
|
|
require 'spec_helper'
|
|
|
|
|
|
|
|
|
|
describe "Indenting" do
|
|
|
|
|
specify "method definitions prefixed with access modifiers" do
|
|
|
|
|
assert_correct_indenting <<~EOF
|
|
|
|
|
class Foo
|
|
|
|
|
public def one(x)
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
private def two(y)
|
|
|
|
|
code
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
EOF
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
specify "method definitions prefixed with any method call" do
|
|
|
|
|
assert_correct_indenting <<~EOF
|
|
|
|
|
class Foo
|
|
|
|
|
foobar def one(x)
|
|
|
|
|
end
|
|
|
|
|
foobar? def one(x)
|
|
|
|
|
end
|
|
|
|
|
foobar! def one(x)
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
фубар def one(x)
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
foobar
|
|
|
|
|
def one(x)
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
FooBar1 def two(y)
|
|
|
|
|
code
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
EOF
|
|
|
|
|
end
|
2021-07-30 16:52:54 -04:00
|
|
|
|
|
|
|
|
|
specify "endless methods" do
|
|
|
|
|
# Note: A case that doesn't work at this time:
|
|
|
|
|
#
|
|
|
|
|
# def foo()
|
|
|
|
|
# = 42
|
|
|
|
|
#
|
|
|
|
|
assert_correct_indenting <<~EOF
|
|
|
|
|
indented_block do
|
|
|
|
|
def foo(bar) = puts(bar)
|
|
|
|
|
def foo!(bar) = puts(bar)
|
|
|
|
|
def foo?(bar) = puts(bar)
|
|
|
|
|
|
|
|
|
|
def foo(bar)=puts(bar)
|
|
|
|
|
|
|
|
|
|
def foo(bar) = bar + 1
|
|
|
|
|
|
|
|
|
|
def foo() = 1 + 1
|
|
|
|
|
def foo = 1 + 1
|
|
|
|
|
|
|
|
|
|
private def foo(bar) = bar + 1
|
|
|
|
|
|
|
|
|
|
def foo(bar) =
|
|
|
|
|
bar + 1
|
|
|
|
|
|
|
|
|
|
def foo(bar = default_function()) = puts(bar)
|
|
|
|
|
|
|
|
|
|
def foo(bar = default_function()) =
|
|
|
|
|
puts(bar)
|
|
|
|
|
|
|
|
|
|
def foo(
|
|
|
|
|
bar
|
|
|
|
|
) = puts(bar)
|
2022-08-08 09:45:56 -04:00
|
|
|
|
|
|
|
|
|
# Reference: https://github.com/vim-ruby/vim-ruby/issues/450
|
|
|
|
|
def self.foo = puts(bar)
|
|
|
|
|
def bar.foo = puts(baz)
|
2021-07-30 16:52:54 -04:00
|
|
|
|
end
|
|
|
|
|
EOF
|
|
|
|
|
end
|
2019-11-16 12:43:18 -05:00
|
|
|
|
end
|