graphdb-workbench-tests 2.8.0-Test → 2.8.1-RC1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (135) hide show
  1. package/cypress.config.js +4 -1
  2. package/fixtures/cluster/2-nodes-cluster-group-status-deleted.json +30 -0
  3. package/fixtures/cluster/2-nodes-cluster-group-status.json +30 -0
  4. package/fixtures/cluster/3-nodes-cluster-group-status-after-replace.json +44 -0
  5. package/fixtures/cluster/3-nodes-cluster-group-status-building-snapshot.json +4 -1
  6. package/fixtures/cluster/3-nodes-cluster-group-status-receiving-snapshot.json +4 -1
  7. package/fixtures/cluster/3-nodes-cluster-group-status-sending-snapshot.json +4 -1
  8. package/fixtures/cluster/3-nodes-cluster-group-status-waiting-for-snapshot.json +4 -1
  9. package/fixtures/cluster/3-nodes-cluster-group-status-with-tag.json +47 -0
  10. package/fixtures/cluster/3-nodes-cluster-group-status.json +12 -3
  11. package/fixtures/cluster/4-nodes-cluster-group-status.json +58 -0
  12. package/fixtures/cluster/cluster-config.json +1 -0
  13. package/fixtures/cluster/cluster-node-status.json +4 -1
  14. package/fixtures/cluster/no-cluster-group-status.json +2 -1
  15. package/fixtures/cluster/no-cluster-node-status.json +2 -1
  16. package/fixtures/cluster/save-cluster-configuration-response.json +10 -0
  17. package/fixtures/connectors/get-retrieval-connector.json +1 -1
  18. package/fixtures/connectors/get-ttyg-chatgpt-connectors.json +188 -0
  19. package/fixtures/locale-en.json +386 -103
  20. package/fixtures/remote-location/get-0-remote-locations.json +1 -2
  21. package/fixtures/remote-location/get-1-remote-locations.json +2 -4
  22. package/fixtures/remote-location/get-2-remote-locations.json +3 -6
  23. package/fixtures/remote-location/get-3-remote-locations.json +4 -8
  24. package/fixtures/remote-location/get-4-remote-locations.json +54 -0
  25. package/fixtures/remote-location/remote-location-status-in-cluster.json +1 -2
  26. package/fixtures/remote-location/remote-location-status-not-in-cluster.json +1 -2
  27. package/fixtures/remote-location/remote-locations-filter.json +1 -2
  28. package/fixtures/repositories/get-locations.json +5 -10
  29. package/fixtures/repositories/get-remote-and-local-repositories.json +34 -0
  30. package/fixtures/repositories/get-ttyg-repositories.json +28 -0
  31. package/fixtures/security/get-admin-user.json +22 -0
  32. package/fixtures/similarity/get-ttyg-similarity-connectors.json +46 -0
  33. package/fixtures/ttyg/agent/create-agent.json +2 -1
  34. package/fixtures/ttyg/agent/get-agent-defaults.json +42 -0
  35. package/fixtures/ttyg/agent/get-agent-list-after-deleted.json +1 -1
  36. package/fixtures/ttyg/agent/get-agent-list-new-agent.json +2 -73
  37. package/fixtures/ttyg/agent/get-agent-list.json +1 -1
  38. package/fixtures/ttyg/agent/get-agent.json +25 -0
  39. package/fixtures/ttyg/chats/ask-question.json +25 -0
  40. package/fixtures/ttyg/chats/create/create-chat-response.json +16 -0
  41. package/fixtures/ttyg/chats/create/get-chats-after-create.json +12 -0
  42. package/fixtures/ttyg/chats/create/get-chats-before-create.json +7 -0
  43. package/fixtures/ttyg/chats/explain-response-1.json +59 -0
  44. package/fixtures/ttyg/chats/explain-response-2.json +59 -0
  45. package/fixtures/ttyg/chats/get-chat.json +199 -0
  46. package/integration/cluster/cluster-configuration/cluster-configuration-multi-region.spec.js +97 -0
  47. package/integration/cluster/cluster-configuration/cluster-configuration-nodes.spec.js +70 -0
  48. package/integration/cluster/cluster-configuration/cluster-configuration-properties.spec.js +95 -0
  49. package/integration/cluster/cluster-configuration/cluster-configuration.spec.js +38 -0
  50. package/integration/cluster/cluster-legend.spec.js +1 -0
  51. package/integration/cluster/edit-cluster-nodes-modal.spec.js +425 -0
  52. package/integration/explore/graphs.overview.spec.js +4 -0
  53. package/integration/explore/{similariti-index-create.spec.js → similarity-index/similarity-index-create.spec.js} +4 -4
  54. package/integration/explore/{similarity-index.spec.js → similarity-index/similarity-index.spec.js} +6 -6
  55. package/integration/explore/{similarity.spec.js → similarity-index/similarity.spec.js} +7 -8
  56. package/integration/explore/visual-graph/visual.graph.spec.js +34 -35
  57. package/integration/home/cookie-policy.spec.js +83 -0
  58. package/integration/home/create-repository.spec.js +35 -0
  59. package/integration/home/documentation-link.spec.js +60 -0
  60. package/integration/home/google-analytics.spec.js +60 -0
  61. package/integration/home/language-selector.spec.js +19 -0
  62. package/integration/home/rdf-resource-search.spec.js +192 -0
  63. package/integration/home/view-resource-autocomplete.spec.js +52 -0
  64. package/integration/home/workbench.home.spec.js +1 -277
  65. package/integration/import/import-user-data-file-upload.spec.js +13 -0
  66. package/integration/import/import-user-data.spec.js +6 -1
  67. package/integration/import/import-view.spec.js +6 -1
  68. package/integration/license/license.spec.js +26 -0
  69. package/integration/repository/attach-remote-location.spec.js +94 -40
  70. package/integration/repository/repositories.spec.js +40 -7
  71. package/integration/setup/autocomplete.spec.js +21 -70
  72. package/integration/setup/{jdbc-create.spec.js → jdbc/jdbc-create.spec.js} +9 -10
  73. package/integration/setup/{jdbc.spec.js → jdbc/jdbc.spec.js} +56 -25
  74. package/integration/setup/my-settings.spec.js +13 -21
  75. package/integration/setup/namespaces.spec.js +132 -264
  76. package/integration/setup/plugins.spec.js +22 -51
  77. package/integration/setup/rdf-rank.spec.js +42 -138
  78. package/integration/ttyg/agent-list.spec.js +27 -25
  79. package/integration/ttyg/agent-select-menu.spec.js +18 -16
  80. package/integration/ttyg/chat-list.spec.js +72 -9
  81. package/integration/ttyg/chat-panel.spec.js +106 -10
  82. package/integration/ttyg/clone-agent.spec.js +8 -4
  83. package/integration/ttyg/create-agent.spec.js +303 -51
  84. package/integration/ttyg/create-chat.spec.js +68 -0
  85. package/integration/ttyg/delete-agent.spec.js +6 -5
  86. package/integration/ttyg/edit-agent.spec.js +16 -5
  87. package/integration/ttyg/ttyg-permission.spec.js +66 -0
  88. package/integration/ttyg/ttyg-view.spec.js +8 -4
  89. package/npm-shrinkwrap.json +215 -220
  90. package/package.json +5 -6
  91. package/steps/alert-dialog-steps.js +25 -0
  92. package/steps/cluster/cluster-configuration-steps.js +173 -5
  93. package/steps/cluster/cluster-page-steps.js +8 -0
  94. package/steps/cluster/custer-nodes-configuration-steps.js +107 -0
  95. package/steps/guides/guide-steps.js +1 -1
  96. package/steps/home-steps.js +48 -5
  97. package/steps/import/import-steps.js +11 -7
  98. package/steps/license-steps.js +25 -0
  99. package/steps/repositories/attach-repository-steps.js +33 -0
  100. package/steps/repository-steps.js +40 -11
  101. package/steps/setup/autocomplete-steps.js +59 -0
  102. package/steps/setup/namespace-steps.js +211 -0
  103. package/steps/setup/plugins-steps.js +37 -0
  104. package/steps/setup/rdf-rank-steps.js +106 -0
  105. package/steps/setup/settings-steps.js +17 -0
  106. package/steps/ttyg/chat-panel-steps.js +31 -6
  107. package/steps/ttyg/ttyg-agent-settings-modal.steps.js +82 -4
  108. package/steps/ttyg/ttyg-view-steps.js +77 -3
  109. package/steps/visual-graph-steps.js +29 -1
  110. package/steps/yasgui/yasqe-steps.js +3 -0
  111. package/stubs/cluster/cluster-stubs.js +162 -7
  112. package/stubs/cluster/remote-location-stubs.js +46 -0
  113. package/stubs/connector-stubs.js +24 -0
  114. package/stubs/environment-stubs.js +27 -0
  115. package/stubs/jdbc/jdbc-stubs.js +19 -0
  116. package/stubs/license-stubs.js +112 -0
  117. package/stubs/namespace-stubs.js +5 -0
  118. package/stubs/repositories/repositories-stubs.js +11 -8
  119. package/stubs/repositories-stub.js +15 -0
  120. package/stubs/security-stubs.js +29 -0
  121. package/stubs/setup/plugins-stubs.js +5 -0
  122. package/stubs/similarity-index-stubs.js +25 -0
  123. package/stubs/stubs.js +4 -0
  124. package/stubs/ttyg/ttyg-stubs.js +79 -40
  125. package/support/commands.js +2 -0
  126. package/support/index.js +18 -0
  127. package/support/security-command.js +25 -0
  128. package/support/settings-commands.js +4 -5
  129. package/support/user-commands.js +31 -0
  130. package/fixtures/ttyg/chats/get-chat-1.json +0 -43
  131. package/integration/cluster/cluster-management.spec.js +0 -220
  132. package/steps/autocomplete-steps.js +0 -10
  133. package/steps/cluster/add-remote-location-dialog-steps.js +0 -11
  134. package/steps/cluster/create-cluster-dialog-steps.js +0 -39
  135. package/steps/cluster/replace-nodes-dialog-steps.js +0 -39
