Skip to content

Commit 83a02dd

Browse files
author
Dennis Labordus
committed
Added test for CIM Mapping.
Signed-off-by: Dennis Labordus <[email protected]>
1 parent 98b3261 commit 83a02dd

8 files changed

+4587
-77
lines changed

README.md

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -15,11 +15,8 @@ There is a pre configured [Docker Compose](compas/docker-compose.yml) file, whic
1515
To start all configured services, go to the `compas` directory and run the following two commands:
1616

1717
```
18-
# First build the Keycloak Custom image and Reverse Proxy.
19-
docker-compose build
20-
21-
# Start all the containers in the background.
22-
docker-compose up -d
18+
# Build (if needed) and start all the containers in the background.
19+
docker-compose up -d --build
2320
```
2421

2522
This first command builds 2 containers (keycloak and reverse proxy) and next command starts all CoMPAS services at the same time.
@@ -38,6 +35,7 @@ Now, the following services are available:
3835
To stop and remove all the containers run the command:
3936

4037
```
38+
# Stop all containers and remove the volumes.
4139
docker-compose down -v
4240
```
4341

integration-testing/TestSuite001-basic-compas.robot

Lines changed: 28 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -12,87 +12,78 @@ Test Teardown Make screenshot and Stop OpenSCD
1212
*** Test Cases ***
1313
TestCase001-01
1414
[Documentation] Open project from Local File
15-
Set Test Variable ${sclname} minigrid
15+
Set Test Variable ${sclname} MiniGrid
1616
Set Test Variable ${scltype} SCD
1717

18-
Open Menu Open project
19-
Open local file ${sclname} ${scltype}
20-
Close Menu
21-
Check Title Filename ${sclname} ${scltype}
18+
Open Menu Open project
19+
Open local file ${sclname} ${scltype}
20+
Check Title Filename ${sclname} ${scltype}
2221

2322
Select Tab Substation
2423
Get Text ${substation-editor-selector} div#header > h1:has-text("Sub1")
2524

2625
TestCase001-02
2726
[Documentation] Open project from Local File and Add to CoMPAS
28-
Set Test Variable ${sclname} minigrid
27+
Set Test Variable ${sclname} MiniGrid
2928
Set Test Variable ${scltype} SCD
3029

31-
Open Menu Open project
32-
Open local file ${sclname} ${scltype}
33-
Close Menu
34-
Check Title Filename ${sclname} ${scltype}
30+
Open Menu Open project
31+
Open local file ${sclname} ${scltype}
32+
Check Title Filename ${sclname} ${scltype}
3533

3634
Set Test Variable ${sclname} ${TEST NAME}
3735
Set Test Variable ${scltype} CID
3836

39-
Open Menu Save project
40-
Add to CoMPAS ${sclname} ${scltype}
41-
Close Menu
42-
Check Title Filename ${sclname}-${current-date}-1.0.0 ${scltype}
37+
Open Menu Save project
38+
Add to CoMPAS ${sclname} ${scltype}
39+
Check Title Filename ${sclname}-${current-date}-1.0.0 ${scltype}
4340

4441
Select Tab Substation
4542
Get Text ${substation-editor-selector} div#header > h1:has-text("Sub1")
4643

4744
TestCase001-03
4845
[Documentation] Open project from CoMPAS
4946
# First we need to add a project to CoMPAS to be able to open it from CoMPAS.
50-
Set Test Variable ${sclname} minigrid
47+
Set Test Variable ${sclname} MiniGrid
5148
Set Test Variable ${scltype} SCD
5249

53-
Open Menu Open project
54-
Open local file ${sclname} ${scltype}
55-
Close Menu
56-
Check Title Filename ${sclname} ${scltype}
50+
Open Menu Open project
51+
Open local file ${sclname} ${scltype}
52+
Check Title Filename ${sclname} ${scltype}
5753

5854
Set Test Variable ${sclname} ${TEST NAME}
5955
Set Test Variable ${scltype} CID
6056

61-
Open Menu Save project
62-
Add to CoMPAS ${sclname} ${scltype}
63-
Close Menu
64-
Check Title Filename ${sclname}-${current-date}-1.0.0 ${scltype}
57+
Open Menu Save project
58+
Add to CoMPAS ${sclname} ${scltype}
59+
Check Title Filename ${sclname}-${current-date}-1.0.0 ${scltype}
6560

