test: add tests for BaseError custom error
authorJérôme Benoit <jerome.benoit@sap.com>
Sun, 28 Jan 2024 15:14:48 +0000 (16:14 +0100)
committerJérôme Benoit <jerome.benoit@sap.com>
Sun, 28 Jan 2024 15:14:48 +0000 (16:14 +0100)
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
src/exception/OCPPError.ts
tests/exception/BaseError.test.ts [new file with mode: 0644]

index 101bf5db1f16bda346626554f2e28c6f230818ed..41414fe9a8a04240bccf06f7a51a1417f29c3f19 100644 (file)
@@ -1,17 +1,12 @@
 // Partial Copyright Jerome Benoit. 2021-2024. All Rights Reserved.
 
 import { BaseError } from './BaseError.js'
-import {
-  type ErrorType,
-  type IncomingRequestCommand,
-  type JsonType,
-  type RequestCommand
-} from '../types/index.js'
+import type { ErrorType, IncomingRequestCommand, JsonType, RequestCommand } from '../types/index.js'
 import { Constants } from '../utils/index.js'
 
 export class OCPPError extends BaseError {
   code: ErrorType
-  command?: RequestCommand | IncomingRequestCommand
+  command: RequestCommand | IncomingRequestCommand
   details?: JsonType
 
   constructor (
diff --git a/tests/exception/BaseError.test.ts b/tests/exception/BaseError.test.ts
new file mode 100644 (file)
index 0000000..947bac2
--- /dev/null
@@ -0,0 +1,24 @@
+import { describe, it } from 'node:test'
+
+import { expect } from 'expect'
+
+import { BaseError } from '../../src/exception/BaseError.js'
+
+await describe('BaseError test suite', async () => {
+  await it('Verify that BaseError can be instantiated', () => {
+    const baseError = new BaseError()
+    expect(baseError).toBeInstanceOf(BaseError)
+    expect(baseError.name).toBe('BaseError')
+    expect(baseError.message).toBe('')
+    expect(typeof baseError.stack === 'string').toBe(true)
+    expect(baseError.stack).not.toBe('')
+    expect(baseError.cause).toBeUndefined()
+    expect(baseError.date).toBeInstanceOf(Date)
+  })
+
+  await it('Verify that BaseError can be instantiated with a message', () => {
+    const baseError = new BaseError('Test message')
+    expect(baseError).toBeInstanceOf(BaseError)
+    expect(baseError.message).toBe('Test message')
+  })
+})