Files
ry.kazcloud.dev/node_modules/yaml-language-server/out/server/test/formatter.test.js
Ryan Kazokas d181f77fb2
All checks were successful
Build and Push / build (push) Successful in 55s
Updates dockerfile
2026-02-16 15:09:37 -05:00

119 lines
4.1 KiB
JavaScript

"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
/*---------------------------------------------------------------------------------------------
* Copyright (c) Red Hat. All rights reserved.
* Licensed under the MIT License. See License.txt in the project root for license information.
*--------------------------------------------------------------------------------------------*/
const testHelper_1 = require("./utils/testHelper");
const serviceSetup_1 = require("./utils/serviceSetup");
const assert = require("assert");
const yamlSettings_1 = require("../src/yamlSettings");
describe('Formatter Tests', () => {
let languageHandler;
let yamlSettings;
before(() => {
const languageSettingsSetup = new serviceSetup_1.ServiceSetup().withFormat();
const { languageHandler: langHandler, yamlSettings: settings } = (0, testHelper_1.setupLanguageService)(languageSettingsSetup.languageSettings);
languageHandler = langHandler;
yamlSettings = settings;
});
// Tests for formatter
describe('Formatter', function () {
describe('Test that formatter works with custom tags', function () {
// eslint-disable-next-line @typescript-eslint/no-explicit-any
function parseSetup(content, options = {}) {
const testTextDocument = (0, testHelper_1.setupTextDocument)(content);
yamlSettings.documents = new yamlSettings_1.TextDocumentTestManager();
yamlSettings.documents.set(testTextDocument);
yamlSettings.yamlFormatterSettings = options;
return languageHandler.formatterHandler({
options,
textDocument: testTextDocument,
});
}
it('Formatting works without custom tags', () => {
const content = 'cwd: test';
const edits = parseSetup(content);
assert.notEqual(edits.length, 0);
assert.equal(edits[0].newText, 'cwd: test\n');
});
it('Formatting works with custom tags', () => {
const content = 'cwd: !Test test';
const edits = parseSetup(content);
assert.notEqual(edits.length, 0);
assert.equal(edits[0].newText, 'cwd: !Test test\n');
});
it('Formatting wraps text', () => {
const content = `comments: >
test test test test test test test test test test test test`;
const edits = parseSetup(content, {
printWidth: 20,
proseWrap: 'always',
});
assert.equal(edits[0].newText, 'comments: >\n test test test\n test test test\n test test test\n test test test\n');
});
it('Formatting uses tabSize', () => {
const content = `map:
k1: v1
k2: v2
list:
- item1
- item2
`;
const edits = parseSetup(content, {
tabSize: 5,
});
const expected = `map:
k1: v1
k2: v2
list:
- item1
- item2
`;
assert.equal(edits[0].newText, expected);
});
it('Formatting uses tabWidth', () => {
const content = `map:
k1: v1
k2: v2
list:
- item1
- item2
`;
const edits = parseSetup(content, {
tabWidth: 5,
});
const expected = `map:
k1: v1
k2: v2
list:
- item1
- item2
`;
assert.equal(edits[0].newText, expected);
});
it('Formatting uses tabWidth over tabSize', () => {
const content = `map:
k1: v1
k2: v2
list:
- item1
- item2
`;
const edits = parseSetup(content, {
tabSize: 3,
tabWidth: 5,
});
const expected = `map:
k1: v1
k2: v2
list:
- item1
- item2
`;
assert.equal(edits[0].newText, expected);
});
});
});
});
//# sourceMappingURL=formatter.test.js.map