graphdb-workbench-tests 3.4.0-TR4 → 3.4.0-TR5
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 +20 -6
- package/cypress-legacy.config.js +47 -0
- package/cypress-security.config.js +36 -0
- package/cypress.config.js +45 -6
- package/{integration-flaky → e2e-flaky}/explore/visual.graph.spec.js +4 -1
- package/{integration-flaky → e2e-flaky}/import/import-server-files-operations.spec.js +2 -2
- package/{integration-flaky → e2e-flaky}/import/import-user-data-batch-operations.spec.js +3 -3
- package/e2e-flaky/import/import-user-data-url.spec.js +63 -0
- package/{integration-flaky → e2e-flaky}/setup/sparql-template-create.js +10 -18
- package/{integration-flaky → e2e-flaky}/sparql-editor/actions/execute-update-query.spec.js +2 -12
- package/{integration-flaky → e2e-flaky}/sparql-editor/actions/share-query.spec.js +1 -7
- package/{integration-flaky → e2e-flaky}/sparql-editor/yasr/table-plugin.spec.js +3 -7
- package/{integration → e2e-legacy}/cluster/cluster-states.spec.js +3 -3
- 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} +20 -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 +5 -10
- package/e2e-legacy/explore/visual-graph/node-info-panel.spec.js +58 -0
- package/e2e-legacy/explore/visual-graph/visual-graph-links-limit.spec.js +142 -0
- package/{integration → e2e-legacy}/explore/visual-graph/visual-graph-node-labels.spec.js +14 -2
- 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 +75 -96
- 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/{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.js +39 -0
- package/e2e-legacy/graphql/graphql-endpoint-management-without-selected-repository.spec.js +21 -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/e2e-legacy/graphql/graphql-theme.spec.js +73 -0
- package/{integration → e2e-legacy}/graphql/import-graphql-endpoint-definitions.spec.js +0 -6
- package/e2e-legacy/guides/autocomplete/enable-autocomplete-guide.spec.js +49 -0
- package/e2e-legacy/guides/class-hierarcy/class-hierarchy-guide.spec.js +89 -0
- package/e2e-legacy/guides/class-relations/class-relations-guide.spec.js +76 -0
- package/e2e-legacy/guides/connectors/connectors-guide.spec.js +163 -0
- package/e2e-legacy/guides/create-similarity-index/create-similarity-index-guide.spec.js +74 -0
- package/e2e-legacy/guides/download-guide-resource/download-guide-resource-guide.js +55 -0
- package/e2e-legacy/guides/execute-sparql-query/execute-sparql-query-guide.spec.js +92 -0
- package/e2e-legacy/guides/import-rdf-file/confirm-duplicate-rdf-file.spec.js +63 -0
- package/e2e-legacy/guides/import-rdf-file/import-rdf-file.spec.js +105 -0
- package/e2e-legacy/guides/main-menu/main-menu-guide.spec.js +302 -0
- package/e2e-legacy/guides/navigation/navigation-guide.spec.js +64 -0
- package/e2e-legacy/guides/rdf-rank/rdf-rank-guide.spec.js +42 -0
- package/e2e-legacy/guides/repositories/create-repository-guide.spec.js +69 -0
- package/e2e-legacy/guides/table-graph-explore/table-graph-explore-guide.spec.js +168 -0
- package/e2e-legacy/guides/ttyg/configure-agent/configure-agent-guide.spec.js +158 -0
- package/e2e-legacy/guides/ttyg/conversation/ttyg-conversation-guide.spec.js +92 -0
- package/e2e-legacy/guides/ttyg/edit-agent/edit-ttyg-agent-guide.spec.js +88 -0
- package/e2e-legacy/guides/visual-graph/visual-graph-guide.spec.js +372 -0
- package/e2e-legacy/guides/welcome/welcome-guide.spec.js +36 -0
- package/e2e-legacy/help/guides/guides-autostart.spec.js +126 -0
- package/e2e-legacy/help/guides/guides-confirm-cancel-dialog.js +83 -0
- 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/e2e-legacy/help/guides/movies-interactive-guide.spec.js +71 -0
- package/{integration/guides/star-wars-interactive-guide.js → e2e-legacy/help/guides/star-wars-interactive-guide.spec.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/cookie-policy.spec.js +182 -0
- package/e2e-legacy/home/documentation-link.spec.js +41 -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 +160 -0
- package/e2e-legacy/home/view-resource-autocomplete.spec.js +65 -0
- package/{integration → e2e-legacy}/import/import-server-files.spec.js +5 -3
- package/{integration → e2e-legacy}/import/import-user-data-file-upload.spec.js +19 -13
- 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 +11 -4
- 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/e2e-legacy/not-found/not-found.spec.js +23 -0
- package/{integration → e2e-legacy}/repository/ontop-repository.spec.js +1 -1
- package/{integration → e2e-legacy}/repository/repositories.spec.js +37 -45
- package/e2e-legacy/repository/url-with-repository-id-parameter.spec.js +181 -0
- package/{integration → e2e-legacy}/resource/resource.spec.js +50 -20
- package/e2e-legacy/setup/aclmanagement/acl-management-with-selected repository.spec.js +84 -0
- package/e2e-legacy/setup/aclmanagement/acl-management-without-repositories.spec.js +21 -0
- package/{integration → e2e-legacy}/setup/aclmanagement/create-rule.spec.js +4 -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 +6 -7
- 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/{integration → e2e-legacy}/setup/connectors-lucene.spec.js +26 -10
- package/{integration → e2e-legacy}/setup/jdbc/jdbc-create.spec.js +4 -4
- 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 +3 -5
- 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/e2e-legacy/setup/settings/my-settings.spec.js +207 -0
- package/{integration/setup/sparql-template-create.js → e2e-legacy/setup/sparql-template/sparql-template-create.spec.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 +184 -87
- package/e2e-legacy/setup/users-and-access/users-and-access-initial-state.spec.js +25 -0
- package/{integration → e2e-legacy}/sparql-editor/actions/expand-results-over-sameas.spec.js +12 -12
- package/{integration → e2e-legacy}/sparql-editor/actions/include-inferred-statements.spec.js +6 -6
- package/{integration → e2e-legacy}/sparql-editor/actions/inferred-sameas.spec.js +10 -8
- package/{integration → e2e-legacy}/sparql-editor/actions/show-saved-queries.spec.js +1 -6
- package/{integration → e2e-legacy}/sparql-editor/saved-query/abort-query.spec.js +1 -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 +15 -24
- package/{integration → e2e-legacy}/sparql-editor/saved-query/share-query.spec.js +32 -1
- 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}/sparql-editor/yasgui-tabs.spec.js +2 -12
- package/e2e-legacy/sparql-editor/yasqe-themes.spec.js +54 -0
- package/{integration → e2e-legacy}/sparql-editor/yasr/pagination.spec.js +5 -18
- package/{integration → e2e-legacy}/sparql-editor/yasr/table-plugin.spec.js +1 -6
- package/e2e-legacy/sparql-editor/yasr/toolbar/visual-graph-button.spec.js +106 -0
- package/e2e-legacy/sparql-editor/yasr/yasr.spec.js +80 -0
- package/{integration → e2e-legacy}/ttyg/agent-list.spec.js +53 -2
- package/{integration → e2e-legacy}/ttyg/agent-select-menu.spec.js +25 -2
- package/{integration → e2e-legacy}/ttyg/chat-list.spec.js +3 -14
- package/{integration → e2e-legacy}/ttyg/chat-panel.spec.js +74 -6
- package/{integration → e2e-legacy}/ttyg/clone-agent.spec.js +24 -2
- package/{integration → e2e-legacy}/ttyg/create-agent.spec.js +37 -66
- package/{integration → e2e-legacy}/ttyg/create-chat.spec.js +6 -4
- package/{integration → e2e-legacy}/ttyg/delete-agent.spec.js +1 -2
- package/e2e-legacy/ttyg/edit-agent.spec.js +178 -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 +23 -17
- package/{integration → e2e-legacy}/ttyg/ttyg-view.spec.js +2 -2
- package/e2e-security/repository/url-with-repository-id-parameter.spec.js +57 -0
- package/e2e-security/setup/home/cookie-policy.spec.js +290 -0
- package/e2e-security/setup/users-and-access/create-user-permissions.spec.js +193 -0
- package/e2e-security/setup/users-and-access/graphql-user.spec.js +126 -0
- package/e2e-security/setup/users-and-access/repo-admin-role.spec.js +70 -0
- package/e2e-security/setup/users-and-access/turn-on-security-and-password-change.spec.js +99 -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/eslint.config.js +39 -0
- package/fixtures/graph/graph-configurations.json +59 -0
- package/fixtures/guides/autocomplete/enable-autocomplete-guide.json +12 -0
- package/fixtures/guides/class-hierarchy/class-hierarchy-guide.json +35 -0
- package/fixtures/guides/class-relations/class-relations-guide.json +33 -0
- package/fixtures/guides/confirm-cancel-dialog/confirm-cancel-dialog-guide.json +15 -0
- package/fixtures/guides/connectors/connectors-guide.json +66 -0
- package/fixtures/guides/connectors/lucene-connector-guide.json +120 -0
- package/fixtures/guides/create-repository/create-repository-guide.json +25 -0
- package/fixtures/guides/create-similarity-index/create-similarity-index-guide.json +36 -0
- package/fixtures/guides/download-guide-resource/download-guide-resource-guide.json +25 -0
- package/fixtures/guides/download-resource.ttl +629 -0
- package/fixtures/guides/execute-sparql-query/execute-sparql-query-guide.json +54 -0
- package/fixtures/guides/import-rdf-file/confirm-duplicate-rdf-file-guide.json +30 -0
- package/fixtures/guides/import-rdf-file/import-rdf-file-guide.json +21 -0
- package/fixtures/guides/main-menu/main-menu-guide.json +98 -0
- package/fixtures/guides/navigation/navigation-guide.json +60 -0
- package/fixtures/guides/rdf-rank/rdf-rank-guide.json +18 -0
- package/fixtures/guides/table-graph-explore/table-graph-explore-guide.json +51 -0
- package/fixtures/guides/table-graph-explore/table-graph-explore-without-substeps-guide.json +25 -0
- package/fixtures/guides/ttyg/configure-agent/configure-ttyg-agent-guide.json +74 -0
- package/fixtures/guides/ttyg/conversation/ttyg-conversation-guide.json +26 -0
- package/fixtures/guides/ttyg/edit-ttyg-agent/edit-ttyg-agent-guide.json +22 -0
- package/fixtures/guides/visual-graph/visual-graph-config-guide.json +39 -0
- package/fixtures/guides/visual-graph/visual-graph-guide.json +85 -0
- package/fixtures/guides/welcome/welcome-guide.json +18 -0
- package/fixtures/repositories/free-access.json +13 -0
- package/fixtures/similarity/get-ttyg-similarity-instances.json +10 -0
- package/fixtures/ttyg/agent/get-agent-defaults-assistant-api.json +44 -0
- package/fixtures/ttyg/agent/get-agent-defaults.json +9 -2
- package/fixtures/ttyg/agent/get-agent-list-with-incompatible-agents.json +79 -0
- package/fixtures/ttyg/agent/get-similarity-indexes-for-another-repo.json +8 -0
- package/fixtures/ttyg/agent/get-similarity-indexes.json +22 -0
- package/fixtures/ttyg/chats/ask-question-cancel.json +12 -0
- package/fixtures/ttyg/chats/ask-question.json +12 -2
- package/fixtures/ttyg/chats/cancel-question-response.json +1 -0
- package/fixtures/ttyg/chats/create/create-chat-response.json +10 -14
- package/fixtures/ttyg/chats/create/question-response-after-chat-creation.json +29 -0
- package/fixtures/ttyg/chats/explain-response-1.json +2 -48
- package/fixtures/ttyg/chats/explain-response-3.json +12 -0
- package/fixtures/ttyg/chats/get-chat.json +6 -1
- package/npm-shrinkwrap.json +11004 -3815
- package/package.json +58 -42
- package/plugins/index.js +10 -5
- package/steps/application-steps.js +8 -6
- package/steps/base-steps.js +29 -0
- package/steps/class-views-steps.js +35 -7
- package/steps/cluster/cluster-page-steps.js +12 -2
- package/steps/cookie-policy/cookie-consent-banner-steps.js +21 -0
- package/steps/cookie-policy/cookie-policy-modal.steps.js +56 -0
- package/steps/error-page-steps.js +9 -0
- 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-index-create-steps.js +5 -3
- package/steps/explore/similarity-indexes-steps.js +16 -2
- package/steps/graphql/graphql-endpoint-management-steps.js +2 -2
- package/steps/graphql/playground-editor-steps.js +46 -0
- package/steps/guides/guide-dialog-steps.js +81 -2
- package/steps/guides/guide-steps.js +54 -2
- package/steps/guides/movies-guide-steps.js +2 -1
- package/steps/header-steps.js +22 -0
- package/steps/home-steps.js +184 -77
- package/steps/import/import-resource-message-dialog.js +1 -1
- package/steps/import/import-steps.js +12 -16
- package/steps/import/import-user-data-steps.js +5 -1
- package/steps/language-selector-steps.js +2 -2
- package/steps/license-steps.js +91 -9
- package/steps/login-steps.js +31 -6
- package/steps/main-menu-steps.js +244 -19
- package/steps/modal-dialog-steps.js +32 -1
- 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/not-found/not-found-steps.js +23 -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 +88 -18
- package/steps/resource/resource-steps.js +6 -10
- package/steps/rest-api-documentation-steps.js +15 -0
- package/steps/setup/acl-management-steps.js +18 -2
- package/steps/setup/autocomplete-steps.js +23 -8
- package/steps/setup/connectors-steps.js +32 -0
- package/steps/setup/jdbc-steps.js +18 -4
- package/steps/setup/namespace-steps.js +10 -7
- package/steps/setup/plugins-steps.js +12 -5
- package/steps/setup/rdf-rank-steps.js +23 -9
- package/steps/setup/settings-steps.js +101 -2
- package/steps/setup/sparql-templates-steps.js +19 -1
- package/steps/setup/user-and-access-steps.js +50 -16
- package/steps/shared-modal-dialog-steps.js +45 -0
- package/steps/sparql-editor-steps.js +21 -2
- package/steps/sparql-steps.js +13 -1
- package/steps/system-information-steps.js +70 -0
- package/steps/toaster-steps.js +18 -6
- package/steps/ttyg/chat-panel-steps.js +40 -2
- package/steps/ttyg/ttyg-agent-settings-modal.steps.js +136 -31
- package/steps/ttyg/ttyg-view-steps.js +80 -10
- package/steps/visual-graph-split-button-steps.js +45 -0
- package/steps/visual-graph-steps.js +106 -10
- 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/yasgui-loader.js +3 -3
- package/steps/yasgui/yasgui-steps.js +1 -1
- package/steps/yasgui/yasqe-steps.js +35 -4
- package/steps/yasgui/yasr-steps.js +35 -5
- package/stubs/autocomplete/autocomplete-stubs.js +7 -0
- package/stubs/browser-stubs.js +21 -0
- package/stubs/environment-stubs.js +9 -1
- package/stubs/graph-config-stubs.js +17 -0
- package/stubs/guides/guides-stubs.js +103 -0
- package/stubs/license-stubs.js +51 -0
- package/stubs/repositories/repositories-stubs.js +180 -75
- package/stubs/saved-queries-stubs.js +5 -0
- package/stubs/security-stubs.js +12 -0
- package/stubs/similarity-index-stubs.js +4 -0
- package/stubs/sparql-stubs.js +10 -0
- package/stubs/ttyg/ttyg-stubs.js +64 -15
- package/stubs/yasgui/query-stubs.js +5 -1
- package/support/commands.js +22 -1
- package/support/connector-commands.js +13 -0
- package/support/e2e-security.js +9 -0
- package/support/{index.js → e2e.js} +9 -3
- package/support/repository-commands.js +29 -4
- package/support/settings-commands.js +33 -1
- package/support/url-commands.js +13 -0
- package/support/user-commands.js +9 -4
- package/utils/html-util.js +24 -4
- package/Dockerfile +0 -11
- package/fixtures/locale-en.json +0 -3342
- 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/guides/movies-interactive-guide.spec.js +0 -73
- 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/setup/my-settings.spec.js +0 -289
- package/integration/sparql-editor/yasr/toolbar/visual-graph-button.spec.js +0 -57
- 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/stubs/repositories-stub.js +0 -73
- package/{integration-flaky → e2e-flaky}/import/import.server.files.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/edit-cluster-nodes-modal.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-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/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/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/save-query.spec.js +0 -0
- /package/{integration → e2e-legacy}/sparql-editor/internationalization.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/yasr/download-as.spec.js +0 -0
|
@@ -1,7 +1,9 @@
|
|
|
1
|
+
import {BaseSteps} from "./base-steps.js";
|
|
2
|
+
|
|
1
3
|
const VIEW_URL = '/graphs-visualizations';
|
|
2
4
|
const VALID_RESOURCE = 'USRegion';
|
|
3
5
|
|
|
4
|
-
export class VisualGraphSteps {
|
|
6
|
+
export class VisualGraphSteps extends BaseSteps {
|
|
5
7
|
|
|
6
8
|
static visit() {
|
|
7
9
|
cy.visit(VIEW_URL);
|
|
@@ -19,6 +21,10 @@ export class VisualGraphSteps {
|
|
|
19
21
|
cy.visit('/graphs-visualizations?uri=http:%2F%2Fwww.w3.org%2FTR%2F2003%2FPR-owl-guide-20031209%2Fwine%23Dry');
|
|
20
22
|
}
|
|
21
23
|
|
|
24
|
+
static getSavedGraphsArea() {
|
|
25
|
+
return this.getGraphConfigSearchPanel().getByTestId('saved-graphs-area');
|
|
26
|
+
}
|
|
27
|
+
|
|
22
28
|
static openNodeLabelGraph() {
|
|
23
29
|
cy.visit('/graphs-visualizations?uri=http:%2F%2Fexample.com%2Fnode1');
|
|
24
30
|
// Wait for at least one predicate to be displayed, to ensure that the visual graph is open and ready for testing.
|
|
@@ -34,9 +40,9 @@ export class VisualGraphSteps {
|
|
|
34
40
|
}
|
|
35
41
|
|
|
36
42
|
static updateGraphConfiguration(namedGraph) {
|
|
37
|
-
cy.get('[data-cy="save-or-update-graph"]').click()
|
|
38
|
-
|
|
39
|
-
|
|
43
|
+
cy.get('[data-cy="save-or-update-graph"]').click();
|
|
44
|
+
cy.get('[id="wb-graphviz-savegraph-name"]').type(namedGraph);
|
|
45
|
+
cy.get('[id="wb-graphviz-savegraph-submit"]').should('be.visible').click();
|
|
40
46
|
cy.get('.toast').contains('Saved graph ' + namedGraph + ' was saved');
|
|
41
47
|
}
|
|
42
48
|
|
|
@@ -81,6 +87,30 @@ export class VisualGraphSteps {
|
|
|
81
87
|
return cy.get('.autocomplete-toast a');
|
|
82
88
|
}
|
|
83
89
|
|
|
90
|
+
static getRdfResourceSearchInput() {
|
|
91
|
+
return cy.getByTestId('rdf-resource-input');
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
static searchForRdfResource(resource) {
|
|
95
|
+
this.getRdfResourceSearchInput().type(resource, {force: true});
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
static shareVisualGraphWithOtherUsers() {
|
|
99
|
+
this.getShareGraphButton().click();
|
|
100
|
+
}
|
|
101
|
+
|
|
102
|
+
static getShareGraphButton() {
|
|
103
|
+
return cy.getByTestId('share-graph-config');
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
static selectConfig(configName) {
|
|
107
|
+
this.getConfigByName(configName).click();
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
static getConfigByName(name) {
|
|
111
|
+
return cy.getByTestId(`graph-config-${name}`);
|
|
112
|
+
}
|
|
113
|
+
|
|
84
114
|
static getGraphVisualizationNodes() {
|
|
85
115
|
return this.getGraphVisualizationPane().find('.node-wrapper');
|
|
86
116
|
}
|
|
@@ -142,6 +172,14 @@ export class VisualGraphSteps {
|
|
|
142
172
|
return cy.get(`[id="${nodeId}"] circle`);
|
|
143
173
|
}
|
|
144
174
|
|
|
175
|
+
static clickOnNode(nodeId) {
|
|
176
|
+
this.getCircleOfNodeByNodeId(nodeId).click();
|
|
177
|
+
}
|
|
178
|
+
|
|
179
|
+
static dblclickOnNode(nodeId) {
|
|
180
|
+
this.getCircleOfNodeByNodeId(nodeId).trigger('dblclick');
|
|
181
|
+
}
|
|
182
|
+
|
|
145
183
|
static getLineBetweenNodesById(narrowId) {
|
|
146
184
|
return cy.get(`[id="${narrowId}"] line`);
|
|
147
185
|
}
|
|
@@ -151,13 +189,31 @@ export class VisualGraphSteps {
|
|
|
151
189
|
}
|
|
152
190
|
|
|
153
191
|
static getSidePanelCloseButton() {
|
|
154
|
-
return
|
|
192
|
+
return this.getSidePanelContent().find('.close');
|
|
155
193
|
}
|
|
156
194
|
|
|
157
195
|
static getSidePanelContent() {
|
|
158
196
|
return cy.get('.rdf-side-panel-content');
|
|
159
197
|
}
|
|
160
198
|
|
|
199
|
+
static getPropertyByIndex(index) {
|
|
200
|
+
return this.getSidePanelContent().find('.rdf-list .datasource').eq(index);
|
|
201
|
+
}
|
|
202
|
+
|
|
203
|
+
static closeSidePanel() {
|
|
204
|
+
this.getSidePanelCloseButton().click();
|
|
205
|
+
}
|
|
206
|
+
|
|
207
|
+
// Note the index is 1-based
|
|
208
|
+
static openConfigTab(tabIndex) {
|
|
209
|
+
return this.getConfigTab(tabIndex).click();
|
|
210
|
+
}
|
|
211
|
+
|
|
212
|
+
// Note the index is 1-based
|
|
213
|
+
static getConfigTab(tabIndex) {
|
|
214
|
+
return cy.getByTestId(`graph-config-tab-${tabIndex}`);
|
|
215
|
+
}
|
|
216
|
+
|
|
161
217
|
// Visual graph settings form field access
|
|
162
218
|
|
|
163
219
|
static openPredicatesTab() {
|
|
@@ -184,7 +240,8 @@ export class VisualGraphSteps {
|
|
|
184
240
|
}
|
|
185
241
|
|
|
186
242
|
static getSaveSettingsButton() {
|
|
187
|
-
|
|
243
|
+
cy.get('.save-settings-btn').scrollIntoView();
|
|
244
|
+
return cy.get('.save-settings-btn').should('be.visible');
|
|
188
245
|
}
|
|
189
246
|
|
|
190
247
|
static saveSettings() {
|
|
@@ -192,7 +249,8 @@ export class VisualGraphSteps {
|
|
|
192
249
|
}
|
|
193
250
|
|
|
194
251
|
static getResetSettingsButton() {
|
|
195
|
-
|
|
252
|
+
cy.get('.reset-settings').scrollIntoView();
|
|
253
|
+
return cy.get('.reset-settings').should('be.visible');
|
|
196
254
|
}
|
|
197
255
|
|
|
198
256
|
static resetSettings() {
|
|
@@ -212,7 +270,8 @@ export class VisualGraphSteps {
|
|
|
212
270
|
}
|
|
213
271
|
|
|
214
272
|
static getPreferredTypesField() {
|
|
215
|
-
|
|
273
|
+
cy.get('.preferred-types input').scrollIntoView();
|
|
274
|
+
return cy.get('.preferred-types input').should('be.visible');
|
|
216
275
|
}
|
|
217
276
|
static getShowPreferredTypesOnlyCheckbox() {
|
|
218
277
|
return cy.get('.show-preferred-types-only').should('be.visible');
|
|
@@ -242,12 +301,32 @@ export class VisualGraphSteps {
|
|
|
242
301
|
return cy.get('.create-graph-config').should('be.visible');
|
|
243
302
|
}
|
|
244
303
|
|
|
304
|
+
static createCustomGraph() {
|
|
305
|
+
this.getCreateCustomGraphLink().click();
|
|
306
|
+
}
|
|
307
|
+
|
|
245
308
|
static getGraphConfigName() {
|
|
246
309
|
return cy.get('.graph-config-name').should('be.visible');
|
|
247
310
|
}
|
|
248
311
|
|
|
249
312
|
static typeGraphConfigName(name) {
|
|
250
|
-
this.getGraphConfigName().type(name);
|
|
313
|
+
this.getGraphConfigName().type(name, {force: true});
|
|
314
|
+
}
|
|
315
|
+
|
|
316
|
+
static typeGraphConfigDescription(description) {
|
|
317
|
+
return this.getGraphConfigDescription().type(description, {force: true});
|
|
318
|
+
}
|
|
319
|
+
|
|
320
|
+
static getGraphConfigDescription() {
|
|
321
|
+
return cy.get('.graph-config-description').should('be.visible');
|
|
322
|
+
}
|
|
323
|
+
|
|
324
|
+
static typeGraphConfigHint(hint) {
|
|
325
|
+
return this.getGraphConfigHint().type(hint, {force: true});
|
|
326
|
+
}
|
|
327
|
+
|
|
328
|
+
static getGraphConfigHint() {
|
|
329
|
+
return cy.get('.graph-config-example').should('be.visible');
|
|
251
330
|
}
|
|
252
331
|
|
|
253
332
|
static getSaveConfigButton() {
|
|
@@ -320,6 +399,18 @@ export class VisualGraphSteps {
|
|
|
320
399
|
.should('be.visible').click();
|
|
321
400
|
}
|
|
322
401
|
|
|
402
|
+
static getTruncateLabelsCheckbox() {
|
|
403
|
+
return this.getByTestId('truncate-node-labels-checkbox');
|
|
404
|
+
}
|
|
405
|
+
|
|
406
|
+
static toggleTruncateLabelsCheckbox() {
|
|
407
|
+
return this.getTruncateLabelsCheckbox().click();
|
|
408
|
+
}
|
|
409
|
+
|
|
410
|
+
static getInvalidLinksMessage() {
|
|
411
|
+
return this.getByTestId('invalid-links-limit');
|
|
412
|
+
}
|
|
413
|
+
|
|
323
414
|
static openVisualGraphHome() {
|
|
324
415
|
cy.get('.toolbar-holder').should('be.visible')
|
|
325
416
|
.find('.return-home-btn').should('be.visible').click();
|
|
@@ -406,11 +497,16 @@ export class VisualGraphSteps {
|
|
|
406
497
|
}
|
|
407
498
|
|
|
408
499
|
static selectStartNode(uri, index) {
|
|
409
|
-
cy.get('.graph-config-wizard-body .view-res-input').type(uri)
|
|
500
|
+
cy.get('.graph-config-wizard-body .view-res-input').type(uri);
|
|
501
|
+
cy.get('.graph-config-wizard-body .view-res-input')
|
|
410
502
|
.closest('.start-node-selector')
|
|
411
503
|
.find('#auto-complete-results-wrapper .result-item').eq(index).click();
|
|
412
504
|
}
|
|
413
505
|
|
|
506
|
+
static clickOnAutocompleteElement(elementText) {
|
|
507
|
+
cy.get('.result-item').contains(elementText).click();
|
|
508
|
+
}
|
|
509
|
+
|
|
414
510
|
static getSelectedStartNodeUri() {
|
|
415
511
|
return this.getStartNodeSelectorComponent().find('.selected-node code');
|
|
416
512
|
}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
export class ActiveRepositoryWidgetSteps {
|
|
2
|
+
static getWidget() {
|
|
3
|
+
return cy.get('.active-repo-widget');
|
|
4
|
+
}
|
|
5
|
+
|
|
6
|
+
static getWidgetName() {
|
|
7
|
+
return this.getWidget().find('#active-repo-label-home');
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
static getActiveRepository() {
|
|
11
|
+
return this.getWidget().find('.repo-info-home');
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
static getTotalStatements() {
|
|
15
|
+
return this.getWidget().find('.total-statements .data-value');
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
static getExplicitStatements() {
|
|
19
|
+
return this.getWidget().find('.explicit-statements .data-value');
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
static getInferredStatements() {
|
|
23
|
+
return this.getWidget().find('.inferred-statements .data-value');
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
static getImportLink() {
|
|
27
|
+
return this.getWidget().find('a.btn-link[href="import"]');
|
|
28
|
+
}
|
|
29
|
+
}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
export class RepositoryErrorsWidgetSteps {
|
|
2
|
+
static getWidget() {
|
|
3
|
+
return cy.get('.repository-errors-container');
|
|
4
|
+
}
|
|
5
|
+
|
|
6
|
+
static getCreateRepositoryBtn() {
|
|
7
|
+
return RepositoryErrorsWidgetSteps.getWidget().find('.create-repository-btn');
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
static getShowRemoteLocationsBtn() {
|
|
11
|
+
return RepositoryErrorsWidgetSteps.getWidget().find('.show-remote-locations-btn');
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
static getInfoMessage() {
|
|
15
|
+
return RepositoryErrorsWidgetSteps.getWidget().find('.info-message');
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
static getRepositoryList() {
|
|
19
|
+
return RepositoryErrorsWidgetSteps.getWidget().find('.repos .repository');
|
|
20
|
+
}
|
|
21
|
+
}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
export class YasguiLoader {
|
|
2
2
|
|
|
3
|
-
static getLoader(
|
|
3
|
+
static getLoader() {
|
|
4
4
|
return cy.get('loader-component');
|
|
5
5
|
}
|
|
6
6
|
|
|
7
|
-
static verifyMessage(message
|
|
8
|
-
YasguiLoader.getLoader(
|
|
7
|
+
static verifyMessage(message) {
|
|
8
|
+
YasguiLoader.getLoader().contains(message);
|
|
9
9
|
}
|
|
10
10
|
}
|
|
@@ -13,6 +13,10 @@ export class YasqeSteps {
|
|
|
13
13
|
return YasqeSteps.getYasqe();
|
|
14
14
|
}
|
|
15
15
|
|
|
16
|
+
static getCodeMirrorEl() {
|
|
17
|
+
return YasqeSteps.getEditor().find('.CodeMirror');
|
|
18
|
+
}
|
|
19
|
+
|
|
16
20
|
static getCodeMirror() {
|
|
17
21
|
return this.getEditor().find('.CodeMirror').then(($el) => {
|
|
18
22
|
// @ts-ignore
|
|
@@ -31,8 +35,29 @@ export class YasqeSteps {
|
|
|
31
35
|
return YasqeSteps.getYasqe().find('.yasqe_queryButton');
|
|
32
36
|
}
|
|
33
37
|
|
|
38
|
+
/**
|
|
39
|
+
* Clicks on the execute query button and hides the tooltip, which is sometimes overlapping the button and prevents
|
|
40
|
+
* it from being clicked.
|
|
41
|
+
* @param force - whether to force the click and mouseleave events. This is needed when testing a guide, because the
|
|
42
|
+
* shepherd's overlay is overlapping the button and prevents it from being clicked. In other scenarios, it is better
|
|
43
|
+
* not to force the click, because we want to make sure that the button is actually clickable by the user.
|
|
44
|
+
*/
|
|
45
|
+
static clickExecuteQueryButtonAndHideTooltip(force = false) {
|
|
46
|
+
this.getExecuteQueryButton().click({force});
|
|
47
|
+
this.getExecuteQueryButton().trigger('mouseleave', {force: true});
|
|
48
|
+
}
|
|
49
|
+
|
|
34
50
|
static executeQuery() {
|
|
35
|
-
this.
|
|
51
|
+
this.clickExecuteQueryButtonAndHideTooltip();
|
|
52
|
+
YasrSteps.getResponseInfo()
|
|
53
|
+
.should('not.have.class', 'hidden')
|
|
54
|
+
.should('not.have.class', 'empty')
|
|
55
|
+
.should('be.visible');
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
// This step is needed when testing a guide. The shepherd's overlay is overlapping somehow the button.
|
|
59
|
+
static forceExecuteQuery() {
|
|
60
|
+
this.clickExecuteQueryButtonAndHideTooltip(true);
|
|
36
61
|
YasrSteps.getResponseInfo()
|
|
37
62
|
.should('not.have.class', 'hidden')
|
|
38
63
|
.should('not.have.class', 'empty')
|
|
@@ -40,11 +65,11 @@ export class YasqeSteps {
|
|
|
40
65
|
}
|
|
41
66
|
|
|
42
67
|
static executeQueryWithoutWaiteResult() {
|
|
43
|
-
this.
|
|
68
|
+
this.clickExecuteQueryButtonAndHideTooltip();
|
|
44
69
|
}
|
|
45
70
|
|
|
46
71
|
static executeErrorQuery() {
|
|
47
|
-
this.
|
|
72
|
+
this.clickExecuteQueryButtonAndHideTooltip();
|
|
48
73
|
// Wait a wile for the response information to be present.
|
|
49
74
|
cy.get('.error-response-plugin').should('be.visible');
|
|
50
75
|
}
|
|
@@ -91,7 +116,11 @@ export class YasqeSteps {
|
|
|
91
116
|
return cy.waitUntil(() =>
|
|
92
117
|
this.getEditor().find('.CodeMirror')
|
|
93
118
|
.then((codeMirrorEl) => {
|
|
94
|
-
|
|
119
|
+
if (codeMirrorEl && codeMirrorEl[0].CodeMirror.getValue().indexOf(query) !== -1) {
|
|
120
|
+
return true;
|
|
121
|
+
} else {
|
|
122
|
+
cy.fail('Query in editor is not as expected. Expected query:\n' + query + '\nActual query:\n' + codeMirrorEl[0].CodeMirror.getValue());
|
|
123
|
+
}
|
|
95
124
|
}));
|
|
96
125
|
}
|
|
97
126
|
|
|
@@ -109,12 +138,14 @@ export class YasqeSteps {
|
|
|
109
138
|
* @return {Cypress.Chainable<unknown>}
|
|
110
139
|
*/
|
|
111
140
|
static getQuery(delay = 0) {
|
|
141
|
+
// eslint-disable-next-line cypress/no-unnecessary-waiting
|
|
112
142
|
return cy.wait(delay).then(() => this.getCodeMirror()).then((cm) => {
|
|
113
143
|
return cm.getValue();
|
|
114
144
|
});
|
|
115
145
|
}
|
|
116
146
|
|
|
117
147
|
static getActiveTabQuery(delay = 0) {
|
|
148
|
+
// eslint-disable-next-line cypress/no-unnecessary-waiting
|
|
118
149
|
return cy.wait(delay).then(() => this.getActiveTabCodeMirror()).then((cm) => {
|
|
119
150
|
return cm.getValue();
|
|
120
151
|
});
|
|
@@ -1,8 +1,14 @@
|
|
|
1
|
-
|
|
1
|
+
import {BaseSteps} from "../base-steps.js";
|
|
2
|
+
|
|
3
|
+
export class YasrSteps extends BaseSteps {
|
|
2
4
|
static getYasr() {
|
|
3
5
|
return cy.get('.tabPanel.active .yasr');
|
|
4
6
|
}
|
|
5
7
|
|
|
8
|
+
static waitUntilResultsIsVisible() {
|
|
9
|
+
return cy.waitUntil(() => this.getYasr().should('be.visible'));
|
|
10
|
+
}
|
|
11
|
+
|
|
6
12
|
static getResultHeader() {
|
|
7
13
|
return cy.get('.yasr_header');
|
|
8
14
|
}
|
|
@@ -11,6 +17,10 @@ export class YasrSteps {
|
|
|
11
17
|
return YasrSteps.getYasr().find('.yasr_response_chip');
|
|
12
18
|
}
|
|
13
19
|
|
|
20
|
+
static getResponseInfoMessage() {
|
|
21
|
+
return YasrSteps.getResponseInfo().find('.response-info-message');
|
|
22
|
+
}
|
|
23
|
+
|
|
14
24
|
static getErrorHeader() {
|
|
15
25
|
return YasrSteps.getResultHeader().get('.errorHeader');
|
|
16
26
|
}
|
|
@@ -59,6 +69,10 @@ export class YasrSteps {
|
|
|
59
69
|
this.getResultCell(rowNumber, cellNumber).realHover();
|
|
60
70
|
}
|
|
61
71
|
|
|
72
|
+
static clickOnResource(rowNumber, cellNumber) {
|
|
73
|
+
this.getResultCell(rowNumber, cellNumber).find('.uri-link').click({force: true});
|
|
74
|
+
}
|
|
75
|
+
|
|
62
76
|
static getCopyResourceLink(rowNumber, cellNumber) {
|
|
63
77
|
return this.getResultCell(rowNumber, cellNumber)
|
|
64
78
|
.realHover()
|
|
@@ -99,10 +113,6 @@ export class YasrSteps {
|
|
|
99
113
|
return YasrSteps.getYasr().find('.yasr-toolbar');
|
|
100
114
|
}
|
|
101
115
|
|
|
102
|
-
static getVisualButton() {
|
|
103
|
-
return YasrSteps.getYasrToolbar().find('.explore-visual-graph-button');
|
|
104
|
-
}
|
|
105
|
-
|
|
106
116
|
static getNoDataElement() {
|
|
107
117
|
return cy.get('.dataTables_empty');
|
|
108
118
|
}
|
|
@@ -110,4 +120,24 @@ export class YasrSteps {
|
|
|
110
120
|
static getNoResultsMessage() {
|
|
111
121
|
return YasrSteps.getYasr().find('.alert-success');
|
|
112
122
|
}
|
|
123
|
+
|
|
124
|
+
static getPivotTablePlugin() {
|
|
125
|
+
return YasrSteps.getYasr().find('.pivot-table-plugin');
|
|
126
|
+
}
|
|
127
|
+
|
|
128
|
+
static getGoogleChartPlugin() {
|
|
129
|
+
return YasrSteps.getYasr().find('.google-visualization-table');
|
|
130
|
+
}
|
|
131
|
+
|
|
132
|
+
static getExtendedTablePlugin() {
|
|
133
|
+
return YasrSteps.getYasr().find('.dataTables_wrapper');
|
|
134
|
+
}
|
|
135
|
+
|
|
136
|
+
static getFullscreenButton() {
|
|
137
|
+
return cy.get('.yasr-fullscreen-button');
|
|
138
|
+
}
|
|
139
|
+
|
|
140
|
+
static toggleFullscreen() {
|
|
141
|
+
YasrSteps.getFullscreenButton().click();
|
|
142
|
+
}
|
|
113
143
|
}
|
|
@@ -4,4 +4,11 @@ export class AutocompleteStubs extends Stubs {
|
|
|
4
4
|
static spyAutocompleteStatus() {
|
|
5
5
|
cy.intercept('GET', '/rest/autocomplete/enabled').as('autocompleteStatus');
|
|
6
6
|
}
|
|
7
|
+
|
|
8
|
+
static stubAutocompleteEnabled(enabled = true) {
|
|
9
|
+
cy.intercept('GET', '/rest/autocomplete/enabled', {
|
|
10
|
+
statusCode: 200,
|
|
11
|
+
body: enabled
|
|
12
|
+
}).as('autocomplete-status');
|
|
13
|
+
}
|
|
7
14
|
}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
export class BrowserStubs {
|
|
2
|
+
static WINDOW_OPEN_ALIAS = (isDefinition = false) => {
|
|
3
|
+
return isDefinition ? 'windowOpen' : '@windowOpen';
|
|
4
|
+
}
|
|
5
|
+
|
|
6
|
+
static NAVIGATE_TO_URL_ALIAS = (isDefinition) => {
|
|
7
|
+
return isDefinition ? 'navigateToUrl' : '@navigateToUrl';
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
static stubWindowOpen() {
|
|
11
|
+
cy.window().then((win) => {
|
|
12
|
+
cy.stub(win, 'open').as(BrowserStubs.WINDOW_OPEN_ALIAS(true))
|
|
13
|
+
})
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
static spyNavigateToUrl() {
|
|
17
|
+
cy.window().then((win) => {
|
|
18
|
+
cy.spy(win.singleSpa, 'navigateToUrl').as(BrowserStubs.NAVIGATE_TO_URL_ALIAS(true))
|
|
19
|
+
})
|
|
20
|
+
}
|
|
21
|
+
}
|
|
@@ -1,4 +1,8 @@
|
|
|
1
1
|
export class EnvironmentStubs {
|
|
2
|
+
static PRODUCT_INFO_ALIAS = (isDefinition) => {
|
|
3
|
+
return isDefinition ? 'productInfo' : '@productInfo';
|
|
4
|
+
}
|
|
5
|
+
|
|
2
6
|
static stubWbProdMode() {
|
|
3
7
|
cy.window().then((win) => {
|
|
4
8
|
win.wbDevMode = false;
|
|
@@ -11,6 +15,10 @@ export class EnvironmentStubs {
|
|
|
11
15
|
});
|
|
12
16
|
}
|
|
13
17
|
|
|
18
|
+
static spyProductInfo() {
|
|
19
|
+
cy.intercept('/rest/info/version?local=1').as('productInfo')
|
|
20
|
+
}
|
|
21
|
+
|
|
14
22
|
static stubProductInfo(productVersion) {
|
|
15
23
|
cy.intercept('GET', '/rest/info/version?local=1', {
|
|
16
24
|
statusCode: 200,
|
|
@@ -21,7 +29,7 @@ export class EnvironmentStubs {
|
|
|
21
29
|
"sesame": "4.3.13",
|
|
22
30
|
"Workbench": "2.8.0-TR5"
|
|
23
31
|
}
|
|
24
|
-
}).as(
|
|
32
|
+
}).as(EnvironmentStubs.PRODUCT_INFO_ALIAS(true));
|
|
25
33
|
|
|
26
34
|
}
|
|
27
35
|
}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import {Stubs} from './stubs.js';
|
|
2
|
+
|
|
3
|
+
export class GraphConfigStubs extends Stubs {
|
|
4
|
+
static stubGetEmptyGraphConfigs() {
|
|
5
|
+
cy.intercept('GET', '/rest/explore-graph/config', {
|
|
6
|
+
statusCode: 200,
|
|
7
|
+
body: [],
|
|
8
|
+
}).as('getEmptyGraphConfigs');
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
static stubGetGraphConfigs(fixture = '/graph/graph-configurations.json') {
|
|
12
|
+
GraphConfigStubs.stubQueryResponse(
|
|
13
|
+
'/rest/explore-graph/config',
|
|
14
|
+
fixture,
|
|
15
|
+
'getGraphConfigs');
|
|
16
|
+
}
|
|
17
|
+
}
|
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
export class GuidesStubs {
|
|
2
|
+
static stubEnableAutocompleteGuide() {
|
|
3
|
+
GuidesStubs.stubWithFixture('../fixtures/guides/autocomplete/enable-autocomplete-guide.json');
|
|
4
|
+
}
|
|
5
|
+
|
|
6
|
+
static stubCreateRepositoryGuide(guidesArray) {
|
|
7
|
+
GuidesStubs.stubWithData(guidesArray);
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
static stubCreateAndConfigureAgentGuide() {
|
|
11
|
+
GuidesStubs.stubWithFixture('../fixtures/guides/ttyg/configure-agent/configure-ttyg-agent-guide.json');
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
static stubTTYGConversationGuide() {
|
|
15
|
+
GuidesStubs.stubWithFixture('../fixtures/guides/ttyg/conversation/ttyg-conversation-guide.json');
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
static stubTTYGEditAgentGuide() {
|
|
19
|
+
GuidesStubs.stubWithFixture('../fixtures/guides/ttyg/edit-ttyg-agent/edit-ttyg-agent-guide.json');
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
static stubClassHierarchyGuide() {
|
|
23
|
+
GuidesStubs.stubWithFixture('../fixtures/guides/class-hierarchy/class-hierarchy-guide.json');
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
static stubClassRelationsGuide() {
|
|
27
|
+
GuidesStubs.stubWithFixture('../fixtures/guides/class-relations/class-relations-guide.json');
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
static stubConnectorsGuide() {
|
|
31
|
+
GuidesStubs.stubWithFixture('../fixtures/guides/connectors/connectors-guide.json');
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
static stubLuceneConnectorsGuide() {
|
|
35
|
+
GuidesStubs.stubWithFixture('../fixtures/guides/connectors/lucene-connector-guide.json');
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
static stubCreateSimilarityIndexGuide() {
|
|
39
|
+
GuidesStubs.stubWithFixture('../fixtures/guides/create-similarity-index/create-similarity-index-guide.json');
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
static stubDownloadGuideResourceGuide() {
|
|
43
|
+
GuidesStubs.stubWithFixture('../fixtures/guides/download-guide-resource/download-guide-resource-guide.json');
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
static stubMainMenuGuide() {
|
|
47
|
+
GuidesStubs.stubWithFixture('../fixtures/guides/main-menu/main-menu-guide.json');
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
static stubExecuteSparqlQueryGuide() {
|
|
51
|
+
GuidesStubs.stubWithFixture('../fixtures/guides/execute-sparql-query/execute-sparql-query-guide.json');
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
static stubDownloadResource(resourcePath, resourceFile) {
|
|
55
|
+
cy.intercept('GET', `/rest/guides/download/${resourcePath}/${resourceFile}`, {
|
|
56
|
+
fixture: `guides/download-resource.ttl`,
|
|
57
|
+
}).as('resource-download');
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
static stubImportRDFFileGuide() {
|
|
61
|
+
GuidesStubs.stubWithFixture('../fixtures/guides/import-rdf-file/import-rdf-file-guide.json');
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
static stubConfirmDuplicatedRDFFileGuide() {
|
|
65
|
+
GuidesStubs.stubWithFixture('../fixtures/guides/import-rdf-file/confirm-duplicate-rdf-file-guide.json');
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
static stubRDFRankGuide() {
|
|
69
|
+
GuidesStubs.stubWithFixture('../fixtures/guides/rdf-rank/rdf-rank-guide.json');
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
static stubTableGraphExploreWithoutSubstepsGuide() {
|
|
73
|
+
GuidesStubs.stubWithFixture('../fixtures/guides/table-graph-explore/table-graph-explore-without-substeps-guide.json');
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
static stubTableGraphExploreGuide() {
|
|
77
|
+
GuidesStubs.stubWithFixture('../fixtures/guides/table-graph-explore/table-graph-explore-guide.json');
|
|
78
|
+
}
|
|
79
|
+
static stubWelcomGuide() {
|
|
80
|
+
GuidesStubs.stubWithFixture('../fixtures/guides/welcome/welcome-guide.json');
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
|
|
84
|
+
static stubVisualGraphGuide() {
|
|
85
|
+
GuidesStubs.stubWithFixture('../fixtures/guides/visual-graph/visual-graph-guide.json');
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
static stubVisualGraphConfigGuide() {
|
|
89
|
+
GuidesStubs.stubWithFixture('../fixtures/guides/visual-graph/visual-graph-config-guide.json');
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
static stubNavigationGuide() {
|
|
93
|
+
GuidesStubs.stubWithFixture('../fixtures/guides/navigation/navigation-guide.json');
|
|
94
|
+
}
|
|
95
|
+
|
|
96
|
+
static stubWithFixture(fixturePath) {
|
|
97
|
+
cy.intercept('/rest/guides', {fixture: fixturePath}).as('getGuides');
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
static stubWithData(data) {
|
|
101
|
+
cy.intercept('/rest/guides', {body: data}).as('getGuides');
|
|
102
|
+
}
|
|
103
|
+
}
|