Skip to content

Commit

Permalink
compiler.js: s/versions/component_versions (#36859)
Browse files Browse the repository at this point in the history
* compiler.js: s/versions/component_versions

* update tests
  • Loading branch information
samouri committed Nov 9, 2021
1 parent 5fdd794 commit 7a64a47
Show file tree
Hide file tree
Showing 3 changed files with 17 additions and 7 deletions.
7 changes: 5 additions & 2 deletions src/compiler/compile.js
Original file line number Diff line number Diff line change
Expand Up @@ -9,9 +9,12 @@ import {getBuilders} from './builders';
* @return {import('./types').CompilerResponse}
*/
export function compile(request) {
const {document, nodes, versions} = request ?? {};
// eslint-disable-next-line local/camelcase
const {component_versions: versions, document, nodes} = request ?? {};
if (!versions || !(document || nodes)) {
throw new Error('Must provide versions and either document or nodes');
throw new Error(
'Must provide component_versions and either document or nodes'
);
}

if (document) {
Expand Down
2 changes: 1 addition & 1 deletion src/compiler/types.d.ts
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ export type Versions = Array<{component: string; version: string}>;
export type CompilerRequest = {
document?: TreeProto;
nodes?: NodeProto[];
versions: Versions;
component_versions: Versions;
};

export type CompilerResponse = {document: TreeProto} | {nodes: NodeProto[]};
Expand Down
15 changes: 11 additions & 4 deletions test/unit/compiler/test-compile.js
Original file line number Diff line number Diff line change
Expand Up @@ -2,12 +2,13 @@ import {compile} from '#compiler/compile';

describes.sandboxed('compile', {}, () => {
it('should throw if provided invalid input', () => {
const errorMsg = /Must provide versions and either document or nodes/;
const errorMsg =
/Must provide component_versions and either document or nodes/;

expect(() => compile()).throw(errorMsg);
expect(() => compile({})).throw(errorMsg);
expect(() => compile({unknown: {}})).throw(errorMsg);
expect(() => compile({versions: []})).throw(errorMsg);
expect(() => compile({component_versions: []})).throw(errorMsg); // eslint-disable-line local/camelcase
expect(() => compile({nodes: []})).throw(errorMsg);
expect(() => compile({document: {}})).throw(errorMsg);
});
Expand All @@ -18,14 +19,20 @@ describes.sandboxed('compile', {}, () => {
tree: [{tagid: 92, children: []}],
'quirks_mode': false,
};
expect(compile({document, versions: []})).to.deep.equal({document});

// eslint-disable-next-line local/camelcase
expect(compile({document, component_versions: []})).to.deep.equal({
document,
});
});

it('should return compiled nodes', () => {
const nodes = [
{tagid: 1, value: 'a', children: [], attributes: []},
{tagid: 7, value: 'b', children: [], attributes: []},
];
expect(compile({nodes, versions: []})).to.deep.equal({nodes});

// eslint-disable-next-line local/camelcase
expect(compile({nodes, component_versions: []})).to.deep.equal({nodes});
});
});

0 comments on commit 7a64a47

Please sign in to comment.