@geode/opengeodeweb-front 9.11.0-rc.7 → 9.11.0-rc.9
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/.github/workflows/test.yml +23 -0
- package/.oxlintrc.json +1 -1
- package/components/FeedBack/ErrorBanner.vue +1 -1
- package/components/FeedBack/Snackers.vue +1 -1
- package/components/HybridRenderingView.vue +38 -12
- package/components/Launcher.vue +1 -1
- package/components/PackagesVersions.vue +1 -1
- package/components/Recaptcha.vue +1 -1
- package/components/RemoteRenderingView.vue +1 -1
- package/components/Viewer/BreadCrumb.vue +1 -1
- package/components/Viewer/Tree/ObjectTree.vue +1 -1
- package/components/Viewer/TreeObject.vue +1 -1
- package/components/Wrapper.vue +1 -1
- package/composables/api_fetch.js +2 -2
- package/composables/run_function_when_microservices_connected.js +1 -1
- package/composables/upload_file.js +2 -2
- package/composables/viewer_call.js +38 -38
- package/geode-opengeodeweb-back-5.10.0-rc.8.tgz +0 -0
- package/geode-opengeodeweb-viewer-1.11.0-rc.4.tgz +0 -0
- package/internal_stores/mesh/edges.js +49 -52
- package/internal_stores/mesh/index.js +20 -14
- package/internal_stores/mesh/points.js +9 -7
- package/internal_stores/mesh/polygons.js +9 -7
- package/internal_stores/mesh/polyhedra.js +8 -6
- package/internal_stores/model/blocks.js +1 -1
- package/internal_stores/model/corners.js +1 -1
- package/internal_stores/model/edges.js +1 -8
- package/internal_stores/model/index.js +1 -1
- package/internal_stores/model/lines.js +2 -2
- package/internal_stores/model/points.js +2 -2
- package/internal_stores/model/surfaces.js +1 -1
- package/package.json +13 -6
- package/stores/data_base.js +9 -1
- package/stores/data_style.js +7 -6
- package/stores/feedback.js +1 -1
- package/stores/geode.js +5 -5
- package/stores/hybrid_viewer.js +1 -1
- package/stores/infra.js +10 -10
- package/stores/menu.js +3 -3
- package/stores/treeview.js +1 -1
- package/stores/viewer.js +5 -6
- package/tests/integration/data/fake_id/edged_curve.vtp +20 -0
- package/tests/integration/microservices/back/requirements.in +1 -0
- package/tests/integration/microservices/back/requirements.txt +75 -0
- package/tests/integration/microservices/viewer/requirements.in +1 -0
- package/tests/integration/microservices/viewer/requirements.txt +87 -0
- package/tests/integration/stores/DataStyle/mesh/Edges.nuxt.test.js +138 -0
- package/{test → tests/unit}/components/CrsSelector.nuxt.test.js +6 -3
- package/{test → tests/unit}/components/ExtensionSelector.nuxt.test.js +6 -3
- package/{test → tests/unit}/components/FeedBack/ErrorsBanner.nuxt.test.js +10 -3
- package/{test → tests/unit}/components/FeedBack/Snackers.nuxt.test.js +24 -21
- package/{test → tests/unit}/components/FileSelector.nuxt.test.js +5 -2
- package/{test → tests/unit}/components/FileUploader.nuxt.test.js +6 -3
- package/{test → tests/unit}/components/Inspector/InspectionButton.nuxt.test.js +6 -3
- package/{test → tests/unit}/components/Launcher.nuxt.test.js +9 -2
- package/{test → tests/unit}/components/MissingFilesSelector.nuxt.test.js +6 -3
- package/{test → tests/unit}/components/ObjectSelector.nuxt.test.js +6 -3
- package/{test → tests/unit}/components/PackagesVersions.nuxt.test.js +5 -3
- package/{test → tests/unit}/components/Stepper.nuxt.test.js +1 -0
- package/{test → tests/unit}/components/Wrapper.nuxt.test.js +1 -1
- package/{test → tests/unit}/composables/api_fetch.nuxt.test.js +3 -2
- package/{test/composables/run_function_when_microservices_connected.test.js → tests/unit/composables/run_function_when_microservices_connected.nuxt.test.js} +18 -5
- package/{test → tests/unit}/composables/upload_file.nuxt.test.js +7 -8
- package/{test → tests/unit}/stores/Feedback.nuxt.test.js +12 -8
- package/{test → tests/unit}/stores/Geode.nuxt.test.js +33 -10
- package/{test → tests/unit}/stores/Infra.nuxt.test.js +58 -25
- package/{test → tests/unit}/stores/Viewer.nuxt.test.js +101 -20
- package/{test → tests/unit}/utils/validate_schema.nuxt.test.js +3 -0
- package/tests/vitest.config.js +33 -0
- package/utils/default_styles.js +246 -0
- package/utils/local.js +180 -0
- package/geode-opengeodeweb-back-5.10.0-rc.5.tgz +0 -0
- package/geode-opengeodeweb-viewer-1.11.0-rc.3.tgz +0 -0
- package/vitest.config.js +0 -13
- /package/{test → tests/unit}/components/Inspector/ResultPanel.nuxt.test.js +0 -0
- /package/{test → tests/unit}/components/Step.nuxt.test.js +0 -0
|
@@ -0,0 +1,138 @@
|
|
|
1
|
+
import path from "path"
|
|
2
|
+
|
|
3
|
+
import { setActivePinia } from "pinia"
|
|
4
|
+
import { createTestingPinia } from "@pinia/testing"
|
|
5
|
+
|
|
6
|
+
import {
|
|
7
|
+
afterAll,
|
|
8
|
+
afterEach,
|
|
9
|
+
beforeAll,
|
|
10
|
+
beforeEach,
|
|
11
|
+
describe,
|
|
12
|
+
expect,
|
|
13
|
+
test,
|
|
14
|
+
vi,
|
|
15
|
+
} from "vitest"
|
|
16
|
+
|
|
17
|
+
import {
|
|
18
|
+
executable_name,
|
|
19
|
+
executable_path,
|
|
20
|
+
kill_processes,
|
|
21
|
+
run_viewer,
|
|
22
|
+
} from "@ogw_f/utils/local"
|
|
23
|
+
|
|
24
|
+
import Status from "@ogw_f/utils/status"
|
|
25
|
+
|
|
26
|
+
import * as composables from "@ogw_f/composables/viewer_call"
|
|
27
|
+
import { useDataStyleStore } from "@ogw_f/stores/data_style"
|
|
28
|
+
import { useDataBaseStore } from "@ogw_f/stores/data_base"
|
|
29
|
+
import { useViewerStore } from "@ogw_f/stores/viewer"
|
|
30
|
+
import { useInfraStore } from "@ogw_f/stores/infra"
|
|
31
|
+
|
|
32
|
+
import viewer_schemas from "@geode/opengeodeweb-viewer/opengeodeweb_viewer_schemas.json"
|
|
33
|
+
import { WebSocket } from "ws"
|
|
34
|
+
|
|
35
|
+
const mesh_edges_schemas = viewer_schemas.opengeodeweb_viewer.mesh.edges
|
|
36
|
+
|
|
37
|
+
const mockLockRequest = vi.fn().mockImplementation(async (name, callback) => {
|
|
38
|
+
return callback({ name })
|
|
39
|
+
})
|
|
40
|
+
|
|
41
|
+
vi.stubGlobal("navigator", {
|
|
42
|
+
...navigator,
|
|
43
|
+
locks: {
|
|
44
|
+
request: mockLockRequest,
|
|
45
|
+
},
|
|
46
|
+
})
|
|
47
|
+
|
|
48
|
+
beforeAll(() => {
|
|
49
|
+
global.WebSocket = WebSocket
|
|
50
|
+
})
|
|
51
|
+
|
|
52
|
+
afterAll(() => {
|
|
53
|
+
delete global.WebSocket
|
|
54
|
+
})
|
|
55
|
+
|
|
56
|
+
const id = "fake_id"
|
|
57
|
+
const file_name = "edged_curve.vtp"
|
|
58
|
+
const geode_object = "EdgedCurve2D"
|
|
59
|
+
const object_type = "mesh"
|
|
60
|
+
|
|
61
|
+
beforeEach(async () => {
|
|
62
|
+
const pinia = createTestingPinia({
|
|
63
|
+
stubActions: false,
|
|
64
|
+
createSpy: vi.fn,
|
|
65
|
+
})
|
|
66
|
+
setActivePinia(pinia)
|
|
67
|
+
const dataStyleStore = useDataStyleStore()
|
|
68
|
+
const dataBaseStore = useDataBaseStore()
|
|
69
|
+
const viewerStore = useViewerStore()
|
|
70
|
+
const infraStore = useInfraStore()
|
|
71
|
+
infraStore.app_mode = appMode.appMode.BROWSER
|
|
72
|
+
|
|
73
|
+
const viewer_path = path.join(
|
|
74
|
+
executable_path(
|
|
75
|
+
path.join("tests", "integration", "microservices", "viewer"),
|
|
76
|
+
),
|
|
77
|
+
executable_name("opengeodeweb_viewer"),
|
|
78
|
+
)
|
|
79
|
+
const viewer_port = await run_viewer(viewer_path, {
|
|
80
|
+
port: 1234,
|
|
81
|
+
data_folder_path: path.join(__dirname, "..", "..", "..", "data"),
|
|
82
|
+
})
|
|
83
|
+
|
|
84
|
+
viewerStore.default_local_port = viewer_port
|
|
85
|
+
await viewerStore.ws_connect()
|
|
86
|
+
await dataBaseStore.registerObject(id, file_name, object_type)
|
|
87
|
+
await dataStyleStore.addDataStyle(id, geode_object, object_type)
|
|
88
|
+
expect(viewerStore.status).toBe(Status.CONNECTED)
|
|
89
|
+
})
|
|
90
|
+
|
|
91
|
+
describe("Mesh edges", () => {
|
|
92
|
+
afterEach(async () => {
|
|
93
|
+
await kill_processes()
|
|
94
|
+
})
|
|
95
|
+
|
|
96
|
+
describe("Edges visibility", () => {
|
|
97
|
+
test("test visibility true", async () => {
|
|
98
|
+
const dataStyleStore = useDataStyleStore()
|
|
99
|
+
const viewerStore = useViewerStore()
|
|
100
|
+
await dataStyleStore.setEdgesVisibility(id, true)
|
|
101
|
+
expect(dataStyleStore.edgesVisibility(id)).toBe(true)
|
|
102
|
+
expect(viewerStore.status).toBe(Status.CONNECTED)
|
|
103
|
+
})
|
|
104
|
+
})
|
|
105
|
+
|
|
106
|
+
describe("Edges active coloring", () => {
|
|
107
|
+
test("test coloring", async () => {
|
|
108
|
+
const dataStyleStore = useDataStyleStore()
|
|
109
|
+
const viewerStore = useViewerStore()
|
|
110
|
+
const coloringTypes = ["color"]
|
|
111
|
+
for (let i = 0; i < coloringTypes.length; i++) {
|
|
112
|
+
dataStyleStore.setEdgesActiveColoring(id, coloringTypes[i])
|
|
113
|
+
expect(dataStyleStore.edgesActiveColoring(id)).toBe(coloringTypes[i])
|
|
114
|
+
expect(viewerStore.status).toBe(Status.CONNECTED)
|
|
115
|
+
}
|
|
116
|
+
})
|
|
117
|
+
})
|
|
118
|
+
describe("Edges color", () => {
|
|
119
|
+
test("test red", async () => {
|
|
120
|
+
const dataStyleStore = useDataStyleStore()
|
|
121
|
+
const viewerStore = useViewerStore()
|
|
122
|
+
const color = { r: 255, g: 0, b: 0 }
|
|
123
|
+
const spy = vi.spyOn(composables, "viewer_call")
|
|
124
|
+
await dataStyleStore.setEdgesColor(id, color)
|
|
125
|
+
expect(spy).toHaveBeenCalledWith(
|
|
126
|
+
{
|
|
127
|
+
schema: mesh_edges_schemas.color,
|
|
128
|
+
params: { id, color },
|
|
129
|
+
},
|
|
130
|
+
{
|
|
131
|
+
response_function: expect.any(Function),
|
|
132
|
+
},
|
|
133
|
+
)
|
|
134
|
+
expect(dataStyleStore.edgesColor(id)).toStrictEqual(color)
|
|
135
|
+
expect(viewerStore.status).toBe(Status.CONNECTED)
|
|
136
|
+
})
|
|
137
|
+
})
|
|
138
|
+
})
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { describe, expect, test } from "vitest"
|
|
2
1
|
import { registerEndpoint, mountSuspended } from "@nuxt/test-utils/runtime"
|
|
3
2
|
|
|
3
|
+
import { describe, expect, test, vi } from "vitest"
|
|
4
4
|
import { setActivePinia } from "pinia"
|
|
5
5
|
import { createTestingPinia } from "@pinia/testing"
|
|
6
6
|
import { createVuetify } from "vuetify"
|
|
@@ -19,9 +19,12 @@ const vuetify = createVuetify({
|
|
|
19
19
|
})
|
|
20
20
|
|
|
21
21
|
describe("CrsSelector.vue", () => {
|
|
22
|
-
const pinia = createTestingPinia(
|
|
22
|
+
const pinia = createTestingPinia({
|
|
23
|
+
stubActions: false,
|
|
24
|
+
createSpy: vi.fn,
|
|
25
|
+
})
|
|
23
26
|
setActivePinia(pinia)
|
|
24
|
-
const geode_store =
|
|
27
|
+
const geode_store = useGeodeStore()
|
|
25
28
|
geode_store.base_url = ""
|
|
26
29
|
|
|
27
30
|
test(`Default behavior`, async () => {
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { describe, expect, test } from "vitest"
|
|
1
|
+
import { describe, expect, test, vi } from "vitest"
|
|
2
2
|
import { registerEndpoint, mountSuspended } from "@nuxt/test-utils/runtime"
|
|
3
3
|
|
|
4
4
|
import { createVuetify } from "vuetify"
|
|
@@ -19,9 +19,12 @@ const vuetify = createVuetify({
|
|
|
19
19
|
})
|
|
20
20
|
|
|
21
21
|
describe("ExtensionSelector.vue", async () => {
|
|
22
|
-
const pinia = createTestingPinia(
|
|
22
|
+
const pinia = createTestingPinia({
|
|
23
|
+
stubActions: false,
|
|
24
|
+
createSpy: vi.fn,
|
|
25
|
+
})
|
|
23
26
|
setActivePinia(pinia)
|
|
24
|
-
const geode_store =
|
|
27
|
+
const geode_store = useGeodeStore()
|
|
25
28
|
geode_store.base_url = ""
|
|
26
29
|
|
|
27
30
|
test(`Select geode_object & extension`, async () => {
|
|
@@ -6,6 +6,7 @@ import * as directives from "vuetify/directives"
|
|
|
6
6
|
import { createTestingPinia } from "@pinia/testing"
|
|
7
7
|
|
|
8
8
|
import FeedBackErrorBanner from "@ogw_f/components/FeedBack/ErrorBanner.vue"
|
|
9
|
+
import { setActivePinia } from "pinia"
|
|
9
10
|
|
|
10
11
|
const vuetify = createVuetify({
|
|
11
12
|
components,
|
|
@@ -14,13 +15,18 @@ const vuetify = createVuetify({
|
|
|
14
15
|
|
|
15
16
|
describe("FeedBackErrorBanner.vue", async () => {
|
|
16
17
|
;(test(`Test reload`, async () => {
|
|
18
|
+
const pinia = createTestingPinia({
|
|
19
|
+
stubActions: false,
|
|
20
|
+
createSpy: vi.fn,
|
|
21
|
+
})
|
|
22
|
+
setActivePinia(pinia)
|
|
17
23
|
const wrapper = mount(FeedBackErrorBanner, {
|
|
18
24
|
global: {
|
|
19
|
-
plugins: [
|
|
25
|
+
plugins: [pinia, vuetify],
|
|
20
26
|
},
|
|
21
27
|
})
|
|
22
28
|
const reload_spy = vi.spyOn(wrapper.vm, "reload")
|
|
23
|
-
const feedback_store =
|
|
29
|
+
const feedback_store = useFeedbackStore()
|
|
24
30
|
await feedback_store.$patch({ server_error: true })
|
|
25
31
|
expect(feedback_store.server_error).toBe(true)
|
|
26
32
|
const v_btn = wrapper.findAll(".v-btn")
|
|
@@ -38,13 +44,14 @@ describe("FeedBackErrorBanner.vue", async () => {
|
|
|
38
44
|
},
|
|
39
45
|
},
|
|
40
46
|
stubActions: false,
|
|
47
|
+
createSpy: vi.fn,
|
|
41
48
|
}),
|
|
42
49
|
vuetify,
|
|
43
50
|
],
|
|
44
51
|
},
|
|
45
52
|
})
|
|
46
53
|
|
|
47
|
-
const feedback_store =
|
|
54
|
+
const feedback_store = useFeedbackStore()
|
|
48
55
|
const v_btn = wrapper.findAll(".v-btn")
|
|
49
56
|
await v_btn[1].trigger("click")
|
|
50
57
|
expect(feedback_store.server_error).toBe(false)
|
|
@@ -1,10 +1,12 @@
|
|
|
1
1
|
// @vitest-environment nuxt
|
|
2
2
|
vi.stubGlobal("visualViewport", new EventTarget())
|
|
3
|
-
import { describe, expect, test } from "vitest"
|
|
3
|
+
import { describe, expect, test, vi } from "vitest"
|
|
4
4
|
import { mount } from "@vue/test-utils"
|
|
5
5
|
import { createVuetify } from "vuetify"
|
|
6
6
|
import * as components from "vuetify/components"
|
|
7
7
|
import * as directives from "vuetify/directives"
|
|
8
|
+
|
|
9
|
+
import { setActivePinia } from "pinia"
|
|
8
10
|
import { createTestingPinia } from "@pinia/testing"
|
|
9
11
|
|
|
10
12
|
import FeedBackSnackers from "@ogw_f/components/FeedBack/Snackers.vue"
|
|
@@ -16,6 +18,25 @@ const vuetify = createVuetify({
|
|
|
16
18
|
|
|
17
19
|
describe("FeedBackSnackers.vue", async () => {
|
|
18
20
|
test(`Test delete error`, async () => {
|
|
21
|
+
const pinia = createTestingPinia({
|
|
22
|
+
initialState: {
|
|
23
|
+
feedback: {
|
|
24
|
+
feedbacks: [
|
|
25
|
+
{
|
|
26
|
+
type: "error",
|
|
27
|
+
code: 500,
|
|
28
|
+
route: "/test",
|
|
29
|
+
name: "test message",
|
|
30
|
+
description: "test description",
|
|
31
|
+
},
|
|
32
|
+
],
|
|
33
|
+
},
|
|
34
|
+
},
|
|
35
|
+
stubActions: false,
|
|
36
|
+
createSpy: vi.fn,
|
|
37
|
+
})
|
|
38
|
+
setActivePinia(pinia)
|
|
39
|
+
const feedback_store = useFeedbackStore()
|
|
19
40
|
const wrapper = mount(
|
|
20
41
|
{
|
|
21
42
|
template: "<v-layout><FeedBackSnackers/></v-layout>",
|
|
@@ -26,29 +47,11 @@ describe("FeedBackSnackers.vue", async () => {
|
|
|
26
47
|
components: {
|
|
27
48
|
FeedBackSnackers,
|
|
28
49
|
},
|
|
29
|
-
plugins: [
|
|
30
|
-
createTestingPinia({
|
|
31
|
-
initialState: {
|
|
32
|
-
feedback: {
|
|
33
|
-
feedbacks: [
|
|
34
|
-
{
|
|
35
|
-
type: "error",
|
|
36
|
-
code: 500,
|
|
37
|
-
route: "/test",
|
|
38
|
-
name: "test message",
|
|
39
|
-
description: "test description",
|
|
40
|
-
},
|
|
41
|
-
],
|
|
42
|
-
},
|
|
43
|
-
},
|
|
44
|
-
stubActions: false,
|
|
45
|
-
}),
|
|
46
|
-
vuetify,
|
|
47
|
-
],
|
|
50
|
+
plugins: [pinia, vuetify],
|
|
48
51
|
},
|
|
49
52
|
},
|
|
50
53
|
)
|
|
51
|
-
|
|
54
|
+
|
|
52
55
|
expect(feedback_store.feedbacks.length).toBe(1)
|
|
53
56
|
const v_btn = await wrapper.findComponent(components.VBtn)
|
|
54
57
|
await v_btn.trigger("click")
|
|
@@ -23,9 +23,12 @@ const vuetify = createVuetify({
|
|
|
23
23
|
})
|
|
24
24
|
|
|
25
25
|
describe("FileSelector.vue", async () => {
|
|
26
|
-
const pinia = createTestingPinia(
|
|
26
|
+
const pinia = createTestingPinia({
|
|
27
|
+
stubActions: false,
|
|
28
|
+
createSpy: vi.fn,
|
|
29
|
+
})
|
|
27
30
|
setActivePinia(pinia)
|
|
28
|
-
const geode_store =
|
|
31
|
+
const geode_store = useGeodeStore()
|
|
29
32
|
geode_store.base_url = ""
|
|
30
33
|
|
|
31
34
|
test(`Select file`, async () => {
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { describe, expect, test } from "vitest"
|
|
1
|
+
import { describe, expect, test, vi } from "vitest"
|
|
2
2
|
import { registerEndpoint, mountSuspended } from "@nuxt/test-utils/runtime"
|
|
3
3
|
import { flushPromises } from "@vue/test-utils"
|
|
4
4
|
|
|
@@ -20,9 +20,12 @@ const vuetify = createVuetify({
|
|
|
20
20
|
})
|
|
21
21
|
|
|
22
22
|
describe("FileUploader.vue", async () => {
|
|
23
|
-
const pinia = createTestingPinia(
|
|
23
|
+
const pinia = createTestingPinia({
|
|
24
|
+
stubActions: false,
|
|
25
|
+
createSpy: vi.fn,
|
|
26
|
+
})
|
|
24
27
|
setActivePinia(pinia)
|
|
25
|
-
const geode_store =
|
|
28
|
+
const geode_store = useGeodeStore()
|
|
26
29
|
geode_store.base_url = ""
|
|
27
30
|
|
|
28
31
|
registerEndpoint(upload_file_schema.$id, {
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { describe, expect, test } from "vitest"
|
|
1
|
+
import { describe, expect, test, vi } from "vitest"
|
|
2
2
|
import { registerEndpoint, mountSuspended } from "@nuxt/test-utils/runtime"
|
|
3
3
|
import { flushPromises } from "@vue/test-utils"
|
|
4
4
|
|
|
@@ -18,9 +18,12 @@ const vuetify = createVuetify({
|
|
|
18
18
|
})
|
|
19
19
|
|
|
20
20
|
describe("Inspector/InspectionButton.vue", async () => {
|
|
21
|
-
const pinia = createTestingPinia(
|
|
21
|
+
const pinia = createTestingPinia({
|
|
22
|
+
stubActions: false,
|
|
23
|
+
createSpy: vi.fn,
|
|
24
|
+
})
|
|
22
25
|
setActivePinia(pinia)
|
|
23
|
-
const geode_store =
|
|
26
|
+
const geode_store = useGeodeStore()
|
|
24
27
|
geode_store.base_url = ""
|
|
25
28
|
|
|
26
29
|
test(`Test with issues`, async () => {
|
|
@@ -6,6 +6,9 @@ import { createVuetify } from "vuetify"
|
|
|
6
6
|
import * as components from "vuetify/components"
|
|
7
7
|
import * as directives from "vuetify/directives"
|
|
8
8
|
|
|
9
|
+
import { setActivePinia } from "pinia"
|
|
10
|
+
import { createTestingPinia } from "@pinia/testing"
|
|
11
|
+
|
|
9
12
|
import Launcher from "@ogw_f/components/Launcher.vue"
|
|
10
13
|
|
|
11
14
|
const vuetify = createVuetify({
|
|
@@ -13,8 +16,6 @@ const vuetify = createVuetify({
|
|
|
13
16
|
directives,
|
|
14
17
|
})
|
|
15
18
|
|
|
16
|
-
const infra_store = use_infra_store()
|
|
17
|
-
|
|
18
19
|
// Mock navigator.locks API
|
|
19
20
|
const mockLockRequest = vi.fn().mockImplementation(async (name, callback) => {
|
|
20
21
|
return callback({ name })
|
|
@@ -31,6 +32,12 @@ global.ResizeObserver = require("resize-observer-polyfill")
|
|
|
31
32
|
|
|
32
33
|
describe("Launcher.vue", async () => {
|
|
33
34
|
test(`Mount`, async () => {
|
|
35
|
+
const pinia = createTestingPinia({
|
|
36
|
+
stubActions: false,
|
|
37
|
+
createSpy: vi.fn,
|
|
38
|
+
})
|
|
39
|
+
setActivePinia(pinia)
|
|
40
|
+
const infra_store = useInfraStore()
|
|
34
41
|
const spy_create_backend = vi.spyOn(infra_store, "create_backend")
|
|
35
42
|
const wrapper = await mountSuspended(Launcher, {
|
|
36
43
|
global: {
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { describe, expect, test } from "vitest"
|
|
1
|
+
import { describe, expect, test, vi } from "vitest"
|
|
2
2
|
import { registerEndpoint, mountSuspended } from "@nuxt/test-utils/runtime"
|
|
3
3
|
import { flushPromises } from "@vue/test-utils"
|
|
4
4
|
|
|
@@ -22,9 +22,12 @@ const vuetify = createVuetify({
|
|
|
22
22
|
})
|
|
23
23
|
|
|
24
24
|
describe("MissingFilesSelector.vue", async () => {
|
|
25
|
-
const pinia = createTestingPinia(
|
|
25
|
+
const pinia = createTestingPinia({
|
|
26
|
+
stubActions: false,
|
|
27
|
+
createSpy: vi.fn,
|
|
28
|
+
})
|
|
26
29
|
setActivePinia(pinia)
|
|
27
|
-
const geode_store =
|
|
30
|
+
const geode_store = useGeodeStore()
|
|
28
31
|
geode_store.base_url = ""
|
|
29
32
|
|
|
30
33
|
test(`Select file`, async () => {
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { describe, expect, test } from "vitest"
|
|
1
|
+
import { describe, expect, test, vi } from "vitest"
|
|
2
2
|
import { registerEndpoint, mountSuspended } from "@nuxt/test-utils/runtime"
|
|
3
3
|
import { flushPromises } from "@vue/test-utils"
|
|
4
4
|
|
|
@@ -20,9 +20,12 @@ const vuetify = createVuetify({
|
|
|
20
20
|
})
|
|
21
21
|
|
|
22
22
|
describe("ObjectSelector.vue", async () => {
|
|
23
|
-
const pinia = createTestingPinia(
|
|
23
|
+
const pinia = createTestingPinia({
|
|
24
|
+
stubActions: false,
|
|
25
|
+
createSpy: vi.fn,
|
|
26
|
+
})
|
|
24
27
|
setActivePinia(pinia)
|
|
25
|
-
const geode_store =
|
|
28
|
+
const geode_store = useGeodeStore()
|
|
26
29
|
geode_store.base_url = ""
|
|
27
30
|
|
|
28
31
|
test(`test loadable with one class`, async () => {
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { describe, expect, test } from "vitest"
|
|
1
|
+
import { describe, expect, test, vi } from "vitest"
|
|
2
2
|
import { mountSuspended, registerEndpoint } from "@nuxt/test-utils/runtime"
|
|
3
3
|
|
|
4
4
|
import { createVuetify } from "vuetify"
|
|
@@ -17,9 +17,11 @@ const vuetify = createVuetify({
|
|
|
17
17
|
|
|
18
18
|
describe("PackagesVersions.vue", async () => {
|
|
19
19
|
test(`Mount`, async () => {
|
|
20
|
-
const pinia = createTestingPinia(
|
|
20
|
+
const pinia = createTestingPinia({
|
|
21
|
+
createSpy: vi.fn,
|
|
22
|
+
})
|
|
21
23
|
setActivePinia(pinia)
|
|
22
|
-
const geode_store =
|
|
24
|
+
const geode_store = useGeodeStore()
|
|
23
25
|
geode_store.base_url = ""
|
|
24
26
|
|
|
25
27
|
const schema = {
|
|
@@ -6,10 +6,11 @@ import { registerEndpoint } from "@nuxt/test-utils/runtime"
|
|
|
6
6
|
describe("api_fetch", () => {
|
|
7
7
|
const pinia = createTestingPinia({
|
|
8
8
|
stubActions: false,
|
|
9
|
+
createSpy: vi.fn,
|
|
9
10
|
})
|
|
10
11
|
setActivePinia(pinia)
|
|
11
|
-
const geode_store =
|
|
12
|
-
const feedback_store =
|
|
12
|
+
const geode_store = useGeodeStore()
|
|
13
|
+
const feedback_store = useFeedbackStore()
|
|
13
14
|
geode_store.base_url = ""
|
|
14
15
|
|
|
15
16
|
const schema = {
|
|
@@ -1,18 +1,29 @@
|
|
|
1
|
-
import { describe, expect, test,
|
|
1
|
+
import { beforeEach, describe, expect, test, vi } from "vitest"
|
|
2
2
|
import Status from "@ogw_f/utils/status.js"
|
|
3
3
|
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
const viewer_store = use_viewer_store()
|
|
4
|
+
import { setActivePinia } from "pinia"
|
|
5
|
+
import { createTestingPinia } from "@pinia/testing"
|
|
7
6
|
|
|
7
|
+
beforeEach(async () => {
|
|
8
|
+
const pinia = createTestingPinia({
|
|
9
|
+
stubActions: false,
|
|
10
|
+
createSpy: vi.fn,
|
|
11
|
+
})
|
|
12
|
+
setActivePinia(pinia)
|
|
13
|
+
})
|
|
14
|
+
|
|
15
|
+
describe("run_function_when_microservices_connected", () => {
|
|
8
16
|
const dumb_obj = { dumb_method: () => true }
|
|
9
17
|
|
|
10
18
|
beforeEach(async () => {
|
|
19
|
+
const geode_store = useGeodeStore()
|
|
20
|
+
const viewer_store = useViewerStore()
|
|
11
21
|
await geode_store.$patch({ status: Status.NOT_CONNECTED })
|
|
12
22
|
await viewer_store.$patch({ status: Status.NOT_CONNECTED })
|
|
13
23
|
})
|
|
14
|
-
console.log("Status.CONNECTED", Status.CONNECTED)
|
|
15
24
|
test("microservices connected", async () => {
|
|
25
|
+
const geode_store = useGeodeStore()
|
|
26
|
+
const viewer_store = useViewerStore()
|
|
16
27
|
const spy = vi.spyOn(dumb_obj, "dumb_method")
|
|
17
28
|
run_function_when_microservices_connected(dumb_obj.dumb_method)
|
|
18
29
|
await geode_store.$patch({ status: Status.CONNECTED })
|
|
@@ -21,6 +32,8 @@ describe("run_function_when_microservices_connected", () => {
|
|
|
21
32
|
})
|
|
22
33
|
|
|
23
34
|
test("microservices not connected", async () => {
|
|
35
|
+
const geode_store = useGeodeStore()
|
|
36
|
+
const viewer_store = useViewerStore()
|
|
24
37
|
const spy = vi.spyOn(dumb_obj, "dumb_method")
|
|
25
38
|
run_function_when_microservices_connected(dumb_obj.dumb_method)
|
|
26
39
|
await geode_store.$patch({ status: Status.NOT_CONNECTED })
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { describe, expect, test, beforeEach } from "vitest"
|
|
1
|
+
import { describe, expect, test, beforeEach, vi } from "vitest"
|
|
2
2
|
import { setActivePinia } from "pinia"
|
|
3
3
|
import { createTestingPinia } from "@pinia/testing"
|
|
4
4
|
import { registerEndpoint } from "@nuxt/test-utils/runtime"
|
|
@@ -6,19 +6,17 @@ import { upload_file } from "@ogw_f/composables/upload_file"
|
|
|
6
6
|
import schemas from "@geode/opengeodeweb-back/opengeodeweb_back_schemas.json"
|
|
7
7
|
const schema = schemas.opengeodeweb_back.upload_file
|
|
8
8
|
|
|
9
|
-
|
|
9
|
+
beforeEach(async () => {
|
|
10
10
|
const pinia = createTestingPinia({
|
|
11
11
|
stubActions: false,
|
|
12
|
+
createSpy: vi.fn,
|
|
12
13
|
})
|
|
13
14
|
setActivePinia(pinia)
|
|
14
|
-
|
|
15
|
-
const geode_store = use_geode_store()
|
|
16
|
-
const feedback_store = use_feedback_store()
|
|
15
|
+
})
|
|
17
16
|
|
|
17
|
+
describe("upload_file.js", () => {
|
|
18
18
|
beforeEach(() => {
|
|
19
|
-
|
|
20
|
-
geode_store.$reset()
|
|
21
|
-
feedback_store.$reset()
|
|
19
|
+
const geode_store = useGeodeStore()
|
|
22
20
|
geode_store.base_url = ""
|
|
23
21
|
})
|
|
24
22
|
|
|
@@ -31,6 +29,7 @@ describe("upload_file.js", () => {
|
|
|
31
29
|
})
|
|
32
30
|
|
|
33
31
|
test("onResponse", async () => {
|
|
32
|
+
const feedback_store = useFeedbackStore()
|
|
34
33
|
registerEndpoint(schema.$id, {
|
|
35
34
|
method: "PUT",
|
|
36
35
|
handler: () => ({ test: "ok" }),
|
|
@@ -1,21 +1,20 @@
|
|
|
1
1
|
import { setActivePinia } from "pinia"
|
|
2
2
|
import { createTestingPinia } from "@pinia/testing"
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
3
|
+
import { useFeedbackStore } from "@ogw_f/stores/feedback"
|
|
4
|
+
import { beforeEach, describe, expect, expectTypeOf, test, vi } from "vitest"
|
|
5
5
|
|
|
6
|
-
|
|
6
|
+
beforeEach(async () => {
|
|
7
7
|
const pinia = createTestingPinia({
|
|
8
8
|
stubActions: false,
|
|
9
|
+
createSpy: vi.fn,
|
|
9
10
|
})
|
|
10
11
|
setActivePinia(pinia)
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
beforeEach(() => {
|
|
14
|
-
feedback_store.$reset()
|
|
15
|
-
})
|
|
12
|
+
})
|
|
16
13
|
|
|
14
|
+
describe("Feedback Store", () => {
|
|
17
15
|
describe("state", () => {
|
|
18
16
|
test("initial state", () => {
|
|
17
|
+
const feedback_store = useFeedbackStore()
|
|
19
18
|
expectTypeOf(feedback_store.feedbacks).toEqualTypeOf([])
|
|
20
19
|
expectTypeOf(feedback_store.server_error).toBeBoolean()
|
|
21
20
|
})
|
|
@@ -23,6 +22,7 @@ describe("Feedback Store", () => {
|
|
|
23
22
|
describe("actions", () => {
|
|
24
23
|
describe("add_error", () => {
|
|
25
24
|
test("test add_error", () => {
|
|
25
|
+
const feedback_store = useFeedbackStore()
|
|
26
26
|
feedback_store.add_error(
|
|
27
27
|
500,
|
|
28
28
|
"/test",
|
|
@@ -36,6 +36,7 @@ describe("Feedback Store", () => {
|
|
|
36
36
|
|
|
37
37
|
describe("add_error", () => {
|
|
38
38
|
test("test feedbacks_timeout", () => {
|
|
39
|
+
const feedback_store = useFeedbackStore()
|
|
39
40
|
feedback_store.feedbacks_timeout_miliseconds = 500
|
|
40
41
|
feedback_store.add_error(
|
|
41
42
|
500,
|
|
@@ -52,6 +53,7 @@ describe("Feedback Store", () => {
|
|
|
52
53
|
|
|
53
54
|
describe("add_success", () => {
|
|
54
55
|
test("test add_success", () => {
|
|
56
|
+
const feedback_store = useFeedbackStore()
|
|
55
57
|
feedback_store.feedbacks_timeout_miliseconds = 500
|
|
56
58
|
feedback_store.add_success("test description")
|
|
57
59
|
expect(feedback_store.feedbacks.length).toBe(1)
|
|
@@ -64,6 +66,7 @@ describe("Feedback Store", () => {
|
|
|
64
66
|
})
|
|
65
67
|
describe("delete_feedback", () => {
|
|
66
68
|
test("test", () => {
|
|
69
|
+
const feedback_store = useFeedbackStore()
|
|
67
70
|
feedback_store.delete_feedback(0)
|
|
68
71
|
expect(feedback_store.feedbacks.length).toBe(0)
|
|
69
72
|
})
|
|
@@ -71,6 +74,7 @@ describe("Feedback Store", () => {
|
|
|
71
74
|
|
|
72
75
|
describe("delete_server_error", () => {
|
|
73
76
|
test("test", () => {
|
|
77
|
+
const feedback_store = useFeedbackStore()
|
|
74
78
|
feedback_store.$patch({ server_error: true })
|
|
75
79
|
feedback_store.delete_server_error()
|
|
76
80
|
expect(feedback_store.server_error).toBe(false)
|