add test suite
This commit is contained in:
175
__mocks__/matrix-js-sdk.js
Normal file
175
__mocks__/matrix-js-sdk.js
Normal file
@@ -0,0 +1,175 @@
|
||||
export const mockRegisterRequest = jest
|
||||
.fn()
|
||||
.mockImplementation((params) => {
|
||||
if (!params.auth) {
|
||||
return Promise.reject({
|
||||
data: { session: "session_id_1234" }
|
||||
})
|
||||
} else {
|
||||
return Promise.resolve({
|
||||
data: {
|
||||
device_id: 'device_id_1234',
|
||||
access_token: 'token_1234',
|
||||
user_id: 'user_id_1234',
|
||||
session: "session_id_1234"
|
||||
}
|
||||
})
|
||||
}
|
||||
})
|
||||
|
||||
export const mockDeleteMultipleDevices = jest
|
||||
.fn()
|
||||
.mockImplementation((params) => {
|
||||
if (!params.auth) {
|
||||
return Promise.reject({
|
||||
data: { session: "session_id_1234" }
|
||||
})
|
||||
} else {
|
||||
return Promise.resolve({
|
||||
data: {
|
||||
device_id: 'device_id_1234',
|
||||
access_token: 'token_1234',
|
||||
user_id: 'user_id_1234',
|
||||
session: "session_id_1234"
|
||||
}
|
||||
})
|
||||
}
|
||||
})
|
||||
|
||||
export const mockLeave = jest.fn(() => {
|
||||
return Promise.resolve('value');
|
||||
});
|
||||
|
||||
export const mockInitCrypto = jest.fn()
|
||||
|
||||
export const mockStartClient = jest.fn(() => {
|
||||
return Promise.resolve('value');
|
||||
});
|
||||
|
||||
export const mockOnce = jest.fn()
|
||||
|
||||
export const mockStopClient = jest.fn(() => {
|
||||
return Promise.resolve('value');
|
||||
});
|
||||
|
||||
export const mockClearStores = jest.fn(() => {
|
||||
return Promise.resolve('value');
|
||||
});
|
||||
|
||||
export const mockGetRoom = jest.fn()
|
||||
|
||||
export const mockDownloadKeys = jest.fn()
|
||||
|
||||
export const mockSetDeviceVerified = jest.fn()
|
||||
|
||||
export const mockIsCryptoEnabled = jest.fn()
|
||||
|
||||
export const mockCreateRoom = jest.fn().mockReturnValue({ room_id: 'room_id_1234' })
|
||||
|
||||
export const mockSetPowerLevel = jest.fn()
|
||||
|
||||
export const mockSendTextMessage = jest.fn()
|
||||
.mockImplementationOnce(() => {
|
||||
return Promise.reject({
|
||||
name: "UnknownDeviceError",
|
||||
devices: ['device1', 'device2']
|
||||
})
|
||||
})
|
||||
.mockImplementationOnce(() => {
|
||||
return Promise.resolve()
|
||||
})
|
||||
|
||||
export const mockSetDeviceKnown = jest.fn()
|
||||
|
||||
export const mockInvite = jest.fn()
|
||||
.mockImplementationOnce(() => {
|
||||
return Promise.reject({
|
||||
name: "M_LIMIT_EXCEEDED",
|
||||
})
|
||||
})
|
||||
.mockImplementationOnce(() => {
|
||||
return Promise.resolve()
|
||||
})
|
||||
|
||||
export const mockKick = jest.fn()
|
||||
.mockImplementationOnce(() => {
|
||||
return Promise.reject({
|
||||
name: "M_LIMIT_EXCEEDED",
|
||||
})
|
||||
})
|
||||
.mockImplementationOnce(() => {
|
||||
return Promise.resolve()
|
||||
})
|
||||
|
||||
export const mockDeactivateAccount = jest.fn(() => {
|
||||
return Promise.resolve('value');
|
||||
});
|
||||
|
||||
export const mockOn = jest.fn()
|
||||
|
||||
export const mockGetDevices = jest.fn(() => {
|
||||
return Promise.resolve({
|
||||
devices: []
|
||||
});
|
||||
});
|
||||
|
||||
export const mockGetDeviceId = jest.fn().mockReturnValue('mockDeviceId');
|
||||
|
||||
export const mockGetJoinedRooms = jest.fn(() => {
|
||||
return Promise.resolve({
|
||||
data: {
|
||||
joined_rooms: []
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
export const mockLogin = jest.fn(() => {
|
||||
return Promise.resolve({
|
||||
data: {
|
||||
device_id: 'device_id_1234',
|
||||
access_token: 'token_1234',
|
||||
}
|
||||
})
|
||||
});
|
||||
|
||||
export const mockGetJoinedRoomMembers = jest.fn(() => {
|
||||
return Promise.resolve({
|
||||
data: {
|
||||
joined: ['user_id_1', 'user_id_2']
|
||||
}
|
||||
})
|
||||
});
|
||||
|
||||
export const mockGetUser = jest.fn().mockReturnValue({ presence: 'online'});
|
||||
|
||||
export const mockClient = {
|
||||
registerRequest: mockRegisterRequest,
|
||||
initCrypto: mockInitCrypto,
|
||||
startClient: mockStartClient,
|
||||
on: mockOn,
|
||||
once: mockOnce,
|
||||
leave: mockLeave,
|
||||
stopClient: mockStopClient,
|
||||
clearStores: mockClearStores,
|
||||
getRoom: mockGetRoom,
|
||||
downloadKeys: mockDownloadKeys,
|
||||
setDeviceVerified: mockSetDeviceVerified,
|
||||
setDeviceKnown: mockSetDeviceKnown,
|
||||
isCryptoEnabled: mockIsCryptoEnabled,
|
||||
createRoom: mockCreateRoom,
|
||||
setPowerLevel: mockSetPowerLevel,
|
||||
sendTextMessage: mockSendTextMessage,
|
||||
deactivateAccount: mockDeactivateAccount,
|
||||
login: mockLogin,
|
||||
getDevices: mockGetDevices,
|
||||
getDeviceId: mockGetDeviceId,
|
||||
deleteMultipleDevices: mockDeleteMultipleDevices,
|
||||
getJoinedRooms: mockGetJoinedRooms,
|
||||
invite: mockInvite,
|
||||
kick: mockKick,
|
||||
getJoinedRoomMembers: mockGetJoinedRoomMembers,
|
||||
}
|
||||
|
||||
export const WebStorageSessionStore = jest.fn()
|
||||
|
||||
export const createClient = jest.fn().mockReturnValue(mockClient)
|
||||
Reference in New Issue
Block a user