require "spec_helper"
shared_examples_for "vim" do
-
before(:each) {
# clear buffer
vim.normal 'gg"_dG'
indent.should == 0
end
+ it "handles nested expressions (Flake8's E127)" do
+ vim.feedkeys 'i[\<CR>x for x in foo\<CR>if (\<CR>'
+ indent.should == shiftwidth * 2
+ end
+
it "still handles multiple parens correctly" do
vim.feedkeys 'iif (111 and (222 and 333\<CR>'
indent.should == 13
end
SUITE_SHIFTWIDTHS = [4, 3]
-SUITE_HANG_CLOSINGS = [nil, false, true]
+SUITE_HANG_CLOSINGS = [false, true]
SUITE_SHIFTWIDTHS.each do |sw|
describe "vim when using width of #{sw}" do
it_behaves_like "multiline strings"
end
-describe "vim for cython" do
- before {
- vim.command "enew"
- vim.command "set ft=cython"
- vim.command "runtime indent/python.vim"
-
- # Insert two blank lines.
- # The first line is a corner case in this plugin that would shadow the
- # correct behaviour of other tests. Thus we explicitly jump to the first
- # line when we require so.
- vim.feedkeys 'i\<CR>\<CR>\<ESC>'
- }
-
- describe "when using a cdef function definition" do
- it "indents shiftwidth spaces" do
- vim.feedkeys 'icdef long_function_name(\<CR>arg'
- indent.should == shiftwidth * 2
- end
- end
-
- describe "when using a cpdef function definition" do
- it "indents shiftwidth spaces" do
- vim.feedkeys 'icpdef long_function_name(\<CR>arg'
- indent.should == shiftwidth * 2
- end
- end
-end
-
describe "Handles far away opening parens" do
before { vim.feedkeys '\<ESC>ggdGifrom foo import (' }