diff options
| -rw-r--r-- | test/functional/legacy/charsearch_spec.lua | 42 | 
1 files changed, 42 insertions, 0 deletions
| diff --git a/test/functional/legacy/charsearch_spec.lua b/test/functional/legacy/charsearch_spec.lua new file mode 100644 index 0000000000..36682a9ce3 --- /dev/null +++ b/test/functional/legacy/charsearch_spec.lua @@ -0,0 +1,42 @@ +-- Test for character searches + +local helpers = require('test.functional.helpers') +local feed, insert = helpers.feed, helpers.insert +local clear, execute, expect = helpers.clear, helpers.execute, helpers.expect + +describe('charsearch', function() +  setup(clear) + +  it('is working', function() +    insert([[ +      Xabcdefghijkemnopqretuvwxyz +      Yabcdefghijkemnopqretuvwxyz +      Zabcdefghijkemnokqretkvwxyz]]) + +    -- Check that "fe" and ";" work. +    execute('/^X') +    feed('ylfep;;p,,p') +    -- Check that save/restore works. +    execute('/^Y') +    feed('ylfep') +    execute('let csave = getcharsearch()') +    feed('fip') +    execute('call setcharsearch(csave)') +    feed(';p;p') +    -- Check that setcharsearch() changes the settins. +    execute('/^Z') +    feed('ylfep') +    execute("call setcharsearch({'char': 'k'})") +    feed(';p') +    execute("call setcharsearch({'forward': 0})") +    feed('$;p') +    execute("call setcharseearch({'until'}: 1})") +    feed(';;p') + +    -- Assert buffer contents. +    expect([[ +      XabcdeXfghijkeXmnopqreXtuvwxyz +      YabcdeYfghiYjkeYmnopqreYtuvwxyz +      ZabcdeZfghijkZemnokZqretkZvwxyz]]) +  end) +end) | 
