graphdb-workbench-tests 3.4.0-TR2 → 3.4.0-TR4
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/Dockerfile +11 -0
- package/cypress-flaky.config.js +6 -20
- package/cypress.config.js +6 -45
- package/fixtures/locale-en.json +3342 -0
- package/fixtures/ttyg/agent/get-agent-defaults.json +2 -9
- package/fixtures/ttyg/chats/ask-question.json +2 -12
- package/fixtures/ttyg/chats/create/create-chat-response.json +14 -10
- package/fixtures/ttyg/chats/explain-response-1.json +48 -2
- package/fixtures/ttyg/chats/get-chat.json +1 -6
- package/{e2e-legacy → integration}/cluster/cluster-states.spec.js +3 -3
- package/{e2e-legacy/explore/class-hierarchy → integration/explore}/class.hierarchy.spec.js +1 -1
- package/{e2e-legacy/explore/class-relationships/class-relationships.spec.js → integration/explore/class.relationships.spec.js} +50 -20
- package/{e2e-legacy/explore/graphs-overview → integration/explore}/graphs.overview.spec.js +4 -4
- package/integration/explore/similarity-index/similarity-index-create.spec.js +333 -0
- package/integration/explore/similarity-index/similarity-index.spec.js +88 -0
- package/integration/explore/similarity-index/similarity.spec.js +628 -0
- package/{e2e-legacy → integration}/explore/visual-graph/graphs-config.spec.js +10 -5
- package/{e2e-legacy → integration}/explore/visual-graph/visual-graph-node-labels.spec.js +2 -14
- package/{e2e-legacy → integration}/explore/visual-graph/visual.graph.spec.js +96 -75
- package/{e2e-legacy → integration}/graphql/create-graphql-endpoint.spec.js +2 -0
- package/{e2e-legacy → integration}/graphql/edit-graphql-enpoint.spec.js +1 -1
- package/{e2e-legacy → integration}/graphql/filter-graphql-endpoints-on-management-view.spec.js +1 -1
- package/{e2e-legacy → integration}/graphql/graphql-endpoint-management-view.spec.js +4 -4
- package/{e2e-legacy → integration}/graphql/graphql-playground.spec.js +1 -1
- package/{e2e-legacy → integration}/graphql/import-graphql-endpoint-definitions.spec.js +6 -0
- package/integration/guides/movies-interactive-guide.spec.js +73 -0
- package/{e2e-legacy/help/guides/star-wars-interactive-guide.spec.js → integration/guides/star-wars-interactive-guide.js} +2 -3
- package/integration/home/cookie-policy.spec.js +90 -0
- package/integration/home/documentation-link.spec.js +60 -0
- package/{e2e-legacy → integration}/home/google-analytics.spec.js +6 -4
- package/{e2e-legacy → integration}/home/language-change.spec.js +2 -2
- package/integration/home/language-selector.spec.js +19 -0
- package/integration/home/rdf-resource-search.spec.js +177 -0
- package/integration/home/view-resource-autocomplete.spec.js +52 -0
- package/integration/home/workbench.home.spec.js +30 -0
- package/{e2e-legacy → integration}/import/import-server-files.spec.js +3 -5
- package/{e2e-legacy → integration}/import/import-user-data-file-upload.spec.js +13 -19
- package/{e2e-legacy → integration}/import/import-user-data-text-snippet.spec.js +2 -0
- package/{e2e-legacy → integration}/import/import-user-data-url.spec.js +23 -0
- package/{e2e-legacy → integration}/import/import-user-data.spec.js +4 -11
- package/{e2e-legacy → integration}/license/license.spec.js +4 -4
- package/{e2e-legacy → integration}/monitor/global-operation-statuses-component.spec.js +5 -12
- package/{e2e-legacy/monitor/backup-and-restore/backup-and-restore.spec.js → integration/monitor/monitor.backup-and-restore.spec.js} +2 -2
- package/integration/monitor/monitor.queries.spec.js +31 -0
- package/{e2e-legacy/monitor/system → integration/monitor}/monitor.resources.spec.js +2 -3
- package/{e2e-legacy → integration}/repository/ontop-repository.spec.js +1 -1
- package/{e2e-legacy → integration}/repository/repositories.spec.js +45 -37
- package/{e2e-legacy → integration}/resource/resource.spec.js +7 -17
- package/{e2e-legacy → integration}/setup/aclmanagement/create-rule.spec.js +0 -4
- package/{e2e-legacy/setup/autocomplete → integration/setup}/autocomplete.spec.js +7 -6
- package/{e2e-legacy → integration}/setup/connectors-lucene.spec.js +10 -26
- package/{e2e-legacy → integration}/setup/jdbc/jdbc-create.spec.js +4 -4
- package/integration/setup/my-settings.spec.js +289 -0
- package/{e2e-legacy/setup/namespaces → integration/setup}/namespaces.spec.js +5 -6
- package/{e2e-legacy/setup/plugins → integration/setup}/plugins.spec.js +3 -3
- package/{e2e-legacy/setup/rdf-rank → integration/setup}/rdf-rank.spec.js +5 -3
- package/{e2e-legacy/setup/sparql-template/sparql-template-create.spec.js → integration/setup/sparql-template-create.js} +8 -16
- package/{e2e-legacy/setup/sparql-template → integration/setup}/sparql-templates.spec.js +4 -4
- package/{e2e-legacy/setup/users-and-access → integration/setup}/user-and-access.spec.js +87 -184
- package/{e2e-legacy → integration}/sparql-editor/actions/expand-results-over-sameas.spec.js +12 -12
- package/{e2e-legacy → integration}/sparql-editor/actions/include-inferred-statements.spec.js +6 -6
- package/{e2e-legacy → integration}/sparql-editor/actions/inferred-sameas.spec.js +8 -10
- package/{e2e-legacy → integration}/sparql-editor/actions/show-saved-queries.spec.js +6 -1
- package/{e2e-legacy → integration}/sparql-editor/saved-query/abort-query.spec.js +1 -1
- package/{e2e-legacy → integration}/sparql-editor/saved-query/edit-query.spec.js +3 -3
- package/{e2e-legacy → integration}/sparql-editor/saved-query/readonly-query.spec.js +24 -15
- package/{e2e-legacy → integration}/sparql-editor/saved-query/share-query.spec.js +1 -32
- package/{e2e-legacy → integration}/sparql-editor/yasgui-tabs.spec.js +12 -2
- package/{e2e-legacy → integration}/sparql-editor/yasr/pagination.spec.js +18 -5
- package/{e2e-legacy → integration}/sparql-editor/yasr/table-plugin.spec.js +6 -1
- package/integration/sparql-editor/yasr/toolbar/visual-graph-button.spec.js +57 -0
- package/{e2e-legacy → integration}/ttyg/agent-list.spec.js +2 -53
- package/{e2e-legacy → integration}/ttyg/agent-select-menu.spec.js +2 -25
- package/{e2e-legacy → integration}/ttyg/chat-list.spec.js +14 -3
- package/{e2e-legacy → integration}/ttyg/chat-panel.spec.js +6 -74
- package/{e2e-legacy → integration}/ttyg/clone-agent.spec.js +2 -24
- package/{e2e-legacy → integration}/ttyg/create-agent.spec.js +66 -37
- package/{e2e-legacy → integration}/ttyg/create-chat.spec.js +4 -6
- package/{e2e-legacy → integration}/ttyg/delete-agent.spec.js +2 -1
- package/integration/ttyg/edit-agent.spec.js +99 -0
- package/{e2e-legacy → integration}/ttyg/ttyg-view.spec.js +2 -2
- package/{e2e-flaky → integration-flaky}/explore/visual.graph.spec.js +1 -4
- package/{e2e-flaky → integration-flaky}/import/import-server-files-operations.spec.js +2 -2
- package/{e2e-flaky → integration-flaky}/import/import-user-data-batch-operations.spec.js +3 -3
- package/{e2e-flaky → integration-flaky}/setup/sparql-template-create.js +18 -10
- package/integration-flaky/setup/users-and-access/security-and-free-access.spec.js +54 -0
- package/{e2e-flaky → integration-flaky}/sparql-editor/actions/execute-update-query.spec.js +12 -2
- package/{e2e-flaky → integration-flaky}/sparql-editor/actions/share-query.spec.js +7 -1
- package/{e2e-flaky → integration-flaky}/sparql-editor/yasr/table-plugin.spec.js +7 -3
- package/{e2e-legacy → integration-flaky}/ttyg/ttyg-permission.spec.js +17 -23
- package/npm-shrinkwrap.json +3815 -11004
- package/package.json +42 -58
- package/plugins/index.js +5 -10
- package/steps/application-steps.js +6 -8
- package/steps/class-views-steps.js +7 -35
- package/steps/cluster/cluster-page-steps.js +2 -12
- package/steps/error-steps.js +3 -15
- package/steps/explore/graphs-overview-steps.js +1 -21
- package/steps/explore/similarity-index-create-steps.js +3 -5
- package/steps/explore/similarity-indexes-steps.js +2 -16
- package/steps/graphql/graphql-endpoint-management-steps.js +2 -2
- package/steps/guides/guide-dialog-steps.js +2 -81
- package/steps/guides/guide-steps.js +2 -54
- package/steps/home-steps.js +77 -184
- package/steps/import/import-resource-message-dialog.js +1 -1
- package/steps/import/import-steps.js +16 -12
- package/steps/import/import-user-data-steps.js +1 -5
- package/steps/language-selector-steps.js +2 -2
- package/steps/license-steps.js +9 -91
- package/steps/login-steps.js +6 -31
- package/steps/main-menu-steps.js +19 -244
- package/steps/modal-dialog-steps.js +1 -32
- package/steps/monitoring/backup-and-restore-steps.js +3 -9
- package/steps/operations-statuses-component-steps.js +10 -5
- package/steps/repository-selector-steps.js +3 -3
- package/steps/repository-steps.js +18 -64
- package/steps/resource/resource-steps.js +2 -6
- package/steps/setup/acl-management-steps.js +2 -6
- package/steps/setup/autocomplete-steps.js +8 -23
- package/steps/setup/jdbc-steps.js +4 -18
- package/steps/setup/namespace-steps.js +7 -10
- package/steps/setup/plugins-steps.js +5 -12
- package/steps/setup/rdf-rank-steps.js +9 -23
- package/steps/setup/settings-steps.js +2 -101
- package/steps/setup/sparql-templates-steps.js +1 -19
- package/steps/setup/user-and-access-steps.js +16 -50
- package/steps/sparql-editor-steps.js +2 -8
- package/steps/sparql-steps.js +1 -13
- package/steps/toaster-steps.js +6 -18
- package/steps/ttyg/chat-panel-steps.js +2 -40
- package/steps/ttyg/ttyg-agent-settings-modal.steps.js +31 -136
- package/steps/ttyg/ttyg-view-steps.js +10 -80
- package/steps/visual-graph-steps.js +10 -106
- package/steps/yasgui/yasgui-loader.js +3 -3
- package/steps/yasgui/yasgui-steps.js +1 -1
- package/steps/yasgui/yasqe-steps.js +4 -35
- package/steps/yasgui/yasr-steps.js +3 -73
- package/stubs/autocomplete/autocomplete-stubs.js +0 -7
- package/stubs/environment-stubs.js +1 -9
- package/stubs/license-stubs.js +0 -51
- package/stubs/repositories/repositories-stubs.js +75 -180
- package/stubs/repositories-stub.js +73 -0
- package/stubs/security-stubs.js +0 -12
- package/stubs/similarity-index-stubs.js +0 -4
- package/stubs/ttyg/ttyg-stubs.js +15 -64
- package/stubs/yasgui/query-stubs.js +1 -5
- package/support/commands.js +1 -22
- package/support/{e2e.js → index.js} +3 -9
- package/support/repository-commands.js +4 -29
- package/support/settings-commands.js +1 -33
- package/support/user-commands.js +4 -9
- package/utils/html-util.js +4 -24
- package/.editorconfig +0 -17
- package/.nycrc +0 -10
- package/cypress-legacy.config.js +0 -47
- package/cypress-security.config.js +0 -36
- package/e2e-flaky/import/import-user-data-url.spec.js +0 -63
- package/e2e-legacy/explore/class-hierarchy/class-hierarchy-with-selected-repository-without-class-hierarchy.spec.js +0 -42
- package/e2e-legacy/explore/class-hierarchy/class-hierarchy-with-selected-repository.spec.js +0 -43
- package/e2e-legacy/explore/class-hierarchy/class-hierarchy-without-selected-repository.spec.js +0 -30
- package/e2e-legacy/explore/class-relationships/class-relationships-repository-with-data.spec.js +0 -42
- package/e2e-legacy/explore/class-relationships/class-relationships-with-selected-repository.spec.js +0 -39
- package/e2e-legacy/explore/class-relationships/class-relationships-without-selected-repository.spec.js +0 -21
- package/e2e-legacy/explore/graphs-overview/initial-state/graphs-overview-with-selected-repository.spec.js +0 -44
- package/e2e-legacy/explore/graphs-overview/initial-state/graphs-overview-without-selected-repository.spec.js +0 -32
- package/e2e-legacy/explore/similarity-index/similarity-index-with-repository.spec.js +0 -38
- package/e2e-legacy/explore/similarity-index/similarity-index-without-repository.spec.js +0 -21
- package/e2e-legacy/explore/visual-graph/node-info-panel.spec.js +0 -58
- package/e2e-legacy/explore/visual-graph/visual-graph-links-limit.spec.js +0 -140
- package/e2e-legacy/explore/visual-graph/visual-graph-with-selected-repository.js +0 -38
- package/e2e-legacy/explore/visual-graph/visual-graph-without-selected-repository.js +0 -21
- package/e2e-legacy/graphql/graphql-endpoint-management-with-endpoints.spec.js +0 -43
- package/e2e-legacy/graphql/graphql-endpoint-management-with-selected-repository.spec.js +0 -39
- package/e2e-legacy/graphql/graphql-endpoint-management-without-selected-repository.spec.js +0 -21
- package/e2e-legacy/graphql/graphql-playground-with-endpoints.spec.js +0 -40
- package/e2e-legacy/graphql/graphql-playground-with-selected-repository.spec.js +0 -38
- package/e2e-legacy/graphql/graphql-playground-without-selected-repository.spec.js +0 -22
- package/e2e-legacy/graphql/graphql-theme.spec.js +0 -73
- package/e2e-legacy/guides/autocomplete/enable-autocomplete-guide.spec.js +0 -49
- package/e2e-legacy/guides/class-hierarcy/class-hierarchy-guide.spec.js +0 -89
- package/e2e-legacy/guides/class-relations/class-relations-guide.spec.js +0 -76
- package/e2e-legacy/guides/connectors/connectors-guide.spec.js +0 -163
- package/e2e-legacy/guides/create-similarity-index/create-similarity-index-guide.spec.js +0 -74
- package/e2e-legacy/guides/download-guide-resource/download-guide-resource-guide.js +0 -55
- package/e2e-legacy/guides/execute-sparql-query/execute-sparql-query-guide.spec.js +0 -92
- package/e2e-legacy/guides/import-rdf-file/confirm-duplicate-rdf-file.spec.js +0 -63
- package/e2e-legacy/guides/import-rdf-file/import-rdf-file.spec.js +0 -105
- package/e2e-legacy/guides/main-menu/main-menu-guide.spec.js +0 -302
- package/e2e-legacy/guides/navigation/navigation-guide.spec.js +0 -64
- package/e2e-legacy/guides/rdf-rank/rdf-rank-guide.spec.js +0 -42
- package/e2e-legacy/guides/repositories/create-repository-guide.spec.js +0 -69
- package/e2e-legacy/guides/table-graph-explore/table-graph-explore-guide.spec.js +0 -167
- package/e2e-legacy/guides/ttyg/configure-agent/configure-agent-guide.spec.js +0 -157
- package/e2e-legacy/guides/ttyg/conversation/ttyg-conversation-guide.spec.js +0 -92
- package/e2e-legacy/guides/ttyg/edit-agent/edit-ttyg-agent-guide.spec.js +0 -88
- package/e2e-legacy/guides/visual-graph/visual-graph-guide.spec.js +0 -372
- package/e2e-legacy/guides/welcome/welcome-guide.spec.js +0 -36
- package/e2e-legacy/help/guides/guides-autostart.spec.js +0 -126
- package/e2e-legacy/help/guides/guides-confirm-cancel-dialog.js +0 -83
- package/e2e-legacy/help/guides/guides-with-repository.spec.js +0 -32
- package/e2e-legacy/help/guides/guides-without-repository.spec.js +0 -20
- package/e2e-legacy/help/guides/movies-interactive-guide.spec.js +0 -71
- package/e2e-legacy/help/rest-api-documentatio/rest-api-documentation-with-repository.spec.js +0 -32
- package/e2e-legacy/help/rest-api-documentatio/rest-api-documentation-without-repository.spec.js +0 -20
- package/e2e-legacy/help/system-information/system-information-with-repository.spec.js +0 -32
- package/e2e-legacy/help/system-information/system-information-without-repository.spec.js +0 -20
- package/e2e-legacy/home/cookie-policy/cookie-policy.spec.js +0 -182
- package/e2e-legacy/home/documentation-link.spec.js +0 -41
- package/e2e-legacy/home/home-page-with-selected-repository.spec.js +0 -69
- package/e2e-legacy/home/home-page-without-repositories.spec.js +0 -87
- package/e2e-legacy/home/home-page-without-selected-repository.spec.js +0 -59
- package/e2e-legacy/home/rdf-resource-search.spec.js +0 -160
- package/e2e-legacy/home/view-resource-autocomplete.spec.js +0 -65
- package/e2e-legacy/import/initial-state/import-page-with-selected-repositor.js +0 -51
- package/e2e-legacy/import/initial-state/import-page-with-selected-repository-without-imported-files.js +0 -45
- package/e2e-legacy/import/initial-state/import-page-without-selected-repository.spec.js +0 -28
- package/e2e-legacy/license/license-with-repository.spec.js +0 -113
- package/e2e-legacy/license/license-without-repository.spec.js +0 -103
- package/e2e-legacy/monitor/backup-and-restore/backup-and-restore-with-repository.spec.js +0 -36
- package/e2e-legacy/monitor/backup-and-restore/backup-and-restore-without-repository.spec.js +0 -25
- package/e2e-legacy/monitor/query-and-updates/queries-and-updates-with-repository.spec.js +0 -39
- package/e2e-legacy/monitor/query-and-updates/queries-and-updates-without-repository.spec.js +0 -21
- package/e2e-legacy/monitor/system/system-monitoring-with-repository.spec.js +0 -32
- package/e2e-legacy/monitor/system/system-monitoring-without-repository.spec.js +0 -20
- package/e2e-legacy/not-found/not-found.spec.js +0 -23
- package/e2e-legacy/repository/url-with-repository-id-parameter.spec.js +0 -181
- package/e2e-legacy/setup/aclmanagement/acl-management-with-selected repository.spec.js +0 -40
- package/e2e-legacy/setup/aclmanagement/acl-management-without-repositories.spec.js +0 -21
- package/e2e-legacy/setup/autocomplete/autocomplete-with-repository.spec.js +0 -40
- package/e2e-legacy/setup/autocomplete/autocomplete-without-repository.spec.js +0 -27
- package/e2e-legacy/setup/cluster/cluster-initial-state-with-cluster.spec.js +0 -34
- package/e2e-legacy/setup/cluster/cluster-initial-state-without-cluster.spec.js +0 -25
- package/e2e-legacy/setup/connectors/connectors-initial-state-with-selected-repository.spec.js +0 -41
- package/e2e-legacy/setup/connectors/connectors-initial-state-without-repositories.spec.js +0 -21
- package/e2e-legacy/setup/jdbc/jdbc-with-repository.spec.js +0 -39
- package/e2e-legacy/setup/jdbc/jdbc-without-repository.spec.js +0 -27
- package/e2e-legacy/setup/namespaces/namespaces-with-repository.spec.js +0 -44
- package/e2e-legacy/setup/namespaces/namespaces-without-repository.spec.js +0 -27
- package/e2e-legacy/setup/plugins/plugins-with-repository.spec.js +0 -38
- package/e2e-legacy/setup/plugins/plugins-without-repository.spec.js +0 -28
- package/e2e-legacy/setup/rdf-rank/rdf-rank-with-repository.spec.js +0 -40
- package/e2e-legacy/setup/rdf-rank/rdf-rank-without-repository.spec.js +0 -30
- package/e2e-legacy/setup/repositories/repositories-view-with-repositories.spec.js +0 -40
- package/e2e-legacy/setup/repositories/repositories-view-without-repositories.spec.js +0 -28
- package/e2e-legacy/setup/settings/my-settings-initial-state.spec.js +0 -86
- package/e2e-legacy/setup/settings/my-settings.spec.js +0 -207
- package/e2e-legacy/setup/sparql-template/sparql-template-with-repository.spec.js +0 -39
- package/e2e-legacy/setup/sparql-template/sparql-template-without-repository.spec.js +0 -29
- package/e2e-legacy/setup/users-and-access/users-and-access-initial-state.spec.js +0 -25
- package/e2e-legacy/sparql-editor/sparql-page-with-selected-repository.spec.js +0 -33
- package/e2e-legacy/sparql-editor/sparql-page-without-selected-repository.spec.js +0 -26
- package/e2e-legacy/sparql-editor/yasqe-themes.spec.js +0 -54
- package/e2e-legacy/sparql-editor/yasr/toolbar/visual-graph-button.spec.js +0 -106
- package/e2e-legacy/sparql-editor/yasr/yasr.spec.js +0 -80
- package/e2e-legacy/ttyg/edit-agent.spec.js +0 -178
- package/e2e-legacy/ttyg/ttyg-initial-state-with-configured-api-key.spec.js +0 -46
- package/e2e-legacy/ttyg/ttyg-initial-state-with-selected-repository.spec.js +0 -45
- package/e2e-legacy/ttyg/ttyg-initial-state-without-repositories.spec.js +0 -21
- package/e2e-security/repository/url-with-repository-id-parameter.spec.js +0 -57
- package/e2e-security/setup/home/cookie-policy.spec.js +0 -290
- package/e2e-security/setup/users-and-access/create-user-permissions.spec.js +0 -193
- package/e2e-security/setup/users-and-access/graphql-user.spec.js +0 -126
- package/e2e-security/setup/users-and-access/repo-admin-role.spec.js +0 -70
- package/e2e-security/setup/users-and-access/turn-on-security-and-password-change.spec.js +0 -99
- package/e2e-security/setup/users-and-access/user-and-access.spec.js +0 -87
- package/e2e-security/setup/users-and-access/users-and-access-initial-state.spec.js +0 -38
- package/eslint.config.js +0 -39
- package/fixtures/graph/graph-configurations.json +0 -59
- package/fixtures/guides/autocomplete/enable-autocomplete-guide.json +0 -12
- package/fixtures/guides/class-hierarchy/class-hierarchy-guide.json +0 -35
- package/fixtures/guides/class-relations/class-relations-guide.json +0 -33
- package/fixtures/guides/confirm-cancel-dialog/confirm-cancel-dialog-guide.json +0 -15
- package/fixtures/guides/connectors/connectors-guide.json +0 -66
- package/fixtures/guides/connectors/lucene-connector-guide.json +0 -120
- package/fixtures/guides/create-repository/create-repository-guide.json +0 -25
- package/fixtures/guides/create-similarity-index/create-similarity-index-guide.json +0 -36
- package/fixtures/guides/download-guide-resource/download-guide-resource-guide.json +0 -25
- package/fixtures/guides/download-resource.ttl +0 -629
- package/fixtures/guides/execute-sparql-query/execute-sparql-query-guide.json +0 -54
- package/fixtures/guides/import-rdf-file/confirm-duplicate-rdf-file-guide.json +0 -30
- package/fixtures/guides/import-rdf-file/import-rdf-file-guide.json +0 -21
- package/fixtures/guides/main-menu/main-menu-guide.json +0 -98
- package/fixtures/guides/navigation/navigation-guide.json +0 -60
- package/fixtures/guides/rdf-rank/rdf-rank-guide.json +0 -18
- package/fixtures/guides/table-graph-explore/table-graph-explore-guide.json +0 -51
- package/fixtures/guides/table-graph-explore/table-graph-explore-without-substeps-guide.json +0 -25
- package/fixtures/guides/ttyg/configure-agent/configure-ttyg-agent-guide.json +0 -74
- package/fixtures/guides/ttyg/conversation/ttyg-conversation-guide.json +0 -26
- package/fixtures/guides/ttyg/edit-ttyg-agent/edit-ttyg-agent-guide.json +0 -22
- package/fixtures/guides/visual-graph/visual-graph-config-guide.json +0 -39
- package/fixtures/guides/visual-graph/visual-graph-guide.json +0 -85
- package/fixtures/guides/welcome/welcome-guide.json +0 -18
- package/fixtures/repositories/free-access.json +0 -13
- package/fixtures/similarity/get-ttyg-similarity-instances.json +0 -10
- package/fixtures/ttyg/agent/get-agent-defaults-assistant-api.json +0 -44
- package/fixtures/ttyg/agent/get-agent-list-with-incompatible-agents.json +0 -79
- package/fixtures/ttyg/agent/get-similarity-indexes-for-another-repo.json +0 -8
- package/fixtures/ttyg/agent/get-similarity-indexes.json +0 -22
- package/fixtures/ttyg/chats/ask-question-cancel.json +0 -12
- package/fixtures/ttyg/chats/cancel-question-response.json +0 -1
- package/fixtures/ttyg/chats/create/question-response-after-chat-creation.json +0 -29
- package/fixtures/ttyg/chats/explain-response-3.json +0 -12
- package/steps/base-steps.js +0 -29
- package/steps/cookie-policy/cookie-consent-banner-steps.js +0 -21
- package/steps/cookie-policy/cookie-policy-modal.steps.js +0 -56
- package/steps/error-page-steps.js +0 -9
- package/steps/explore/class-relationships-steps.js +0 -64
- package/steps/graphql/playground-editor-steps.js +0 -46
- package/steps/header-steps.js +0 -22
- package/steps/monitoring/queries-and-updates-steps.js +0 -20
- package/steps/monitoring/system-monitoring-steps.js +0 -40
- package/steps/not-found/not-found-steps.js +0 -23
- package/steps/rdf-resource-search-steps.js +0 -55
- package/steps/rest-api-documentation-steps.js +0 -15
- package/steps/setup/connectors-steps.js +0 -32
- package/steps/shared-modal-dialog-steps.js +0 -45
- package/steps/system-information-steps.js +0 -70
- package/steps/widgets/active-repository-widget-steps.js +0 -29
- package/steps/widgets/license-widget-steps.js +0 -9
- package/steps/widgets/repository-errors-widget-steps.js +0 -21
- package/steps/widgets/saved-sparql-queries-widget-steps.js +0 -9
- package/stubs/browser-stubs.js +0 -21
- package/stubs/graph-config-stubs.js +0 -17
- package/stubs/guides/guides-stubs.js +0 -103
- package/stubs/saved-queries-stubs.js +0 -5
- package/stubs/sparql-stubs.js +0 -10
- package/support/connector-commands.js +0 -13
- package/support/e2e-security.js +0 -9
- package/support/url-commands.js +0 -13
- package/{e2e-legacy → integration}/cluster/cluster-configuration/cluster-configuration-multi-region.spec.js +0 -0
- package/{e2e-legacy → integration}/cluster/cluster-configuration/cluster-configuration-nodes.spec.js +0 -0
- package/{e2e-legacy → integration}/cluster/cluster-configuration/cluster-configuration-properties.spec.js +0 -0
- package/{e2e-legacy → integration}/cluster/cluster-configuration/cluster-configuration.spec.js +0 -0
- package/{e2e-legacy → integration}/cluster/cluster-legend.spec.js +0 -0
- package/{e2e-legacy → integration}/cluster/edit-cluster-nodes-modal.spec.js +0 -0
- package/{e2e-legacy → integration}/graphql/activate-deactivate-graphql-endpoint.spec.js +0 -0
- package/{e2e-legacy → integration}/graphql/delete-graphql-endpoint.spec.js +0 -0
- package/{e2e-legacy → integration}/graphql/export-graphql-endpoint-definition.spec.js +0 -0
- package/{e2e-legacy → integration}/graphql/set-default-graphql-endpoint.spec.js +0 -0
- package/{e2e-legacy/help/system-information → integration/help}/system-information.spec.js +0 -0
- package/{e2e-legacy → integration}/home/create-repository.spec.js +0 -0
- package/{e2e-legacy → integration}/import/import-server-files-batch-operations.spec.js +0 -0
- package/{e2e-legacy → integration}/import/import-user-data-settings-dialog.spec.js +0 -0
- package/{e2e-legacy → integration}/import/import-view.spec.js +0 -0
- package/{e2e-legacy → integration}/repository/attach-remote-location.spec.js +1 -1
- /package/{e2e-legacy → integration}/repository/repository-commands.spec.js +0 -0
- /package/{e2e-legacy → integration}/setup/aclmanagement/delete-rule.spec.js +0 -0
- /package/{e2e-legacy → integration}/setup/aclmanagement/edit-rule.spec.js +0 -0
- /package/{e2e-legacy → integration}/setup/aclmanagement/render-rules.spec.js +0 -0
- /package/{e2e-legacy → integration}/setup/aclmanagement/reorder-rules.spec.js +0 -0
- /package/{e2e-legacy → integration}/setup/aclmanagement/revert-rules.spec.js +0 -0
- /package/{e2e-legacy → integration}/setup/aclmanagement/scopes.spec.js +0 -0
- /package/{e2e-legacy → integration}/setup/aclmanagement/update-rules.spec.js +0 -0
- /package/{e2e-legacy → integration}/setup/jdbc/jdbc.spec.js +0 -0
- /package/{e2e-legacy → integration}/sparql-editor/actions/execute-query.spec.js +0 -0
- /package/{e2e-legacy → integration}/sparql-editor/actions/save-query.spec.js +0 -0
- /package/{e2e-legacy → integration}/sparql-editor/internationalization.spec.js +0 -0
- /package/{e2e-legacy → integration}/sparql-editor/saved-query/delete-query.spec.js +0 -0
- /package/{e2e-legacy → integration}/sparql-editor/sparql-editor.spec.js +0 -0
- /package/{e2e-legacy → integration}/sparql-editor/yasr/download-as.spec.js +0 -0
- /package/{e2e-flaky → integration-flaky}/import/import.server.files.spec.js +0 -0
- /package/{e2e-flaky → integration-flaky}/sparql-editor/lucene-connector.spec.js +0 -0
- /package/{e2e-flaky → integration-flaky}/sparql-editor/plugins/error-plugin.spec.js +0 -0
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
import HomeSteps from "../../../steps/home-steps";
|
|
2
|
-
import {MainMenuSteps} from "../../../steps/main-menu-steps";
|
|
3
|
-
import {GuideSteps} from "../../../steps/guides/guide-steps";
|
|
4
|
-
|
|
5
|
-
describe('Interactive guides without selected repository', () => {
|
|
6
|
-
it('Should display the correct initial state when navigating via URL', () => {
|
|
7
|
-
// Given, I visit the Interactive guides page via URL without a repository selected
|
|
8
|
-
GuideSteps.visit();
|
|
9
|
-
// Then,
|
|
10
|
-
GuideSteps.verifyInitialState();
|
|
11
|
-
});
|
|
12
|
-
|
|
13
|
-
it('Should display the correct initial state when navigating via the navigation menu', () => {
|
|
14
|
-
// Given, I visit the Interactive guides page via the navigation menu without a repository selected
|
|
15
|
-
HomeSteps.visit();
|
|
16
|
-
MainMenuSteps.clickOnInteractiveGuides();
|
|
17
|
-
// Then,
|
|
18
|
-
GuideSteps.verifyInitialState();
|
|
19
|
-
});
|
|
20
|
-
})
|
|
@@ -1,71 +0,0 @@
|
|
|
1
|
-
import {GuideSteps} from "../../../steps/guides/guide-steps";
|
|
2
|
-
import {MoviesGuideSteps} from "../../../steps/guides/movies-guide-steps";
|
|
3
|
-
|
|
4
|
-
const MOVIES_FILE_FOR_IMPORT = 'movies.ttl';
|
|
5
|
-
|
|
6
|
-
describe('Describes "Movies" interactive guide', () => {
|
|
7
|
-
|
|
8
|
-
let repositoryId;
|
|
9
|
-
|
|
10
|
-
beforeEach(() => {
|
|
11
|
-
cy.intercept('/rest/guides', {fixture: '/guides/guides.json'}).as('getGuides');
|
|
12
|
-
repositoryId = 'movies';
|
|
13
|
-
cy.viewport(1880, 1000);
|
|
14
|
-
GuideSteps.visit();
|
|
15
|
-
cy.wait(['@getGuides']);
|
|
16
|
-
});
|
|
17
|
-
|
|
18
|
-
afterEach(() => {
|
|
19
|
-
cy.deleteUploadedFile(repositoryId, MOVIES_FILE_FOR_IMPORT);
|
|
20
|
-
cy.deleteRepository(repositoryId);
|
|
21
|
-
});
|
|
22
|
-
|
|
23
|
-
it('Tests movies interactive guide using "Next" button to the end', () => {
|
|
24
|
-
const stepAssertions = [
|
|
25
|
-
{assert: MoviesGuideSteps.assertExploreClassHierarchyStep1},
|
|
26
|
-
{assert: MoviesGuideSteps.assertExploreClassHierarchyStep2},
|
|
27
|
-
{assert: MoviesGuideSteps.assertExploreClassHierarchyStep3},
|
|
28
|
-
{assert: MoviesGuideSteps.assertExploreClassHierarchyStep4},
|
|
29
|
-
{assert: MoviesGuideSteps.assertExploreClassHierarchyStep5},
|
|
30
|
-
{assert: MoviesGuideSteps.assertExploreClassHierarchyStep6},
|
|
31
|
-
{assert: MoviesGuideSteps.assertExploreClassHierarchyStep7},
|
|
32
|
-
{assert: MoviesGuideSteps.assertClassHierarchyInstancesStep1},
|
|
33
|
-
{assert: MoviesGuideSteps.assertClassHierarchyInstancesStep2},
|
|
34
|
-
{assert: MoviesGuideSteps.assertClassHierarchyInstancesStep3},
|
|
35
|
-
{assert: MoviesGuideSteps.assertClassHierarchyInstancesStep4},
|
|
36
|
-
{assert: MoviesGuideSteps.assertClassHierarchyInstancesStep5},
|
|
37
|
-
// Forces the click because results are to many and dialog is not visible into the test.
|
|
38
|
-
{assert: MoviesGuideSteps.assertClassHierarchyInstancesStep6, forceButtonClick: true},
|
|
39
|
-
{assert: MoviesGuideSteps.assertClassHierarchyInstancesStep7, forceButtonClick: true},
|
|
40
|
-
{assert: MoviesGuideSteps.assertClassHierarchyInstancesStep8},
|
|
41
|
-
{assert: MoviesGuideSteps.assertExecuteSparqlQueryStep1},
|
|
42
|
-
{assert: MoviesGuideSteps.assertExecuteSparqlQueryStep2},
|
|
43
|
-
{assert: MoviesGuideSteps.assertExecuteSparqlQueryStep3},
|
|
44
|
-
{assert: MoviesGuideSteps.assertExecuteSparqlQueryStep4},
|
|
45
|
-
{assert: MoviesGuideSteps.assertExecuteSparqlQueryStep5},
|
|
46
|
-
{assert: MoviesGuideSteps.assertExecuteSparqlQueryStep6},
|
|
47
|
-
{assert: MoviesGuideSteps.assertExecuteSparqlQueryStep7},
|
|
48
|
-
{assert: MoviesGuideSteps.assertExecuteSparqlQueryStep8, forceButtonClick: true},
|
|
49
|
-
{assert: MoviesGuideSteps.assertExploreRDFStep1, forceButtonClick: true},
|
|
50
|
-
{assert: MoviesGuideSteps.assertExploreRDFStep2},
|
|
51
|
-
{assert: MoviesGuideSteps.assertExploreRDFStep3},
|
|
52
|
-
{assert: MoviesGuideSteps.assertExploreRDFStep4},
|
|
53
|
-
{assert: MoviesGuideSteps.assertExploreRDFStep5},
|
|
54
|
-
{assert: MoviesGuideSteps.assertExploreRDFStep6},
|
|
55
|
-
{assert: MoviesGuideSteps.assertExploreRDFStep7},
|
|
56
|
-
{assert: MoviesGuideSteps.assertExploreRDFStep8},
|
|
57
|
-
{assert: MoviesGuideSteps.assertExploreRDFStep9},
|
|
58
|
-
{assert: MoviesGuideSteps.assertExploreRDFStep10},
|
|
59
|
-
{assert: MoviesGuideSteps.assertSparqlQueryStep1},
|
|
60
|
-
{assert: MoviesGuideSteps.assertSparqlQueryStep2},
|
|
61
|
-
{assert: MoviesGuideSteps.assertSparqlQueryStep3},
|
|
62
|
-
{assert: MoviesGuideSteps.assertSparqlQueryStep4},
|
|
63
|
-
{assert: MoviesGuideSteps.assertSparqlQueryStep5},
|
|
64
|
-
{assert: MoviesGuideSteps.assertSparqlQueryStep6},
|
|
65
|
-
{assert: MoviesGuideSteps.assertSparqlQueryStep7}
|
|
66
|
-
];
|
|
67
|
-
|
|
68
|
-
const guideName = '3 The Movies database guide';
|
|
69
|
-
GuideSteps.runGuideTest(guideName, repositoryId, MOVIES_FILE_FOR_IMPORT, stepAssertions);
|
|
70
|
-
});
|
|
71
|
-
});
|
package/e2e-legacy/help/rest-api-documentatio/rest-api-documentation-with-repository.spec.js
DELETED
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
import HomeSteps from "../../../steps/home-steps";
|
|
2
|
-
import {MainMenuSteps} from "../../../steps/main-menu-steps";
|
|
3
|
-
import {RestApiDocumentationSteps} from "../../../steps/rest-api-documentation-steps";
|
|
4
|
-
|
|
5
|
-
describe('REST API Documentation with selected repository', () => {
|
|
6
|
-
let repositoryId;
|
|
7
|
-
|
|
8
|
-
beforeEach(() => {
|
|
9
|
-
repositoryId = 'rest-api-documentation-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 REST API Documentation page via URL with a repository selected
|
|
20
|
-
RestApiDocumentationSteps.visit();
|
|
21
|
-
// Then,
|
|
22
|
-
RestApiDocumentationSteps.verifyInitialState();
|
|
23
|
-
});
|
|
24
|
-
|
|
25
|
-
it('Should display the correct initial state when navigating via the navigation bar', () => {
|
|
26
|
-
// Given, I visit the REST API Documentation page via the navigation menu with a repository selected
|
|
27
|
-
HomeSteps.visit();
|
|
28
|
-
MainMenuSteps.clickOnRestApiDocumentation();
|
|
29
|
-
// Then,
|
|
30
|
-
RestApiDocumentationSteps.verifyInitialState();
|
|
31
|
-
});
|
|
32
|
-
})
|
package/e2e-legacy/help/rest-api-documentatio/rest-api-documentation-without-repository.spec.js
DELETED
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
import HomeSteps from "../../../steps/home-steps";
|
|
2
|
-
import {MainMenuSteps} from "../../../steps/main-menu-steps";
|
|
3
|
-
import {RestApiDocumentationSteps} from "../../../steps/rest-api-documentation-steps";
|
|
4
|
-
|
|
5
|
-
describe('REST API Documentation without selected repository', () => {
|
|
6
|
-
it('Should display the correct initial state when navigating via URL', () => {
|
|
7
|
-
// Given, I visit the REST API Documentation page via URL without a repository selected
|
|
8
|
-
RestApiDocumentationSteps.visit();
|
|
9
|
-
// Then,
|
|
10
|
-
RestApiDocumentationSteps.verifyInitialState();
|
|
11
|
-
});
|
|
12
|
-
|
|
13
|
-
it('Should display the correct initial state when navigating via the navigation menu', () => {
|
|
14
|
-
// Given, I visit the REST API Documentation page via the navigation menu without a repository selected
|
|
15
|
-
HomeSteps.visit();
|
|
16
|
-
MainMenuSteps.clickOnRestApiDocumentation();
|
|
17
|
-
// Then,
|
|
18
|
-
RestApiDocumentationSteps.verifyInitialState();
|
|
19
|
-
});
|
|
20
|
-
})
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
import HomeSteps from "../../../steps/home-steps";
|
|
2
|
-
import {MainMenuSteps} from "../../../steps/main-menu-steps";
|
|
3
|
-
import {SystemInformationSteps} from "../../../steps/system-information-steps";
|
|
4
|
-
|
|
5
|
-
describe('System information with selected repository', () => {
|
|
6
|
-
let repositoryId;
|
|
7
|
-
|
|
8
|
-
beforeEach(() => {
|
|
9
|
-
repositoryId = 'system-information-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 System information page via URL with a repository selected
|
|
20
|
-
SystemInformationSteps.visit();
|
|
21
|
-
// Then,
|
|
22
|
-
SystemInformationSteps.verifyInitialState();
|
|
23
|
-
});
|
|
24
|
-
|
|
25
|
-
it('Should display the correct initial state when navigating via the navigation bar', () => {
|
|
26
|
-
// Given, I visit the System information page via the navigation menu with a repository selected
|
|
27
|
-
HomeSteps.visit();
|
|
28
|
-
MainMenuSteps.clickOnSystemInformation();
|
|
29
|
-
// Then,
|
|
30
|
-
SystemInformationSteps.verifyInitialState();
|
|
31
|
-
});
|
|
32
|
-
})
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
import HomeSteps from "../../../steps/home-steps";
|
|
2
|
-
import {MainMenuSteps} from "../../../steps/main-menu-steps";
|
|
3
|
-
import {SystemInformationSteps} from "../../../steps/system-information-steps";
|
|
4
|
-
|
|
5
|
-
describe('System information without selected repository', () => {
|
|
6
|
-
it('Should display the correct initial state when navigating via URL', () => {
|
|
7
|
-
// Given, I visit the System information page via URL without a repository selected
|
|
8
|
-
SystemInformationSteps.visit();
|
|
9
|
-
// Then,
|
|
10
|
-
SystemInformationSteps.verifyInitialState();
|
|
11
|
-
});
|
|
12
|
-
|
|
13
|
-
it('Should display the correct initial state when navigating via the navigation menu', () => {
|
|
14
|
-
// Given, I visit the System information page via the navigation menu without a repository selected
|
|
15
|
-
HomeSteps.visit();
|
|
16
|
-
MainMenuSteps.clickOnSystemInformation();
|
|
17
|
-
// Then,
|
|
18
|
-
SystemInformationSteps.verifyInitialState();
|
|
19
|
-
});
|
|
20
|
-
})
|
|
@@ -1,182 +0,0 @@
|
|
|
1
|
-
import HomeSteps from '../../../steps/home-steps';
|
|
2
|
-
import {SecurityStubs} from '../../../stubs/security-stubs';
|
|
3
|
-
import {SettingsSteps} from '../../../steps/setup/settings-steps';
|
|
4
|
-
import {LicenseStubs} from '../../../stubs/license-stubs';
|
|
5
|
-
import {CookiePolicyModalSteps} from '../../../steps/cookie-policy/cookie-policy-modal.steps';
|
|
6
|
-
import {MainMenuSteps} from '../../../steps/main-menu-steps.js';
|
|
7
|
-
import {CookieConsentBannerSteps} from '../../../steps/cookie-policy/cookie-consent-banner-steps.js';
|
|
8
|
-
|
|
9
|
-
Cypress.env('set_default_user_data', false);
|
|
10
|
-
|
|
11
|
-
describe('Cookie policy', () => {
|
|
12
|
-
beforeEach(() => {
|
|
13
|
-
cy.setCookieConsent(undefined);
|
|
14
|
-
cy.viewport(1280, 1000);
|
|
15
|
-
LicenseStubs.stubFreeLicense();
|
|
16
|
-
});
|
|
17
|
-
|
|
18
|
-
afterEach(() => {
|
|
19
|
-
cy.setCookieConsent(undefined);
|
|
20
|
-
});
|
|
21
|
-
|
|
22
|
-
it('should have default state when security is OFF', () => {
|
|
23
|
-
// Given GDB security is OFF
|
|
24
|
-
// When I open home page
|
|
25
|
-
HomeSteps.visitInProdMode();
|
|
26
|
-
// Then I expect to see cookie consent banner
|
|
27
|
-
CookieConsentBannerSteps.getCookieConsentBanner().should('be.visible');
|
|
28
|
-
// When I click on the cookie policy link in the banner
|
|
29
|
-
CookieConsentBannerSteps.clickCookiePolicyLink();
|
|
30
|
-
// Then I see the cookie policy
|
|
31
|
-
CookiePolicyModalSteps.getDialogComponent().and('be.visible');
|
|
32
|
-
CookiePolicyModalSteps.getBody().should('be.visible');
|
|
33
|
-
// And I expect to see that analytic and third party cookies are allowed
|
|
34
|
-
CookiePolicyModalSteps.validateCookiePolicyDialog(true, true);
|
|
35
|
-
// When I close the cookie policy modal
|
|
36
|
-
CookiePolicyModalSteps.closeDialog();
|
|
37
|
-
// Then I expect the cookie policy modal to be closed
|
|
38
|
-
CookiePolicyModalSteps.getDialogComponent().should('not.exist');
|
|
39
|
-
// When I open my settings page
|
|
40
|
-
SettingsSteps.visitInProdMode();
|
|
41
|
-
// Then I expect to see cookie policy button in My settings widget
|
|
42
|
-
SettingsSteps.getCookiePolicyButton().and('be.visible');
|
|
43
|
-
// When I click on the cookie policy button in My settings widget
|
|
44
|
-
SettingsSteps.clickCookiePolicyLink();
|
|
45
|
-
// Then I see the cookie policy
|
|
46
|
-
CookiePolicyModalSteps.getDialogComponent().and('be.visible');
|
|
47
|
-
CookiePolicyModalSteps.getBody().should('be.visible');
|
|
48
|
-
// And I expect to see that analytic and third party cookies are allowed
|
|
49
|
-
CookiePolicyModalSteps.validateCookiePolicyDialog(true, true);
|
|
50
|
-
// When I close the cookie policy modal
|
|
51
|
-
CookiePolicyModalSteps.closeDialog();
|
|
52
|
-
// Then I expect the cookie policy modal to be closed
|
|
53
|
-
CookiePolicyModalSteps.getDialogComponent().should('not.exist');
|
|
54
|
-
});
|
|
55
|
-
|
|
56
|
-
it('should give consent for default cookie policy when security is OFF', () => {
|
|
57
|
-
// Given GDB security is OFF
|
|
58
|
-
// When I open home page
|
|
59
|
-
HomeSteps.visitInProdMode();
|
|
60
|
-
// Then I expect to see cookie consent banner
|
|
61
|
-
CookieConsentBannerSteps.getCookieConsentBanner().should('be.visible');
|
|
62
|
-
// When I click OK in the cookie consent banner
|
|
63
|
-
SecurityStubs.spyOnUserUpdate('admin');
|
|
64
|
-
CookieConsentBannerSteps.giveCookieConsent();
|
|
65
|
-
// Then I expect to save cookie consent in user settings
|
|
66
|
-
validateUserUpdateWithCookieConsent();
|
|
67
|
-
// And I expect the banner to be hidden
|
|
68
|
-
CookieConsentBannerSteps.getCookieConsentBanner().should('not.exist');
|
|
69
|
-
// And I expect GA tracking script to be added to the head
|
|
70
|
-
validateGATracking();
|
|
71
|
-
// When I open another page
|
|
72
|
-
MainMenuSteps.clickOnMenuImport();
|
|
73
|
-
cy.url().should('include', '/import');
|
|
74
|
-
// Then I expect the banner to be hidden
|
|
75
|
-
CookieConsentBannerSteps.getCookieConsentBanner().should('not.exist');
|
|
76
|
-
// When I reload the page
|
|
77
|
-
cy.reload();
|
|
78
|
-
// Then I expect the banner to be hidden
|
|
79
|
-
CookieConsentBannerSteps.getCookieConsentBanner().should('not.exist');
|
|
80
|
-
});
|
|
81
|
-
|
|
82
|
-
it('should update cookie policy and give consent when security is OFF', () => {
|
|
83
|
-
// Given GDB security is OFF
|
|
84
|
-
// When I open home page
|
|
85
|
-
HomeSteps.visitInProdMode();
|
|
86
|
-
// Then I expect to see cookie consent banner
|
|
87
|
-
CookieConsentBannerSteps.getCookieConsentBanner().should('be.visible');
|
|
88
|
-
// When I click on the cookie policy link in the banner
|
|
89
|
-
CookieConsentBannerSteps.clickCookiePolicyLink();
|
|
90
|
-
// Then I see the cookie policy
|
|
91
|
-
CookiePolicyModalSteps.getDialogComponent().should('be.visible');
|
|
92
|
-
CookiePolicyModalSteps.validateCookiePolicyDialog(true, true);
|
|
93
|
-
// When I toggle off the analytics cookie checkbox
|
|
94
|
-
CookiePolicyModalSteps.toggleStatisticCookies();
|
|
95
|
-
// And I close the dialog
|
|
96
|
-
CookiePolicyModalSteps.closeDialog();
|
|
97
|
-
CookiePolicyModalSteps.getDialog().should('not.exist');
|
|
98
|
-
// When I reopen the cookie policy dialog using the button in the banner
|
|
99
|
-
CookieConsentBannerSteps.clickCookiePolicyLink();
|
|
100
|
-
// And I expect to see that analytic cookies are not allowed and third party cookies are allowed
|
|
101
|
-
CookiePolicyModalSteps.validateCookiePolicyDialog(false, true);
|
|
102
|
-
// When I close the cookie policy dialog
|
|
103
|
-
CookiePolicyModalSteps.closeDialog();
|
|
104
|
-
// And I open my settings page
|
|
105
|
-
MainMenuSteps.clickOnMySettings();
|
|
106
|
-
// Then I expect to see cookie policy button in My settings widget
|
|
107
|
-
SettingsSteps.getCookiePolicyButton().and('be.visible');
|
|
108
|
-
// When I click on the cookie policy button in My settings widget
|
|
109
|
-
SettingsSteps.clickCookiePolicyLink();
|
|
110
|
-
// Then I see the cookie policy
|
|
111
|
-
CookiePolicyModalSteps.getDialogComponent().should('be.visible');
|
|
112
|
-
// And I expect to see that analytic cookies are not allowed and third party cookies are allowed
|
|
113
|
-
CookiePolicyModalSteps.validateCookiePolicyDialog(false, true);
|
|
114
|
-
// When I toggle off the third party cookies checkbox
|
|
115
|
-
CookiePolicyModalSteps.toggleThirdPartyCookies();
|
|
116
|
-
// And I close the cookie policy dialog
|
|
117
|
-
CookiePolicyModalSteps.closeDialog();
|
|
118
|
-
// When I reopen the cookie policy dialog using the button in my settings widget
|
|
119
|
-
SettingsSteps.clickCookiePolicyLink();
|
|
120
|
-
// And I expect to see that analytic cookies are not allowed and third party cookies are not allowed
|
|
121
|
-
CookiePolicyModalSteps.validateCookiePolicyDialog(false, false);
|
|
122
|
-
CookiePolicyModalSteps.closeDialog();
|
|
123
|
-
// When I reload the page
|
|
124
|
-
cy.reload();
|
|
125
|
-
// And I reopen the cookie policy dialog using the button in my settings widget
|
|
126
|
-
SettingsSteps.clickCookiePolicyLink();
|
|
127
|
-
// And I expect to see that analytic cookies are not allowed and third party cookies are not allowed
|
|
128
|
-
CookiePolicyModalSteps.validateCookiePolicyDialog(false, false);
|
|
129
|
-
// When I close the cookie policy dialog
|
|
130
|
-
CookiePolicyModalSteps.closeDialog();
|
|
131
|
-
// And I click OK in the cookie consent banner
|
|
132
|
-
CookieConsentBannerSteps.giveCookieConsent();
|
|
133
|
-
// Then I expect the banner to be hidden
|
|
134
|
-
CookieConsentBannerSteps.getCookieConsentBanner().should('not.exist');
|
|
135
|
-
// When I reload the page
|
|
136
|
-
cy.reload();
|
|
137
|
-
// Then I expect the banner to be hidden
|
|
138
|
-
CookieConsentBannerSteps.getCookieConsentBanner().should('not.exist');
|
|
139
|
-
});
|
|
140
|
-
});
|
|
141
|
-
|
|
142
|
-
function validateUserUpdateWithCookieConsent() {
|
|
143
|
-
cy.wait('@updateUser').then((xhr) => {
|
|
144
|
-
expect(xhr.request.body.appSettings).to.include({
|
|
145
|
-
DEFAULT_INFERENCE: true,
|
|
146
|
-
DEFAULT_VIS_GRAPH_SCHEMA: true,
|
|
147
|
-
DEFAULT_SAMEAS: true,
|
|
148
|
-
IGNORE_SHARED_QUERIES: false,
|
|
149
|
-
EXECUTE_COUNT: true
|
|
150
|
-
});
|
|
151
|
-
|
|
152
|
-
// Assert COOKIE_CONSENT properties, excluding updatedAt
|
|
153
|
-
expect(xhr.request.body.appSettings.COOKIE_CONSENT).to.include({
|
|
154
|
-
policyAccepted: true
|
|
155
|
-
});
|
|
156
|
-
|
|
157
|
-
// Assert that updatedAt is present, is a number, and is a reasonable timestamp
|
|
158
|
-
const updatedAt = xhr.request.body.appSettings.COOKIE_CONSENT.updatedAt;
|
|
159
|
-
expect(updatedAt).to.exist;
|
|
160
|
-
expect(updatedAt).to.be.a('number');
|
|
161
|
-
|
|
162
|
-
// Check that updatedAt is within 1 hour of the current time
|
|
163
|
-
const oneHourInMilliseconds = 60 * 60 * 1000;
|
|
164
|
-
const now = Date.now();
|
|
165
|
-
expect(updatedAt).to.be.within(now - oneHourInMilliseconds, now + oneHourInMilliseconds);
|
|
166
|
-
});
|
|
167
|
-
}
|
|
168
|
-
|
|
169
|
-
function validateGATracking() {
|
|
170
|
-
// Check if the GA tracking script is set correctly in the head
|
|
171
|
-
cy.document()
|
|
172
|
-
.get('head script')
|
|
173
|
-
.should("have.attr", "src")
|
|
174
|
-
.should('include', 'https://www.googletagmanager.com/gtm.js?id=GTM-WBP6C6Z4');
|
|
175
|
-
|
|
176
|
-
// Check if the installation ID cookie is set correctly
|
|
177
|
-
cy.getCookie('_wb').then((cookie) => {
|
|
178
|
-
expect(cookie).to.exist;
|
|
179
|
-
// Check the cookie structure: WB1.<installationId>.<timestamp>
|
|
180
|
-
expect(cookie.value).to.match(/^WB1\.[a-zA-Z0-9\-]+\.\d+$/);
|
|
181
|
-
});
|
|
182
|
-
}
|
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
import HomeSteps from '../../steps/home-steps';
|
|
2
|
-
import {EnvironmentStubs} from "../../stubs/environment-stubs";
|
|
3
|
-
import {MainMenuSteps} from "../../steps/main-menu-steps";
|
|
4
|
-
|
|
5
|
-
describe('Documentation links resolver', () => {
|
|
6
|
-
|
|
7
|
-
beforeEach(() => {
|
|
8
|
-
cy.viewport(1280, 1000);
|
|
9
|
-
EnvironmentStubs.spyProductInfo();
|
|
10
|
-
});
|
|
11
|
-
|
|
12
|
-
it('Should link to master version when in dev mode', () => {
|
|
13
|
-
HomeSteps.visitInDevMode();
|
|
14
|
-
MainMenuSteps.clickOnMenuHelp();
|
|
15
|
-
// Assert that links point to the master version
|
|
16
|
-
MainMenuSteps.getSubMenuButtonByName('Documentation').should('have.attr', 'href').and('include', 'https://graphdb.ontotext.com/documentation/master/index.html');
|
|
17
|
-
MainMenuSteps.getSubMenuButtonByName('Tutorials').should('have.attr', 'href').and('include', 'https://graphdb.ontotext.com/documentation/master/tutorials.html');
|
|
18
|
-
MainMenuSteps.getSubMenuButtonByName('Support').should('have.attr', 'href').and('include', 'https://graphdb.ontotext.com/documentation/master/support.html');
|
|
19
|
-
});
|
|
20
|
-
|
|
21
|
-
it('Should link to master version when in prod mode and unofficial version', () => {
|
|
22
|
-
EnvironmentStubs.stubProductInfo('10.8-TR1-test');
|
|
23
|
-
HomeSteps.visitInProdMode();
|
|
24
|
-
MainMenuSteps.clickOnMenuHelp();
|
|
25
|
-
// Assert that links point to the master version
|
|
26
|
-
MainMenuSteps.getSubMenuButtonByName('Documentation').should('have.attr', 'href').and('include', 'https://graphdb.ontotext.com/documentation/master/index.html');
|
|
27
|
-
MainMenuSteps.getSubMenuButtonByName('Tutorials').should('have.attr', 'href').and('include', 'https://graphdb.ontotext.com/documentation/master/tutorials.html');
|
|
28
|
-
MainMenuSteps.getSubMenuButtonByName('Support').should('have.attr', 'href').and('include', 'https://graphdb.ontotext.com/documentation/master/support.html');
|
|
29
|
-
});
|
|
30
|
-
|
|
31
|
-
it('Should link to GDB version when in prod mode and official version', () => {
|
|
32
|
-
EnvironmentStubs.stubProductInfo('10.8');
|
|
33
|
-
HomeSteps.visitInProdMode();
|
|
34
|
-
MainMenuSteps.clickOnMenuHelp();
|
|
35
|
-
// Assert that links point to the specific GDB version
|
|
36
|
-
MainMenuSteps.getSubMenuButtonByName('Documentation').should('have.attr', 'href').and('include', 'https://graphdb.ontotext.com/documentation/10.8/index.html');
|
|
37
|
-
MainMenuSteps.getSubMenuButtonByName('Tutorials').should('have.attr', 'href').and('include', 'https://graphdb.ontotext.com/documentation/10.8/tutorials.html');
|
|
38
|
-
MainMenuSteps.getSubMenuButtonByName('Support').should('have.attr', 'href').and('include', 'https://graphdb.ontotext.com/documentation/10.8/support.html');
|
|
39
|
-
});
|
|
40
|
-
});
|
|
41
|
-
|
|
@@ -1,69 +0,0 @@
|
|
|
1
|
-
import HomeSteps from '../../steps/home-steps';
|
|
2
|
-
import {LicenseWidgetSteps} from "../../steps/widgets/license-widget-steps";
|
|
3
|
-
import {ActiveRepositoryWidgetSteps} from "../../steps/widgets/active-repository-widget-steps";
|
|
4
|
-
import {RepositoriesStubs} from "../../stubs/repositories/repositories-stubs";
|
|
5
|
-
import {SavedSparqlQueriesWidgetSteps} from "../../steps/widgets/saved-sparql-queries-widget-steps";
|
|
6
|
-
import {SavedQueriesStubs} from "../../stubs/saved-queries-stubs";
|
|
7
|
-
import {LicenseStubs} from "../../stubs/license-stubs";
|
|
8
|
-
|
|
9
|
-
describe('Home page: with selected repository', () => {
|
|
10
|
-
|
|
11
|
-
let repositoryId;
|
|
12
|
-
|
|
13
|
-
beforeEach(() => {
|
|
14
|
-
cy.viewport(1280, 1000);
|
|
15
|
-
repositoryId = 'home-page-' + Date.now();
|
|
16
|
-
cy.createRepository({id: repositoryId});
|
|
17
|
-
cy.presetRepository(repositoryId);
|
|
18
|
-
RepositoriesStubs.spyGetRepositories();
|
|
19
|
-
SavedQueriesStubs.spyGetSavedQueries();
|
|
20
|
-
LicenseStubs.spyGetLicense();
|
|
21
|
-
HomeSteps.visitAndWaitLoader();
|
|
22
|
-
cy.wait('@getRepositories');
|
|
23
|
-
});
|
|
24
|
-
|
|
25
|
-
afterEach(() => {
|
|
26
|
-
cy.deleteRepository(repositoryId);
|
|
27
|
-
});
|
|
28
|
-
|
|
29
|
-
it('should render page header with tools', () => {
|
|
30
|
-
// RDF search box should not be visible when there is no selected repository
|
|
31
|
-
HomeSteps.getRDFSearchButton().should('not.be.visible');
|
|
32
|
-
// Repository selector menu should be visible and empty
|
|
33
|
-
HomeSteps.getRepositorySelector().should('be.visible');
|
|
34
|
-
HomeSteps.getSelectedRepository().should('contain', repositoryId);
|
|
35
|
-
// Language selector menu should be visible and default to English
|
|
36
|
-
HomeSteps.getLanguageSelector().should('be.visible');
|
|
37
|
-
HomeSteps.getSelectedLanguage().should('contain', 'en');
|
|
38
|
-
});
|
|
39
|
-
|
|
40
|
-
it('should render active repository widget', () => {
|
|
41
|
-
HomeSteps.getActiveRepositoryWidget().should('be.visible');
|
|
42
|
-
ActiveRepositoryWidgetSteps.getWidget().should('be.visible');
|
|
43
|
-
ActiveRepositoryWidgetSteps.getActiveRepository().should('contain', repositoryId);
|
|
44
|
-
ActiveRepositoryWidgetSteps.getWidgetName().should('contain', 'Active repository');
|
|
45
|
-
ActiveRepositoryWidgetSteps.getTotalStatements().should('contain', 70);
|
|
46
|
-
ActiveRepositoryWidgetSteps.getInferredStatements().should('contain', 70);
|
|
47
|
-
ActiveRepositoryWidgetSteps.getExplicitStatements().should('contain', 0);
|
|
48
|
-
});
|
|
49
|
-
|
|
50
|
-
it('should not render repository errors widget', () => {
|
|
51
|
-
HomeSteps.getRepositoryErrorsWidget().should('be.hidden');
|
|
52
|
-
});
|
|
53
|
-
|
|
54
|
-
it('should render saved SPARQL queries widget', () => {
|
|
55
|
-
cy.wait('@getSavedQueries');
|
|
56
|
-
HomeSteps.getSavedSparqlQueriesWidget().should('be.visible');
|
|
57
|
-
SavedSparqlQueriesWidgetSteps.getWidgetName().should('contain', 'Saved SPARQL queries');
|
|
58
|
-
});
|
|
59
|
-
|
|
60
|
-
it('should render license widget', () => {
|
|
61
|
-
cy.wait('@get-license');
|
|
62
|
-
HomeSteps.getLicenseWidget().should('be.visible');
|
|
63
|
-
LicenseWidgetSteps.getLicenseWidgetHeader().should('contain', 'License');
|
|
64
|
-
});
|
|
65
|
-
|
|
66
|
-
it('should render page footer', () => {
|
|
67
|
-
HomeSteps.getPageFooter().should('be.visible');
|
|
68
|
-
});
|
|
69
|
-
});
|
|
@@ -1,87 +0,0 @@
|
|
|
1
|
-
import HomeSteps from '../../steps/home-steps';
|
|
2
|
-
import {RepositoryErrorsWidgetSteps} from "../../steps/widgets/repository-errors-widget-steps";
|
|
3
|
-
import {LicenseWidgetSteps} from "../../steps/widgets/license-widget-steps";
|
|
4
|
-
import {RepositoriesStubs} from "../../stubs/repositories/repositories-stubs";
|
|
5
|
-
import {LicenseStubs} from "../../stubs/license-stubs";
|
|
6
|
-
|
|
7
|
-
describe('Home page: without repositories', () => {
|
|
8
|
-
|
|
9
|
-
beforeEach(() => {
|
|
10
|
-
cy.viewport(1280, 1000);
|
|
11
|
-
RepositoriesStubs.spyGetRepositories();
|
|
12
|
-
LicenseStubs.spyGetLicense();
|
|
13
|
-
HomeSteps.visitAndWaitLoader();
|
|
14
|
-
cy.wait('@getRepositories');
|
|
15
|
-
});
|
|
16
|
-
|
|
17
|
-
it('should render navigation menu', () => {
|
|
18
|
-
HomeSteps.getNavigationMenu().should('be.visible');
|
|
19
|
-
});
|
|
20
|
-
|
|
21
|
-
it('should render page header with tools', () => {
|
|
22
|
-
// RDF search box should not be visible when there is no selected repository
|
|
23
|
-
HomeSteps.getRDFSearchButton().should('not.be.visible');
|
|
24
|
-
// Repository selector menu should be visible and empty
|
|
25
|
-
HomeSteps.getRepositorySelector().should('be.visible');
|
|
26
|
-
HomeSteps.getSelectedRepository().should('contain', 'No accessible repositories');
|
|
27
|
-
// Language selector menu should be visible and default to English
|
|
28
|
-
HomeSteps.getLanguageSelector().should('be.visible');
|
|
29
|
-
HomeSteps.getSelectedLanguage().should('contain', 'en');
|
|
30
|
-
});
|
|
31
|
-
|
|
32
|
-
it('should render repository errors widget', () => {
|
|
33
|
-
HomeSteps.getRepositoryErrorsWidget().should('be.visible');
|
|
34
|
-
RepositoryErrorsWidgetSteps.getInfoMessage().should('contain', 'Some functionalities are not available because you are not connected to any repository.');
|
|
35
|
-
RepositoryErrorsWidgetSteps.getCreateRepositoryBtn().should('be.visible');
|
|
36
|
-
RepositoryErrorsWidgetSteps.getShowRemoteLocationsBtn().should('be.visible');
|
|
37
|
-
});
|
|
38
|
-
|
|
39
|
-
it('should render license widget', () => {
|
|
40
|
-
HomeSteps.getLicenseWidget().should('be.visible');
|
|
41
|
-
LicenseWidgetSteps.getLicenseWidgetHeader().should('contain', 'License');
|
|
42
|
-
});
|
|
43
|
-
|
|
44
|
-
it('should not render active repository widget', () => {
|
|
45
|
-
HomeSteps.getActiveRepositoryWidget().should('be.hidden');
|
|
46
|
-
});
|
|
47
|
-
|
|
48
|
-
it('should not render saved SPARQL queries widget', () => {
|
|
49
|
-
HomeSteps.getSavedSparqlQueriesWidget().should('be.hidden');
|
|
50
|
-
});
|
|
51
|
-
|
|
52
|
-
it('should render license widget', () => {
|
|
53
|
-
cy.wait('@get-license');
|
|
54
|
-
HomeSteps.getLicenseWidget().should('be.visible');
|
|
55
|
-
LicenseWidgetSteps.getLicenseWidgetHeader().should('contain', 'License');
|
|
56
|
-
});
|
|
57
|
-
|
|
58
|
-
it('should render page footer', () => {
|
|
59
|
-
HomeSteps.getPageFooter().should('be.visible');
|
|
60
|
-
});
|
|
61
|
-
|
|
62
|
-
it('should render the tutorial panel', () => {
|
|
63
|
-
// When I open the home page
|
|
64
|
-
// Then the tutorial panel should be visible by default
|
|
65
|
-
HomeSteps.getTutorialPanel().should('be.visible');
|
|
66
|
-
// And the tutorial panel should contain the following text:
|
|
67
|
-
HomeSteps.verifyTutorialText(0, 'Welcome to GraphDB');
|
|
68
|
-
HomeSteps.verifyTutorialText(1, 'Create a repository');
|
|
69
|
-
HomeSteps.verifyTutorialText(2, 'Load a sample dataset');
|
|
70
|
-
HomeSteps.verifyTutorialText(3, 'Run a SPARQL query');
|
|
71
|
-
HomeSteps.verifyTutorialText(4, 'REST API');
|
|
72
|
-
});
|
|
73
|
-
|
|
74
|
-
it('should be able to toggle the tutorial panel', () => {
|
|
75
|
-
// Given I open the home page
|
|
76
|
-
// And I see the tutorial panel
|
|
77
|
-
HomeSteps.getTutorialPanel().should('be.visible');
|
|
78
|
-
// When I decline the tutorial
|
|
79
|
-
HomeSteps.hideTutorial();
|
|
80
|
-
// Then the tutorial panel should be closed
|
|
81
|
-
HomeSteps.getTutorialPanel().should('be.not.exist');
|
|
82
|
-
// When I open the tutorial panel
|
|
83
|
-
HomeSteps.showTutorialPanel();
|
|
84
|
-
// Then the tutorial panel should be visible
|
|
85
|
-
HomeSteps.getTutorialPanel().should('be.visible');
|
|
86
|
-
});
|
|
87
|
-
});
|
|
@@ -1,59 +0,0 @@
|
|
|
1
|
-
import HomeSteps from '../../steps/home-steps';
|
|
2
|
-
import {RepositoryErrorsWidgetSteps} from "../../steps/widgets/repository-errors-widget-steps";
|
|
3
|
-
import {RepositoriesStubs} from "../../stubs/repositories/repositories-stubs";
|
|
4
|
-
import {LicenseStubs} from "../../stubs/license-stubs";
|
|
5
|
-
import {SavedQueriesStubs} from "../../stubs/saved-queries-stubs";
|
|
6
|
-
|
|
7
|
-
describe('Home page: without selected repository', () => {
|
|
8
|
-
|
|
9
|
-
let repositoryId;
|
|
10
|
-
|
|
11
|
-
beforeEach(() => {
|
|
12
|
-
repositoryId = 'home-page-' + Date.now();
|
|
13
|
-
cy.createRepository({id: repositoryId});
|
|
14
|
-
cy.viewport(1280, 1000);
|
|
15
|
-
RepositoriesStubs.spyGetRepositories();
|
|
16
|
-
RepositoriesStubs.spyGetActiveLocations();
|
|
17
|
-
LicenseStubs.spyGetLicense();
|
|
18
|
-
SavedQueriesStubs.spyGetSavedQueries();
|
|
19
|
-
HomeSteps.visitAndWaitLoader();
|
|
20
|
-
cy.wait('@getRepositories');
|
|
21
|
-
cy.wait('@getActiveLocations');
|
|
22
|
-
});
|
|
23
|
-
|
|
24
|
-
afterEach(() => {
|
|
25
|
-
cy.deleteRepository(repositoryId);
|
|
26
|
-
});
|
|
27
|
-
|
|
28
|
-
it('should render repository errors widget', () => {
|
|
29
|
-
HomeSteps.getRepositoryErrorsWidget().should('be.visible');
|
|
30
|
-
RepositoryErrorsWidgetSteps.getInfoMessage().should('contain', 'Some functionalities are not available because you are not connected to any repository.');
|
|
31
|
-
RepositoryErrorsWidgetSteps.getCreateRepositoryBtn().should('be.visible');
|
|
32
|
-
RepositoryErrorsWidgetSteps.getShowRemoteLocationsBtn().should('be.visible');
|
|
33
|
-
});
|
|
34
|
-
|
|
35
|
-
// This test is unreliable with the current implementation of the license widget.
|
|
36
|
-
it.skip('should not render active repository widget', () => {
|
|
37
|
-
HomeSteps.getActiveRepositoryWidget().should('be.hidden');
|
|
38
|
-
});
|
|
39
|
-
|
|
40
|
-
it('should not render saved SPARQL queries widget', () => {
|
|
41
|
-
cy.wait('@getSavedQueries');
|
|
42
|
-
HomeSteps.getSavedSparqlQueriesWidget().should('be.hidden');
|
|
43
|
-
});
|
|
44
|
-
|
|
45
|
-
it('should render repository errors widget', () => {
|
|
46
|
-
RepositoryErrorsWidgetSteps.getRepositoryList().should('contain', repositoryId);
|
|
47
|
-
});
|
|
48
|
-
|
|
49
|
-
it('should render page header with tools', () => {
|
|
50
|
-
// RDF search box should not be visible when there is no selected repository
|
|
51
|
-
HomeSteps.getRDFSearchButton().should('not.be.visible');
|
|
52
|
-
// Repository selector menu should be visible and empty
|
|
53
|
-
HomeSteps.getRepositorySelector().should('be.visible');
|
|
54
|
-
HomeSteps.getSelectedRepository().should('contain', 'Choose repository');
|
|
55
|
-
// Language selector menu should be visible and default to English
|
|
56
|
-
HomeSteps.getLanguageSelector().should('be.visible');
|
|
57
|
-
HomeSteps.getSelectedLanguage().should('contain', 'en');
|
|
58
|
-
});
|
|
59
|
-
});
|