Repository URL to install this package:
|
Version:
1.2.9 ▾
|
"use strict";
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
const extractCompsFromCSS_1 = __importDefault(require("../extractCompsFromCSS"));
describe('extractCompsFromCSS', () => {
it('should work for null or empty', () => {
expect(extractCompsFromCSS_1.default('')).toEqual([]);
expect(extractCompsFromCSS_1.default(null)).toEqual([]);
});
it('should ignore anything before the first SC', () => {
expect(extractCompsFromCSS_1.default(`
Totally ignored, who cares.
`)).toEqual([]);
});
it('should return a single SC', () => {
const css = `
/* sc-component-id: 123 */
.foo { color: red; }
`;
expect(extractCompsFromCSS_1.default(css)).toEqual([
{ componentId: '123', cssFromDOM: css.replace(/^\n/, '') },
]);
});
it('should return a single SC with multiple lines', () => {
const css = `
/* sc-component-id: 123 */
.foo { color: red; }
.bar { color: blue; }
`;
expect(extractCompsFromCSS_1.default(css)).toEqual([
{ componentId: '123', cssFromDOM: css.replace(/^\n/, '') },
]);
});
it('should return multiple SCs with single lines', () => {
const a = `
/* sc-component-id: 123 */
.foo { color: red; }
`;
const b = `
/* sc-component-id: 456 */
.bar { color: blue; }
`;
expect(extractCompsFromCSS_1.default(a + b)).toEqual([
{ componentId: '123', cssFromDOM: a.replace(/^\n/, '') + '\n' },
{ componentId: '456', cssFromDOM: b.replace(/^\n/, '') },
]);
});
it('should return multiple SCs with multiple lines', () => {
const a = `
/* sc-component-id: 123 */
.foo { color: red; }
.bar { color: blue; }
`;
const b = `
/* sc-component-id: 456 */
.baz { color: green; }
.boo { color: black; }
`;
expect(extractCompsFromCSS_1.default(a + b)).toEqual([
{ componentId: '123', cssFromDOM: a.replace(/^\n/, '') + '\n' },
{ componentId: '456', cssFromDOM: b.replace(/^\n/, '') },
]);
});
it('should include whitespace after a component', () => {
const a = `
/* sc-component-id: 123 */
.foo { color: red; }
.bar { color: blue; }
`;
const b = `
/* sc-component-id: 456 */
.baz { color: green; }
.boo { color: black; }
`;
expect(extractCompsFromCSS_1.default(a + b)).toEqual([
{ componentId: '123', cssFromDOM: a.replace(/^\n/, '') + '\n' },
{ componentId: '456', cssFromDOM: b.replace(/^\n/, '') },
]);
});
});
//# sourceMappingURL=extractCompsFromCSS.test.js.map