6661
Close OpenSCD
6762
Open OpenSCD and Login
6863

69-
Open Menu Open project
70-
Open from CoMPAS ${sclname} ${scltype}
71-
Close Menu
72-
Check Title Filename ${sclname}-${current-date}-1.0.0 ${scltype}
64+
Open Menu Open project
65+
Open from CoMPAS ${sclname} ${scltype}
66+
Check Title Filename ${sclname}-${current-date}-1.0.0 ${scltype}
7367

7468
Select Tab Substation
7569
Get Text ${substation-editor-selector} div#header > h1:has-text("Sub1")
7670

7771
TestCase001-04
7872
[Documentation] Open project from CoMPAS and Save to Local File
7973
# First we need to add a project to CoMPAS to be able to open it from CoMPAS.
80-
Set Test Variable ${sclname} minigrid
74+
Set Test Variable ${sclname} MiniGrid
8175
Set Test Variable ${scltype} SCD
8276

83-
Open Menu Open project
84-
Open local file ${sclname} ${scltype}
85-
Close Menu
86-
Check Title Filename ${sclname} ${scltype}
77+
Open Menu Open project
78+
Open local file ${sclname} ${scltype}
79+
Check Title Filename ${sclname} ${scltype}
8780

8881
Set Test Variable ${sclname} ${TEST NAME}
8982
Set Test Variable ${scltype} CID
9083

91-
Open Menu Save project
92-
Add to CoMPAS ${sclname} ${scltype}
93-
Close Menu
94-
Check Title Filename ${sclname}-${current-date}-1.0.0 ${scltype}
84+
Open Menu Save project
85+
Add to CoMPAS ${sclname} ${scltype}
86+
Check Title Filename ${sclname}-${current-date}-1.0.0 ${scltype}
9587

9688
Open Menu Save project
9789
Save to local file ${sclname} ${scltype}
98-
Close Menu

integration-testing/TestSuite002-versions-compas.robot

Lines changed: 12 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -12,78 +12,70 @@ Test Teardown Make screenshot and Stop OpenSCD
1212
*** Test Cases ***
1313
TestCase002-01
1414
[Documentation] Check no versions on tab CoMPAS Versions
15-
Set Test Variable ${sclname} minigrid
15+
Set Test Variable ${sclname} MiniGrid
1616
Set Test Variable ${scltype} SCD
1717

18-
Open Menu Open project
19-
Open local file ${sclname} ${scltype}
20-
Close Menu
21-
Check Title Filename ${sclname} ${scltype}
18+
Open Menu Open project
19+
Open local file ${sclname} ${scltype}
20+
Check Title Filename ${sclname} ${scltype}
2221

2322
Select Tab CoMPAS Versions
2423
Get Text ${compas-versions-editor-selector} mwc-list > mwc-list-item > span:has-text("No versions found")
2524

2625
TestCase002-02
2726
[Documentation] Check one versions on tab CoMPAS Versions
28-
Set Test Variable ${sclname} minigrid
27+
Set Test Variable ${sclname} MiniGrid
2928
Set Test Variable ${scltype} SCD
3029

31-
Open Menu Open project
32-
Open local file ${sclname} ${scltype}
33-
Close Menu
34-
Check Title Filename ${sclname} ${scltype}
30+
Open Menu Open project
31+
Open local file ${sclname} ${scltype}
32+
Check Title Filename ${sclname} ${scltype}
3533

3634
Set Test Variable ${sclname} ${TEST NAME}
3735
Set Test Variable ${scltype} CID
3836

39-
Open Menu Save project
40-
Add to CoMPAS ${sclname} ${scltype}
41-
Close Menu
42-
Check Title Filename ${sclname}-${current-date}-1.0.0 ${scltype}
37+
Open Menu Save project
38+
Add to CoMPAS ${sclname} ${scltype}
39+
Check Title Filename ${sclname}-${current-date}-1.0.0 ${scltype}
4340

4441
Select Tab CoMPAS Versions
4542
Get Element Count ${compas-versions-editor-selector} mwc-list > mwc-check-list-item == 1
4643

