UNPKG

@prisma/language-server

Version:
46 lines 2.02 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const vitest_1 = require("vitest"); const MessageHandler_1 = require("../../lib/MessageHandler"); const MultifileHelper_1 = require("../MultifileHelper"); (0, vitest_1.test)('type name completion', async () => { const helper = await (0, MultifileHelper_1.getMultifileHelper)('complete-field'); const post = helper.file('Post.prisma'); const response = (0, MessageHandler_1.handleCompletionRequest)(helper.schema, post.textDocument, { textDocument: { uri: post.uri, }, position: post.lineContaining('author Us').characterAfter('U'), }); const userItem = response?.items.find((item) => item.label === 'User'); (0, vitest_1.expect)(userItem).not.toBeUndefined(); }); (0, vitest_1.test)('type name completion with no name typed', async () => { const helper = await (0, MultifileHelper_1.getMultifileHelper)('complete-field'); const post = helper.file('Post.prisma'); const response = (0, MessageHandler_1.handleCompletionRequest)(helper.schema, post.textDocument, { textDocument: { uri: post.uri, }, position: post.lineContaining('author ').characterAfter('r '), }); const userItem = response?.items.find((item) => item.label === 'User'); (0, vitest_1.expect)(userItem).not.toBeUndefined(); }); (0, vitest_1.test)('native type complete', async () => { const helper = await (0, MultifileHelper_1.getMultifileHelper)('complete-native-type'); const post = helper.file('Post.prisma'); const response = (0, MessageHandler_1.handleCompletionRequest)(helper.schema, post.textDocument, { textDocument: { uri: post.uri, }, position: post.lineContaining('Decimal').characterAfter('@db'), }); (0, vitest_1.expect)(response?.items?.map((item) => item.label)).toMatchInlineSnapshot(` [ "Decimal()", "Money", ] `); }); //# sourceMappingURL=multi-file.test.js.map