completions.test.ts — astro Source File
Architecture documentation for completions.test.ts, a typescript file in the astro codebase. 5 imports, 0 dependents.
Entity Profile
Dependency Diagram
graph LR bfeaa1d4_2b1c_7a2f_d4cf_493c45ab804c["completions.test.ts"] 923db4e1_01a0_98ab_9c38_dfe16dd4bada["server.ts"] bfeaa1d4_2b1c_7a2f_d4cf_493c45ab804c --> 923db4e1_01a0_98ab_9c38_dfe16dd4bada 9cf7acc9_e2e5_26e3_64f0_7304d1983c86["getLanguageServer"] bfeaa1d4_2b1c_7a2f_d4cf_493c45ab804c --> 9cf7acc9_e2e5_26e3_64f0_7304d1983c86 db323e8c_04ef_9777_0487_224de5819a30["node:assert"] bfeaa1d4_2b1c_7a2f_d4cf_493c45ab804c --> db323e8c_04ef_9777_0487_224de5819a30 6b0635f9_51ea_77aa_767b_7857878e98a6["node:test"] bfeaa1d4_2b1c_7a2f_d4cf_493c45ab804c --> 6b0635f9_51ea_77aa_767b_7857878e98a6 6857b6b2_4d48_bfb0_0a0e_8e2e52fabb56["language-server"] bfeaa1d4_2b1c_7a2f_d4cf_493c45ab804c --> 6857b6b2_4d48_bfb0_0a0e_8e2e52fabb56 style bfeaa1d4_2b1c_7a2f_d4cf_493c45ab804c fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
import assert from 'node:assert';
import { before, describe, it } from 'node:test';
import { Position } from '@volar/language-server';
import type { LanguageServer } from '../server.ts';
import { getLanguageServer } from '../server.ts';
describe('CSS - Completions', () => {
let languageServer: LanguageServer;
before(async () => (languageServer = await getLanguageServer()));
it('Can provide completions for CSS properties', async () => {
const document = await languageServer.openFakeDocument(`<style>.foo { colo }</style>`, 'astro');
const completions = await languageServer.handle.sendCompletionRequest(
document.uri,
Position.create(0, 18),
);
assert.ok(completions!.items && completions!.items.length > 0);
});
it('Can provide completions for CSS values', async () => {
const document = await languageServer.openFakeDocument(
`<style>.foo { color: re }</style>`,
'astro',
);
const completions = await languageServer.handle.sendCompletionRequest(
document.uri,
Position.create(0, 21),
);
assert.ok(completions!.items && completions!.items.length > 0);
});
it('Can provide completions inside inline styles', async () => {
const document = await languageServer.openFakeDocument(`<div style="color: ;"></div>`, 'astro');
const completions = await languageServer.handle.sendCompletionRequest(
document.uri,
Position.create(0, 18),
);
assert.ok(completions!.items && completions!.items.length > 0);
assert.ok(completions?.items.map((i) => i.label).includes('aliceblue'));
});
it('Can provide completions inside inline styles with multi-bytes characters in the file', async () => {
const document = await languageServer.openFakeDocument(
`<div>あ</div><div style="color: ;"></div>`,
'astro',
);
const completions = await languageServer.handle.sendCompletionRequest(
document.uri,
Position.create(0, 30),
);
assert.ok(completions!.items && completions!.items.length > 0);
assert.ok(completions?.items.map((i) => i.label).includes('aliceblue'));
});
it('Can provide completions inside SCSS blocks', async () => {
const document = await languageServer.openFakeDocument(
`<style lang="scss">
$c: red;
.foo {
color: $
}
</style>
`,
'astro',
);
const completions = await languageServer.handle.sendCompletionRequest(
document.uri,
Position.create(3, 10),
);
const allLabels = completions?.items.map((i) => i.label);
assert.ok(allLabels);
assert.ok(completions!.items && completions!.items.length > 0);
assert.ok(allLabels.includes('$c'));
});
it('Can provide completions inside LESS blocks', async () => {
const document = await languageServer.openFakeDocument(
`<style lang="less">
@link-color: #428bca;
h1 {
color: @
}
</style>
`,
'astro',
);
const completions = await languageServer.handle.sendCompletionRequest(
document.uri,
Position.create(3, 10),
);
const allLabels = completions?.items.map((i) => i.label);
assert.ok(allLabels);
assert.ok(completions!.items && completions!.items.length > 0);
assert.ok(allLabels.includes('@link-color'));
});
});
Domain
Dependencies
- getLanguageServer
- language-server
- node:assert
- node:test
- server.ts
Source
Frequently Asked Questions
What does completions.test.ts do?
completions.test.ts is a source file in the astro codebase, written in typescript. It belongs to the CoreAstro domain.
What does completions.test.ts depend on?
completions.test.ts imports 5 module(s): getLanguageServer, language-server, node:assert, node:test, server.ts.
Where is completions.test.ts in the architecture?
completions.test.ts is located at packages/language-tools/language-server/test/css/completions.test.ts (domain: CoreAstro, directory: packages/language-tools/language-server/test/css).
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free