Example #1
0
 it('should return false for change to file not exists', async () => {
   let uri = URI.file('/tmp/not_exists').toString()
   let versioned = VersionedTextDocumentIdentifier.create(uri, null)
   let edit = TextEdit.insert(Position.create(0, 0), 'bar')
   let documentChanges = [TextDocumentEdit.create(versioned, [edit])]
   let res = await workspace.applyEdit({ documentChanges })
   expect(res).toBe(false)
 })
Example #2
0
 it('should not apply TextEdit if version miss match', async () => {
   let doc = await helper.createDocument()
   let versioned = VersionedTextDocumentIdentifier.create(doc.uri, 10)
   let edit = TextEdit.insert(Position.create(0, 0), 'bar')
   let change = TextDocumentEdit.create(versioned, [edit])
   let workspaceEdit: WorkspaceEdit = {
     documentChanges: [change]
   }
   let res = await workspace.applyEdit(workspaceEdit)
   expect(res).toBe(false)
 })
Example #3
0
 it('should apply TextEdit of documentChanges', async () => {
   let doc = await helper.createDocument()
   let versioned = VersionedTextDocumentIdentifier.create(doc.uri, doc.version)
   let edit = TextEdit.insert(Position.create(0, 0), 'bar')
   let change = TextDocumentEdit.create(versioned, [edit])
   let workspaceEdit: WorkspaceEdit = {
     documentChanges: [change]
   }
   let res = await workspace.applyEdit(workspaceEdit)
   expect(res).toBe(true)
   let line = await nvim.getLine()
   expect(line).toBe('bar')
 })
Example #4
0
 it('should support null version of documentChanges', async () => {
   let file = path.join(__dirname, 'foo')
   await workspace.createFile(file, { ignoreIfExists: true, overwrite: true })
   let uri = URI.file(file).toString()
   let versioned = VersionedTextDocumentIdentifier.create(uri, null)
   let edit = TextEdit.insert(Position.create(0, 0), 'bar')
   let change = TextDocumentEdit.create(versioned, [edit])
   let workspaceEdit: WorkspaceEdit = {
     documentChanges: [change]
   }
   let res = await workspace.applyEdit(workspaceEdit)
   expect(res).toBe(true)
   await nvim.command('wa')
   let content = await readFile(file, 'utf8')
   expect(content).toMatch(/^bar/)
   await workspace.deleteFile(file, { ignoreIfNotExists: true })
 })