graphdb-workbench-tests 3.4.0-TR4 → 3.4.0-TR6

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 (365) hide show
  1. package/.editorconfig +17 -0
  2. package/.nycrc +10 -0
  3. package/cypress-flaky.config.js +20 -6
  4. package/cypress-legacy.config.js +47 -0
  5. package/cypress-security.config.js +36 -0
  6. package/cypress.config.js +45 -6
  7. package/{integration-flaky → e2e-flaky}/explore/visual.graph.spec.js +4 -1
  8. package/{integration-flaky → e2e-flaky}/import/import-server-files-operations.spec.js +2 -2
  9. package/{integration-flaky → e2e-flaky}/import/import-user-data-batch-operations.spec.js +3 -3
  10. package/e2e-flaky/import/import-user-data-url.spec.js +63 -0
  11. package/{integration-flaky → e2e-flaky}/setup/sparql-template-create.js +10 -18
  12. package/{integration-flaky → e2e-flaky}/sparql-editor/actions/execute-update-query.spec.js +2 -12
  13. package/{integration-flaky → e2e-flaky}/sparql-editor/actions/share-query.spec.js +1 -7
  14. package/{integration-flaky → e2e-flaky}/sparql-editor/yasr/table-plugin.spec.js +3 -7
  15. package/{integration → e2e-legacy}/cluster/cluster-states.spec.js +3 -3
  16. package/e2e-legacy/explore/class-hierarchy/class-hierarchy-with-selected-repository-without-class-hierarchy.spec.js +42 -0
  17. package/e2e-legacy/explore/class-hierarchy/class-hierarchy-with-selected-repository.spec.js +43 -0
  18. package/e2e-legacy/explore/class-hierarchy/class-hierarchy-without-selected-repository.spec.js +30 -0
  19. package/{integration/explore → e2e-legacy/explore/class-hierarchy}/class.hierarchy.spec.js +1 -1
  20. package/e2e-legacy/explore/class-relationships/class-relationships-repository-with-data.spec.js +42 -0
  21. package/e2e-legacy/explore/class-relationships/class-relationships-with-selected-repository.spec.js +39 -0
  22. package/e2e-legacy/explore/class-relationships/class-relationships-without-selected-repository.spec.js +21 -0
  23. package/{integration/explore/class.relationships.spec.js → e2e-legacy/explore/class-relationships/class-relationships.spec.js} +20 -50
  24. package/{integration/explore → e2e-legacy/explore/graphs-overview}/graphs.overview.spec.js +4 -4
  25. package/e2e-legacy/explore/graphs-overview/initial-state/graphs-overview-with-selected-repository.spec.js +44 -0
  26. package/e2e-legacy/explore/graphs-overview/initial-state/graphs-overview-without-selected-repository.spec.js +32 -0
  27. package/e2e-legacy/explore/similarity-index/similarity-index-with-repository.spec.js +38 -0
  28. package/e2e-legacy/explore/similarity-index/similarity-index-without-repository.spec.js +21 -0
  29. package/{integration → e2e-legacy}/explore/visual-graph/graphs-config.spec.js +5 -10
  30. package/e2e-legacy/explore/visual-graph/node-info-panel.spec.js +58 -0
  31. package/e2e-legacy/explore/visual-graph/visual-graph-links-limit.spec.js +142 -0
  32. package/{integration → e2e-legacy}/explore/visual-graph/visual-graph-node-labels.spec.js +14 -2
  33. package/e2e-legacy/explore/visual-graph/visual-graph-with-selected-repository.js +38 -0
  34. package/e2e-legacy/explore/visual-graph/visual-graph-without-selected-repository.js +21 -0
  35. package/{integration → e2e-legacy}/explore/visual-graph/visual.graph.spec.js +75 -96
  36. package/{integration → e2e-legacy}/graphql/create-graphql-endpoint.spec.js +0 -2
  37. package/{integration → e2e-legacy}/graphql/edit-graphql-enpoint.spec.js +1 -1
  38. package/{integration → e2e-legacy}/graphql/filter-graphql-endpoints-on-management-view.spec.js +1 -1
  39. package/{integration → e2e-legacy}/graphql/graphql-endpoint-management-view.spec.js +4 -4
  40. package/e2e-legacy/graphql/graphql-endpoint-management-with-endpoints.spec.js +43 -0
  41. package/e2e-legacy/graphql/graphql-endpoint-management-with-selected-repository.spec.js +39 -0
  42. package/e2e-legacy/graphql/graphql-endpoint-management-without-selected-repository.spec.js +21 -0
  43. package/e2e-legacy/graphql/graphql-playground-with-endpoints.spec.js +40 -0
  44. package/e2e-legacy/graphql/graphql-playground-with-selected-repository.spec.js +38 -0
  45. package/e2e-legacy/graphql/graphql-playground-without-selected-repository.spec.js +22 -0
  46. package/{integration → e2e-legacy}/graphql/graphql-playground.spec.js +1 -1
  47. package/e2e-legacy/graphql/graphql-theme.spec.js +73 -0
  48. package/{integration → e2e-legacy}/graphql/import-graphql-endpoint-definitions.spec.js +0 -6
  49. package/e2e-legacy/guides/autocomplete/enable-autocomplete-guide.spec.js +49 -0
  50. package/e2e-legacy/guides/class-hierarcy/class-hierarchy-guide.spec.js +89 -0
  51. package/e2e-legacy/guides/class-relations/class-relations-guide.spec.js +76 -0
  52. package/e2e-legacy/guides/connectors/connectors-guide.spec.js +163 -0
  53. package/e2e-legacy/guides/create-similarity-index/create-similarity-index-guide.spec.js +74 -0
  54. package/e2e-legacy/guides/download-guide-resource/download-guide-resource-guide.js +55 -0
  55. package/e2e-legacy/guides/execute-sparql-query/execute-sparql-query-guide.spec.js +92 -0
  56. package/e2e-legacy/guides/import-rdf-file/confirm-duplicate-rdf-file.spec.js +63 -0
  57. package/e2e-legacy/guides/import-rdf-file/import-rdf-file.spec.js +105 -0
  58. package/e2e-legacy/guides/main-menu/main-menu-guide.spec.js +302 -0
  59. package/e2e-legacy/guides/navigation/navigation-guide.spec.js +64 -0
  60. package/e2e-legacy/guides/rdf-rank/rdf-rank-guide.spec.js +42 -0
  61. package/e2e-legacy/guides/repositories/create-repository-guide.spec.js +69 -0
  62. package/e2e-legacy/guides/table-graph-explore/table-graph-explore-guide.spec.js +168 -0
  63. package/e2e-legacy/guides/ttyg/configure-agent/configure-agent-guide.spec.js +158 -0
  64. package/e2e-legacy/guides/ttyg/conversation/ttyg-conversation-guide.spec.js +92 -0
  65. package/e2e-legacy/guides/ttyg/edit-agent/edit-ttyg-agent-guide.spec.js +88 -0
  66. package/e2e-legacy/guides/visual-graph/visual-graph-guide.spec.js +372 -0
  67. package/e2e-legacy/guides/welcome/welcome-guide.spec.js +36 -0
  68. package/e2e-legacy/help/guides/guides-autostart.spec.js +126 -0
  69. package/e2e-legacy/help/guides/guides-confirm-cancel-dialog.js +83 -0
  70. package/e2e-legacy/help/guides/guides-with-repository.spec.js +32 -0
  71. package/e2e-legacy/help/guides/guides-without-repository.spec.js +20 -0
  72. package/e2e-legacy/help/guides/movies-interactive-guide.spec.js +71 -0
  73. package/{integration/guides/star-wars-interactive-guide.js → e2e-legacy/help/guides/star-wars-interactive-guide.spec.js} +3 -2
  74. package/e2e-legacy/help/rest-api-documentatio/rest-api-documentation-with-repository.spec.js +32 -0
  75. package/e2e-legacy/help/rest-api-documentatio/rest-api-documentation-without-repository.spec.js +20 -0
  76. package/e2e-legacy/help/system-information/system-information-with-repository.spec.js +32 -0
  77. package/e2e-legacy/help/system-information/system-information-without-repository.spec.js +20 -0
  78. package/e2e-legacy/home/cookie-policy/cookie-policy.spec.js +182 -0
  79. package/e2e-legacy/home/documentation-link.spec.js +41 -0
  80. package/{integration → e2e-legacy}/home/google-analytics.spec.js +4 -6
  81. package/e2e-legacy/home/home-page-with-selected-repository.spec.js +69 -0
  82. package/e2e-legacy/home/home-page-without-repositories.spec.js +87 -0
  83. package/e2e-legacy/home/home-page-without-selected-repository.spec.js +59 -0
  84. package/{integration → e2e-legacy}/home/language-change.spec.js +2 -2
  85. package/e2e-legacy/home/rdf-resource-search.spec.js +160 -0
  86. package/e2e-legacy/home/view-resource-autocomplete.spec.js +65 -0
  87. package/{integration → e2e-legacy}/import/import-server-files.spec.js +5 -3
  88. package/{integration → e2e-legacy}/import/import-user-data-file-upload.spec.js +19 -13
  89. package/{integration → e2e-legacy}/import/import-user-data-text-snippet.spec.js +0 -2
  90. package/{integration → e2e-legacy}/import/import-user-data-url.spec.js +0 -23
  91. package/{integration → e2e-legacy}/import/import-user-data.spec.js +11 -4
  92. package/e2e-legacy/import/initial-state/import-page-with-selected-repositor.js +51 -0
  93. package/e2e-legacy/import/initial-state/import-page-with-selected-repository-without-imported-files.js +45 -0
  94. package/e2e-legacy/import/initial-state/import-page-without-selected-repository.spec.js +28 -0
  95. package/e2e-legacy/license/license-with-repository.spec.js +113 -0
  96. package/e2e-legacy/license/license-without-repository.spec.js +103 -0
  97. package/{integration → e2e-legacy}/license/license.spec.js +4 -4
  98. package/e2e-legacy/monitor/backup-and-restore/backup-and-restore-with-repository.spec.js +36 -0
  99. package/e2e-legacy/monitor/backup-and-restore/backup-and-restore-without-repository.spec.js +25 -0
  100. package/{integration/monitor/monitor.backup-and-restore.spec.js → e2e-legacy/monitor/backup-and-restore/backup-and-restore.spec.js} +2 -2
  101. package/{integration → e2e-legacy}/monitor/global-operation-statuses-component.spec.js +12 -5
  102. package/e2e-legacy/monitor/query-and-updates/queries-and-updates-with-repository.spec.js +39 -0
  103. package/e2e-legacy/monitor/query-and-updates/queries-and-updates-without-repository.spec.js +21 -0
  104. package/{integration/monitor → e2e-legacy/monitor/system}/monitor.resources.spec.js +3 -2
  105. package/e2e-legacy/monitor/system/system-monitoring-with-repository.spec.js +32 -0
  106. package/e2e-legacy/monitor/system/system-monitoring-without-repository.spec.js +20 -0
  107. package/e2e-legacy/not-found/not-found.spec.js +23 -0
  108. package/{integration → e2e-legacy}/repository/ontop-repository.spec.js +1 -1
  109. package/{integration → e2e-legacy}/repository/repositories.spec.js +37 -45
  110. package/e2e-legacy/repository/url-with-repository-id-parameter.spec.js +181 -0
  111. package/{integration → e2e-legacy}/resource/resource.spec.js +50 -20
  112. package/e2e-legacy/setup/aclmanagement/acl-management-with-selected repository.spec.js +84 -0
  113. package/e2e-legacy/setup/aclmanagement/acl-management-without-repositories.spec.js +21 -0
  114. package/{integration → e2e-legacy}/setup/aclmanagement/create-rule.spec.js +4 -0
  115. package/e2e-legacy/setup/autocomplete/autocomplete-with-repository.spec.js +40 -0
  116. package/e2e-legacy/setup/autocomplete/autocomplete-without-repository.spec.js +27 -0
  117. package/{integration/setup → e2e-legacy/setup/autocomplete}/autocomplete.spec.js +6 -7
  118. package/e2e-legacy/setup/cluster/cluster-initial-state-with-cluster.spec.js +34 -0
  119. package/e2e-legacy/setup/cluster/cluster-initial-state-without-cluster.spec.js +25 -0
  120. package/e2e-legacy/setup/connectors/connectors-initial-state-with-selected-repository.spec.js +41 -0
  121. package/e2e-legacy/setup/connectors/connectors-initial-state-without-repositories.spec.js +21 -0
  122. package/{integration → e2e-legacy}/setup/connectors-lucene.spec.js +26 -10
  123. package/{integration → e2e-legacy}/setup/jdbc/jdbc-create.spec.js +4 -4
  124. package/e2e-legacy/setup/jdbc/jdbc-with-repository.spec.js +39 -0
  125. package/e2e-legacy/setup/jdbc/jdbc-without-repository.spec.js +27 -0
  126. package/e2e-legacy/setup/namespaces/namespaces-with-repository.spec.js +44 -0
  127. package/e2e-legacy/setup/namespaces/namespaces-without-repository.spec.js +27 -0
  128. package/{integration/setup → e2e-legacy/setup/namespaces}/namespaces.spec.js +6 -5
  129. package/e2e-legacy/setup/plugins/plugins-with-repository.spec.js +38 -0
  130. package/e2e-legacy/setup/plugins/plugins-without-repository.spec.js +28 -0
  131. package/{integration/setup → e2e-legacy/setup/plugins}/plugins.spec.js +3 -3
  132. package/e2e-legacy/setup/rdf-rank/rdf-rank-with-repository.spec.js +40 -0
  133. package/e2e-legacy/setup/rdf-rank/rdf-rank-without-repository.spec.js +30 -0
  134. package/{integration/setup → e2e-legacy/setup/rdf-rank}/rdf-rank.spec.js +3 -5
  135. package/e2e-legacy/setup/repositories/repositories-view-with-repositories.spec.js +40 -0
  136. package/e2e-legacy/setup/repositories/repositories-view-without-repositories.spec.js +28 -0
  137. package/e2e-legacy/setup/settings/my-settings-initial-state.spec.js +86 -0
  138. package/e2e-legacy/setup/settings/my-settings.spec.js +207 -0
  139. package/{integration/setup/sparql-template-create.js → e2e-legacy/setup/sparql-template/sparql-template-create.spec.js} +16 -8
  140. package/e2e-legacy/setup/sparql-template/sparql-template-with-repository.spec.js +39 -0
  141. package/e2e-legacy/setup/sparql-template/sparql-template-without-repository.spec.js +29 -0
  142. package/{integration/setup → e2e-legacy/setup/sparql-template}/sparql-templates.spec.js +4 -4
  143. package/{integration/setup → e2e-legacy/setup/users-and-access}/user-and-access.spec.js +184 -87
  144. package/e2e-legacy/setup/users-and-access/users-and-access-initial-state.spec.js +25 -0
  145. package/{integration → e2e-legacy}/sparql-editor/actions/expand-results-over-sameas.spec.js +12 -12
  146. package/{integration → e2e-legacy}/sparql-editor/actions/include-inferred-statements.spec.js +6 -6
  147. package/{integration → e2e-legacy}/sparql-editor/actions/inferred-sameas.spec.js +10 -8
  148. package/{integration → e2e-legacy}/sparql-editor/actions/show-saved-queries.spec.js +1 -6
  149. package/{integration → e2e-legacy}/sparql-editor/saved-query/abort-query.spec.js +1 -1
  150. package/{integration → e2e-legacy}/sparql-editor/saved-query/edit-query.spec.js +3 -3
  151. package/{integration → e2e-legacy}/sparql-editor/saved-query/readonly-query.spec.js +15 -24
  152. package/{integration → e2e-legacy}/sparql-editor/saved-query/share-query.spec.js +32 -1
  153. package/e2e-legacy/sparql-editor/sparql-page-with-selected-repository.spec.js +33 -0
  154. package/e2e-legacy/sparql-editor/sparql-page-without-selected-repository.spec.js +26 -0
  155. package/{integration → e2e-legacy}/sparql-editor/yasgui-tabs.spec.js +2 -12
  156. package/e2e-legacy/sparql-editor/yasqe-themes.spec.js +54 -0
  157. package/{integration → e2e-legacy}/sparql-editor/yasr/pagination.spec.js +5 -18
  158. package/{integration → e2e-legacy}/sparql-editor/yasr/table-plugin.spec.js +1 -6
  159. package/e2e-legacy/sparql-editor/yasr/toolbar/visual-graph-button.spec.js +106 -0
  160. package/e2e-legacy/sparql-editor/yasr/yasr.spec.js +80 -0
  161. package/{integration → e2e-legacy}/ttyg/agent-list.spec.js +53 -2
  162. package/{integration → e2e-legacy}/ttyg/agent-select-menu.spec.js +25 -2
  163. package/{integration → e2e-legacy}/ttyg/chat-list.spec.js +3 -14
  164. package/{integration → e2e-legacy}/ttyg/chat-panel.spec.js +74 -6
  165. package/{integration → e2e-legacy}/ttyg/clone-agent.spec.js +24 -2
  166. package/{integration → e2e-legacy}/ttyg/create-agent.spec.js +37 -66
  167. package/{integration → e2e-legacy}/ttyg/create-chat.spec.js +6 -4
  168. package/{integration → e2e-legacy}/ttyg/delete-agent.spec.js +1 -2
  169. package/e2e-legacy/ttyg/edit-agent.spec.js +178 -0
  170. package/e2e-legacy/ttyg/ttyg-initial-state-with-configured-api-key.spec.js +46 -0
  171. package/e2e-legacy/ttyg/ttyg-initial-state-with-selected-repository.spec.js +45 -0
  172. package/e2e-legacy/ttyg/ttyg-initial-state-without-repositories.spec.js +21 -0
  173. package/{integration-flaky → e2e-legacy}/ttyg/ttyg-permission.spec.js +23 -17
  174. package/{integration → e2e-legacy}/ttyg/ttyg-view.spec.js +2 -2
  175. package/e2e-security/repository/url-with-repository-id-parameter.spec.js +57 -0
  176. package/e2e-security/setup/home/cookie-policy.spec.js +290 -0
  177. package/e2e-security/setup/users-and-access/create-user-permissions.spec.js +193 -0
  178. package/e2e-security/setup/users-and-access/graphql-user.spec.js +126 -0
  179. package/e2e-security/setup/users-and-access/repo-admin-role.spec.js +70 -0
  180. package/e2e-security/setup/users-and-access/turn-on-security-and-password-change.spec.js +99 -0
  181. package/e2e-security/setup/users-and-access/user-and-access.spec.js +87 -0
  182. package/e2e-security/setup/users-and-access/users-and-access-initial-state.spec.js +38 -0
  183. package/eslint.config.js +39 -0
  184. package/fixtures/graph/graph-configurations.json +59 -0
  185. package/fixtures/guides/autocomplete/enable-autocomplete-guide.json +12 -0
  186. package/fixtures/guides/class-hierarchy/class-hierarchy-guide.json +35 -0
  187. package/fixtures/guides/class-relations/class-relations-guide.json +33 -0
  188. package/fixtures/guides/confirm-cancel-dialog/confirm-cancel-dialog-guide.json +15 -0
  189. package/fixtures/guides/connectors/connectors-guide.json +66 -0
  190. package/fixtures/guides/connectors/lucene-connector-guide.json +120 -0
  191. package/fixtures/guides/create-repository/create-repository-guide.json +25 -0
  192. package/fixtures/guides/create-similarity-index/create-similarity-index-guide.json +36 -0
  193. package/fixtures/guides/download-guide-resource/download-guide-resource-guide.json +25 -0
  194. package/fixtures/guides/download-resource.ttl +629 -0
  195. package/fixtures/guides/execute-sparql-query/execute-sparql-query-guide.json +54 -0
  196. package/fixtures/guides/import-rdf-file/confirm-duplicate-rdf-file-guide.json +30 -0
  197. package/fixtures/guides/import-rdf-file/import-rdf-file-guide.json +21 -0
  198. package/fixtures/guides/main-menu/main-menu-guide.json +98 -0
  199. package/fixtures/guides/navigation/navigation-guide.json +60 -0
  200. package/fixtures/guides/rdf-rank/rdf-rank-guide.json +18 -0
  201. package/fixtures/guides/table-graph-explore/table-graph-explore-guide.json +51 -0
  202. package/fixtures/guides/table-graph-explore/table-graph-explore-without-substeps-guide.json +25 -0
  203. package/fixtures/guides/ttyg/configure-agent/configure-ttyg-agent-guide.json +74 -0
  204. package/fixtures/guides/ttyg/conversation/ttyg-conversation-guide.json +26 -0
  205. package/fixtures/guides/ttyg/edit-ttyg-agent/edit-ttyg-agent-guide.json +22 -0
  206. package/fixtures/guides/visual-graph/visual-graph-config-guide.json +39 -0
  207. package/fixtures/guides/visual-graph/visual-graph-guide.json +85 -0
  208. package/fixtures/guides/welcome/welcome-guide.json +18 -0
  209. package/fixtures/repositories/free-access.json +13 -0
  210. package/fixtures/similarity/get-ttyg-similarity-instances.json +10 -0
  211. package/fixtures/ttyg/agent/get-agent-defaults-assistant-api.json +44 -0
  212. package/fixtures/ttyg/agent/get-agent-defaults.json +9 -2
  213. package/fixtures/ttyg/agent/get-agent-list-with-incompatible-agents.json +79 -0
  214. package/fixtures/ttyg/agent/get-similarity-indexes-for-another-repo.json +8 -0
  215. package/fixtures/ttyg/agent/get-similarity-indexes.json +22 -0
  216. package/fixtures/ttyg/chats/ask-question-cancel.json +12 -0
  217. package/fixtures/ttyg/chats/ask-question.json +12 -2
  218. package/fixtures/ttyg/chats/cancel-question-response.json +1 -0
  219. package/fixtures/ttyg/chats/create/create-chat-response.json +10 -14
  220. package/fixtures/ttyg/chats/create/question-response-after-chat-creation.json +29 -0
  221. package/fixtures/ttyg/chats/explain-response-1.json +2 -48
  222. package/fixtures/ttyg/chats/explain-response-3.json +12 -0
  223. package/fixtures/ttyg/chats/get-chat.json +6 -1
  224. package/npm-shrinkwrap.json +11004 -3815
  225. package/package.json +58 -42
  226. package/plugins/index.js +10 -5
  227. package/steps/application-steps.js +8 -6
  228. package/steps/base-steps.js +29 -0
  229. package/steps/class-views-steps.js +35 -7
  230. package/steps/cluster/cluster-page-steps.js +12 -2
  231. package/steps/cookie-policy/cookie-consent-banner-steps.js +21 -0
  232. package/steps/cookie-policy/cookie-policy-modal.steps.js +56 -0
  233. package/steps/error-page-steps.js +9 -0
  234. package/steps/error-steps.js +15 -3
  235. package/steps/explore/class-relationships-steps.js +64 -0
  236. package/steps/explore/graphs-overview-steps.js +21 -1
  237. package/steps/explore/similarity-index-create-steps.js +5 -3
  238. package/steps/explore/similarity-indexes-steps.js +16 -2
  239. package/steps/graphql/graphql-endpoint-management-steps.js +2 -2
  240. package/steps/graphql/playground-editor-steps.js +46 -0
  241. package/steps/guides/guide-dialog-steps.js +81 -2
  242. package/steps/guides/guide-steps.js +54 -2
  243. package/steps/guides/movies-guide-steps.js +2 -1
  244. package/steps/header-steps.js +22 -0
  245. package/steps/home-steps.js +184 -77
  246. package/steps/import/import-resource-message-dialog.js +1 -1
  247. package/steps/import/import-steps.js +12 -16
  248. package/steps/import/import-user-data-steps.js +5 -1
  249. package/steps/language-selector-steps.js +2 -2
  250. package/steps/license-steps.js +91 -9
  251. package/steps/login-steps.js +31 -6
  252. package/steps/main-menu-steps.js +244 -19
  253. package/steps/modal-dialog-steps.js +32 -1
  254. package/steps/monitoring/backup-and-restore-steps.js +9 -3
  255. package/steps/monitoring/queries-and-updates-steps.js +20 -0
  256. package/steps/monitoring/system-monitoring-steps.js +40 -0
  257. package/steps/not-found/not-found-steps.js +23 -0
  258. package/steps/operations-statuses-component-steps.js +5 -10
  259. package/steps/rdf-resource-search-steps.js +55 -0
  260. package/steps/repository-selector-steps.js +3 -3
  261. package/steps/repository-steps.js +88 -18
  262. package/steps/resource/resource-steps.js +6 -10
  263. package/steps/rest-api-documentation-steps.js +15 -0
  264. package/steps/setup/acl-management-steps.js +18 -2
  265. package/steps/setup/autocomplete-steps.js +23 -8
  266. package/steps/setup/connectors-steps.js +32 -0
  267. package/steps/setup/jdbc-steps.js +18 -4
  268. package/steps/setup/namespace-steps.js +10 -7
  269. package/steps/setup/plugins-steps.js +12 -5
  270. package/steps/setup/rdf-rank-steps.js +23 -9
  271. package/steps/setup/settings-steps.js +101 -2
  272. package/steps/setup/sparql-templates-steps.js +19 -1
  273. package/steps/setup/user-and-access-steps.js +50 -16
  274. package/steps/shared-modal-dialog-steps.js +45 -0
  275. package/steps/sparql-editor-steps.js +21 -2
  276. package/steps/sparql-steps.js +13 -1
  277. package/steps/system-information-steps.js +70 -0
  278. package/steps/toaster-steps.js +18 -6
  279. package/steps/ttyg/chat-panel-steps.js +40 -2
  280. package/steps/ttyg/ttyg-agent-settings-modal.steps.js +136 -31
  281. package/steps/ttyg/ttyg-view-steps.js +80 -10
  282. package/steps/visual-graph-split-button-steps.js +45 -0
  283. package/steps/visual-graph-steps.js +106 -10
  284. package/steps/widgets/active-repository-widget-steps.js +29 -0
  285. package/steps/widgets/license-widget-steps.js +9 -0
  286. package/steps/widgets/repository-errors-widget-steps.js +21 -0
  287. package/steps/widgets/saved-sparql-queries-widget-steps.js +9 -0
  288. package/steps/yasgui/yasgui-loader.js +3 -3
  289. package/steps/yasgui/yasgui-steps.js +1 -1
  290. package/steps/yasgui/yasqe-steps.js +35 -4
  291. package/steps/yasgui/yasr-steps.js +35 -5
  292. package/stubs/autocomplete/autocomplete-stubs.js +7 -0
  293. package/stubs/browser-stubs.js +21 -0
  294. package/stubs/environment-stubs.js +9 -1
  295. package/stubs/graph-config-stubs.js +17 -0
  296. package/stubs/guides/guides-stubs.js +103 -0
  297. package/stubs/license-stubs.js +51 -0
  298. package/stubs/repositories/repositories-stubs.js +180 -75
  299. package/stubs/saved-queries-stubs.js +5 -0
  300. package/stubs/security-stubs.js +12 -0
  301. package/stubs/similarity-index-stubs.js +4 -0
  302. package/stubs/sparql-stubs.js +10 -0
  303. package/stubs/ttyg/ttyg-stubs.js +64 -15
  304. package/stubs/yasgui/query-stubs.js +5 -1
  305. package/support/commands.js +22 -1
  306. package/support/connector-commands.js +13 -0
  307. package/support/e2e-security.js +9 -0
  308. package/support/{index.js → e2e.js} +9 -3
  309. package/support/repository-commands.js +29 -4
  310. package/support/settings-commands.js +33 -1
  311. package/support/url-commands.js +13 -0
  312. package/support/user-commands.js +9 -4
  313. package/utils/html-util.js +24 -4
  314. package/Dockerfile +0 -11
  315. package/fixtures/locale-en.json +0 -3342
  316. package/integration/explore/similarity-index/similarity-index-create.spec.js +0 -333
  317. package/integration/explore/similarity-index/similarity-index.spec.js +0 -88
  318. package/integration/explore/similarity-index/similarity.spec.js +0 -628
  319. package/integration/guides/movies-interactive-guide.spec.js +0 -73
  320. package/integration/home/cookie-policy.spec.js +0 -90
  321. package/integration/home/documentation-link.spec.js +0 -60
  322. package/integration/home/language-selector.spec.js +0 -19
  323. package/integration/home/rdf-resource-search.spec.js +0 -177
  324. package/integration/home/view-resource-autocomplete.spec.js +0 -52
  325. package/integration/home/workbench.home.spec.js +0 -30
  326. package/integration/monitor/monitor.queries.spec.js +0 -31
  327. package/integration/setup/my-settings.spec.js +0 -289
  328. package/integration/sparql-editor/yasr/toolbar/visual-graph-button.spec.js +0 -57
  329. package/integration/ttyg/edit-agent.spec.js +0 -99
  330. package/integration-flaky/setup/users-and-access/security-and-free-access.spec.js +0 -54
  331. package/stubs/repositories-stub.js +0 -73
  332. package/{integration-flaky → e2e-flaky}/import/import.server.files.spec.js +0 -0
  333. package/{integration-flaky → e2e-flaky}/sparql-editor/lucene-connector.spec.js +0 -0
  334. package/{integration-flaky → e2e-flaky}/sparql-editor/plugins/error-plugin.spec.js +0 -0
  335. package/{integration → e2e-legacy}/cluster/cluster-configuration/cluster-configuration-multi-region.spec.js +0 -0
  336. package/{integration → e2e-legacy}/cluster/cluster-configuration/cluster-configuration-nodes.spec.js +0 -0
  337. package/{integration → e2e-legacy}/cluster/cluster-configuration/cluster-configuration-properties.spec.js +0 -0
  338. package/{integration → e2e-legacy}/cluster/cluster-configuration/cluster-configuration.spec.js +0 -0
  339. package/{integration → e2e-legacy}/cluster/cluster-legend.spec.js +0 -0
  340. package/{integration → e2e-legacy}/cluster/edit-cluster-nodes-modal.spec.js +0 -0
  341. package/{integration → e2e-legacy}/graphql/activate-deactivate-graphql-endpoint.spec.js +0 -0
  342. package/{integration → e2e-legacy}/graphql/delete-graphql-endpoint.spec.js +0 -0
  343. package/{integration → e2e-legacy}/graphql/export-graphql-endpoint-definition.spec.js +0 -0
  344. package/{integration → e2e-legacy}/graphql/set-default-graphql-endpoint.spec.js +0 -0
  345. package/{integration/help → e2e-legacy/help/system-information}/system-information.spec.js +0 -0
  346. package/{integration → e2e-legacy}/home/create-repository.spec.js +0 -0
  347. package/{integration → e2e-legacy}/import/import-server-files-batch-operations.spec.js +0 -0
  348. package/{integration → e2e-legacy}/import/import-user-data-settings-dialog.spec.js +0 -0
  349. package/{integration → e2e-legacy}/import/import-view.spec.js +0 -0
  350. package/{integration → e2e-legacy}/repository/attach-remote-location.spec.js +1 -1
  351. /package/{integration → e2e-legacy}/repository/repository-commands.spec.js +0 -0
  352. /package/{integration → e2e-legacy}/setup/aclmanagement/delete-rule.spec.js +0 -0
  353. /package/{integration → e2e-legacy}/setup/aclmanagement/edit-rule.spec.js +0 -0
  354. /package/{integration → e2e-legacy}/setup/aclmanagement/render-rules.spec.js +0 -0
  355. /package/{integration → e2e-legacy}/setup/aclmanagement/reorder-rules.spec.js +0 -0
  356. /package/{integration → e2e-legacy}/setup/aclmanagement/revert-rules.spec.js +0 -0
  357. /package/{integration → e2e-legacy}/setup/aclmanagement/scopes.spec.js +0 -0
  358. /package/{integration → e2e-legacy}/setup/aclmanagement/update-rules.spec.js +0 -0
  359. /package/{integration → e2e-legacy}/setup/jdbc/jdbc.spec.js +0 -0
  360. /package/{integration → e2e-legacy}/sparql-editor/actions/execute-query.spec.js +0 -0
  361. /package/{integration → e2e-legacy}/sparql-editor/actions/save-query.spec.js +0 -0
  362. /package/{integration → e2e-legacy}/sparql-editor/internationalization.spec.js +0 -0
  363. /package/{integration → e2e-legacy}/sparql-editor/saved-query/delete-query.spec.js +0 -0
  364. /package/{integration → e2e-legacy}/sparql-editor/sparql-editor.spec.js +0 -0
  365. /package/{integration → e2e-legacy}/sparql-editor/yasr/download-as.spec.js +0 -0
