diff --git a/packages/mermaid/src/diagrams/state/parser/state-parser.spec.js b/packages/mermaid/src/diagrams/state/parser/state-parser.spec.js index bb5345996..1ef6912d9 100644 --- a/packages/mermaid/src/diagrams/state/parser/state-parser.spec.js +++ b/packages/mermaid/src/diagrams/state/parser/state-parser.spec.js @@ -20,7 +20,6 @@ describe('state parser can parse...', () => { const diagramText = `stateDiagram-v2 state "Small State 1" as namedState1`; stateDiagram.parser.parse(diagramText); - stateDiagram.parser.yy.extract(stateDiagram.parser.yy.getRootDocV2()); const states = stateDiagram.parser.yy.getStates(); expect(states.get('namedState1')).not.toBeUndefined(); @@ -33,7 +32,6 @@ describe('state parser can parse...', () => { const diagramText = `stateDiagram-v2 namedState1 : Small State 1`; stateDiagram.parser.parse(diagramText); - stateDiagram.parser.yy.extract(stateDiagram.parser.yy.getRootDocV2()); const states = stateDiagram.parser.yy.getStates(); expect(states.get('namedState1')).not.toBeUndefined(); @@ -44,7 +42,6 @@ describe('state parser can parse...', () => { const diagramText = `stateDiagram-v2 namedState1:Small State 1`; stateDiagram.parser.parse(diagramText); - stateDiagram.parser.yy.extract(stateDiagram.parser.yy.getRootDocV2()); const states = stateDiagram.parser.yy.getStates(); expect(states.get('namedState1')).not.toBeUndefined(); @@ -62,7 +59,6 @@ describe('state parser can parse...', () => { state assemblies `; stateDiagram.parser.parse(diagramText); - stateDiagram.parser.yy.extract(stateDiagram.parser.yy.getRootDocV2()); const states = stateDiagram.parser.yy.getStates(); expect(states.get('assemble')).not.toBeUndefined(); expect(states.get('assemblies')).not.toBeUndefined(); @@ -73,7 +69,6 @@ describe('state parser can parse...', () => { state "as" as as `; stateDiagram.parser.parse(diagramText); - stateDiagram.parser.yy.extract(stateDiagram.parser.yy.getRootDocV2()); const states = stateDiagram.parser.yy.getStates(); expect(states.get('as')).not.toBeUndefined(); expect(states.get('as').descriptions.join(' ')).toEqual('as'); @@ -98,7 +93,6 @@ describe('state parser can parse...', () => { namedState2 --> bigState2: should point to \\nbigState2 container`; stateDiagram.parser.parse(diagramText); - stateDiagram.parser.yy.extract(stateDiagram.parser.yy.getRootDocV2()); const states = stateDiagram.parser.yy.getStates(); expect(states.get('namedState1')).not.toBeUndefined(); @@ -122,7 +116,6 @@ describe('state parser can parse...', () => { inner1 --> inner2 }`; stateDiagram.parser.parse(diagramText); - stateDiagram.parser.yy.extract(stateDiagram.parser.yy.getRootDocV2()); const states = stateDiagram.parser.yy.getStates(); expect(states.get('bigState1')).not.toBeUndefined(); @@ -139,7 +132,6 @@ describe('state parser can parse...', () => { stateDiagram-v2 [*] --> ${prop} ${prop} --> [*]`); - stateDiagram.parser.yy.extract(stateDiagram.parser.yy.getRootDocV2()); const states = stateDiagram.parser.yy.getStates(); expect(states.get(prop)).not.toBeUndefined(); }); diff --git a/packages/mermaid/src/diagrams/state/parser/state-style.spec.js b/packages/mermaid/src/diagrams/state/parser/state-style.spec.js index c37bed3c7..3f0f6ab00 100644 --- a/packages/mermaid/src/diagrams/state/parser/state-style.spec.js +++ b/packages/mermaid/src/diagrams/state/parser/state-style.spec.js @@ -1,6 +1,6 @@ +import { setConfig } from '../../../config.js'; import { StateDB } from '../stateDb.js'; import stateDiagram from './stateDiagram.jison'; -import { setConfig } from '../../../config.js'; setConfig({ securityLevel: 'strict', @@ -18,7 +18,6 @@ describe('ClassDefs and classes when parsing a State diagram', () => { describe('defining (classDef)', () => { it('has "classDef" as a keyword, an id, and can set a css style attribute', function () { stateDiagram.parser.parse('stateDiagram-v2\n classDef exampleClass background:#bbb;'); - stateDiagram.parser.yy.extract(stateDiagram.parser.yy.getRootDocV2()); const styleClasses = stateDb.getClasses(); expect(styleClasses.get('exampleClass').styles.length).toEqual(1); @@ -29,7 +28,6 @@ describe('ClassDefs and classes when parsing a State diagram', () => { stateDiagram.parser.parse( 'stateDiagram-v2\n classDef exampleClass background:#bbb, font-weight:bold, font-style:italic;' ); - stateDiagram.parser.yy.extract(stateDiagram.parser.yy.getRootDocV2()); const styleClasses = stateDb.getClasses(); expect(styleClasses.get('exampleClass').styles.length).toEqual(3); @@ -43,7 +41,6 @@ describe('ClassDefs and classes when parsing a State diagram', () => { stateDiagram.parser.parse( 'stateDiagram-v2\n classDef exampleStyleClass background:#bbb,border:1.5px solid red;' ); - stateDiagram.parser.yy.extract(stateDiagram.parser.yy.getRootDocV2()); const classes = stateDiagram.parser.yy.getClasses(); expect(classes.get('exampleStyleClass').styles.length).toBe(2); @@ -55,7 +52,6 @@ describe('ClassDefs and classes when parsing a State diagram', () => { stateDiagram.parser.parse( 'stateDiagram-v2\n classDef exampleStyleClass background: #bbb,border:1.5px solid red;' ); - stateDiagram.parser.yy.extract(stateDiagram.parser.yy.getRootDocV2()); const classes = stateDiagram.parser.yy.getClasses(); expect(classes.get('exampleStyleClass').styles.length).toBe(2); @@ -67,7 +63,6 @@ describe('ClassDefs and classes when parsing a State diagram', () => { stateDiagram.parser.parse( 'stateDiagram-v2\n classDef __proto__ background:#bbb,border:1.5px solid red;\n classDef constructor background:#bbb,border:1.5px solid red;' ); - stateDiagram.parser.yy.extract(stateDiagram.parser.yy.getRootDocV2()); const classes = stateDiagram.parser.yy.getClasses(); expect(classes.get('__proto__').styles.length).toBe(2); expect(classes.get('constructor').styles.length).toBe(2); @@ -83,7 +78,6 @@ describe('ClassDefs and classes when parsing a State diagram', () => { diagram += 'class a exampleStyleClass'; stateDiagram.parser.parse(diagram); - stateDiagram.parser.yy.extract(stateDiagram.parser.yy.getRootDocV2()); const classes = stateDb.getClasses(); expect(classes.get('exampleStyleClass').styles.length).toEqual(2); @@ -104,7 +98,6 @@ describe('ClassDefs and classes when parsing a State diagram', () => { diagram += 'class a_a exampleStyleClass'; stateDiagram.parser.parse(diagram); - stateDiagram.parser.yy.extract(stateDiagram.parser.yy.getRootDocV2()); const classes = stateDiagram.parser.yy.getClasses(); expect(classes.get('exampleStyleClass').styles.length).toBe(2); @@ -124,7 +117,6 @@ describe('ClassDefs and classes when parsing a State diagram', () => { diagram += 'a --> b:::exampleStyleClass' + '\n'; stateDiagram.parser.parse(diagram); - stateDiagram.parser.yy.extract(stateDiagram.parser.yy.getRootDocV2()); const states = stateDiagram.parser.yy.getStates(); const classes = stateDiagram.parser.yy.getClasses(); @@ -163,7 +155,6 @@ describe('ClassDefs and classes when parsing a State diagram', () => { diagram += 'class a,b exampleStyleClass'; stateDiagram.parser.parse(diagram); - stateDiagram.parser.yy.extract(stateDiagram.parser.yy.getRootDocV2()); let classes = stateDiagram.parser.yy.getClasses(); let states = stateDiagram.parser.yy.getStates(); @@ -182,7 +173,6 @@ describe('ClassDefs and classes when parsing a State diagram', () => { diagram += 'class a,b,c, d, e exampleStyleClass'; stateDiagram.parser.parse(diagram); - stateDiagram.parser.yy.extract(stateDiagram.parser.yy.getRootDocV2()); const classes = stateDiagram.parser.yy.getClasses(); const states = stateDiagram.parser.yy.getStates(); @@ -210,7 +200,6 @@ describe('ClassDefs and classes when parsing a State diagram', () => { diagram += '}\n'; stateDiagram.parser.parse(diagram); - stateDiagram.parser.yy.extract(stateDiagram.parser.yy.getRootDocV2()); const states = stateDiagram.parser.yy.getStates(); @@ -226,7 +215,6 @@ describe('ClassDefs and classes when parsing a State diagram', () => { stateDiagram.parser.parse(`stateDiagram-v2 id1 style id1 background:#bbb`); - stateDiagram.parser.yy.extract(stateDiagram.parser.yy.getRootDocV2()); const data4Layout = stateDiagram.parser.yy.getData(); expect(data4Layout.nodes[0].cssStyles).toEqual(['background:#bbb']); @@ -236,7 +224,6 @@ describe('ClassDefs and classes when parsing a State diagram', () => { id1 id2 style id1,id2 background:#bbb`); - stateDiagram.parser.yy.extract(stateDiagram.parser.yy.getRootDocV2()); const data4Layout = stateDiagram.parser.yy.getData(); expect(data4Layout.nodes[0].cssStyles).toEqual(['background:#bbb']); @@ -249,7 +236,6 @@ describe('ClassDefs and classes when parsing a State diagram', () => { id2 style id1,id2 background:#bbb, font-weight:bold, font-style:italic;`); - stateDiagram.parser.yy.extract(stateDiagram.parser.yy.getRootDocV2()); const data4Layout = stateDiagram.parser.yy.getData(); expect(data4Layout.nodes[0].cssStyles).toEqual([ diff --git a/packages/mermaid/src/diagrams/state/stateDb.js b/packages/mermaid/src/diagrams/state/stateDb.js index 50785587e..cc44659eb 100644 --- a/packages/mermaid/src/diagrams/state/stateDb.js +++ b/packages/mermaid/src/diagrams/state/stateDb.js @@ -204,7 +204,7 @@ export class StateDB { * refer to the fork as a whole (document). * See the parser grammar: the definition of a document is a document then a 'line', where a line can be a statement. * This will push the statement into the list of statements for the current document. - * + * @private * @param _doc */ extract(_doc) { diff --git a/packages/mermaid/src/diagrams/state/stateDiagram-v2.spec.js b/packages/mermaid/src/diagrams/state/stateDiagram-v2.spec.js index d1edc5b40..ce20879c3 100644 --- a/packages/mermaid/src/diagrams/state/stateDiagram-v2.spec.js +++ b/packages/mermaid/src/diagrams/state/stateDiagram-v2.spec.js @@ -1,6 +1,5 @@ -import { parser } from './parser/stateDiagram.jison'; +import stateDiagram, { parser } from './parser/stateDiagram.jison'; import { StateDB } from './stateDb.js'; -import stateDiagram from './parser/stateDiagram.jison'; describe('state diagram V2, ', function () { // TODO - these examples should be put into ./parser/stateDiagram.spec.js @@ -129,7 +128,6 @@ describe('state diagram V2, ', function () { `; stateDiagram.parser.parse(diagram); - stateDiagram.parser.yy.extract(stateDiagram.parser.yy.getRootDocV2()); const rels = stateDb.getRelations(); const rel_1_2 = rels.find((rel) => rel.id1 === 'State1' && rel.id2 === 'State2'); @@ -404,7 +402,6 @@ describe('state diagram V2, ', function () { `; stateDiagram.parser.parse(diagram); - stateDiagram.parser.yy.extract(stateDiagram.parser.yy.getRootDocV2()); const states = stateDb.getStates(); expect(states.get('Active').doc[0].id).toEqual('Idle');