@@ -1,220 +0,0 @@
1
- import {ClusterPageSteps} from "../../steps/cluster/cluster-page-steps";
2
- import {GlobalOperationsStatusesStub} from "../../stubs/global-operations-statuses-stub";
3
- import {ClusterStubs} from "../../stubs/cluster/cluster-stubs";
4
- import {CreateClusterDialogSteps} from "../../steps/cluster/create-cluster-dialog-steps";
5
- import {AddRemoteLocationDialogSteps} from "../../steps/cluster/add-remote-location-dialog-steps";
6
- import {RemoteLocationStubs} from "../../stubs/cluster/remote-location-stubs";
7
- import {DeleteClusterDialogSteps} from "../../steps/cluster/delete-cluster-dialog-steps";
8
- import {ReplaceNodesDialogSteps} from "../../steps/cluster/replace-nodes-dialog-steps";
9
- import {ApplicationSteps} from "../../steps/application-steps";
10
- import {ClusterConfigurationSteps} from "../../steps/cluster/cluster-configuration-steps";
11
-
12
- describe('Cluster management', () => {
13
-
14
- let repositoryId;
15
-
16
- beforeEach(() => {
17
- repositoryId = 'cluster-repo' + Date.now();
18
- GlobalOperationsStatusesStub.stubNoOperationsResponse(repositoryId);
19
- });
20
-
21
- it('Should be able to open a create cluster dialog', () => {
22
- // Given I have opened the cluster management page
23
- ClusterPageSteps.visit();
24
-
25
- ClusterStubs.stubNoClusterGroupStatus();
26
- ClusterStubs.stubNoClusterNodeStatus();
27
- ClusterStubs.stubNoClusterConfig();
28
- RemoteLocationStubs.stubAddRemoteLocation();
29
- RemoteLocationStubs.stubGetRemoteLocations(0);
30
-
31
- // Then I expect that the page should be loaded
32
- ClusterPageSteps.getClusterPage().should('be.visible');
33
- // And the create cluster button to be visible
34
- ClusterPageSteps.getCreateClusterButton().should('be.visible').and('have.class', 'no-cluster');
35
- // When I click on the create cluster button
36
- ClusterPageSteps.createCluster();
37
- // Then I expect create cluster dialog to become visible
38
- CreateClusterDialogSteps.getDialog().should('be.visible');
39
- CreateClusterDialogSteps.getDialogHeader().should('contain.text', 'Create cluster');
40
- // And I expect to see a single node in the cluster nodes list
41
- CreateClusterDialogSteps.getClusterNodesList().should('have.length', 1);
42
- // And I expect to see no remote locations in the locations list
43
- CreateClusterDialogSteps.getRemoteLocationsList().should('have.length', 0);
44
- // And I expect that the create cluster button should be disabled
45
- CreateClusterDialogSteps.getNoSelectedNodesWarning().should('be.visible');
46
- // And I expect that the create cluster button should be disabled
47
- CreateClusterDialogSteps.getSaveClusterConfigButton().should('be.disabled');
48
- // When I click on the cancel button
49
- CreateClusterDialogSteps.clickOnCancelButton();
50
- // Then I expect that the create cluster dialog should be closed
51
- CreateClusterDialogSteps.getDialog().should('not.exist');
52
- });
53
-
54
- it('Should be able to create a cluster', () => {
55
- // Given I have opened the cluster management page
56
- ClusterPageSteps.visit();
57
-
58
- // When there is no cluster configured yet
59
- ClusterStubs.stubNoClusterGroupStatus();
60
- ClusterStubs.stubNoClusterNodeStatus();
61
- ClusterStubs.stubNoClusterConfig();
62
- RemoteLocationStubs.stubAddRemoteLocation();
63
- RemoteLocationStubs.stubGetRemoteLocations(0);
64
-
65
- // When I open the create cluster dialog
66
- ClusterPageSteps.getClusterPage().should('be.visible');
67
- ClusterPageSteps.createCluster();
68
- CreateClusterDialogSteps.getDialog().should('be.visible');
69
- // And I add a remote location
70
- RemoteLocationStubs.stubRemoteLocationCheck();
71
- addRemoteLocation('http://localhost:7201', 1);
72
- CreateClusterDialogSteps.getRemoteLocationsList().should('have.length', 1);
73
- // When I select the added remote location
74
- CreateClusterDialogSteps.selectRemoteLocation(0);
75
- // Then I expect that the remote location will be added to the cluster nodes list
76
- CreateClusterDialogSteps.getRemoteLocationsList().should('have.length', 0);
77
- CreateClusterDialogSteps.getClusterNodesList().should('have.length', 2);
78
- // And the no selected nodes warning should disappear
79
- CreateClusterDialogSteps.getNoSelectedNodesWarning().should('not.exist');
80
- // When I add another remote location
81
- addRemoteLocation('http://localhost:7202', 2);
82
- // Then I expect it to be added to the cluster nodes list
83
- CreateClusterDialogSteps.getRemoteLocationsList().should('have.length', 1);
84
- CreateClusterDialogSteps.selectRemoteLocation(0);
85
- CreateClusterDialogSteps.getRemoteLocationsList().should('have.length', 0);
86
- CreateClusterDialogSteps.getClusterNodesList().should('have.length', 3);
87
- // When I click on create cluster button
88
- ClusterStubs.stubCreateCluster();
89
- CreateClusterDialogSteps.saveClusterConfig();
90
- // Then I expect that the create cluster dialog should be closed
91
- CreateClusterDialogSteps.getDialog().should('not.exist');
92
- // And cluster should be created
93
- ClusterStubs.stubClusterConfig();
94
- ClusterStubs.stubClusterGroupStatus();
95
- ClusterStubs.stubClusterNodeStatus();
96
- RemoteLocationStubs.stubRemoteLocationFilter();
97
- RemoteLocationStubs.stubRemoteLocationStatusInCluster();
98
- // And cluster management actions should be accessible
99
- ClusterPageSteps.getRemoveNodesButton().should('be.visible');
100
- ClusterPageSteps.getAddNodesButton().should('be.visible');
101
- ClusterPageSteps.getReplaceNodesButton().should('be.visible');
102
- ClusterPageSteps.getPreviewClusterConfigButton().should('be.visible');
103
- ClusterPageSteps.getCreateClusterButton().should('not.have.class', 'no-cluster');
104
- });
105
-
106
- it('Should be able to delete cluster', () => {
107
- // Given I have opened the cluster management page
108
- ClusterPageSteps.visit();
109
-
110
- // Given there is an existing cluster created
111
- ClusterStubs.stubClusterConfig();
112
- ClusterStubs.stubClusterGroupStatus();
113
- ClusterStubs.stubClusterNodeStatus();
114
- RemoteLocationStubs.stubRemoteLocationFilter();
115
- RemoteLocationStubs.stubRemoteLocationStatusInCluster();
116
- ClusterPageSteps.getClusterPage().should('be.visible');
117
- ClusterPageSteps.getCreateClusterButton().should('not.have.class', 'no-cluster');
118
- // When I click on delete cluster
119
- ClusterPageSteps.previewClusterConfig();
120
- ClusterConfigurationSteps.getClusterConfig().should('be.visible');
121
- ClusterConfigurationSteps.deleteCluster();
122
- // Then I expect a confirmation dialog to appear
123
- DeleteClusterDialogSteps.getDialog().should('be.visible');
124
- // When I confirm
125
- ClusterStubs.stubDeleteCluster();
126
- ClusterStubs.stubNoClusterGroupStatus();
127
- ClusterStubs.stubNoClusterNodeStatus();
128
- DeleteClusterDialogSteps.confirmDeleteCluster();
129
- // Then Cluster should be deleted
130
- ClusterStubs.stubNoClusterConfig();
131
- RemoteLocationStubs.stubRemoteLocationStatusNotCluster();
132
- DeleteClusterDialogSteps.getDialog().should('not.exist');
133
- ClusterPageSteps.getRemoveNodesButton().should('not.exist');
134
- ClusterPageSteps.getAddNodesButton().should('not.exist');
135
- ClusterPageSteps.getReplaceNodesButton().should('not.exist');
136
- ClusterPageSteps.getPreviewClusterConfigButton().should('not.exist');
137
- ClusterPageSteps.getCreateClusterButton().should('have.class', 'no-cluster');
138
- });
139
-
140
- it('Should be able to replace nodes in cluster', () => {
141
- // Given I have opened the cluster management page
142
- RemoteLocationStubs.stubGetRemoteLocations();
143
- ClusterPageSteps.visit();
144
-
145
- // Given there is an existing cluster created
146
- ClusterStubs.stubClusterConfig();
147
- ClusterStubs.stubClusterGroupStatus();
148
- ClusterStubs.stubClusterNodeStatus();
149
- RemoteLocationStubs.stubRemoteLocationFilter();
150
- RemoteLocationStubs.stubRemoteLocationStatusInCluster();
151
- ClusterPageSteps.getClusterPage().should('be.visible');
152
- ClusterPageSteps.getCreateClusterButton().should('not.have.class', 'no-cluster');
153
- // When I click on replace nodes button
154
- ClusterPageSteps.replaceNodes();
155
- // Then I expect a replace nodes dialog to appear
156
- ReplaceNodesDialogSteps.getDialog().should('be.visible');
157
- ReplaceNodesDialogSteps.getClusterNodes().should('have.length', 3);
158
- ReplaceNodesDialogSteps.getRemoteLocations().should('have.length', 0);
159
- ReplaceNodesDialogSteps.getReplaceNodesButton().should('be.disabled');
160
- // When I add a new remote location
161
- RemoteLocationStubs.stubAddRemoteLocation();
162
- RemoteLocationStubs.stubRemoteLocationCheck();
163
- addRemoteLocation('http://localhost:7203', 3);
164
- ClusterPageSteps.getClusterPage().should('be.visible');
165
- ClusterPageSteps.getCreateClusterButton().should('not.have.class', 'no-cluster');
166
- // And I select the new location as replacement node
167
- ReplaceNodesDialogSteps.selectRemoteLocation(0);
168
- ReplaceNodesDialogSteps.getSelectedRemoteLocations().should('have.length', 1);
169
- // And I select a node from the cluster to be replaced
170
- ReplaceNodesDialogSteps.selectClusterNode(2);
171
- // Then I expect the replace nodes button to become enabled
172
- ReplaceNodesDialogSteps.getReplaceNodesButton().should('not.be.disabled');
173
- // When I click on replace nodes button
174
- ClusterStubs.stubReplaceNodes();
175
- ReplaceNodesDialogSteps.replaceNodes();
176
- // Then I expect nodes to be replaced
177
- cy.wait('@replace-nodes').then((interception) => {
178
- expect(interception.request.body).to.deep.equal({
179
- "addNodes": [
180
- "pc-desktop:7301\n"
181
- ],
182
- "removeNodes": [
183
- "pc-desktop:7302"
184
- ]
185
- });
186
- });
187
- ReplaceNodesDialogSteps.getDialog().should('not.exist');
188
- ApplicationSteps.getSuccessNotifications().should('be.visible');
189
- });
190
-
191
- it('Should not see "Authentication type" while attaching remote GDB node in cluster view', () => {
192
- // Given I have opened the cluster management page
193
- ClusterPageSteps.visit();
194
-
195
- // When there is no cluster configured yet
196
- ClusterStubs.stubNoClusterGroupStatus();
197
- ClusterStubs.stubNoClusterNodeStatus();
198
- ClusterStubs.stubNoClusterConfig();
199
- RemoteLocationStubs.stubAddRemoteLocation();
200
- RemoteLocationStubs.stubGetRemoteLocations(0);
201
-
202
- // When I open the create cluster dialog
203
- ClusterPageSteps.getClusterPage().should('be.visible');
204
- ClusterPageSteps.createCluster();
205
- CreateClusterDialogSteps.getDialog().should('be.visible');
206
- // And I add a remote location
207
- RemoteLocationStubs.stubRemoteLocationCheck();
208
- CreateClusterDialogSteps.openAddRemoteLocationDialog();
209
- AddRemoteLocationDialogSteps.getDialog().should('be.visible');
210
- AddRemoteLocationDialogSteps.verifyDialogBody("The token secret must be the same on all GraphDB instances. For more information on configuring the token secret, please refer to ");
211
- });
212
- });
213
-
214
- function addRemoteLocation(location, locationsCount) {
215
- CreateClusterDialogSteps.openAddRemoteLocationDialog();
216
- AddRemoteLocationDialogSteps.getDialog().should('be.visible');
217
- AddRemoteLocationDialogSteps.typeLocation(location);
218
- RemoteLocationStubs.stubGetRemoteLocations(locationsCount);
219
- AddRemoteLocationDialogSteps.addLocation();
220
- }
@@ -1,10 +0,0 @@
1
- export class AutocompleteSteps {
2
-
3
- static getAutocompleteSwitch() {
4
- return cy.get('.autocomplete-switch');
5
- }
6
-
7
- static getSuccessStatusElement() {
8
- return cy.get('.autocomplete-status').find('.tag.tag-success.ng-binding');
9
- }
10
- }
@@ -1,11 +0,0 @@
1
- import {ModalDialogSteps} from "../modal-dialog-steps";
2
-
3
- export class AddRemoteLocationDialogSteps extends ModalDialogSteps {
4
- static typeLocation(location) {
5
- this.getDialog().find('#sesameLocation').type(location);
6
- }
7
-
8
- static addLocation() {
9
- this.getDialogFooter().find('.add-location-btn').click();
10
- }
11
- }
@@ -1,39 +0,0 @@
1
- import {ModalDialogSteps} from "../modal-dialog-steps";
2
-
3
- export class CreateClusterDialogSteps extends ModalDialogSteps {
4
- static getCreateClusterDialog() {
5
- return this.getDialog().find('.create-cluster-dialog');
6
- }
7
-
8
- static getClusterNodesPanel() {
9
- return this.getCreateClusterDialog().find('.cluster-nodes');
10
- }
11
-
12
- static getClusterNodesList() {
13
- return this.getClusterNodesPanel().find('.nodes-list .list-group-item');
14
- }
15
-
16
- static getRemoteLocationsList() {
17
- return this.getCreateClusterDialog().find('.remote-locations .location-item');
18
- }
19
-
20
- static getSaveClusterConfigButton() {
21
- return this.getDialogFooter().find('.create-cluster-btn');
22
- }
23
-
24
- static saveClusterConfig() {
25
- return this.getSaveClusterConfigButton().click();
26
- }
27
-
28
- static openAddRemoteLocationDialog() {
29
- this.getDialog().find('#addLocation').click();
30
- }
31
-
32
- static selectRemoteLocation(index) {
33
- this.getRemoteLocationsList().eq(index).click();
34
- }
35
-
36
- static getNoSelectedNodesWarning() {
37
- return this.getDialog().find('.no-selected-nodes');
38
- }
39
- }
@@ -1,39 +0,0 @@
1
- import {ModalDialogSteps} from "../modal-dialog-steps";
2
-
3
- export class ReplaceNodesDialogSteps extends ModalDialogSteps {
4
- static getReplaceClusterDialog() {
5
- return this.getDialog().find('.replace-cluster-nodes-dialog');
6
- }
7
-
8
- static getClusterNodes() {
9
- return this.getDialogBody().find('.nodes-list .list-group-item-node');
10
- }
11
-
12
- static selectClusterNode(index) {
13
- this.getClusterNodes().eq(index).click();
14
- }
15
-
16
- static getRemoteLocations() {
17
- return this.getDialogBody().find('.locations-list .location-item');
18
- }
19
-
20
- static getReplaceNodesButton() {
21
- return this.getDialogFooter().find('#wb-replace-nodes-in-cluster-submit');
22
- }
23
-
24
- static replaceNodes() {
25
- this.getReplaceNodesButton().click();
26
- }
27
-
28
- static getRemoteLocationsList() {
29
- return this.getReplaceClusterDialog().find('.remote-locations .location-item');
30
- }
31
-
32
- static selectRemoteLocation(index) {
33
- this.getRemoteLocationsList().eq(index).click();
34
- }
35
-
36
- static getSelectedRemoteLocations() {
37
- return this.getReplaceClusterDialog().find('.selected-remote-locations .list-group-item-node');
38
- }
39
- }