5
5
import { setActivePinia , createPinia } from 'pinia'
6
6
7
7
import BrowserStorage from '../../services/BrowserStorage.js'
8
- import { getUserAbsence } from '../../services/coreService.ts'
9
8
import { EventBus } from '../../services/EventBus.ts'
10
- import { generateOCSErrorResponse , generateOCSResponse } from '../../test-helpers.js'
11
9
import { useChatExtrasStore } from '../chatExtras.js'
12
10
13
- jest . mock ( '../../services/coreService' , ( ) => ( {
14
- getUserAbsence : jest . fn ( ) ,
15
- } ) )
16
-
17
11
describe ( 'chatExtrasStore' , ( ) => {
18
12
const token = 'TOKEN'
19
- const userId = 'alice'
20
- const payload = { id : 1 , userId : 'alice' , firstDay : '2023-11-15' , lastDay : '2023-11-17' , status : 'absence status' , message : 'absence message' }
21
13
let chatExtrasStore
22
14
23
15
beforeEach ( async ( ) => {
@@ -29,57 +21,6 @@ describe('chatExtrasStore', () => {
29
21
jest . clearAllMocks ( )
30
22
} )
31
23
32
- describe ( 'absence status' , ( ) => {
33
- it ( 'processes a response from server and stores absence status' , async ( ) => {
34
- // Arrange
35
- const response = generateOCSResponse ( { payload } )
36
- getUserAbsence . mockResolvedValueOnce ( response )
37
-
38
- // Act
39
- await chatExtrasStore . getUserAbsence ( { token, userId } )
40
-
41
- // Assert
42
- expect ( getUserAbsence ) . toHaveBeenCalledWith ( userId )
43
- expect ( chatExtrasStore . absence [ token ] ) . toEqual ( payload )
44
- } )
45
-
46
- it ( 'does not show error if absence status is not found' , async ( ) => {
47
- // Arrange
48
- const errorNotFound = generateOCSErrorResponse ( { payload : null , status : 404 } )
49
- const errorOther = generateOCSErrorResponse ( { payload : null , status : 500 } )
50
- getUserAbsence
51
- . mockRejectedValueOnce ( errorNotFound )
52
- . mockRejectedValueOnce ( errorOther )
53
- console . error = jest . fn ( )
54
-
55
- // Act
56
- await chatExtrasStore . getUserAbsence ( { token, userId } )
57
- await chatExtrasStore . getUserAbsence ( { token, userId } )
58
-
59
- // Assert
60
- expect ( getUserAbsence ) . toHaveBeenCalledTimes ( 2 )
61
- expect ( console . error ) . toHaveBeenCalledTimes ( 1 )
62
- expect ( chatExtrasStore . absence [ token ] ) . toEqual ( null )
63
- } )
64
-
65
- it ( 'removes absence status from the store' , async ( ) => {
66
- // Arrange
67
- const response = generateOCSResponse ( { payload } )
68
- getUserAbsence . mockResolvedValueOnce ( response )
69
- const token2 = 'TOKEN_2'
70
-
71
- // Act
72
- await chatExtrasStore . getUserAbsence ( { token, userId } )
73
- chatExtrasStore . removeUserAbsence ( token )
74
- chatExtrasStore . removeUserAbsence ( token2 )
75
-
76
- // Assert
77
- expect ( chatExtrasStore . absence [ token ] ) . not . toBeDefined ( )
78
- expect ( chatExtrasStore . absence [ token2 ] ) . not . toBeDefined ( )
79
- } )
80
-
81
- } )
82
-
83
24
describe ( 'reply message' , ( ) => {
84
25
it ( 'adds reply message id to the store' , ( ) => {
85
26
// Act
@@ -171,18 +112,13 @@ describe('chatExtrasStore', () => {
171
112
describe ( 'purge store' , ( ) => {
172
113
it ( 'clears store for provided token' , async ( ) => {
173
114
// Arrange
174
- const response = generateOCSResponse ( { payload } )
175
- getUserAbsence . mockResolvedValueOnce ( response )
176
-
177
- await chatExtrasStore . getUserAbsence ( { token : 'token-1' , userId } )
178
115
chatExtrasStore . setParentIdToReply ( { token : 'token-1' , id : 101 } )
179
116
chatExtrasStore . setChatInput ( { token : 'token-1' , text : 'message-1' } )
180
117
181
118
// Act
182
119
chatExtrasStore . purgeChatExtras ( 'token-1' )
183
120
184
121
// Assert
185
- expect ( chatExtrasStore . absence [ 'token-1' ] ) . not . toBeDefined ( )
186
122
expect ( chatExtrasStore . parentToReply [ 'token-1' ] ) . not . toBeDefined ( )
187
123
expect ( chatExtrasStore . chatInput [ 'token-1' ] ) . not . toBeDefined ( )
188
124
} )
0 commit comments