mirror of
https://github.com/graphql-hive/console
synced 2026-04-27 01:17:16 +00:00
46 lines
1.9 KiB
TypeScript
46 lines
1.9 KiB
TypeScript
import colors from 'colors';
|
|
import { boldQuotedWords } from '../../../packages/libraries/cli/src/helpers/texture/texture';
|
|
|
|
describe('boldQuotedWords', () => {
|
|
test('handles simple single-quoted strings', () => {
|
|
const input = "Changed value for 'foo'";
|
|
const expected = `Changed value for ${colors.bold('foo')}`;
|
|
expect(boldQuotedWords(input)).toBe(expected);
|
|
});
|
|
|
|
test('handles simple double-quoted strings', () => {
|
|
const input = 'Changed value for "foo"';
|
|
const expected = `Changed value for ${colors.bold('foo')}`;
|
|
expect(boldQuotedWords(input)).toBe(expected);
|
|
});
|
|
|
|
test('handles multiple quoted strings', () => {
|
|
const input = "Field 'name' on type 'User' was changed";
|
|
const expected = `Field ${colors.bold('name')} on type ${colors.bold('User')} was changed`;
|
|
expect(boldQuotedWords(input)).toBe(expected);
|
|
});
|
|
|
|
test('handles string with no quotes', () => {
|
|
const input = 'No quotes here';
|
|
expect(boldQuotedWords(input)).toBe(input);
|
|
});
|
|
|
|
test('handles escaped single quotes within single-quoted strings', () => {
|
|
const input =
|
|
"Enum value 'Status.INACTIVE' has deprecation reason 'Use \\'DISABLED\\' instead'";
|
|
const expected = `Enum value ${colors.bold('Status.INACTIVE')} has deprecation reason ${colors.bold("Use 'DISABLED' instead")}`;
|
|
expect(boldQuotedWords(input)).toBe(expected);
|
|
});
|
|
|
|
test('handles escaped double quotes within double-quoted strings', () => {
|
|
const input = 'Default value changed from "\\"test\\"" to "other"';
|
|
const expected = `Default value changed from ${colors.bold('"test"')} to ${colors.bold('other')}`;
|
|
expect(boldQuotedWords(input)).toBe(expected);
|
|
});
|
|
|
|
test('handles apostrophes when quotes are escaped', () => {
|
|
const input = "Reason 'Use \\'DISABLED\\' instead, it\\'s clearer'";
|
|
const expected = `Reason ${colors.bold("Use 'DISABLED' instead, it's clearer")}`;
|
|
expect(boldQuotedWords(input)).toBe(expected);
|
|
});
|
|
});
|