aboutsummaryrefslogtreecommitdiff
path: root/test/functional/legacy/023_edit_arguments_spec.lua
blob: f59d192c1e981b4d86de5fb573814ef0aff2cafa (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
-- Tests for complicated + argument to :edit command

local helpers = require('test.functional.helpers')(after_each)
local clear, insert = helpers.clear, helpers.insert
local command, expect = helpers.command, helpers.expect
local poke_eventloop = helpers.poke_eventloop

describe(':edit', function()
  setup(clear)

  it('is working', function()
    insert([[
      The result should be in Xfile1: "fooPIPEbar", in Xfile2: "fooSLASHbar"
      foo|bar
      foo/bar]])
    poke_eventloop()

    -- Prepare some test files
    command('$-1w! Xfile1')
    command('$w! Xfile2')
    command('w! Xfile0')

    -- Open Xfile using '+' range
    command('edit +1 Xfile1')
    command('s/|/PIPE/')
    command('yank A')
    command('w! Xfile1')

    -- Open Xfile2 using '|' range
    command('edit Xfile2|1')
    command("s/\\//SLASH/")
    command('yank A')
    command('w! Xfile2')

    -- Clean first buffer and put @a
    command('bf')
    command('%d')
    command('0put a')

    -- Remove empty line
    command('$d')

    -- The buffer should now contain
    expect([[
      fooPIPEbar
      fooSLASHbar]])
  end)

  teardown(function()
    os.remove('Xfile0')
    os.remove('Xfile1')
    os.remove('Xfile2')
  end)
end)