mirror of
https://github.com/mermaid-js/mermaid.git
synced 2025-11-17 11:14:12 +01:00
Updated unit tests.
This commit is contained in:
@@ -67,10 +67,11 @@ vi.mock('stylis', () => {
|
|||||||
|
|
||||||
import { compile, serialize } from 'stylis';
|
import { compile, serialize } from 'stylis';
|
||||||
import { Diagram } from './Diagram.js';
|
import { Diagram } from './Diagram.js';
|
||||||
import { decodeEntities, encodeEntities } from './utils.js';
|
|
||||||
import { toBase64 } from './utils/base64.js';
|
|
||||||
import { ClassDB } from './diagrams/class/classDb.js';
|
import { ClassDB } from './diagrams/class/classDb.js';
|
||||||
import { FlowDB } from './diagrams/flowchart/flowDb.js';
|
import { FlowDB } from './diagrams/flowchart/flowDb.js';
|
||||||
|
import { SequenceDB } from './diagrams/sequence/sequenceDb.js';
|
||||||
|
import { decodeEntities, encodeEntities } from './utils.js';
|
||||||
|
import { toBase64 } from './utils/base64.js';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @see https://vitest.dev/guide/mocking.html Mock part of a module
|
* @see https://vitest.dev/guide/mocking.html Mock part of a module
|
||||||
@@ -899,28 +900,18 @@ graph TD;A--x|text including URL space|B;`)
|
|||||||
);
|
);
|
||||||
const sequenceDiagram2 = await mermaidAPI.getDiagramFromText(
|
const sequenceDiagram2 = await mermaidAPI.getDiagramFromText(
|
||||||
`sequenceDiagram
|
`sequenceDiagram
|
||||||
|
actor A1
|
||||||
Alice->>+John: Hello John, how are you?
|
Alice->>+John: Hello John, how are you?
|
||||||
Alice->>+John: John, can you hear me?
|
Alice->>+John: John, can you hear me?
|
||||||
John-->>-Alice: Hi Alice, I can hear you!
|
John-->>-Alice: Hi Alice, I can hear you!
|
||||||
John-->>-Alice: I feel great!`
|
John-->>-Alice: I feel great!`
|
||||||
);
|
);
|
||||||
// Since sequenceDiagram will return same Db object each time, we can compare the db to be same.
|
|
||||||
expect(sequenceDiagram1.db).toBe(sequenceDiagram2.db);
|
// Since sequenceDiagram will return new Db object each time, we can compare the db to be different.
|
||||||
|
expect(sequenceDiagram1.db).not.toBe(sequenceDiagram2.db);
|
||||||
|
assert(sequenceDiagram1.db instanceof SequenceDB);
|
||||||
|
assert(sequenceDiagram2.db instanceof SequenceDB);
|
||||||
|
expect(sequenceDiagram1.db.getActors()).not.toEqual(sequenceDiagram2.db.getActors());
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
// Sequence Diagram currently uses a singleton DB, so this test will fail
|
|
||||||
it.fails('should not modify db when rendering different sequence diagrams', async () => {
|
|
||||||
const sequenceDiagram1 = await mermaidAPI.getDiagramFromText(
|
|
||||||
`sequenceDiagram
|
|
||||||
Alice->>Bob: Hello Bob, how are you?
|
|
||||||
Bob-->>John: How about you John?`
|
|
||||||
);
|
|
||||||
const sequenceDiagram2 = await mermaidAPI.getDiagramFromText(
|
|
||||||
`sequenceDiagram
|
|
||||||
Alice->>Bob: Hello Bob, how are you?
|
|
||||||
Bob-->>John: How about you John?`
|
|
||||||
);
|
|
||||||
expect(sequenceDiagram1.db).not.toBe(sequenceDiagram2.db);
|
|
||||||
});
|
|
||||||
});
|
});
|
||||||
|
|||||||
Reference in New Issue
Block a user