@@ -0,0 +1,46 @@
1
+ export class PlaygroundEditorSteps {
2
+
3
+ static getResponse() {
4
+ return cy.get('.graphiql-response');
5
+ }
6
+
7
+ static getResponseCodeMirror() {
8
+ return PlaygroundEditorSteps.getResponse().find('.CodeMirror');
9
+ }
10
+
11
+ static getGraphiqlEditors() {
12
+ return cy.get('.graphiql-editors');
13
+ }
14
+
15
+ static getGraphiqlEditorsCodeMirror() {
16
+ return PlaygroundEditorSteps.getGraphiqlEditors().find('.CodeMirror');
17
+ }
18
+
19
+ static getGraphiqlEditorTools() {
20
+ return cy.get('.graphiql-editor-tools');
21
+ }
22
+
23
+ static getGraphiqlEditorTool() {
24
+ return cy.get('.graphiql-editor-tool');
25
+ }
26
+
27
+ static getVariablesBtn() {
28
+ return PlaygroundEditorSteps.getGraphiqlEditorTools().find('button[data-name="variables"]');
29
+ }
30
+
31
+ static openVariables() {
32
+ PlaygroundEditorSteps.getVariablesBtn().click();
33
+ }
34
+
35
+ static getHeadersBtn() {
36
+ return PlaygroundEditorSteps.getGraphiqlEditorTools().find('button[data-name="headers"]');
37
+ }
38
+
39
+ static openHeaders() {
40
+ PlaygroundEditorSteps.getHeadersBtn().click();
41
+ }
42
+
43
+ static getActiveGraphiqlEditorToolCodeMirror() {
44
+ return PlaygroundEditorSteps.getGraphiqlEditorTool().find('.graphiql-editor:not(.hidden) .CodeMirror');
45
+ }
46
+ }
@@ -1,4 +1,6 @@
1
- export class GuideDialogSteps {
1
+ import {BaseSteps} from "../base-steps.js";
2
+
3
+ export class GuideDialogSteps extends BaseSteps {
2
4
 
3
5
  static getModalDialog() {
4
6
  return cy.get('.shepherd-content:visible');
@@ -8,6 +10,50 @@ export class GuideDialogSteps {
8
10
  return GuideDialogSteps.getModalDialog().find('.shepherd-header');
9
11
  }
10
12
 
13
+ static getCancelButton() {
14
+ return this.getHeader().find('.shepherd-cancel-icon');
15
+ }
16
+
17
+ static clickOnCancelButton() {
18
+ return this.getCancelButton().click();
19
+ }
20
+
21
+ static getConfirmCancelDialog() {
22
+ return this.getByTestId('confirm-cancel-dialog');
23
+ }
24
+
25
+ static getConfirmCancelDialogCloseButton() {
26
+ return this.getByTestId('close-dialog-btn');
27
+ }
28
+
29
+ static clickOnConfirmCancelDialogCloseButton() {
30
+ return this.getConfirmCancelDialogCloseButton().click();
31
+ }
32
+
33
+ static getConfirmCancelDialogCancelButton() {
34
+ return this.getByTestId('cancel-btn');
35
+ }
36
+
37
+ static clickConfirmCancelDialogCancelButton() {
38
+ return this.getConfirmCancelDialogCancelButton().click();
39
+ }
40
+
41
+ static getConfirmCancelDialogDontShowAgainButton() {
42
+ return this.getByTestId('dont-show-again-btn');
43
+ }
44
+
45
+ static clickConfirmCancelDialogDontShowAgainButton() {
46
+ return this.getConfirmCancelDialogDontShowAgainButton().click();
47
+ }
48
+
49
+ static getConfirmCancelDialogExitButton() {
50
+ return this.getByTestId('exit-btn');
51
+ }
52
+
53
+ static clickConfirmCancelDialogExitButton() {
54
+ return this.getConfirmCancelDialogExitButton().click();
55
+ }
56
+
11
57
  static getContent() {
12
58
  return GuideDialogSteps.getModalDialog().find('.shepherd-text');
13
59
  }
@@ -24,15 +70,48 @@ export class GuideDialogSteps {
24
70
  return GuideDialogSteps.getFooter().find('.shepherd-button').contains('Previous');
25
71
  }
26
72
 
73
+ static getCloseButton() {
74
+ return GuideDialogSteps.getFooter().find('.shepherd-button').contains('Close');
75
+ }
76
+
77
+ static getSkipButton() {
78
+ return GuideDialogSteps.getFooter().find('.shepherd-button').contains('Skip');
79
+ }
80
+
27
81
  static clickOnNextButton(forceVisible = false) {
28
- GuideDialogSteps.getNextButton().scrollIntoView().click({force: forceVisible});
82
+ return GuideDialogSteps.getNextButton().scrollIntoView().click({force: forceVisible});
29
83
  }
30
84
 
31
85
  static clickOnPreviousButton(forceVisible = false) {
32
86
  GuideDialogSteps.getPreviousButton().scrollIntoView().click({force: forceVisible});
33
87
  }
34
88
 
89
+ static clickOnCloseButton() {
90
+ GuideDialogSteps.getCloseButton().scrollIntoView().click();
91
+ }
92
+
93
+ static clickOnSkipButton() {
94
+ GuideDialogSteps.getSkipButton().scrollIntoView().click();
95
+ }
96
+
97
+ static getContentLink() {
98
+ return GuideDialogSteps.getContent().find('a');
99
+ }
100
+
101
+
35
102
  static assertDialogWithTitleIsVisible(text) {
36
103
  GuideDialogSteps.getHeader().contains(text);
37
104
  }
105
+
106
+ static assertDialogWithContentIsVisible(text) {
107
+ GuideDialogSteps.getContent().should('contain.text', text);
108
+ }
109
+
110
+ static assertDialogIsClosed() {
111
+ GuideDialogSteps.getModalDialog().should('not.exist');
112
+ }
113
+
114
+ static copyQueryToEditor() {
115
+ GuideDialogSteps.getModalDialog().find('.guide-copy-to-editor-query-button').click();
116
+ }
38
117
  }
@@ -4,16 +4,29 @@ import {RepositorySteps} from "../repository-steps";
4
4
  import {RepositorySelectorSteps} from "../repository-selector-steps";
5
5
  import {AutocompleteSteps} from "../setup/autocomplete-steps";
6
6
  import ImportSteps from "../import/import-steps";
7
+ import {BaseSteps} from "../base-steps";
7
8
 
8
- export class GuideSteps {
9
+ export class GuideSteps extends BaseSteps {
9
10
  static visit() {
10
11
  cy.visit('/guides');
11
12
  }
12
13
 
14
+ static autostartGuide(guideId) {
15
+ cy.visit(`/?autostartGuide=${guideId}`);
16
+ }
17
+
13
18
  static runGuide(guideName) {
14
19
  cy.contains('td', guideName)
15
20
  .parent()
16
- .within($tr => {
21
+ .within(() => {
22
+ cy.get('.btn').click();
23
+ });
24
+ }
25
+
26
+ static runFirstGuide() {
27
+ cy.get('tbody tr')
28
+ .first()
29
+ .within(() => {
17
30
  cy.get('.btn').click();
18
31
  });
19
32
  }
@@ -26,10 +39,18 @@ export class GuideSteps {
26
39
  cy.get(selector).should('be.visible');
27
40
  }
28
41
 
42
+ static getGuidesModal() {
43
+ return cy.get('.shepherd-modal-is-visible');
44
+ }
45
+
29
46
  static assertPageNotInteractive() {
30
47
  cy.get('.shepherd-modal-is-visible');
31
48
  }
32
49
 
50
+ static getModalOverlay() {
51
+ return cy.get('.shepherd-modal-overlay-container');
52
+ }
53
+
33
54
  static assertWelcomePage(guideName) {
34
55
  GuideDialogSteps.assertDialogWithTitleIsVisible(`Welcome to ${guideName} — 2/2`);
35
56
  GuideSteps.assertPageNotInteractive();
@@ -261,4 +282,35 @@ export class GuideSteps {
261
282
 
262
283
  GuideDialogSteps.assertDialogWithTitleIsVisible('End of guide');
263
284
  }
285
+
286
+ static getGuidesPerPageBar() {
287
+ return this.getByTestId('guides-per-page-bar');
288
+ }
289
+
290
+ static getGuidesPaginator() {
291
+ return this.getByTestId('guides-paginator');
292
+ }
293
+
294
+ static getGuidesList() {
295
+ return this.getByTestId('guides-list');
296
+ }
297
+
298
+ static verifyInitialState() {
299
+ this.getGuidesPerPageBar().should('be.visible');
300
+ this.getGuidesPaginator().should('exist');
301
+ this.verifyGuidesListExists('be.visible');
302
+ }
303
+
304
+ static verifyGuidesListExists() {
305
+ this.getGuidesList().should('be.visible');
306
+ }
307
+
308
+ static getDownloadResourceLink(guideRepositoryId) {
309
+ const downloadButtonClass = guideRepositoryId ? `.guide-${guideRepositoryId}-download-resource-link` : '.guide-download-resource-link';
310
+ return cy.get(downloadButtonClass);
311
+ }
312
+
313
+ static downloadResource(guideRepositoryId) {
314
+ GuideSteps.getDownloadResourceLink(guideRepositoryId).click();
315
+ }
264
316
  }
@@ -5,6 +5,7 @@ import {VisualGraphSteps} from "../visual-graph-steps";
5
5
  import {YasrSteps} from "../yasgui/yasr-steps";
6
6
  import {YasqeSteps} from "../yasgui/yasqe-steps";
7
7
  import {ResourceSteps} from "../resource/resource-steps";
8
+ import {VisualGraphSplitButtonSteps} from '../visual-graph-split-button-steps.js';
8
9
 
9
10
  export class MoviesGuideSteps {
10
11
 
@@ -181,7 +182,7 @@ export class MoviesGuideSteps {
181
182
  static assertExploreRDFStep7() {
182
183
  GuideSteps.assertPageNotInteractive();
183
184
  GuideDialogSteps.assertDialogWithTitleIsVisible('Explore RDF as a table — 7/10');
184
- ResourceSteps.getVisualGraphButton().should('be.visible');
185
+ VisualGraphSplitButtonSteps.getVisualizeMainButton().should('be.visible');
185
186
  }
186
187
 
187
188
  static assertExploreRDFStep8() {
@@ -0,0 +1,22 @@
1
+ export class HeaderSteps {
2
+ static getHeader() {
3
+ return cy.get('onto-header');
4
+ }
5
+
6
+ static openHomePage() {
7
+ HeaderSteps.getHeader().find('.home-page').click();
8
+ }
9
+
10
+ static logout() {
11
+ this.getHeader().find('onto-user-menu').click();
12
+ cy.get('.onto-user-menu-dropdown')
13
+ .contains('Logout')
14
+ .first()
15
+ // Force the click because Cypress sometimes determines that the item has 0x0 dimensions
16
+ .click({force: true});
17
+ }
18
+
19
+ static login() {
20
+ this.getHeader().find('.onto-user-login').click();
21
+ }
22
+ }
@@ -1,49 +1,162 @@
1
- class HomeSteps {
1
+ import {LicenseWidgetSteps} from './widgets/license-widget-steps';
2
+ import {RepositoryErrorsWidgetSteps} from './widgets/repository-errors-widget-steps';
3
+ import {ActiveRepositoryWidgetSteps} from './widgets/active-repository-widget-steps';
4
+ import {SavedSparqlQueriesWidgetSteps} from './widgets/saved-sparql-queries-widget-steps';
5
+ import {RepositorySteps} from './repository-steps';
6
+ import {BaseSteps} from './base-steps';
7
+ import {EnvironmentStubs} from '../stubs/environment-stubs';
8
+
9
+ class HomeSteps extends BaseSteps {
2
10
 
3
11
  static visit() {
4
12
  cy.visit('/');
13
+ HomeSteps.getTutorialPanel().should('be.visible');
5
14
  }
6
15
 
7
- static visitAndWaitLoader(stubNewWindow) {
8
- if (stubNewWindow) {
9
- cy.visit('/', {
10
- onBeforeLoad (win) {
11
- cy.stub(win, 'open').as('window.open');
12
- }
13
- });
14
- } else {
15
- cy.visit('/');
16
- }
16
+ static visitInProdMode() {
17
+ cy.visit('/', {
18
+ onBeforeLoad: () => {
19
+ EnvironmentStubs.stubWbProdMode();
20
+ }
21
+ });
22
+ }
17
23
 
18
- cy.window();
24
+ static visitInDevMode() {
25
+ cy.visit('/', {
26
+ onBeforeLoad: () => {
27
+ EnvironmentStubs.stubWbDevMode();
28
+ }
29
+ });
30
+ }
19
31
 
20
- cy.get('.ot-splash').should('not.be.visible');
32
+ static visitAndWaitLoader() {
33
+ cy.visit('/');
21
34
  return cy.get('.ot-loader-new-content').should('not.exist');
22
35
  }
23
36
 
24
- static verifyTutorialVisible(shouldBeVisible) {
25
- if (shouldBeVisible) {
26
- cy.get('.tutorial-container')
27
- .should('be.visible');
28
- } else {
29
- cy.get('.tutorial-container')
30
- .should('not.exist');
31
- }
37
+ static visitWithRepositoryInUrl(repositoryId) {
38
+ cy.visit(`/?repositoryId=${repositoryId}`);
39
+ }
40
+
41
+ static getLayout() {
42
+ return cy.get('.wb-layout');
43
+ }
44
+
45
+ static getView() {
46
+ return cy.get('#wb-home');
47
+ }
48
+
49
+ static getTutorialPanel() {
50
+ return cy.get('.tutorial-container');
51
+ }
52
+
53
+ static hideTutorial() {
54
+ this.getTutorialPanel().find('.decline-tutorial').click();
55
+ }
56
+
57
+ static showTutorialPanel() {
58
+ this.getView().find('.show-tutorial').click();
59
+ }
60
+
61
+ static getNavigationMenu() {
62
+ return this.getLayout().find('.wb-navbar');
63
+ }
64
+
65
+ static getPageHeader() {
66
+ return this.getLayout().find('.wb-header');
67
+ }
68
+
69
+ // ===========================
70
+ // RDF search box
71
+ // ===========================
72
+
73
+ static getRDFSearchButton() {
74
+ return this.getPageHeader().find('.rdf-search-button i');
75
+ }
76
+
77
+ // ===========================
78
+ // Repository selector
79
+ // ===========================
80
+
81
+ static getRepositorySelector() {
82
+ return this.getPageHeader().find('onto-repository-selector');
83
+ }
84
+
85
+ static getSelectedRepository() {
86
+ return this.getRepositorySelector().find('.onto-dropdown-button');
87
+ }
88
+
89
+ // ===========================
90
+ // Language selector
91
+ // ===========================
92
+
93
+ static getLanguageSelector() {
94
+ return this.getPageHeader().find('onto-language-selector');
95
+ }
96
+
97
+ static getSelectedLanguage() {
98
+ return this.getLanguageSelector().find('.onto-dropdown-button');
99
+ }
100
+
101
+ // ===========================
102
+ // Active repository widget
103
+ // ===========================
104
+
105
+ static getActiveRepositoryWidget() {
106
+ return ActiveRepositoryWidgetSteps.getWidget();
107
+ }
108
+
109
+ // ===========================
110
+ // License widget
111
+ // ===========================
112
+
113
+ static getLicenseWidget() {
114
+ return LicenseWidgetSteps.getWidget();
115
+ }
116
+
117
+ // ===========================
118
+ // Repository errors widget
119
+ // ===========================
120
+
121
+ static getRepositoryErrorsWidget() {
122
+ return RepositoryErrorsWidgetSteps.getWidget();
123
+ }
124
+
125
+ // ===========================
126
+ // Saved SPARQL queries widget
127
+ // ===========================
128
+
129
+ static getSavedSparqlQueriesWidget() {
130
+ return SavedSparqlQueriesWidgetSteps.getWidget();
32
131
  }
33
132
 
34
- static declineTutorial() {
35
- // Click "No, thanks" button
36
- cy.get('.tutorial-container .decline-tutorial').click();
133
+ // ===========================
134
+ // Page footer
135
+ // ===========================
136
+
137
+ static getPageFooter() {
138
+ return cy.get('.footer-component');
37
139
  }
38
140
 
141
+ // ==========================
142
+
39
143
  static selectSPARQLQueryToExecute(query) {
40
144
  cy.contains('ul.saved-queries li', query)
41
- .should('be.visible')
42
- .trigger('hover')
145
+ .as('savedQueryItem')
146
+ .scrollIntoView();
147
+
148
+ cy.get('@savedQueryItem')
149
+ .should('be.visible');
150
+
151
+ cy.get('@savedQueryItem')
152
+ .trigger('hover');
153
+
154
+ cy.get('@savedQueryItem')
43
155
  .find('.execute-saved-query')
44
156
  .click({force: true});
45
157
  }
46
158
 
159
+
47
160
  static verifyQueryLink(queryName, modifiesRepoModal) {
48
161
  HomeSteps.selectSPARQLQueryToExecute(queryName);
49
162
  modifiesRepoModal ? cy.get('.modal-body').should('be.visible') : cy.get('.modal-body').should('not.exist');
@@ -65,10 +178,7 @@ class HomeSteps {
65
178
  }
66
179
 
67
180
  static verifyRepositoryIsSelected(repositoryId) {
68
- cy.get('ul.repos')
69
- .contains(repositoryId).should('not.exist');
70
- cy.get('#btnReposGroup')
71
- .should('contain', repositoryId);
181
+ return RepositorySteps.getRepositorySelection().should('contain', repositoryId);
72
182
  }
73
183
 
74
184
  static hasRepositoryInfo(repositoryId) {
@@ -85,13 +195,17 @@ class HomeSteps {
85
195
  });
86
196
  }
87
197
 
198
+ static getCreateRepositoryLink() {
199
+ return cy.get('.create-repository-btn');
200
+ }
201
+
88
202
  static verifyCreateRepositoryLink() {
89
- cy.get('.card.repository-errors').should("be.visible")
203
+ cy.get('.card.repository-errors').should('be.visible')
90
204
  .within(() => {
91
- cy.get('.create-repository-btn')
205
+ HomeSteps.getCreateRepositoryLink()
92
206
  .click()
93
207
  .url()
94
- .should('eq', Cypress.config("baseUrl") + '/repository/create?previous=home');
208
+ .should('eq', Cypress.config('baseUrl') + '/repository/create?previous=%2F');
95
209
  });
96
210
  cy.get('.big-logo').click();
97
211
  }
@@ -108,13 +222,12 @@ class HomeSteps {
108
222
  }
109
223
 
110
224
  static getAutocompleteInput() {
111
- const input = cy.get('.home-rdf-resource-search search-resource-input .view-res-input');
112
- input.should('be.visible');
113
- return input;
225
+ return cy.get('.home-rdf-resource-search search-resource-input .view-res-input')
226
+ .should('be.visible');
114
227
  }
115
228
 
116
229
  static shouldHaveAutocompleteResult(uri) {
117
- return HomeSteps.getAutocompleteResultElement(uri).should("be.visible");
230
+ return HomeSteps.getAutocompleteResultElement(uri).should('be.visible');
118
231
  }
119
232
 
120
233
  static autocompleteText(text, uri) {
@@ -123,14 +236,14 @@ class HomeSteps {
123
236
  }
124
237
 
125
238
  static getAutocompleteResultElement(uri) {
126
- const element = cy.get("#auto-complete-results-wrapper p").contains(uri);
127
- element.trigger('mouseover');
128
- return element;
239
+ return cy.get('#auto-complete-results-wrapper p')
240
+ .contains(uri)
241
+ .trigger('mouseover');
129
242
  }
130
243
 
131
244
  static verifyAutocompleteResourceLink(uri) {
132
- cy.get('#results-loader.ot-loader').should('not.exist');
133
- cy.get('.resource-info').should('be.visible').and("contain", uri);
245
+ cy.get('#results-loader.ot-loader-new-content').should('not.exist');
246
+ cy.get('.resource-info').should('be.visible').and('contain', uri);
134
247
  }
135
248
 
136
249
  static getAutocompleteButton(type) {
@@ -148,67 +261,60 @@ class HomeSteps {
148
261
  cy.wait('@getAutocompleteStatus').then(callback);
149
262
  }
150
263
 
151
- static openRdfSearchBox() {
152
- cy.get('.search-rdf-btn').click();
153
- cy.get('.search-rdf-input').should('be.visible');
154
- cy.get('.search-rdf-input search-resource-input .view-res-input').should('be.visible')
155
- .and('be.focused');
264
+ static getRdfResourceSearchComponent() {
265
+ return this.getByTestId('search-rdf-resource-component');
156
266
  }
157
267
 
158
- static doNotOpenRdfSearchBoxButFocusResourceSearch() {
159
- cy.get('.search-rdf-btn').click();
160
- cy.get('.search-rdf-input').should('not.exist');
161
- cy.get('.search-rdf-input search-resource-input .view-res-input').should('not.exist');
162
- cy.get('#search-resource-input-home > #search-resource-box > input').should('be.visible')
163
- .and('be.focused');
268
+ static getRdfResourceSearchInput() {
269
+ return this.getRdfResourceSearchComponent().getByTestId('rdf-resource-input');
164
270
  }
165
271
 
166
- static getViewResourceAsLabel() {
167
- return cy.get('#view-resource-label-home');
272
+ static getAutocompleteResultsContainer() {
273
+ return this.getRdfResourceSearchComponent().getByTestId('auto-complete-results');
168
274
  }
169
275
 
170
- static getActiveRepoAsLabel() {
171
- return cy.get('#active-repo-label-home');
276
+ static getAutocompleteSuggestion() {
277
+ return this.getAutocompleteResultsContainer().getByTestId('autocomplete-suggestion');
172
278
  }
173
279
 
174
- static getSavedSparqlQueriesAsLabel() {
175
- return cy.get('#saved-queries-label-home');
280
+ static getAutocompleteSuggestionByPartialText(partialText) {
281
+ return this.getAutocompleteSuggestion().contains(partialText);
176
282
  }
177
283
 
178
- static getLicenseAsLabel() {
179
- return cy.get('#license-label-home');
284
+ static getTableDisplayButton() {
285
+ return this.getRdfResourceSearchComponent().getByTestId('display-table-button');
180
286
  }
181
287
 
182
- static getCookieConsentPopup() {
183
- return cy.get('.cookie-consent-modal');
288
+ static getVisualDisplayButton() {
289
+ return this.getRdfResourceSearchComponent().getByTestId('display-visual-button');
184
290
  }
185
291
 
186
- static getAgreeButton() {
187
- return HomeSteps.getCookieConsentPopup().find('button');
292
+ static getRdfResourceSearchCloseButton() {
293
+ return this.getRdfResourceSearchComponent().getByTestId('rdf-resource-clear-button');
188
294
  }
189
295
 
190
- static clickAgreeButton() {
191
- return HomeSteps.getAgreeButton().click();
296
+ static closeRdfResourceSearchBox() {
297
+ this.getRdfResourceSearchCloseButton().click();
192
298
  }
193
299
 
194
- static getCookiePolicyLink() {
195
- return cy.get('.cookie-consent-content a');
300
+ static getViewResourceAsLabel() {
301
+ return cy.get('#view-resource-label-home');
196
302
  }
197
303
 
198
- static clickCookiePolicyLink() {
199
- return HomeSteps.getCookiePolicyLink().click();
304
+ static getActiveRepoAsLabel() {
305
+ return cy.get('#active-repo-label-home');
200
306
  }
201
307
 
202
- static getCookiePolicyModal() {
203
- return cy.get('.cookie-policy-modal');
308
+ static getSavedSparqlQueriesAsLabel() {
309
+ return cy.get('#saved-queries-label-home');
204
310
  }
205
311
 
206
- static getHelpMenu() {
207
- return cy.get('.main-menu .menu-element-root').eq(8);
312
+ static getLicenseAsLabel() {
313
+ return cy.get('#license-label-home');
208
314
  }
209
315
 
210
- static clickHelpMenu() {
211
- return HomeSteps.getHelpMenu().click();
316
+ static getCookiePolicyModal() {
317
+ return cy.get('.cookie-policy-modal');
212
318
  }
213
319
 
214
320
  static getDocumentationLink() {
@@ -223,4 +329,5 @@ class HomeSteps {
223
329
  return cy.get('[guide-selector="sub-menu-support"]');
224
330
  }
225
331
  }
332
+
226
333
  export default HomeSteps;
@@ -14,7 +14,7 @@ export class ImportResourceMessageDialog extends ModalDialogSteps {
14
14
  }
15
15
 
16
16
  static getMessage() {
17
- return this.getDialogBody().find('.message');
17
+ return this.getDialogBody();
18
18
  }
19
19
 
20
20
  static getCopyToClipboard() {