Browse Source

Up ParserHtml test file

canvas-spot
Artur Arseniev 3 years ago
parent
commit
3d1fde6092
  1. 4
      src/parser/model/ParserHtml.ts
  2. 25
      test/specs/parser/model/ParserHtml.ts

4
src/parser/model/ParserHtml.ts

@ -16,7 +16,7 @@ type HTMLParseResult = {
const modelAttrStart = 'data-gjs-';
const event = 'parse:html';
const ParserHtml = (em?: EditorModel, config: ParserConfig = {}) => {
const ParserHtml = (em?: EditorModel, config: ParserConfig & { returnArray?: boolean } = {}) => {
return {
compTypes: '',
@ -280,7 +280,7 @@ const ParserHtml = (em?: EditorModel, config: ParserConfig = {}) => {
* @param {ParserCss} parserCss In case there is style tags inside HTML
* @return {Object}
*/
parse(str: string, parserCss: any, opts: HTMLParserOptions = {}) {
parse(str: string, parserCss?: any, opts: HTMLParserOptions = {}) {
const conf = em?.get('Config') || {};
const res: HTMLParseResult = {};
const cf: ObjectAny = { ...config, ...opts };

25
test/specs/parser/model/ParserHtml.js → test/specs/parser/model/ParserHtml.ts

@ -1,24 +1,19 @@
import ParserHtml from 'parser/model/ParserHtml';
import ParserCss from 'parser/model/ParserCss';
import DomComponents from 'dom_components';
import Editor from 'editor/model/Editor';
import ParserHtml from '../../../../src/parser/model/ParserHtml';
import ParserCss from '../../../../src/parser/model/ParserCss';
import DomComponents from '../../../../src/dom_components';
import Editor from '../../../../src/editor/model/Editor';
describe('ParserHtml', () => {
var obj;
let obj: ReturnType<typeof ParserHtml>;
beforeEach(() => {
const em = new Editor({});
var dom = new DomComponents(em);
obj = new ParserHtml(em, {
obj = ParserHtml(em, {
textTags: ['br', 'b', 'i', 'u'],
pStylePrefix: 'gjs-',
returnArray: 1,
returnArray: true,
});
obj.compTypes = dom.componentTypes;
});
afterEach(() => {
obj = null;
obj.compTypes = dom.componentTypes as any;
});
test('Simple div node', () => {
@ -381,7 +376,7 @@ describe('ParserHtml', () => {
style: { color: 'blue' },
},
];
var res = obj.parse(str, new ParserCss());
var res = obj.parse(str, ParserCss());
expect(res.html).toEqual(resHtml);
expect(res.css).toEqual(resCss);
});
@ -424,7 +419,7 @@ describe('ParserHtml', () => {
},
];
const res = obj.parse(str, new ParserCss());
const res = obj.parse(str, ParserCss());
expect(res.css).toEqual(expected);
});
Loading…
Cancel
Save