Add tests for custom error classes
This commit is contained in:
parent
05bbd0b6c2
commit
0aca569c31
32
src/errors.test.ts
Normal file
32
src/errors.test.ts
Normal file
@ -0,0 +1,32 @@
|
||||
import { ApiError, ValidationError, NetworkError } from "./errors";
|
||||
|
||||
describe("Custom Error Class Tests", () => {
|
||||
test("ApiError should store message, statusCode and responseBody", () => {
|
||||
const error = new ApiError("API Request failed", 404, "Not Found");
|
||||
|
||||
expect(error).toBeInstanceOf(ApiError);
|
||||
expect(error).toBeInstanceOf(Error);
|
||||
expect(error.name).toBe("ApiError");
|
||||
expect(error.message).toBe("API Request failed");
|
||||
expect(error.statusCode).toBe(404);
|
||||
expect(error.responseBody).toBe("Not Found");
|
||||
})
|
||||
|
||||
test("ValidationError should store message", () => {
|
||||
const error = new ValidationError("Invalid input");
|
||||
|
||||
expect(error).toBeInstanceOf(ValidationError);
|
||||
expect(error).toBeInstanceOf(Error);
|
||||
expect(error.name).toBe("ValidationError");
|
||||
expect(error.message).toBe("Invalid input");
|
||||
})
|
||||
|
||||
test("NetworkError should store message", () => {
|
||||
const error = new NetworkError("Network Unreachable");
|
||||
|
||||
expect(error).toBeInstanceOf(NetworkError);
|
||||
expect(error).toBeInstanceOf(Error);
|
||||
expect(error.name).toBe("NetworkError");
|
||||
expect(error.message).toBe("Network Unreachable");
|
||||
})
|
||||
})
|
Loading…
x
Reference in New Issue
Block a user