Skip to content

Commit b194eef

Browse files
author
Gurgen
committed
perf(v1-components): test for detecting vue-i18n
1 parent 8d66c03 commit b194eef

File tree

5 files changed

+67
-158
lines changed

5 files changed

+67
-158
lines changed

packages/v1-components/package.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -90,6 +90,7 @@
9090
"vite-plugin-dts": "^4.3.0",
9191
"vite-svg-loader": "^5.1.0",
9292
"vue": "^3.5.12",
93+
"vue-i18n": "10",
9394
"vue3-perfect-scrollbar": "^1.6.0"
9495
}
9596
}

packages/v1-components/src/host/__util__/formatDate.ts

Lines changed: 0 additions & 79 deletions
This file was deleted.

packages/v1-components/tests/common/formatters/date.test.ts

Lines changed: 23 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,9 @@ import {
77
formatDateTime,
88
formatTime,
99
} from '../../../src/common/formatters/date'
10+
import { createI18n } from 'vue-i18n'
1011

11-
import { getCurrentInstance } from 'vue'
12+
import { ComponentInternalInstance, getCurrentInstance } from 'vue'
1213

1314
vi.mock('vue', () => ({
1415
getCurrentInstance: vi.fn(),
@@ -26,6 +27,27 @@ describe('common/formatters/date', () => {
2627
vi.mocked(getCurrentInstance).mockReturnValue(null)
2728
})
2829

30+
test('formatDateTime with vue-i18n instance and locale detection', () => {
31+
const i18n = createI18n({
32+
locale: 'en-GB',
33+
fallbackLocale: 'ru-RU',
34+
messages: {},
35+
})
36+
37+
const mockInstance = {
38+
proxy: {
39+
$i18n: i18n.global,
40+
},
41+
}
42+
43+
vi.mocked(getCurrentInstance).mockReturnValue(mockInstance as ComponentInternalInstance)
44+
45+
46+
// Verify vue-i18n is detected
47+
expect(mockInstance.proxy.$i18n.locale).toBe('en-GB')
48+
expect(mockInstance.proxy.$i18n.fallbackLocale).toBe('ru-RU')
49+
})
50+
2951
test('formatDateLat formats with en-GB style', () => {
3052
expect(formatDateLat(new Date('2024-01-01T12:30:00'))).toBe('01/01/2024')
3153
})

packages/v1-components/tests/formatDate.test.ts

Lines changed: 0 additions & 76 deletions
This file was deleted.

yarn.lock

Lines changed: 43 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -936,6 +936,33 @@ __metadata:
936936
languageName: node
937937
linkType: hard
938938

939+
"@intlify/core-base@npm:10.0.5":
940+
version: 10.0.5
941+
resolution: "@intlify/core-base@npm:10.0.5"
942+
dependencies:
943+
"@intlify/message-compiler": "npm:10.0.5"
944+
"@intlify/shared": "npm:10.0.5"
945+
checksum: 10/d0680074ca5abc26c348976047001fda76045917fabcbe041fa662c2ca66dc6d22570ebf5e198f718e8b98c3d662e29d824f891183f51ff6b888c7c68db5e4fd
946+
languageName: node
947+
linkType: hard
948+
949+
"@intlify/message-compiler@npm:10.0.5":
950+
version: 10.0.5
951+
resolution: "@intlify/message-compiler@npm:10.0.5"
952+
dependencies:
953+
"@intlify/shared": "npm:10.0.5"
954+
source-map-js: "npm:^1.0.2"
955+
checksum: 10/3e386b042ac6dd98533b6ea2b4af610999236a1eb7ff4d77762cd06cae1858a53735b0b7e60828c569c715a9f0ae588aaaf8496f9a4b287a44e7f0fd470857ff
956+
languageName: node
957+
linkType: hard
958+
959+
"@intlify/shared@npm:10.0.5":
960+
version: 10.0.5
961+
resolution: "@intlify/shared@npm:10.0.5"
962+
checksum: 10/64552b8770ad236c11893837e95e4e2ea7c947396cfcee797bf8e26afea6d06f707178f4aa36b0b416d89800ba9cd058e6742bf2ebdd7c7ff7f9fc1ec9bc7b48
963+
languageName: node
964+
linkType: hard
965+
939966
"@isaacs/cliui@npm:^8.0.2":
940967
version: 8.0.2
941968
resolution: "@isaacs/cliui@npm:8.0.2"
@@ -1155,6 +1182,7 @@ __metadata:
11551182
vite-svg-loader: "npm:^5.1.0"
11561183
vitest: "npm:^3.0.2"
11571184
vue: "npm:^3.5.12"
1185+
vue-i18n: "npm:10"
11581186
vue3-perfect-scrollbar: "npm:^1.6.0"
11591187
peerDependencies:
11601188
vue: ^3.5
@@ -2701,7 +2729,7 @@ __metadata:
27012729
languageName: node
27022730
linkType: hard
27032731

2704-
"@vue/devtools-api@npm:^6.6.3":
2732+
"@vue/devtools-api@npm:^6.5.0, @vue/devtools-api@npm:^6.6.3":
27052733
version: 6.6.4
27062734
resolution: "@vue/devtools-api@npm:6.6.4"
27072735
checksum: 10/0fca4912b6ae0185b9375f5d113d417984077db0681c74cf39eb8522eb82c27f662a72e1ae3e0d79e105fdd0a99a7cbd65ed111465d238f60cce10922e02a812
@@ -8841,7 +8869,7 @@ __metadata:
88418869
languageName: node
88428870
linkType: hard
88438871

8844-
"source-map-js@npm:^1.0.1, source-map-js@npm:^1.2.0, source-map-js@npm:^1.2.1":
8872+
"source-map-js@npm:^1.0.1, source-map-js@npm:^1.0.2, source-map-js@npm:^1.2.0, source-map-js@npm:^1.2.1":
88458873
version: 1.2.1
88468874
resolution: "source-map-js@npm:1.2.1"
88478875
checksum: 10/ff9d8c8bf096d534a5b7707e0382ef827b4dd360a577d3f34d2b9f48e12c9d230b5747974ee7c607f0df65113732711bb701fe9ece3c7edbd43cb2294d707df3
@@ -10327,6 +10355,19 @@ __metadata:
1032710355
languageName: node
1032810356
linkType: hard
1032910357

10358+
"vue-i18n@npm:10":
10359+
version: 10.0.5
10360+
resolution: "vue-i18n@npm:10.0.5"
10361+
dependencies:
10362+
"@intlify/core-base": "npm:10.0.5"
10363+
"@intlify/shared": "npm:10.0.5"
10364+
"@vue/devtools-api": "npm:^6.5.0"
10365+
peerDependencies:
10366+
vue: ^3.0.0
10367+
checksum: 10/557c00fbce207a1eaa836894d4a5140be7c9df546168dac1e14dec7b04f2ecc351161ac11e9cc31eb34da408f863f7371477ab3947ae89f9480ad531c24db1f2
10368+
languageName: node
10369+
linkType: hard
10370+
1033010371
"vue-inbrowser-compiler-independent-utils@npm:^4.69.0":
1033110372
version: 4.71.1
1033210373
resolution: "vue-inbrowser-compiler-independent-utils@npm:4.71.1"

0 commit comments

Comments
 (0)