diff --git a/cypress/integration/rendering/architecture.spec.ts b/cypress/integration/rendering/architecture.spec.ts index bc22763529..4a72113c5e 100644 --- a/cypress/integration/rendering/architecture.spec.ts +++ b/cypress/integration/rendering/architecture.spec.ts @@ -1,6 +1,6 @@ import { imgSnapshotTest, urlSnapshotTest } from '../../helpers/util.ts'; -describe.skip('architecture diagram', () => { +describe('architecture diagram', () => { it('should render a simple architecture diagram with groups', () => { imgSnapshotTest( `architecture-beta @@ -10,12 +10,12 @@ describe.skip('architecture diagram', () => { service disk1(disk)[Storage] in api service disk2(disk)[Storage] in api service server(server)[Server] in api - service gateway(internet)[Gateway] + service gateway(internet)[Gateway] - db L--R server - disk1 T--B server - disk2 T--B db - server T--B gateway + db:L -- R:server + disk1:T -- B:server + disk2:T -- B:db + server:T-- B:gateway ` ); }); @@ -25,17 +25,17 @@ describe.skip('architecture diagram', () => { group api[API] group public[Public API] in api group private[Private API] in api - + service serv1(server)[Server] in public - + service serv2(server)[Server] in private service db(database)[Database] in private - + service gateway(internet)[Gateway] in api - - serv1 B--T serv2 - serv2 L--R db - serv1 L--R gateway + + serv1:B -- T:serv2 + serv2:L -- R:db + serv1:L -- R:gateway ` ); }); @@ -54,11 +54,11 @@ describe.skip('architecture diagram', () => { service serv1(server)[Server 1] service serv2(server)[Server 2] service disk(disk)[Disk] - - db L--R s3 - serv1 L--T s3 - serv2 L--B s3 - serv1 T--B disk + + db:L--R:s3 + serv1:L--T:s3 + serv2:L--B:s3 + serv1:T--B:disk ` ); }); @@ -70,16 +70,16 @@ describe.skip('architecture diagram', () => { service servR(server)[Server 3] service servT(server)[Server 4] service servB(server)[Server 5] - - servC (L--R) servL - servC (R--L) servR - servC (T--B) servT - servC (B--T) servB - - servL (T--L) servT - servL (B--L) servB - servR (T--R) servT - servR (B--R) servB + + servC:L<-->R:servL + servC:R<-->L:servR + servC:T<-->B:servT + servC:B<-->T:servB + + servL:T<-->L:servT + servL:B<-->L:servB + servR:T<-->R:servT + servR:B<-->R:servB ` ); }); @@ -91,17 +91,17 @@ describe.skip('architecture diagram', () => { group top_group(cloud)[Top] group bottom_group(cloud)[Bottom] group center_group(cloud)[Center] - + service left_disk(disk)[Disk] in left_group service right_disk(disk)[Disk] in right_group service top_disk(disk)[Disk] in top_group service bottom_disk(disk)[Disk] in bottom_group service center_disk(disk)[Disk] in center_group - - left_disk{group} (R--L) center_disk{group} - right_disk{group} (L--R) center_disk{group} - top_disk{group} (B--T) center_disk{group} - bottom_disk{group} (T--B) center_disk{group} + + left_disk{group}:R <--> L:center_disk{group} + right_disk{group}:L <--> R:center_disk{group} + top_disk{group}:B <--> T:center_disk{group} + bottom_disk{group}:T <--> B:center_disk{group} ` ); }); @@ -113,16 +113,16 @@ describe.skip('architecture diagram', () => { service servR(server)[Server 3] service servT(server)[Server 4] service servB(server)[Server 5] - - servC L-[Label]-R servL - servC R-[Label]-L servR - servC T-[Label]-B servT - servC B-[Label]-T servB - - servL T-[Label]-L servT - servL B-[Label]-L servB - servR T-[Label]-R servT - servR B-[Label]-R servB + + servC:L-[Label]-R:servL + servC:R-[Label]-L:servR + servC:T-[Label]-B:servT + servC:B-[Label]-T:servB + + servL:T-[Label]-L:servT + servL:B-[Label]-L:servB + servR:T-[Label]-R:servT + servR:B-[Label]-R:servB ` ); }); @@ -136,13 +136,13 @@ describe.skip('architecture diagram', () => { service bottom_gateway(internet)[Gateway] junction juncC junction juncR - - left_disk R--L juncC - top_disk B--T juncC - bottom_disk T--B juncC - juncC R--L juncR - top_gateway B--T juncR - bottom_gateway T--B juncR + + left_disk:R -- L:juncC + top_disk:B -- T:juncC + bottom_disk:T -- B:juncC + juncC:R -- L:juncR + top_gateway:B -- T:juncR + bottom_gateway:T -- B:juncR ` ); }); @@ -158,23 +158,46 @@ describe.skip('architecture diagram', () => { service bottom_gateway(internet)[Gateway] in right junction juncC in left junction juncR in right - - left_disk R--L juncC - top_disk B--T juncC - bottom_disk T--B juncC - - - top_gateway (B--T juncR - bottom_gateway (T--B juncR - - juncC{group} R--L) juncR{group} + + left_disk:R -- L:juncC + top_disk:B -- T:juncC + bottom_disk:T -- B:juncC + + + top_gateway:B <-- T:juncR + bottom_gateway:T <-- B:juncR + + juncC{group}:R --> L:juncR{group} + ` + ); + }); + + it('should render unicode', () => { + imgSnapshotTest( + `architecture-beta + service left_disk(disk)[Disk] + service right_disk(disk)["❤ Disk"] + + left_disk:R -- L:right_disk + ` + ); + }); + + it('should render markdown', () => { + imgSnapshotTest( + `architecture-beta + service left_disk(disk)["\`This **is** _Markdown_\`"] + service right_disk(disk)["\`Line1 + Line 2 + Line 3\`"] + + left_disk:R -- L:right_disk ` ); }); }); -// Skipped as the layout is not deterministic, and causes issues in E2E tests. -describe.skip('architecture - external', () => { +describe('architecture - external', () => { it('should allow adding external icons', () => { urlSnapshotTest('http://localhost:9000/architecture-external.html'); }); diff --git a/cypress/platform/architecture-external.html b/cypress/platform/architecture-external.html index 71770425d6..91fce3d333 100644 --- a/cypress/platform/architecture-external.html +++ b/cypress/platform/architecture-external.html @@ -21,6 +21,11 @@