4744
TestCase002-03
4845
[Documentation] Check every save created a new version on tab CoMPAS Versions
49-
Set Test Variable ${sclname} minigrid
46+
Set Test Variable ${sclname} MiniGrid
5047
Set Test Variable ${scltype} SCD
5148

5249
Open Menu Open project
5350
Open local file ${sclname} ${scltype}
54-
Close Menu
5551
Check Title Filename ${sclname} ${scltype}
5652

5753
Set Test Variable ${sclname} ${TEST NAME}
5854
Set Test Variable ${scltype} CID
5955

6056
Open Menu Save project
6157
Add to CoMPAS ${sclname} ${scltype}
62-
Close Menu
6358
Check Title Filename ${sclname}-${current-date}-1.0.0 ${scltype}
6459

6560
Select Tab CoMPAS Versions
6661
Get Element Count ${compas-versions-editor-selector} mwc-list > mwc-check-list-item == 1
6762

6863
Open Menu Save project
6964
Update in CoMPAS MAJOR
70-
Close Menu
7165
Check Title Filename ${sclname}-${current-date}-2.0.0 ${scltype}
7266

7367
Select Tab CoMPAS Versions
7468
Get Element Count ${compas-versions-editor-selector} mwc-list > mwc-check-list-item == 2
7569

7670
Open Menu Save project
7771
Update in CoMPAS MINOR
78-
Close Menu
7972
Check Title Filename ${sclname}-${current-date}-2.1.0 ${scltype}
8073

8174
Select Tab CoMPAS Versions
8275
Get Element Count ${compas-versions-editor-selector} mwc-list > mwc-check-list-item == 3
8376

8477
Open Menu Save project
8578
Update in CoMPAS PATCH
86-
Close Menu
8779
Check Title Filename ${sclname}-${current-date}-2.1.1 ${scltype}
8880

8981
Select Tab CoMPAS Versions
Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
# SPDX-FileCopyrightText: 2021 Alliander N.V.
2+
#
3+
# SPDX-License-Identifier: Apache-2.0
4+
5+
*** Settings ***
6+
Documentation Basic test cases for opening and saving SCL files to/from Local File and CoMPAS.
7+
Resource ./include/general-compas.robot
8+
9+
Test Setup Initialize and Start OpenSCD
10+
Test Teardown Make screenshot and Stop OpenSCD
11+
12+
*** Keywords ***
13+
Open Project from CIM
14+
[Arguments] ${name}
15+
${promise}= Promise To Upload File ${CURDIR}/test-files/${name}.xml
16+
Open Menu Project from CIM
17+
${upload_result}= Wait For ${promise}
18+
Wait for Progressbar
19+
Close Issues Snackbar
20+
Close Menu
21+
22+
*** Test Cases ***
23+
TestCase003-01
24+
[Documentation] Create project from CIM File
25+
Set Test Variable ${sclname} MiniGridTestConfiguration_BC_EQ_v3.0.0
26+
Set Test Variable ${scltype} SSD
27+
28+
Open Project from CIM ${sclname}
29+
Check Title Filename ${sclname} ${scltype}
30+
31+
Select Tab Substation
32+
Get Text ${substation-editor-selector} div#header > h1:has-text("Sub1")

integration-testing/include/general-compas.robot

Lines changed: 19 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -13,20 +13,26 @@ ${compas-versions-editor-selector} compas-versions-plugin
1313

1414
*** Keywords ***
1515
Open from CoMPAS
16-
[Arguments] ${name} ${type}
17-
Click ${dialog-selector} compas-open compas-scltype-list > mwc-list > mwc-list-item >> span:has-text("${type.upper()}")
18-
Click ${dialog-selector} compas-open compas-scl-list > mwc-list > mwc-list-item:has-text("${name}-${current-date}")
19-
Get Style open-scd > mwc-circular-progress-four-color > div[role="progressbar"] opacity == 0
16+
[Arguments] ${name} ${type}
17+
Click ${dialog-selector} compas-open compas-scltype-list > mwc-list > mwc-list-item >> span:has-text("${type.upper()}")
18+
Click ${dialog-selector} compas-open compas-scl-list > mwc-list > mwc-list-item:has-text("${name}-${current-date}")
19+
Wait for Progressbar
20+
Close Issues Snackbar
21+
Close Menu
2022

