graphdb-workbench-tests 3.0.2 → 3.1.0-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.
- package/.editorconfig +17 -0
- package/.nycrc +10 -0
- package/cypress-flaky.config.js +15 -4
- package/cypress-legacy.config.js +40 -0
- package/cypress-security.config.js +40 -0
- package/cypress.config.js +8 -4
- package/{integration-flaky → e2e-flaky}/explore/visual.graph.spec.js +4 -1
- package/{integration-flaky → e2e-flaky}/import/import-server-files-operations.spec.js +1 -1
- package/e2e-flaky/import/import-user-data-url.spec.js +63 -0
- package/{integration-flaky → e2e-flaky}/setup/sparql-template-create.js +9 -2
- package/{integration-flaky → e2e-flaky}/sparql-editor/yasr/table-plugin.spec.js +2 -1
- package/{integration → e2e-legacy}/cluster/edit-cluster-nodes-modal.spec.js +44 -0
- package/e2e-legacy/explore/class-hierarchy/class-hierarchy-with-selected-repository-without-class-hierarchy.spec.js +42 -0
- package/e2e-legacy/explore/class-hierarchy/class-hierarchy-with-selected-repository.spec.js +43 -0
- package/e2e-legacy/explore/class-hierarchy/class-hierarchy-without-selected-repository.spec.js +30 -0
- package/{integration/explore → e2e-legacy/explore/class-hierarchy}/class.hierarchy.spec.js +1 -1
- package/e2e-legacy/explore/class-relationships/class-relationships-repository-with-data.spec.js +42 -0
- package/e2e-legacy/explore/class-relationships/class-relationships-with-selected-repository.spec.js +39 -0
- package/e2e-legacy/explore/class-relationships/class-relationships-without-selected-repository.spec.js +21 -0
- package/{integration/explore/class.relationships.spec.js → e2e-legacy/explore/class-relationships/class-relationships.spec.js} +18 -50
- package/{integration/explore → e2e-legacy/explore/graphs-overview}/graphs.overview.spec.js +4 -4
- package/e2e-legacy/explore/graphs-overview/initial-state/graphs-overview-with-selected-repository.spec.js +44 -0
- package/e2e-legacy/explore/graphs-overview/initial-state/graphs-overview-without-selected-repository.spec.js +32 -0
- package/e2e-legacy/explore/similarity-index/similarity-index-with-repository.spec.js +38 -0
- package/e2e-legacy/explore/similarity-index/similarity-index-without-repository.spec.js +21 -0
- package/{integration → e2e-legacy}/explore/visual-graph/graphs-config.spec.js +1 -6
- package/e2e-legacy/explore/visual-graph/visual-graph-with-selected-repository.js +38 -0
- package/e2e-legacy/explore/visual-graph/visual-graph-without-selected-repository.js +21 -0
- package/{integration → e2e-legacy}/explore/visual-graph/visual.graph.spec.js +2 -7
- package/{integration → e2e-legacy}/graphql/create-graphql-endpoint.spec.js +0 -2
- package/{integration → e2e-legacy}/graphql/edit-graphql-enpoint.spec.js +1 -1
- package/{integration → e2e-legacy}/graphql/filter-graphql-endpoints-on-management-view.spec.js +1 -1
- package/e2e-legacy/graphql/graphql-endpoint management-without-selected-repository.spec.js +21 -0
- package/{integration → e2e-legacy}/graphql/graphql-endpoint-management-view.spec.js +4 -4
- package/e2e-legacy/graphql/graphql-endpoint-management-with-endpoints.spec.js +43 -0
- package/e2e-legacy/graphql/graphql-endpoint-management-with-selected-repository.spec.jsx +39 -0
- package/e2e-legacy/graphql/graphql-playground-with-endpoints.spec.js +40 -0
- package/e2e-legacy/graphql/graphql-playground-with-selected-repository.spec.js +38 -0
- package/e2e-legacy/graphql/graphql-playground-without-selected-repository.spec.js +22 -0
- package/{integration → e2e-legacy}/graphql/graphql-playground.spec.js +1 -1
- package/{integration → e2e-legacy}/graphql/import-graphql-endpoint-definitions.spec.js +0 -6
- package/e2e-legacy/help/guides/guides-with-repository.spec.js +32 -0
- package/e2e-legacy/help/guides/guides-without-repository.spec.js +20 -0
- package/{integration → e2e-legacy/help}/guides/movies-interactive-guide.spec.js +3 -3
- package/{integration → e2e-legacy/help}/guides/star-wars-interactive-guide.js +3 -2
- package/e2e-legacy/help/rest-api-documentatio/rest-api-documentation-with-repository.spec.js +32 -0
- package/e2e-legacy/help/rest-api-documentatio/rest-api-documentation-without-repository.spec.js +20 -0
- package/e2e-legacy/help/system-information/system-information-with-repository.spec.js +32 -0
- package/e2e-legacy/help/system-information/system-information-without-repository.spec.js +20 -0
- package/e2e-legacy/home/cookie-policy.spec.js +108 -0
- package/e2e-legacy/home/documentation-link.spec.js +61 -0
- package/{integration → e2e-legacy}/home/google-analytics.spec.js +4 -6
- package/e2e-legacy/home/home-page-with-selected-repository.spec.js +69 -0
- package/e2e-legacy/home/home-page-without-repositories.spec.js +87 -0
- package/e2e-legacy/home/home-page-without-selected-repository.spec.js +59 -0
- package/{integration → e2e-legacy}/home/language-change.spec.js +2 -2
- package/e2e-legacy/home/rdf-resource-search.spec.js +148 -0
- package/e2e-legacy/home/view-resource-autocomplete.spec.js +65 -0
- package/{integration → e2e-legacy}/import/import-user-data-file-upload.spec.js +16 -10
- package/{integration → e2e-legacy}/import/import-user-data-text-snippet.spec.js +0 -2
- package/{integration → e2e-legacy}/import/import-user-data-url.spec.js +0 -23
- package/{integration → e2e-legacy}/import/import-user-data.spec.js +9 -2
- package/e2e-legacy/import/initial-state/import-page-with-selected-repositor.js +51 -0
- package/e2e-legacy/import/initial-state/import-page-with-selected-repository-without-imported-files.js +45 -0
- package/e2e-legacy/import/initial-state/import-page-without-selected-repository.spec.js +28 -0
- package/e2e-legacy/license/license-with-repository.spec.js +113 -0
- package/e2e-legacy/license/license-without-repository.spec.js +103 -0
- package/{integration → e2e-legacy}/license/license.spec.js +4 -4
- package/e2e-legacy/monitor/backup-and-restore/backup-and-restore-with-repository.spec.js +36 -0
- package/e2e-legacy/monitor/backup-and-restore/backup-and-restore-without-repository.spec.js +25 -0
- package/{integration/monitor/monitor.backup-and-restore.spec.js → e2e-legacy/monitor/backup-and-restore/backup-and-restore.spec.js} +2 -2
- package/{integration → e2e-legacy}/monitor/global-operation-statuses-component.spec.js +12 -5
- package/e2e-legacy/monitor/query-and-updates/queries-and-updates-with-repository.spec.js +39 -0
- package/e2e-legacy/monitor/query-and-updates/queries-and-updates-without-repository.spec.js +21 -0
- package/{integration/monitor → e2e-legacy/monitor/system}/monitor.resources.spec.js +3 -2
- package/e2e-legacy/monitor/system/system-monitoring-with-repository.spec.js +32 -0
- package/e2e-legacy/monitor/system/system-monitoring-without-repository.spec.js +20 -0
- package/{integration → e2e-legacy}/repository/repositories.spec.js +34 -45
- package/{integration → e2e-legacy}/resource/resource.spec.js +16 -1
- package/e2e-legacy/setup/aclmanagement/acl-management-with-selected repository.spec.js +40 -0
- package/e2e-legacy/setup/aclmanagement/acl-management-without-repositories.spec.js +21 -0
- package/{integration → e2e-legacy}/setup/aclmanagement/create-rule.spec.js +1 -0
- package/e2e-legacy/setup/autocomplete/autocomplete-with-repository.spec.js +40 -0
- package/e2e-legacy/setup/autocomplete/autocomplete-without-repository.spec.js +27 -0
- package/{integration/setup → e2e-legacy/setup/autocomplete}/autocomplete.spec.js +5 -6
- package/e2e-legacy/setup/cluster/cluster-initial-state-with-cluster.spec.js +34 -0
- package/e2e-legacy/setup/cluster/cluster-initial-state-without-cluster.spec.js +25 -0
- package/e2e-legacy/setup/connectors/connectors-initial-state-with-selected-repository.spec.js +41 -0
- package/e2e-legacy/setup/connectors/connectors-initial-state-without-repositories.spec.js +21 -0
- package/e2e-legacy/setup/jdbc/jdbc-with-repository.spec.js +39 -0
- package/e2e-legacy/setup/jdbc/jdbc-without-repository.spec.js +27 -0
- package/e2e-legacy/setup/namespaces/namespaces-with-repository.spec.js +44 -0
- package/e2e-legacy/setup/namespaces/namespaces-without-repository.spec.js +27 -0
- package/{integration/setup → e2e-legacy/setup/namespaces}/namespaces.spec.js +6 -5
- package/e2e-legacy/setup/plugins/plugins-with-repository.spec.js +38 -0
- package/e2e-legacy/setup/plugins/plugins-without-repository.spec.js +28 -0
- package/{integration/setup → e2e-legacy/setup/plugins}/plugins.spec.js +3 -3
- package/e2e-legacy/setup/rdf-rank/rdf-rank-with-repository.spec.js +40 -0
- package/e2e-legacy/setup/rdf-rank/rdf-rank-without-repository.spec.js +30 -0
- package/{integration/setup → e2e-legacy/setup/rdf-rank}/rdf-rank.spec.js +1 -1
- package/e2e-legacy/setup/repositories/repositories-view-with-repositories.spec.js +40 -0
- package/e2e-legacy/setup/repositories/repositories-view-without-repositories.spec.js +28 -0
- package/e2e-legacy/setup/settings/my-settings-initial-state.spec.js +86 -0
- package/{integration/setup → e2e-legacy/setup/settings}/my-settings.spec.js +5 -75
- package/{integration/setup → e2e-legacy/setup/sparql-template}/sparql-template-create.js +16 -8
- package/e2e-legacy/setup/sparql-template/sparql-template-with-repository.spec.js +39 -0
- package/e2e-legacy/setup/sparql-template/sparql-template-without-repository.spec.js +29 -0
- package/{integration/setup → e2e-legacy/setup/sparql-template}/sparql-templates.spec.js +4 -4
- package/{integration/setup → e2e-legacy/setup/users-and-access}/user-and-access.spec.js +53 -19
- package/e2e-legacy/setup/users-and-access/users-and-access-initial-state.spec.js +25 -0
- package/{integration → e2e-legacy}/sparql-editor/actions/inferred-sameas.spec.js +3 -1
- package/{integration → e2e-legacy}/sparql-editor/saved-query/edit-query.spec.js +3 -3
- package/{integration → e2e-legacy}/sparql-editor/saved-query/readonly-query.spec.js +7 -13
- package/{integration → e2e-legacy}/sparql-editor/saved-query/share-query.spec.js +2 -0
- package/e2e-legacy/sparql-editor/sparql-page-with-selected-repository.spec.js +33 -0
- package/e2e-legacy/sparql-editor/sparql-page-without-selected-repository.spec.js +26 -0
- package/{integration → e2e-legacy}/ttyg/agent-list.spec.js +52 -0
- package/{integration → e2e-legacy}/ttyg/agent-select-menu.spec.js +24 -0
- package/{integration → e2e-legacy}/ttyg/chat-panel.spec.js +29 -3
- package/{integration → e2e-legacy}/ttyg/clone-agent.spec.js +1 -0
- package/{integration → e2e-legacy}/ttyg/create-agent.spec.js +7 -6
- package/{integration → e2e-legacy}/ttyg/create-chat.spec.js +3 -1
- package/e2e-legacy/ttyg/edit-agent.spec.js +169 -0
- package/e2e-legacy/ttyg/ttyg-initial-state-with-configured-api-key.spec.js +46 -0
- package/e2e-legacy/ttyg/ttyg-initial-state-with-selected-repository.spec.js +45 -0
- package/e2e-legacy/ttyg/ttyg-initial-state-without-repositories.spec.js +21 -0
- package/{integration-flaky → e2e-legacy}/ttyg/ttyg-permission.spec.js +25 -15
- package/{integration → e2e-legacy}/ttyg/ttyg-view.spec.js +1 -0
- package/e2e-security/setup/home/cookie-policy.spec.js +64 -0
- package/e2e-security/setup/users-and-access/create-user-permissions.spec.js +184 -0
- package/e2e-security/setup/users-and-access/graphql-user.spec.js +123 -0
- package/e2e-security/setup/users-and-access/repo-admin-role.spec.js +69 -0
- package/e2e-security/setup/users-and-access/turn-on-security-and-password-change.spec.js +87 -0
- package/e2e-security/setup/users-and-access/user-and-access.spec.js +87 -0
- package/e2e-security/setup/users-and-access/users-and-access-initial-state.spec.js +38 -0
- package/fixtures/locale-en.json +62 -19
- package/fixtures/repositories/free-access.json +13 -0
- package/fixtures/ttyg/agent/get-agent-defaults-assistant-api.json +44 -0
- package/fixtures/ttyg/agent/get-agent-defaults.json +2 -0
- package/fixtures/ttyg/agent/get-agent-list-with-incompatible-agents.json +79 -0
- package/fixtures/ttyg/chats/ask-question.json +12 -2
- package/fixtures/ttyg/chats/get-chat.json +6 -1
- package/npm-shrinkwrap.json +9356 -3815
- package/package.json +48 -42
- package/plugins/index.js +3 -2
- package/steps/application-steps.js +1 -1
- package/steps/base-steps.js +21 -0
- package/steps/class-views-steps.js +16 -0
- package/steps/cluster/cluster-page-steps.js +12 -2
- package/steps/error-steps.js +15 -3
- package/steps/explore/class-relationships-steps.js +64 -0
- package/steps/explore/graphs-overview-steps.js +21 -1
- package/steps/explore/similarity-indexes-steps.js +12 -2
- package/steps/graphql/graphql-endpoint-management-steps.js +2 -2
- package/steps/guides/guide-steps.js +20 -1
- package/steps/home-steps.js +158 -48
- package/steps/import/import-steps.js +11 -15
- package/steps/import/import-user-data-steps.js +4 -0
- package/steps/language-selector-steps.js +2 -2
- package/steps/license-steps.js +91 -9
- package/steps/login-steps.js +14 -3
- package/steps/main-menu-steps.js +207 -15
- package/steps/modal-dialog-steps.js +20 -0
- package/steps/monitoring/backup-and-restore-steps.js +9 -3
- package/steps/monitoring/queries-and-updates-steps.js +20 -0
- package/steps/monitoring/system-monitoring-steps.js +40 -0
- package/steps/operations-statuses-component-steps.js +5 -10
- package/steps/rdf-resource-search-steps.js +55 -0
- package/steps/repository-selector-steps.js +3 -3
- package/steps/repository-steps.js +18 -12
- package/steps/resource/resource-steps.js +4 -0
- package/steps/rest-api-documentation-steps.js +15 -0
- package/steps/setup/autocomplete-steps.js +17 -6
- package/steps/setup/connectors-steps.js +19 -0
- package/steps/setup/jdbc-steps.js +18 -4
- package/steps/setup/namespace-steps.js +9 -6
- package/steps/setup/plugins-steps.js +11 -4
- package/steps/setup/rdf-rank-steps.js +22 -4
- package/steps/setup/settings-steps.js +100 -1
- package/steps/setup/sparql-templates-steps.js +19 -1
- package/steps/setup/user-and-access-steps.js +33 -3
- package/steps/system-information-steps.js +70 -0
- package/steps/ttyg/chat-panel-steps.js +1 -1
- package/steps/ttyg/ttyg-agent-settings-modal.steps.js +82 -23
- package/steps/ttyg/ttyg-view-steps.js +74 -8
- package/steps/visual-graph-steps.js +4 -0
- package/steps/widgets/active-repository-widget-steps.js +29 -0
- package/steps/widgets/license-widget-steps.js +9 -0
- package/steps/widgets/repository-errors-widget-steps.js +21 -0
- package/steps/widgets/saved-sparql-queries-widget-steps.js +9 -0
- package/steps/yasgui/yasr-steps.js +4 -0
- package/stubs/autocomplete/autocomplete-stubs.js +7 -0
- package/stubs/browser-stubs.js +21 -0
- package/stubs/environment-stubs.js +9 -1
- package/stubs/license-stubs.js +51 -0
- package/stubs/repositories/repositories-stubs.js +8 -0
- package/stubs/repositories-stub.js +6 -6
- package/stubs/saved-queries-stubs.js +5 -0
- package/stubs/security-stubs.js +4 -0
- package/stubs/ttyg/ttyg-stubs.js +19 -6
- package/support/commands.js +19 -0
- package/support/{index.js → e2e.js} +2 -1
- package/support/repository-commands.js +20 -4
- package/Dockerfile +0 -11
- package/integration/explore/similarity-index/similarity-index-create.spec.js +0 -333
- package/integration/explore/similarity-index/similarity-index.spec.js +0 -88
- package/integration/explore/similarity-index/similarity.spec.js +0 -628
- package/integration/home/cookie-policy.spec.js +0 -90
- package/integration/home/documentation-link.spec.js +0 -60
- package/integration/home/language-selector.spec.js +0 -19
- package/integration/home/rdf-resource-search.spec.js +0 -177
- package/integration/home/view-resource-autocomplete.spec.js +0 -52
- package/integration/home/workbench.home.spec.js +0 -30
- package/integration/monitor/monitor.queries.spec.js +0 -31
- package/integration/ttyg/edit-agent.spec.js +0 -99
- package/integration-flaky/setup/users-and-access/security-and-free-access.spec.js +0 -54
- package/{integration-flaky → e2e-flaky}/import/import-user-data-batch-operations.spec.js +0 -0
- package/{integration-flaky → e2e-flaky}/import/import.server.files.spec.js +0 -0
- package/{integration-flaky → e2e-flaky}/sparql-editor/actions/execute-update-query.spec.js +0 -0
- package/{integration-flaky → e2e-flaky}/sparql-editor/actions/share-query.spec.js +0 -0
- package/{integration-flaky → e2e-flaky}/sparql-editor/lucene-connector.spec.js +0 -0
- package/{integration-flaky → e2e-flaky}/sparql-editor/plugins/error-plugin.spec.js +0 -0
- package/{integration → e2e-legacy}/cluster/cluster-configuration/cluster-configuration-multi-region.spec.js +0 -0
- package/{integration → e2e-legacy}/cluster/cluster-configuration/cluster-configuration-nodes.spec.js +0 -0
- package/{integration → e2e-legacy}/cluster/cluster-configuration/cluster-configuration-properties.spec.js +0 -0
- package/{integration → e2e-legacy}/cluster/cluster-configuration/cluster-configuration.spec.js +0 -0
- package/{integration → e2e-legacy}/cluster/cluster-legend.spec.js +0 -0
- package/{integration → e2e-legacy}/cluster/cluster-states.spec.js +0 -0
- package/{integration → e2e-legacy}/explore/visual-graph/visual-graph-node-labels.spec.js +0 -0
- package/{integration → e2e-legacy}/graphql/activate-deactivate-graphql-endpoint.spec.js +0 -0
- package/{integration → e2e-legacy}/graphql/delete-graphql-endpoint.spec.js +0 -0
- package/{integration → e2e-legacy}/graphql/export-graphql-endpoint-definition.spec.js +0 -0
- package/{integration → e2e-legacy}/graphql/set-default-graphql-endpoint.spec.js +0 -0
- package/{integration/help → e2e-legacy/help/system-information}/system-information.spec.js +0 -0
- package/{integration → e2e-legacy}/home/create-repository.spec.js +0 -0
- package/{integration → e2e-legacy}/import/import-server-files-batch-operations.spec.js +0 -0
- package/{integration → e2e-legacy}/import/import-server-files.spec.js +0 -0
- package/{integration → e2e-legacy}/import/import-user-data-settings-dialog.spec.js +0 -0
- package/{integration → e2e-legacy}/import/import-view.spec.js +0 -0
- package/{integration → e2e-legacy}/repository/attach-remote-location.spec.js +1 -1
- /package/{integration → e2e-legacy}/repository/ontop-repository.spec.js +0 -0
- /package/{integration → e2e-legacy}/repository/repository-commands.spec.js +0 -0
- /package/{integration → e2e-legacy}/setup/aclmanagement/delete-rule.spec.js +0 -0
- /package/{integration → e2e-legacy}/setup/aclmanagement/edit-rule.spec.js +0 -0
- /package/{integration → e2e-legacy}/setup/aclmanagement/render-rules.spec.js +0 -0
- /package/{integration → e2e-legacy}/setup/aclmanagement/reorder-rules.spec.js +0 -0
- /package/{integration → e2e-legacy}/setup/aclmanagement/revert-rules.spec.js +0 -0
- /package/{integration → e2e-legacy}/setup/aclmanagement/scopes.spec.js +0 -0
- /package/{integration → e2e-legacy}/setup/aclmanagement/update-rules.spec.js +0 -0
- /package/{integration → e2e-legacy}/setup/connectors-lucene.spec.js +0 -0
- /package/{integration → e2e-legacy}/setup/jdbc/jdbc-create.spec.js +0 -0
- /package/{integration → e2e-legacy}/setup/jdbc/jdbc.spec.js +0 -0
- /package/{integration → e2e-legacy}/sparql-editor/actions/execute-query.spec.js +0 -0
- /package/{integration → e2e-legacy}/sparql-editor/actions/expand-results-over-sameas.spec.js +0 -0
- /package/{integration → e2e-legacy}/sparql-editor/actions/include-inferred-statements.spec.js +0 -0
- /package/{integration → e2e-legacy}/sparql-editor/actions/save-query.spec.js +0 -0
- /package/{integration → e2e-legacy}/sparql-editor/actions/show-saved-queries.spec.js +0 -0
- /package/{integration → e2e-legacy}/sparql-editor/internationalization.spec.js +0 -0
- /package/{integration → e2e-legacy}/sparql-editor/saved-query/abort-query.spec.js +0 -0
- /package/{integration → e2e-legacy}/sparql-editor/saved-query/delete-query.spec.js +0 -0
- /package/{integration → e2e-legacy}/sparql-editor/sparql-editor.spec.js +0 -0
- /package/{integration → e2e-legacy}/sparql-editor/yasgui-tabs.spec.js +0 -0
- /package/{integration → e2e-legacy}/sparql-editor/yasr/download-as.spec.js +0 -0
- /package/{integration → e2e-legacy}/sparql-editor/yasr/pagination.spec.js +0 -0
- /package/{integration → e2e-legacy}/sparql-editor/yasr/table-plugin.spec.js +0 -0
- /package/{integration → e2e-legacy}/sparql-editor/yasr/toolbar/visual-graph-button.spec.js +0 -0
- /package/{integration → e2e-legacy}/ttyg/chat-list.spec.js +0 -0
- /package/{integration → e2e-legacy}/ttyg/delete-agent.spec.js +0 -0
|
@@ -323,7 +323,6 @@ describe('Resource view', () => {
|
|
|
323
323
|
});
|
|
324
324
|
|
|
325
325
|
context('Triple resource', () => {
|
|
326
|
-
|
|
327
326
|
it('should show triple resource', {
|
|
328
327
|
retries: {
|
|
329
328
|
runMode: 1,
|
|
@@ -336,6 +335,8 @@ describe('Resource view', () => {
|
|
|
336
335
|
// Then I expect resource link to exist.
|
|
337
336
|
ResourceSteps.getTripleResourceLink().should('contain.text', '<<<W6J1827> <hasAddress> <address>>>');
|
|
338
337
|
|
|
338
|
+
// And I expect to see data table
|
|
339
|
+
ResourceSteps.getDataTable().should('exist').and('be.visible');
|
|
339
340
|
// When I click on the link.
|
|
340
341
|
ResourceSteps.clickOnTripleResourceLink();
|
|
341
342
|
|
|
@@ -351,6 +352,8 @@ describe('Resource view', () => {
|
|
|
351
352
|
// Then I expect target link to exist.
|
|
352
353
|
ResourceSteps.getTargetLink().should('contain.text', '<<<http://example.com/resource/person/W6J1827> <http://example.com/ontology#hasAddress> <http://example.com/resource/person/W6J1827/address>>>');
|
|
353
354
|
|
|
355
|
+
// And I expect to see data table
|
|
356
|
+
ResourceSteps.getDataTable().should('exist').and('be.visible');
|
|
354
357
|
// When I click on the link.
|
|
355
358
|
ResourceSteps.clickOnTripleResourceLink();
|
|
356
359
|
|
|
@@ -367,6 +370,18 @@ describe('Resource view', () => {
|
|
|
367
370
|
it('should download as JSON-LD and then restore defaults', () => {
|
|
368
371
|
// Given I am in the Resource view
|
|
369
372
|
ResourceSteps.visit(`uri=${SUBJECT_RESOURCE}&role=subject`);
|
|
373
|
+
cy.window().then((win) => {
|
|
374
|
+
expect(win.jsonld).to.exist;
|
|
375
|
+
cy.stub(win.jsonld, 'compact').resolves({
|
|
376
|
+
"@context": {
|
|
377
|
+
"dc11": "http://purl.org/dc/elements/1.1/",
|
|
378
|
+
"ex": "http://example.org/vocab#",
|
|
379
|
+
"ex:authored": {"@type": "@id"},
|
|
380
|
+
"ex:contains": {"@type": "@id"},
|
|
381
|
+
"foaf": "http://xmlns.com/foaf/0.1/"
|
|
382
|
+
}
|
|
383
|
+
});
|
|
384
|
+
});
|
|
370
385
|
ResourceSteps.verifyActiveRoleTab('subject');
|
|
371
386
|
|
|
372
387
|
// When I download as JSON-LD
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import HomeSteps from "../../../steps/home-steps";
|
|
2
|
+
import {MainMenuSteps} from "../../../steps/main-menu-steps";
|
|
3
|
+
import {AclManagementSteps} from "../../../steps/setup/acl-management-steps";
|
|
4
|
+
|
|
5
|
+
function verifyStateWithSelectedRepository() {
|
|
6
|
+
AclManagementSteps.getPageHeading().should('be.visible');
|
|
7
|
+
AclManagementSteps.getAclTable().should('be.visible');
|
|
8
|
+
AclManagementSteps.getNoDataMessage().should('be.visible');
|
|
9
|
+
AclManagementSteps.getAddFirstRuleButton().should('be.visible');
|
|
10
|
+
AclManagementSteps.getAclTabs().should('be.visible').and('have.length', 4);
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
describe('ACL Management initial state with repositories', () => {
|
|
14
|
+
let repositoryId;
|
|
15
|
+
|
|
16
|
+
beforeEach(() => {
|
|
17
|
+
repositoryId = 'acl-management-' + Date.now();
|
|
18
|
+
cy.createRepository({id: repositoryId});
|
|
19
|
+
cy.presetRepository(repositoryId);
|
|
20
|
+
});
|
|
21
|
+
|
|
22
|
+
afterEach(() => {
|
|
23
|
+
cy.deleteRepository(repositoryId);
|
|
24
|
+
});
|
|
25
|
+
|
|
26
|
+
it('Should display the correct initial state when navigating via URL', () => {
|
|
27
|
+
// Given, I visit the ACL Management page via URL with a repository selected
|
|
28
|
+
AclManagementSteps.visit();
|
|
29
|
+
// Then,
|
|
30
|
+
verifyStateWithSelectedRepository();
|
|
31
|
+
});
|
|
32
|
+
|
|
33
|
+
it('Should display the correct initial state when navigating via the navigation menu', () => {
|
|
34
|
+
// Given, I visit the ACL Management page via the navigation menu with a repository selected
|
|
35
|
+
HomeSteps.visit();
|
|
36
|
+
MainMenuSteps.clickOnACLManagement();
|
|
37
|
+
// Then,
|
|
38
|
+
verifyStateWithSelectedRepository();
|
|
39
|
+
});
|
|
40
|
+
})
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import {MainMenuSteps} from "../../../steps/main-menu-steps";
|
|
2
|
+
import HomeSteps from "../../../steps/home-steps";
|
|
3
|
+
import {ErrorSteps} from "../../../steps/error-steps";
|
|
4
|
+
import {AclManagementSteps} from "../../../steps/setup/acl-management-steps";
|
|
5
|
+
|
|
6
|
+
describe('ACL Management initial state without repositories', () => {
|
|
7
|
+
it('Should display the correct initial state when navigating via URL', () => {
|
|
8
|
+
// Given, I visit the ACL Management page via URL without repositories selected
|
|
9
|
+
AclManagementSteps.visit();
|
|
10
|
+
// Then,
|
|
11
|
+
ErrorSteps.verifyNoConnectedRepoMessage();
|
|
12
|
+
});
|
|
13
|
+
|
|
14
|
+
it('Should display the correct initial state when navigating via the navigation menu', () => {
|
|
15
|
+
// Given, I visit the ACL Management page via the navigation menu without repositories selected
|
|
16
|
+
HomeSteps.visit();
|
|
17
|
+
MainMenuSteps.clickOnACLManagement();
|
|
18
|
+
// Then,
|
|
19
|
+
ErrorSteps.verifyNoConnectedRepoMessage();
|
|
20
|
+
});
|
|
21
|
+
});
|
|
@@ -2,6 +2,7 @@ import {AclManagementSteps} from "../../../steps/setup/acl-management-steps";
|
|
|
2
2
|
import {ACL_VIEW} from "../../../steps/setup/acl-management-steps";
|
|
3
3
|
import {ApplicationSteps} from "../../../steps/application-steps";
|
|
4
4
|
|
|
5
|
+
|
|
5
6
|
describe('ACL Management: create rule', () => {
|
|
6
7
|
|
|
7
8
|
let repositoryId;
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import HomeSteps from "../../../steps/home-steps";
|
|
2
|
+
import {MainMenuSteps} from "../../../steps/main-menu-steps";
|
|
3
|
+
import {AutocompleteSteps} from "../../../steps/setup/autocomplete-steps";
|
|
4
|
+
|
|
5
|
+
describe('Autocomplete with selected repository', () => {
|
|
6
|
+
let repositoryId;
|
|
7
|
+
|
|
8
|
+
beforeEach(() => {
|
|
9
|
+
repositoryId = 'autocomplete-init-' + Date.now();
|
|
10
|
+
cy.createRepository({id: repositoryId});
|
|
11
|
+
cy.presetRepository(repositoryId);
|
|
12
|
+
});
|
|
13
|
+
|
|
14
|
+
afterEach(() => {
|
|
15
|
+
cy.deleteRepository(repositoryId);
|
|
16
|
+
});
|
|
17
|
+
|
|
18
|
+
it('Should display the correct initial state when navigating via URL', () => {
|
|
19
|
+
// Given, I visit the Autocomplete page via URL with a repository selected
|
|
20
|
+
AutocompleteSteps.visit();
|
|
21
|
+
// Then,
|
|
22
|
+
verifyInitialStateWithSelectedRepository();
|
|
23
|
+
});
|
|
24
|
+
|
|
25
|
+
it('Should display the correct initial state when navigating via the navigation bar', () => {
|
|
26
|
+
// Given, I visit the Autocomplete page via the navigation menu with a repository selected
|
|
27
|
+
HomeSteps.visit();
|
|
28
|
+
MainMenuSteps.clickOnAutocomplete();
|
|
29
|
+
// Then,
|
|
30
|
+
verifyInitialStateWithSelectedRepository();
|
|
31
|
+
});
|
|
32
|
+
|
|
33
|
+
const verifyInitialStateWithSelectedRepository = () => {
|
|
34
|
+
AutocompleteSteps.getAutocompletePage().should('exist');
|
|
35
|
+
AutocompleteSteps.getAutocompletePageContent().should('exist');
|
|
36
|
+
AutocompleteSteps.getAutocompletePage().should('exist');
|
|
37
|
+
AutocompleteSteps.getAutocompleteHeader().contains('Autocomplete for repository');
|
|
38
|
+
AutocompleteSteps.getAutocompleteLabelsContainer().should('exist');
|
|
39
|
+
};
|
|
40
|
+
})
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import {ErrorSteps} from "../../../steps/error-steps";
|
|
2
|
+
import HomeSteps from "../../../steps/home-steps";
|
|
3
|
+
import {MainMenuSteps} from "../../../steps/main-menu-steps";
|
|
4
|
+
import {AutocompleteSteps} from "../../../steps/setup/autocomplete-steps";
|
|
5
|
+
|
|
6
|
+
describe('Autocomplete without selected repository', () => {
|
|
7
|
+
it('Should display the correct initial state when navigating via URL', () => {
|
|
8
|
+
// Given, I visit the Autocomplete page via URL without a repository selected
|
|
9
|
+
AutocompleteSteps.visit();
|
|
10
|
+
// Then,
|
|
11
|
+
verifyInitialStateWithoutSelectedRepository();
|
|
12
|
+
});
|
|
13
|
+
|
|
14
|
+
it('Should display the correct initial state when navigating via the navigation menu', () => {
|
|
15
|
+
// Given, I visit the Autocomplete page via the navigation menu without a repository selected
|
|
16
|
+
HomeSteps.visit();
|
|
17
|
+
MainMenuSteps.clickOnAutocomplete();
|
|
18
|
+
// Then,
|
|
19
|
+
verifyInitialStateWithoutSelectedRepository()
|
|
20
|
+
});
|
|
21
|
+
|
|
22
|
+
const verifyInitialStateWithoutSelectedRepository = () => {
|
|
23
|
+
ErrorSteps.verifyNoConnectedRepoMessage();
|
|
24
|
+
AutocompleteSteps.getAutocompletePage().should('exist');
|
|
25
|
+
AutocompleteSteps.getAutocompletePageContent().should('not.exist');
|
|
26
|
+
};
|
|
27
|
+
})
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import {AutocompleteSteps} from "
|
|
2
|
-
import {LicenseStubs} from "
|
|
1
|
+
import {AutocompleteSteps} from "../../../steps/setup/autocomplete-steps";
|
|
2
|
+
import {LicenseStubs} from "../../../stubs/license-stubs";
|
|
3
3
|
|
|
4
4
|
describe('Autocomplete ', () => {
|
|
5
5
|
|
|
@@ -45,10 +45,9 @@ describe('Autocomplete ', () => {
|
|
|
45
45
|
.and('not.be.disabled');
|
|
46
46
|
|
|
47
47
|
// Should have default labels
|
|
48
|
-
AutocompleteSteps.getAutocompleteLabels()
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
.should('have.length', 1)
|
|
48
|
+
AutocompleteSteps.getAutocompleteLabels().should('be.visible')
|
|
49
|
+
|
|
50
|
+
AutocompleteSteps.getLabelRows().should('have.length', 1)
|
|
52
51
|
.and('contain', 'http://www.w3.org/2000/01/rdf-schema#label');
|
|
53
52
|
|
|
54
53
|
// Enable autocomplete and verify status is OK (possible slow operation)
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import {ClusterPageSteps} from "../../../steps/cluster/cluster-page-steps";
|
|
2
|
+
import HomeSteps from "../../../steps/home-steps";
|
|
3
|
+
import {MainMenuSteps} from "../../../steps/main-menu-steps";
|
|
4
|
+
import {GlobalOperationsStatusesStub} from "../../../stubs/global-operations-statuses-stub";
|
|
5
|
+
import {ClusterStubs} from "../../../stubs/cluster/cluster-stubs";
|
|
6
|
+
|
|
7
|
+
function verifyInitialStateWithConfiguredCluster() {
|
|
8
|
+
ClusterPageSteps.getNoClusterImage().should('not.exist');
|
|
9
|
+
ClusterPageSteps.getUpdateClusterButton().should('be.visible');
|
|
10
|
+
ClusterPageSteps.getPreviewClusterConfigButton().should('be.visible');
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
describe('Cluster initial state with configured cluster', () => {
|
|
14
|
+
beforeEach(() => {
|
|
15
|
+
ClusterStubs.stubClusterConfig();
|
|
16
|
+
ClusterStubs.stubClusterGroupStatus();
|
|
17
|
+
ClusterStubs.stubClusterNodeStatus();
|
|
18
|
+
});
|
|
19
|
+
|
|
20
|
+
it('Should display the correct initial state when navigating via URL', () => {
|
|
21
|
+
// Given, I visit the Cluster page via URL with a configured cluster
|
|
22
|
+
ClusterPageSteps.visit();
|
|
23
|
+
// Then,
|
|
24
|
+
verifyInitialStateWithConfiguredCluster();
|
|
25
|
+
});
|
|
26
|
+
|
|
27
|
+
it('Should display the correct initial state when navigating via the navigation menu', () => {
|
|
28
|
+
// Given, I visit the Cluster page via the navigation menu with a configured cluster
|
|
29
|
+
HomeSteps.visit();
|
|
30
|
+
MainMenuSteps.clickOnCluster();
|
|
31
|
+
// Then,
|
|
32
|
+
verifyInitialStateWithConfiguredCluster();
|
|
33
|
+
});
|
|
34
|
+
})
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import HomeSteps from "../../../steps/home-steps";
|
|
2
|
+
import {MainMenuSteps} from "../../../steps/main-menu-steps";
|
|
3
|
+
import {ClusterPageSteps} from "../../../steps/cluster/cluster-page-steps";
|
|
4
|
+
|
|
5
|
+
function verifyInitialStateWithoutConfiguredCluster() {
|
|
6
|
+
ClusterPageSteps.getNoClusterImage().should('be.visible');
|
|
7
|
+
ClusterPageSteps.getLegendButton().should('be.visible');
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
describe('Cluster initial state without configured cluster', () => {
|
|
11
|
+
it('Should display the correct initial state when navigating via URL', () => {
|
|
12
|
+
// Given, I visit the Cluster page via URL without a configured cluster
|
|
13
|
+
ClusterPageSteps.visit();
|
|
14
|
+
// Then,
|
|
15
|
+
verifyInitialStateWithoutConfiguredCluster();
|
|
16
|
+
});
|
|
17
|
+
|
|
18
|
+
it('Should display the correct initial state when navigating via the navigation menu', () => {
|
|
19
|
+
// Given, I visit the Cluster page via the navigation menu without a configured cluster
|
|
20
|
+
HomeSteps.visit();
|
|
21
|
+
MainMenuSteps.clickOnCluster();
|
|
22
|
+
// Then,
|
|
23
|
+
verifyInitialStateWithoutConfiguredCluster();
|
|
24
|
+
});
|
|
25
|
+
})
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import {ConnectorsSteps} from "../../../steps/setup/connectors-steps";
|
|
2
|
+
import HomeSteps from "../../../steps/home-steps";
|
|
3
|
+
import {MainMenuSteps} from "../../../steps/main-menu-steps";
|
|
4
|
+
|
|
5
|
+
const expectedButtons = ['elasticsearch', 'opensearch', 'solr', 'lucene', 'kafka', 'chatgpt-retrieval'];
|
|
6
|
+
|
|
7
|
+
function verifyConnectorsPage() {
|
|
8
|
+
expectedButtons.forEach(buttonId => {
|
|
9
|
+
ConnectorsSteps.getConnectorButton(buttonId).should('be.visible');
|
|
10
|
+
});
|
|
11
|
+
ConnectorsSteps.getReloadAllButton().should('be.visible');
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
describe('Connectors initial state with repositories', () => {
|
|
15
|
+
let repositoryId;
|
|
16
|
+
|
|
17
|
+
beforeEach(() => {
|
|
18
|
+
repositoryId = 'connectors-init-' + Date.now();
|
|
19
|
+
cy.createRepository({id: repositoryId});
|
|
20
|
+
cy.presetRepository(repositoryId);
|
|
21
|
+
});
|
|
22
|
+
|
|
23
|
+
afterEach(() => {
|
|
24
|
+
cy.deleteRepository(repositoryId);
|
|
25
|
+
});
|
|
26
|
+
|
|
27
|
+
it('Should display the correct initial state when navigating via URL', () => {
|
|
28
|
+
// Given, I visit the Connectors page via URL without a repository selected
|
|
29
|
+
ConnectorsSteps.visit();
|
|
30
|
+
// Then,
|
|
31
|
+
verifyConnectorsPage();
|
|
32
|
+
});
|
|
33
|
+
|
|
34
|
+
it('Should display the correct initial state when navigating via the navigation menu', () => {
|
|
35
|
+
// Given, I visit the Connectors page via the navigation menu without a repository selected
|
|
36
|
+
HomeSteps.visit();
|
|
37
|
+
MainMenuSteps.clickOnConnectors();
|
|
38
|
+
// Then,
|
|
39
|
+
verifyConnectorsPage();
|
|
40
|
+
});
|
|
41
|
+
});
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import {ErrorSteps} from "../../../steps/error-steps";
|
|
2
|
+
import {MainMenuSteps} from "../../../steps/main-menu-steps";
|
|
3
|
+
import HomeSteps from "../../../steps/home-steps";
|
|
4
|
+
import {ConnectorsSteps} from "../../../steps/setup/connectors-steps";
|
|
5
|
+
|
|
6
|
+
describe('Connectors initial state without repositories', () => {
|
|
7
|
+
it('Should display the correct initial state when navigating via URL', () => {
|
|
8
|
+
// Given, I visit the Connectors page via URL without a repository selected
|
|
9
|
+
ConnectorsSteps.visit();
|
|
10
|
+
// Then,
|
|
11
|
+
ErrorSteps.verifyNoConnectedRepoMessage();
|
|
12
|
+
});
|
|
13
|
+
|
|
14
|
+
it('Should display the correct initial state when navigating via the navigation menu', () => {
|
|
15
|
+
// Given, I visit the Connectors page via the navigation menu without a repository selected
|
|
16
|
+
HomeSteps.visit();
|
|
17
|
+
MainMenuSteps.clickOnConnectors();
|
|
18
|
+
// Then,
|
|
19
|
+
ErrorSteps.verifyNoConnectedRepoMessage();
|
|
20
|
+
});
|
|
21
|
+
})
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import HomeSteps from "../../../steps/home-steps";
|
|
2
|
+
import {MainMenuSteps} from "../../../steps/main-menu-steps";
|
|
3
|
+
import {JdbcSteps} from "../../../steps/setup/jdbc-steps";
|
|
4
|
+
|
|
5
|
+
describe('JDBC with selected repository', () => {
|
|
6
|
+
let repositoryId;
|
|
7
|
+
|
|
8
|
+
beforeEach(() => {
|
|
9
|
+
repositoryId = 'jdbc-init-' + Date.now();
|
|
10
|
+
cy.createRepository({id: repositoryId});
|
|
11
|
+
cy.presetRepository(repositoryId);
|
|
12
|
+
});
|
|
13
|
+
|
|
14
|
+
afterEach(() => {
|
|
15
|
+
cy.deleteRepository(repositoryId);
|
|
16
|
+
});
|
|
17
|
+
|
|
18
|
+
it('Should display the correct initial state when navigating via URL', () => {
|
|
19
|
+
// Given, I visit the JDBC page via URL with a repository selected
|
|
20
|
+
JdbcSteps.visit();
|
|
21
|
+
// Then,
|
|
22
|
+
verifyInitialStateWithSelectedRepository();
|
|
23
|
+
});
|
|
24
|
+
|
|
25
|
+
it('Should display the correct initial state when navigating via the navigation bar', () => {
|
|
26
|
+
// Given, I visit the JDBC page via the navigation menu with a repository selected
|
|
27
|
+
HomeSteps.visit();
|
|
28
|
+
MainMenuSteps.clickOnJDBC();
|
|
29
|
+
// Then,
|
|
30
|
+
verifyInitialStateWithSelectedRepository();
|
|
31
|
+
});
|
|
32
|
+
|
|
33
|
+
const verifyInitialStateWithSelectedRepository = () => {
|
|
34
|
+
JdbcSteps.getJDBCPage().should('exist');
|
|
35
|
+
JdbcSteps.getJDBCConfiguration().should('exist');
|
|
36
|
+
JdbcSteps.getCreateSQLTableConfigurationButton().should('exist');
|
|
37
|
+
JdbcSteps.getNoSQLConfigurationsMessage().should('exist');
|
|
38
|
+
};
|
|
39
|
+
})
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import {ErrorSteps} from "../../../steps/error-steps";
|
|
2
|
+
import HomeSteps from "../../../steps/home-steps";
|
|
3
|
+
import {MainMenuSteps} from "../../../steps/main-menu-steps";
|
|
4
|
+
import {JdbcSteps} from "../../../steps/setup/jdbc-steps";
|
|
5
|
+
|
|
6
|
+
describe('JDBC without selected repository', () => {
|
|
7
|
+
it('Should display the correct initial state when navigating via URL', () => {
|
|
8
|
+
// Given, I visit the JDBC page via URL without a repository selected
|
|
9
|
+
JdbcSteps.visit();
|
|
10
|
+
// Then,
|
|
11
|
+
verifyInitialStateWithoutSelectedRepository();
|
|
12
|
+
});
|
|
13
|
+
|
|
14
|
+
it('Should display the correct initial state when navigating via the navigation menu', () => {
|
|
15
|
+
// Given, I visit the JDBC page via the navigation menu without a repository selected
|
|
16
|
+
HomeSteps.visit();
|
|
17
|
+
MainMenuSteps.clickOnJDBC();
|
|
18
|
+
// Then,
|
|
19
|
+
verifyInitialStateWithoutSelectedRepository();
|
|
20
|
+
});
|
|
21
|
+
|
|
22
|
+
const verifyInitialStateWithoutSelectedRepository = () => {
|
|
23
|
+
ErrorSteps.verifyNoConnectedRepoMessage();
|
|
24
|
+
JdbcSteps.getJDBCPage().should('exist');
|
|
25
|
+
JdbcSteps.getJDBCConfiguration().should('not.exist');
|
|
26
|
+
};
|
|
27
|
+
})
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import HomeSteps from "../../../steps/home-steps";
|
|
2
|
+
import {MainMenuSteps} from "../../../steps/main-menu-steps";
|
|
3
|
+
import {NamespaceSteps} from "../../../steps/setup/namespace-steps";
|
|
4
|
+
|
|
5
|
+
describe('Namespaces with selected repository', () => {
|
|
6
|
+
let repositoryId;
|
|
7
|
+
|
|
8
|
+
beforeEach(() => {
|
|
9
|
+
repositoryId = 'namespaces-init-' + Date.now();
|
|
10
|
+
cy.createRepository({id: repositoryId});
|
|
11
|
+
cy.presetRepository(repositoryId);
|
|
12
|
+
});
|
|
13
|
+
|
|
14
|
+
afterEach(() => {
|
|
15
|
+
cy.deleteRepository(repositoryId);
|
|
16
|
+
});
|
|
17
|
+
|
|
18
|
+
it('Should display the correct initial state when navigating via URL', () => {
|
|
19
|
+
// Given, I visit the Namespaces page via URL with a repository selected
|
|
20
|
+
NamespaceSteps.visit();
|
|
21
|
+
// Then,
|
|
22
|
+
verifyInitialStateWithSelectedRepository();
|
|
23
|
+
});
|
|
24
|
+
|
|
25
|
+
it('Should display the correct initial state when navigating via the navigation bar', () => {
|
|
26
|
+
// Given, I visit the Namespaces page via the navigation menu with a repository selected
|
|
27
|
+
HomeSteps.visit();
|
|
28
|
+
MainMenuSteps.clickOnNamespaces();
|
|
29
|
+
// Then,
|
|
30
|
+
verifyInitialStateWithSelectedRepository();
|
|
31
|
+
});
|
|
32
|
+
|
|
33
|
+
const verifyInitialStateWithSelectedRepository = () => {
|
|
34
|
+
NamespaceSteps.getNamespacesView().should('exist');
|
|
35
|
+
NamespaceSteps.getNamespacesContent().should('exist');
|
|
36
|
+
NamespaceSteps.getAddNamespaceForm().should('be.visible');
|
|
37
|
+
NamespaceSteps.getNamespacePrefixField().should('be.visible');
|
|
38
|
+
NamespaceSteps.getNamespaceValueField().should('be.visible');
|
|
39
|
+
NamespaceSteps.getAddNamespaceButton().should('be.visible');
|
|
40
|
+
NamespaceSteps.getNamespacesPerPageMenu().should('be.visible');
|
|
41
|
+
NamespaceSteps.getNamespacesFilterField().should('be.visible');
|
|
42
|
+
NamespaceSteps.getNamespacesTable().should('be.visible');
|
|
43
|
+
};
|
|
44
|
+
})
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import {ErrorSteps} from "../../../steps/error-steps";
|
|
2
|
+
import HomeSteps from "../../../steps/home-steps";
|
|
3
|
+
import {MainMenuSteps} from "../../../steps/main-menu-steps";
|
|
4
|
+
import {NamespaceSteps} from "../../../steps/setup/namespace-steps";
|
|
5
|
+
|
|
6
|
+
describe('Namespaces without selected repository', () => {
|
|
7
|
+
it('Should display the correct initial state when navigating via URL', () => {
|
|
8
|
+
// Given, I visit the Namespaces page via URL without a repository selected
|
|
9
|
+
NamespaceSteps.visit();
|
|
10
|
+
// Then,
|
|
11
|
+
verifyInitialStateWithoutSelectedRepository();
|
|
12
|
+
});
|
|
13
|
+
|
|
14
|
+
it('Should display the correct initial state when navigating via the navigation menu', () => {
|
|
15
|
+
// Given, I visit the Namespaces page via the navigation menu without a repository selected
|
|
16
|
+
HomeSteps.visit();
|
|
17
|
+
MainMenuSteps.clickOnNamespaces();
|
|
18
|
+
// Then,
|
|
19
|
+
verifyInitialStateWithoutSelectedRepository()
|
|
20
|
+
});
|
|
21
|
+
|
|
22
|
+
const verifyInitialStateWithoutSelectedRepository = () => {
|
|
23
|
+
ErrorSteps.verifyNoConnectedRepoMessage();
|
|
24
|
+
NamespaceSteps.getNamespacesView().should('exist');
|
|
25
|
+
NamespaceSteps.getNamespacesContent().should('not.be.visible');
|
|
26
|
+
};
|
|
27
|
+
})
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import {NamespaceSteps} from "
|
|
2
|
-
import {ApplicationSteps} from "
|
|
3
|
-
import {NamespaceStubs} from "
|
|
4
|
-
import {ModalDialogSteps} from "
|
|
1
|
+
import {NamespaceSteps} from "../../../steps/setup/namespace-steps";
|
|
2
|
+
import {ApplicationSteps} from "../../../steps/application-steps";
|
|
3
|
+
import {NamespaceStubs} from "../../../stubs/namespace-stubs";
|
|
4
|
+
import {ModalDialogSteps} from "../../../steps/modal-dialog-steps";
|
|
5
5
|
|
|
6
6
|
describe('Namespaces', () => {
|
|
7
7
|
|
|
@@ -235,8 +235,9 @@ describe('Namespaces', () => {
|
|
|
235
235
|
ApplicationSteps.getErrorNotifications().should('be.visible')
|
|
236
236
|
.and('contain', 'Internal Server Error');
|
|
237
237
|
// And the prefix and namespace fields should not be cleared to allow user to correct the error
|
|
238
|
+
// writing in the field above should clear the field first
|
|
238
239
|
NamespaceSteps.getInlineNamespacePrefix(0).should('have.value', 'test1');
|
|
239
|
-
|
|
240
|
+
NamespaceSteps.getInlineNamespaceValue(0).should('have.value', 'http://test.com');
|
|
240
241
|
});
|
|
241
242
|
|
|
242
243
|
it('Should allow to delete existing namespaces', () => {
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import HomeSteps from "../../../steps/home-steps";
|
|
2
|
+
import {MainMenuSteps} from "../../../steps/main-menu-steps";
|
|
3
|
+
import {PluginsSteps} from "../../../steps/setup/plugins-steps";
|
|
4
|
+
|
|
5
|
+
describe('Plugins with selected repository', () => {
|
|
6
|
+
let repositoryId;
|
|
7
|
+
|
|
8
|
+
beforeEach(() => {
|
|
9
|
+
repositoryId = 'plugins-init-' + Date.now();
|
|
10
|
+
cy.createRepository({id: repositoryId});
|
|
11
|
+
cy.presetRepository(repositoryId);
|
|
12
|
+
});
|
|
13
|
+
|
|
14
|
+
afterEach(() => {
|
|
15
|
+
cy.deleteRepository(repositoryId);
|
|
16
|
+
});
|
|
17
|
+
|
|
18
|
+
it('Should display the correct initial state when navigating via URL', () => {
|
|
19
|
+
// Given, I visit the Plugins page via URL with a repository selected
|
|
20
|
+
PluginsSteps.visit();
|
|
21
|
+
// Then,
|
|
22
|
+
verifyInitialStateWithSelectedRepository();
|
|
23
|
+
});
|
|
24
|
+
|
|
25
|
+
it('Should display the correct initial state when navigating via the navigation bar', () => {
|
|
26
|
+
// Given, I visit the Plugins page via the navigation menu with a repository selected
|
|
27
|
+
HomeSteps.visit();
|
|
28
|
+
MainMenuSteps.clickOnPlugins();
|
|
29
|
+
// Then,
|
|
30
|
+
verifyInitialStateWithSelectedRepository();
|
|
31
|
+
});
|
|
32
|
+
|
|
33
|
+
const verifyInitialStateWithSelectedRepository = () => {
|
|
34
|
+
PluginsSteps.getPluginsView().should('be.visible');
|
|
35
|
+
PluginsSteps.getSearchPluginBar().should('be.visible');
|
|
36
|
+
PluginsSteps.getPluginsList().should('exist');
|
|
37
|
+
};
|
|
38
|
+
})
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import {ErrorSteps} from "../../../steps/error-steps";
|
|
2
|
+
import HomeSteps from "../../../steps/home-steps";
|
|
3
|
+
import {MainMenuSteps} from "../../../steps/main-menu-steps";
|
|
4
|
+
import {PluginsSteps} from "../../../steps/setup/plugins-steps";
|
|
5
|
+
|
|
6
|
+
describe('Plugins without selected repository', () => {
|
|
7
|
+
it('Should display the correct initial state when navigating via URL', () => {
|
|
8
|
+
// Given, I visit the Plugins page via URL without a repository selected
|
|
9
|
+
PluginsSteps.visit();
|
|
10
|
+
// Then,
|
|
11
|
+
verifyInitialStateWithoutSelectedRepository();
|
|
12
|
+
});
|
|
13
|
+
|
|
14
|
+
it('Should display the correct initial state when navigating via the navigation menu', () => {
|
|
15
|
+
// Given, I visit the Plugins page via the navigation menu without a repository selected
|
|
16
|
+
HomeSteps.visit();
|
|
17
|
+
MainMenuSteps.clickOnPlugins();
|
|
18
|
+
// Then,
|
|
19
|
+
verifyInitialStateWithoutSelectedRepository()
|
|
20
|
+
});
|
|
21
|
+
|
|
22
|
+
const verifyInitialStateWithoutSelectedRepository = () => {
|
|
23
|
+
ErrorSteps.verifyNoConnectedRepoMessage();
|
|
24
|
+
PluginsSteps.getPluginsView().should('be.visible');
|
|
25
|
+
PluginsSteps.getSearchPluginBar().should('not.be.visible');
|
|
26
|
+
PluginsSteps.getPluginsList().should('not.exist');
|
|
27
|
+
};
|
|
28
|
+
})
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import {PluginsSteps} from "
|
|
2
|
-
import {PluginsStubs} from "
|
|
3
|
-
import {LicenseStubs} from "
|
|
1
|
+
import {PluginsSteps} from "../../../steps/setup/plugins-steps";
|
|
2
|
+
import {PluginsStubs} from "../../../stubs/setup/plugins-stubs";
|
|
3
|
+
import {LicenseStubs} from "../../../stubs/license-stubs";
|
|
4
4
|
|
|
5
5
|
describe('Plugins view', () => {
|
|
6
6
|
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import HomeSteps from "../../../steps/home-steps";
|
|
2
|
+
import {MainMenuSteps} from "../../../steps/main-menu-steps";
|
|
3
|
+
import {RdfRankSteps} from "../../../steps/setup/rdf-rank-steps";
|
|
4
|
+
|
|
5
|
+
describe('RDF Rank with selected repository', () => {
|
|
6
|
+
let repositoryId;
|
|
7
|
+
|
|
8
|
+
beforeEach(() => {
|
|
9
|
+
repositoryId = 'rdf-rank-init-' + Date.now();
|
|
10
|
+
cy.createRepository({id: repositoryId});
|
|
11
|
+
cy.presetRepository(repositoryId);
|
|
12
|
+
});
|
|
13
|
+
|
|
14
|
+
afterEach(() => {
|
|
15
|
+
cy.deleteRepository(repositoryId);
|
|
16
|
+
});
|
|
17
|
+
|
|
18
|
+
it('Should display the correct initial state when navigating via URL', () => {
|
|
19
|
+
// Given, I visit the RDF Rank page via URL with a repository selected
|
|
20
|
+
RdfRankSteps.visit();
|
|
21
|
+
// Then,
|
|
22
|
+
verifyInitialStateWithSelectedRepository();
|
|
23
|
+
});
|
|
24
|
+
|
|
25
|
+
it('Should display the correct initial state when navigating via the navigation bar', () => {
|
|
26
|
+
// Given, I visit the RDF Rank page via the navigation menu with a repository selected
|
|
27
|
+
HomeSteps.visit();
|
|
28
|
+
MainMenuSteps.clickOnRDFRank();
|
|
29
|
+
// Then,
|
|
30
|
+
verifyInitialStateWithSelectedRepository();
|
|
31
|
+
});
|
|
32
|
+
|
|
33
|
+
const verifyInitialStateWithSelectedRepository = () => {
|
|
34
|
+
RdfRankSteps.getRDFRankPage().should('be.visible');
|
|
35
|
+
RdfRankSteps.getRDFRankContent().should('be.visible');
|
|
36
|
+
RdfRankSteps.getRDFRankLabel().should('be.visible');
|
|
37
|
+
RdfRankSteps.getRDFRandComputeButton().should('be.visible');
|
|
38
|
+
RdfRankSteps.getFilter().should('be.visible');
|
|
39
|
+
};
|
|
40
|
+
})
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import {ErrorSteps} from "../../../steps/error-steps";
|
|
2
|
+
import HomeSteps from "../../../steps/home-steps";
|
|
3
|
+
import {MainMenuSteps} from "../../../steps/main-menu-steps";
|
|
4
|
+
import {RdfRankSteps} from "../../../steps/setup/rdf-rank-steps";
|
|
5
|
+
|
|
6
|
+
describe('Rdf Rank without selected repository', () => {
|
|
7
|
+
it('Should display the correct initial state when navigating via URL', () => {
|
|
8
|
+
// Given, I visit the Rdf Rank page via URL without a repository selected
|
|
9
|
+
RdfRankSteps.visit();
|
|
10
|
+
// Then,
|
|
11
|
+
verifyInitialStateWithoutSelectedRepository();
|
|
12
|
+
});
|
|
13
|
+
|
|
14
|
+
it('Should display the correct initial state when navigating via the navigation menu', () => {
|
|
15
|
+
// Given, I visit the Rdf Rank page via the navigation menu without a repository selected
|
|
16
|
+
HomeSteps.visit();
|
|
17
|
+
MainMenuSteps.clickOnRDFRank();
|
|
18
|
+
// Then,
|
|
19
|
+
verifyInitialStateWithoutSelectedRepository();
|
|
20
|
+
});
|
|
21
|
+
|
|
22
|
+
const verifyInitialStateWithoutSelectedRepository = () => {
|
|
23
|
+
ErrorSteps.verifyNoConnectedRepoMessage();
|
|
24
|
+
RdfRankSteps.getRDFRankPage().should('exist');
|
|
25
|
+
RdfRankSteps.getRDFRankContent().should('not.be.visible');
|
|
26
|
+
RdfRankSteps.getRDFRankLabel().should('not.be.visible');
|
|
27
|
+
RdfRankSteps.getRDFRandComputeButton().should('not.be.visible');
|
|
28
|
+
RdfRankSteps.getFilter().should('not.be.visible');
|
|
29
|
+
};
|
|
30
|
+
})
|