Skip to content

Commit a601769

Browse files
committed
test: test autocomplete for snipptets with textEdit
1 parent 16db7d3 commit a601769

File tree

1 file changed

+24
-1
lines changed

1 file changed

+24
-1
lines changed

test/adapters/autocomplete-adapter.test.ts

Lines changed: 24 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ import * as ac from "atom/autocomplete-plus"
77
import { expect } from "chai"
88
import { createSpyConnection, createFakeEditor } from "../helpers.js"
99
import { TextSuggestion, SnippetSuggestion } from "../../lib/types/autocomplete-extended"
10-
import { CompletionItem } from "../../lib/languageclient"
10+
import { CompletionItem, Range } from "../../lib/languageclient"
1111

1212
function createRequest({
1313
prefix = "",
@@ -94,6 +94,23 @@ describe("AutoCompleteAdapter", () => {
9494
documentation: "should not appear",
9595
sortText: "zzz",
9696
},
97+
{
98+
label: "snippet5",
99+
kind: ls.CompletionItemKind.Snippet,
100+
textEdit: {
101+
newText: "snippet5NewText",
102+
range: Range.create({ line: 0, character: 0 }, { line: 0, character: 14 }),
103+
},
104+
},
105+
{
106+
label: "snippet6",
107+
kind: ls.CompletionItemKind.Snippet,
108+
textEdit: {
109+
newText: "snippet6newText",
110+
replace: Range.create({ line: 0, character: 0 }, { line: 0, character: 14 }),
111+
insert: Range.create({ line: 0, character: 0 }, { line: 0, character: 14 }),
112+
},
113+
},
97114
]
98115

99116
const request = createRequest({ prefix: "lab" })
@@ -114,6 +131,12 @@ describe("AutoCompleteAdapter", () => {
114131
expect(resultsLab.length).equals(2)
115132
expect(resultsLab.some((r) => r.displayText === "thisHasFiltertext")).to.be.true
116133
expect(resultsLab.some((r) => r.displayText === "label3")).to.be.true
134+
135+
const resultsSnip = await getSuggestionsMock(completionItems, createRequest({ prefix: "snip" }))
136+
expect(resultsSnip.length).equals(2)
137+
expect(
138+
resultsSnip.filter((r) => r.displayText !== undefined && ["snippet5", "snippet6"].includes(r.displayText))
139+
).to.have.lengthOf(2)
117140
})
118141

119142
it("uses the sortText property to arrange completions when there is no prefix", async () => {

0 commit comments

Comments
 (0)