Skip to content

Commit

Permalink
ThemeBuilder tests refactoring (#11801) (#11873)
Browse files Browse the repository at this point in the history
  • Loading branch information
babich-a committed Feb 5, 2020
1 parent 71044c9 commit f779528
Show file tree
Hide file tree
Showing 2 changed files with 18 additions and 45 deletions.
25 changes: 4 additions & 21 deletions themebuilder/tests/builder-spec.js
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,6 @@ const path = require('path');
const assert = require('chai').assert;
const buildTheme = require('../modules/builder').buildTheme;
const commands = require('../modules/commands');
const mock = require('mock-require');

const fileReader = (filename) => {
filename = filename.replace('devextreme-themebuilder/', '');
Expand Down Expand Up @@ -120,23 +119,6 @@ describe('Builder - testing exported function', () => {
});

describe('Check if all widgets can be compiled separately', () => {
let buildThemeWithMockedCleanCss = {};

beforeEach(() => {
mock('clean-css', class CleanCss {
minify(css) {
return { styles: css };
}
});
mock.reRequire('clean-css');
mock.reRequire('../modules/less-template-loader');
buildThemeWithMockedCleanCss = mock.reRequire('../modules/builder').buildTheme;
});

afterEach(() => {
mock.stopAll();
});

['generic.light', 'material.blue.light'].forEach(theme => {
const ModulesHandler = require('../modules/modules-handler');
const themesFileContent = fs.readFileSync(path.join(__dirname, '../../styles/theme.less'), 'utf8');
Expand All @@ -150,15 +132,16 @@ describe('Check if all widgets can be compiled separately', () => {
lessCompiler: lessCompiler,
items: [],
baseTheme: theme,
widgets: [widgetName]
widgets: [widgetName],
noClean: true
};

it(`We can build bundle for every widget (${theme}, ${widgetName})`, () => {
return buildThemeWithMockedCleanCss(config).then((result) => {
return buildTheme(config).then((result) => {
assert.isString(result.css, `${widgetName} bundle builded`);
assert.deepEqual(result.widgets, [ widgetName ]);
});
});
}).timeout(buildTimeout);
});
});
});
Expand Down
38 changes: 14 additions & 24 deletions themebuilder/tests/less-template-loader-spec.js
Original file line number Diff line number Diff line change
Expand Up @@ -602,38 +602,28 @@ describe('LessTemplateLoader', () => {
};

const lessTemplateLoader = new LessTemplateLoader(config);
lessTemplateLoader._makeInfoHeader = emptyHeader;

const promises = [];

promises.push(lessTemplateLoader.load(
themeName,
colorScheme,
metadata,
[]
).then(data => {
assert.equal(data.css, `div {
font: 20px/20px DXIcons;
}`);
}));

config.noClean = true;
const lessTemplateLoaderNoClean = new LessTemplateLoader(config);

lessTemplateLoaderNoClean._makeInfoHeader = emptyHeader;
promises.push(lessTemplateLoaderNoClean.load(
lessTemplateLoader._makeInfoHeader = emptyHeader;

const testCases = [{
loader: lessTemplateLoader,
expected: 'div {\n font: 20px/20px DXIcons;\n}'
}, {
loader: lessTemplateLoaderNoClean,
expected: 'div {\n font: 14px/1 DXIcons;\n font-size: 20px;\n line-height: 20px;\n}\n'
}];

const promises = testCases.map(testCase => testCase.loader.load(
themeName,
colorScheme,
metadata,
[]
).then(data => {
assert.equal(data.css, `div {
font: 14px/1 DXIcons;
font-size: 20px;
line-height: 20px;
}
`);
}));
).then(data => assert.equal(data.css, testCase.expected)));

return promises;
return Promise.all(promises);
});
});

0 comments on commit f779528

Please sign in to comment.