forked from PluralFlux/PluralFlux
adjusted tests to properly use mockRejectedValue for async rejections
This commit is contained in:
@@ -105,17 +105,14 @@ describe('bot', () => {
|
|||||||
|
|
||||||
test("if sendMessageAsMember returns error, catch and log error", async () => {
|
test("if sendMessageAsMember returns error, catch and log error", async () => {
|
||||||
// Arrange
|
// Arrange
|
||||||
webhookHelper.sendMessageAsMember.mockImplementation(() => {
|
webhookHelper.sendMessageAsMember.mockRejectedValue(new Error("error"));
|
||||||
throw Error("error")
|
|
||||||
});
|
|
||||||
const message = {
|
const message = {
|
||||||
content: "hello",
|
content: "hello",
|
||||||
author: {
|
author: {
|
||||||
bot: false
|
bot: false
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
jest.spyOn(global.console, 'error').mockImplementation(() => {
|
jest.spyOn(global.console, 'error').mockImplementation(() => {});
|
||||||
})
|
|
||||||
// Act
|
// Act
|
||||||
await handleMessageCreate(message);
|
await handleMessageCreate(message);
|
||||||
// Assert
|
// Assert
|
||||||
@@ -242,9 +239,7 @@ describe('bot', () => {
|
|||||||
execute: jest.fn()
|
execute: jest.fn()
|
||||||
}
|
}
|
||||||
commands.commandsMap.get = jest.fn().mockReturnValue(command);
|
commands.commandsMap.get = jest.fn().mockReturnValue(command);
|
||||||
command.execute.mockImplementation(() => {
|
command.execute.mockRejectedValue(new Error("error"));
|
||||||
throw Error("error")
|
|
||||||
});
|
|
||||||
const message = {
|
const message = {
|
||||||
content: "pf;member test",
|
content: "pf;member test",
|
||||||
author: {
|
author: {
|
||||||
|
|||||||
@@ -82,9 +82,7 @@ describe('commands', () => {
|
|||||||
|
|
||||||
test('if parseMemberCommand returns error, log error and reply with error', async () => {
|
test('if parseMemberCommand returns error, log error and reply with error', async () => {
|
||||||
// Arrange
|
// Arrange
|
||||||
memberHelper.parseMemberCommand = jest.fn().mockImplementation(() => {
|
memberHelper.parseMemberCommand = jest.fn().mockRejectedValue(new Error('error'));
|
||||||
throw new Error('error')
|
|
||||||
});
|
|
||||||
// Act
|
// Act
|
||||||
await commands.memberCommand(message, args)
|
await commands.memberCommand(message, args)
|
||||||
// Assert
|
// Assert
|
||||||
@@ -167,9 +165,7 @@ describe('commands', () => {
|
|||||||
// Arrange
|
// Arrange
|
||||||
const args = [""];
|
const args = [""];
|
||||||
message.content = 'pf;import'
|
message.content = 'pf;import'
|
||||||
importHelper.pluralKitImport = jest.fn().mockImplementation(() => {
|
importHelper.pluralKitImport = jest.fn().mockRejectedValue(new AggregateError(['error1', 'error2'], 'errors'));
|
||||||
throw new AggregateError(['error1', 'error2'], 'errors')
|
|
||||||
});
|
|
||||||
// Act
|
// Act
|
||||||
await commands.importCommand(message, args);
|
await commands.importCommand(message, args);
|
||||||
// Assert
|
// Assert
|
||||||
@@ -185,9 +181,7 @@ describe('commands', () => {
|
|||||||
const returnedBuffer = {text: 'bbbb', file: file};
|
const returnedBuffer = {text: 'bbbb', file: file};
|
||||||
const expected = {content: returnedBuffer.text, files: [{name: 'text.txt', data: returnedBuffer.file}]};
|
const expected = {content: returnedBuffer.text, files: [{name: 'text.txt', data: returnedBuffer.file}]};
|
||||||
|
|
||||||
importHelper.pluralKitImport = jest.fn().mockImplementation(() => {
|
importHelper.pluralKitImport = jest.fn().mockRejectedValue(new AggregateError([text, 'error2'], 'errors'));
|
||||||
throw new AggregateError([text, 'error2'], 'errors')
|
|
||||||
});
|
|
||||||
messageHelper.returnBufferFromText = jest.fn().mockReturnValue(returnedBuffer);
|
messageHelper.returnBufferFromText = jest.fn().mockReturnValue(returnedBuffer);
|
||||||
// Act
|
// Act
|
||||||
await commands.importCommand(message, args);
|
await commands.importCommand(message, args);
|
||||||
@@ -198,9 +192,7 @@ describe('commands', () => {
|
|||||||
|
|
||||||
test('if pluralKitImport returns one error, reply with error and log it', async () => {
|
test('if pluralKitImport returns one error, reply with error and log it', async () => {
|
||||||
// Arrange
|
// Arrange
|
||||||
importHelper.pluralKitImport = jest.fn().mockImplementation(() => {
|
importHelper.pluralKitImport = jest.fn().mockRejectedValue(new Error('error'));
|
||||||
throw new Error('error');
|
|
||||||
});
|
|
||||||
jest.spyOn(global.console, 'error').mockImplementation(() => {})
|
jest.spyOn(global.console, 'error').mockImplementation(() => {})
|
||||||
// Act
|
// Act
|
||||||
await commands.importCommand(message, args);
|
await commands.importCommand(message, args);
|
||||||
|
|||||||
@@ -82,7 +82,7 @@ describe('importHelper', () => {
|
|||||||
})
|
})
|
||||||
|
|
||||||
test('if addFullMember throws error, catch and return error', async() => {
|
test('if addFullMember throws error, catch and return error', async() => {
|
||||||
memberHelper.addFullMember.mockImplementation(() => {new Error('error')});
|
memberHelper.addFullMember.mockRejectedValue(new Error('error'));
|
||||||
await expect(importHelper.pluralKitImport(authorId, attachmentUrl)).rejects.toThrow(([new Error('error')], enums.err.NO_MEMBERS_IMPORTED));
|
await expect(importHelper.pluralKitImport(authorId, attachmentUrl)).rejects.toThrow(([new Error('error')], enums.err.NO_MEMBERS_IMPORTED));
|
||||||
})
|
})
|
||||||
|
|
||||||
|
|||||||
@@ -356,9 +356,7 @@ describe('MemberHelper', () => {
|
|||||||
const args = [];
|
const args = [];
|
||||||
const memberObject = {name: args[1]}
|
const memberObject = {name: args[1]}
|
||||||
jest.spyOn(memberHelper, 'addFullMember').mockResolvedValue(memberObject);
|
jest.spyOn(memberHelper, 'addFullMember').mockResolvedValue(memberObject);
|
||||||
jest.spyOn(memberHelper, 'getMemberInfo').mockImplementation(() => {
|
jest.spyOn(memberHelper, 'getMemberInfo').mockImplementation(() => {throw new Error('getMemberInfo error')});
|
||||||
throw new Error('getMemberInfo error')
|
|
||||||
});
|
|
||||||
//Act
|
//Act
|
||||||
await expect(memberHelper.addNewMember(authorId, mockMember.name, args)).rejects.toThrow('getMemberInfo error');
|
await expect(memberHelper.addNewMember(authorId, mockMember.name, args)).rejects.toThrow('getMemberInfo error');
|
||||||
})
|
})
|
||||||
@@ -367,9 +365,7 @@ describe('MemberHelper', () => {
|
|||||||
// Arrange
|
// Arrange
|
||||||
const args = [];
|
const args = [];
|
||||||
const expected = 'add full member error';
|
const expected = 'add full member error';
|
||||||
jest.spyOn(memberHelper, 'addFullMember').mockImplementation(() => {
|
jest.spyOn(memberHelper, 'addFullMember').mockRejectedValue(new Error(expected));
|
||||||
throw new Error(expected)
|
|
||||||
});
|
|
||||||
|
|
||||||
//Act
|
//Act
|
||||||
await expect(memberHelper.addNewMember(authorId, mockMember.name, args)).rejects.toThrow(expected)
|
await expect(memberHelper.addNewMember(authorId, mockMember.name, args)).rejects.toThrow(expected)
|
||||||
@@ -550,9 +546,7 @@ describe('MemberHelper', () => {
|
|||||||
|
|
||||||
test('if checkProxyExists throws error, call database.member.create with null value', async () => {
|
test('if checkProxyExists throws error, call database.member.create with null value', async () => {
|
||||||
// Arrange
|
// Arrange
|
||||||
jest.spyOn(memberHelper, 'checkIfProxyExists').mockImplementation(() => {
|
jest.spyOn(memberHelper, 'checkIfProxyExists').mockRejectedValue(new Error('error'));
|
||||||
throw new Error('error')
|
|
||||||
});
|
|
||||||
const expectedMemberArgs = {
|
const expectedMemberArgs = {
|
||||||
name: mockMember.name,
|
name: mockMember.name,
|
||||||
userid: authorId,
|
userid: authorId,
|
||||||
@@ -597,9 +591,7 @@ describe('MemberHelper', () => {
|
|||||||
|
|
||||||
test('if checkImageFormatValidity throws error, call database.member.create with null value', async () => {
|
test('if checkImageFormatValidity throws error, call database.member.create with null value', async () => {
|
||||||
// Arrange
|
// Arrange
|
||||||
utils.checkImageFormatValidity = jest.fn().mockImplementation(() => {
|
utils.checkImageFormatValidity = jest.fn().mockRejectedValue(new Error("error"));
|
||||||
throw new Error("error")
|
|
||||||
})
|
|
||||||
const expectedMemberArgs = {
|
const expectedMemberArgs = {
|
||||||
name: mockMember.name,
|
name: mockMember.name,
|
||||||
userid: authorId,
|
userid: authorId,
|
||||||
|
|||||||
@@ -32,7 +32,7 @@ describe('utils', () => {
|
|||||||
|
|
||||||
test('throws error if fetch returns error', async() => {
|
test('throws error if fetch returns error', async() => {
|
||||||
// Arrange
|
// Arrange
|
||||||
global.fetch = jest.fn().mockImplementation(() =>{throw Error('error');});
|
global.fetch = jest.fn().mockRejectedValue(new Error('error'));
|
||||||
// Act & Assert
|
// Act & Assert
|
||||||
await expect(utils.checkImageFormatValidity(attachmentUrl)).rejects.toThrow(`${enums.err.PROPIC_CANNOT_LOAD}: error`);
|
await expect(utils.checkImageFormatValidity(attachmentUrl)).rejects.toThrow(`${enums.err.PROPIC_CANNOT_LOAD}: error`);
|
||||||
})
|
})
|
||||||
|
|||||||
@@ -160,9 +160,7 @@ describe('webhookHelper', () => {
|
|||||||
// Arrange
|
// Arrange
|
||||||
message.guildId = '123';
|
message.guildId = '123';
|
||||||
messageHelper.parseProxyTags.mockResolvedValue(proxyMessage);
|
messageHelper.parseProxyTags.mockResolvedValue(proxyMessage);
|
||||||
jest.spyOn(webhookHelper, 'replaceMessage').mockImplementation(() => {
|
jest.spyOn(webhookHelper, 'replaceMessage').mockRejectedValue(new Error("error"));
|
||||||
throw new Error("error")
|
|
||||||
});
|
|
||||||
// Act
|
// Act
|
||||||
await expect(webhookHelper.sendMessageAsMember(client, message)).rejects.toThrow("error");
|
await expect(webhookHelper.sendMessageAsMember(client, message)).rejects.toThrow("error");
|
||||||
// Assert
|
// Assert
|
||||||
|
|||||||
Reference in New Issue
Block a user