mermaid/cypress/integration/rendering/stateDiagram.spec.js

108 lines
2.3 KiB
JavaScript
Raw Normal View History

2019-09-25 21:01:21 +02:00
/* eslint-env jest */
import { imgSnapshotTest } from '../../helpers/util';
describe('State diagram', () => {
it('should render a simple state diagrams', () => {
imgSnapshotTest(
`
stateDiagram
[*] --> State1
State1 --> [*]
`,
{ logLevel: 0 }
);
cy.get('svg');
});
it('should render a simple state diagrams', () => {
imgSnapshotTest(
`
stateDiagram
[*] --> State1
State1 --> State2
State1 --> State3
State1 --> [*]
`,
{ logLevel: 0 }
);
cy.get('svg');
});
it('should render a simple state diagrams with labels', () => {
imgSnapshotTest(
`
stateDiagram
[*] --> State1
State1 --> State2 : Transition 1
State1 --> State3 : Transition 2
State1 --> State4 : Transition 3
State1 --> State5 : Transition 4
State2 --> State3 : Transition 5
State1 --> [*]
`,
{ logLevel: 0 }
);
cy.get('svg');
});
2019-09-29 15:50:43 +02:00
it('should render state descriptions', () => {
imgSnapshotTest(
`
stateDiagram
state "Long state description" as XState1
state "Another Long state description" as XState2
XState2 : New line
XState1 --> XState2
`,
{ logLevel: 0 }
);
cy.get('svg');
});
it('should render composit states', () => {
imgSnapshotTest(
`
stateDiagram
[*] --> NotShooting: Pacifist
NotShooting --> A
NotShooting --> B
NotShooting --> C
state NotShooting {
[*] --> Idle: Yet another long long öong öong öong label
Idle --> Configuring : EvConfig
Configuring --> Idle : EvConfig EvConfig EvConfig EvConfig EvConfig
}
2019-09-29 15:50:43 +02:00
`,
{ logLevel: 0 }
);
cy.get('svg');
});
2019-10-03 19:54:07 +02:00
it('should render multiple composit states', () => {
imgSnapshotTest(
`
stateDiagram
[*]-->TV
2019-10-05 09:02:20 +02:00
2019-10-03 19:54:07 +02:00
state TV {
[*] --> Off: Off to start with
On --> Off : Turn off
Off --> On : Turn on
}
2019-10-05 09:02:20 +02:00
TV--> Console : KarlMartin
2019-10-03 19:54:07 +02:00
state Console {
[*] --> Off2: Off to start with
On2--> Off2 : Turn off
Off2 --> On2 : Turn on
On2-->Playing
state Playing {
Alive --> Dead
Dead-->Alive
}
}
`,
{ logLevel: 0 }
);
cy.get('svg');
});
2019-09-25 21:01:21 +02:00
});