2123
Add to CoMPAS
22-
[Arguments] ${name} ${type}
23-
Fill Text ${dialog-selector} compas-save mwc-textfield#name input ${name}-${current-date}
24-
Click ${dialog-selector} compas-save compas-scltype-radiogroup mwc-list > mwc-radio-list-item[value="${type.upper()}"]
25-
Click ${dialog-selector} mwc-button[slot="primaryAction"] > button
26-
Get Style open-scd > mwc-circular-progress-four-color > div[role="progressbar"] opacity == 0
24+
[Arguments] ${name} ${type}
25+
Fill Text ${dialog-selector} compas-save mwc-textfield#name input ${name}-${current-date}
26+
Click ${dialog-selector} compas-save compas-scltype-radiogroup mwc-list > mwc-radio-list-item[value="${type.upper()}"]
27+
Click ${dialog-selector} mwc-button[slot="primaryAction"] > button
28+
Wait for Progressbar
29+
Close Issues Snackbar
30+
Close Menu
2731

2832
Update in CoMPAS
29-
[Arguments] ${changeType}
30-
Click ${dialog-selector} compas-save compas-changeset-radiogroup mwc-list > mwc-radio-list-item[value="${changeType.upper()}"]
31-
Click ${dialog-selector} mwc-button[slot="primaryAction"] > button
32-
Get Style open-scd > mwc-circular-progress-four-color > div[role="progressbar"] opacity == 0
33+
[Arguments] ${changeType}
34+
Click ${dialog-selector} compas-save compas-changeset-radiogroup mwc-list > mwc-radio-list-item[value="${changeType.upper()}"]
35+
Click ${dialog-selector} mwc-button[slot="primaryAction"] > button
36+
Wait for Progressbar
37+
Close Issues Snackbar
38+
Close Menu

integration-testing/include/general-openscd.robot

Lines changed: 15 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,7 @@ Open OpenSCD and Login
3434
Fill Text input[id="username"] ${username}
3535
Fill Secret input[id="password"] $password
3636
Click input[type="submit"][id="kc-login"]
37+
Wait For Response
3738
Check Browser Title
3839

3940
Close OpenSCD
@@ -61,16 +62,28 @@ Open local file
6162
${promise}= Promise To Upload File ${CURDIR}/../test-files/${name}.${type.lower()}
6263
Click ${dialog-selector} compas-open mwc-button[label="Open file..."] button
6364
${upload_result}= Wait For ${promise}
64-
Get Style open-scd > mwc-circular-progress-four-color > div[role="progressbar"] opacity == 0
65-
Click mwc-snackbar#issue > mwc-icon-button[slot="dismiss"] > button
65+
Wait for Progressbar
66+
Close Issues Snackbar
67+
Close Menu
6668

6769
Save to local file
6870
[Arguments] ${name} ${type}
6971
${dl_promise}= Promise To Wait For Download ${OUTPUT DIR}/saved-files/${name}-${current-date}.${type.lower()}
7072
Click ${dialog-selector} compas-save mwc-button[label="Save to file..."] button
7173
${file_obj}= Wait For ${dl_promise}
7274
File Should Exist ${file_obj}[saveAs]
75+
Close Menu
7376

7477
Check Title Filename
7578
[Arguments] ${filename} ${scltype}
7679
Get Text open-scd > mwc-drawer div#title:text-is("${filename}.${scltype.lower()}")
80+
81+
Wait for Progressbar
82+
${promise}= Promise To Wait For Function element => element.style.opacity == 0 open-scd > mwc-circular-progress-four-color > div[role="progressbar"]
83+
Wait For ${promise}
84+
85+
Close Issues Snackbar
86+
${snackbar}= Get Element State mwc-snackbar#issue > mwc-icon-button[slot="dismiss"] > button
87+
IF ${snackbar} == 'visible'
88+
Click mwc-snackbar#issue > mwc-icon-button[slot="dismiss"] > button
89+
END
File renamed without changes.

0 commit comments

Comments
 (0)