@defra/bng-errors-lib 0.48.0 → 0.50.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,15 @@
1
+ import { UnknownApplicationSessionIdError } from '../src/errors.js'
2
+
3
+ const applicationSessionId = 'mock application session ID'
4
+ const errorMessage = 'mock error message'
5
+
6
+ describe('Validation errors', () => {
7
+ it('should supplement a standard Error with an application session ID', async () => {
8
+ try {
9
+ throw new UnknownApplicationSessionIdError(applicationSessionId, errorMessage)
10
+ } catch (err) {
11
+ expect(err.applicationSessionId).toBe(applicationSessionId)
12
+ expect(err.message).toBe(errorMessage)
13
+ }
14
+ })
15
+ })
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@defra/bng-errors-lib",
3
- "version": "0.48.0",
3
+ "version": "0.50.0",
4
4
  "type": "module",
5
5
  "private": false,
6
6
  "description": "Custom errors for Biodiversity Net Gain",
@@ -15,5 +15,5 @@
15
15
  },
16
16
  "author": "Department for Environment, Food and Rural Affairs <https://www.gov.uk/government/organisations/department-for-environment-food-rural-affairs>",
17
17
  "license": "OGL-UK-3.0",
18
- "gitHead": "58aa5c82bb4c194ea62a5c7c4656c3d2a48773ae"
18
+ "gitHead": "51e4fdc2d9083a766e266edc91d397e9a39a762e"
19
19
  }
package/src/errors.js CHANGED
@@ -1,5 +1,6 @@
1
1
  import CoordinateSystemValidationError from './coordinate-system-validation-error.js'
2
2
  import ThreatScreeningError from './threat-screening-error.js'
3
+ import UnknownApplicationSessionIdError from './unknown-application-session-id-error.js'
3
4
  import UploadTypeValidationError from './upload-type-validation-error.js'
4
5
  import ValidationError from './validation-error.js'
5
6
 
@@ -17,4 +18,11 @@ const uploadGeospatialLandBoundaryErrorCodes = Object.freeze({
17
18
  MISSING_COORDINATE_SYSTEM
18
19
  })
19
20
 
20
- export { CoordinateSystemValidationError, ThreatScreeningError, UploadTypeValidationError, ValidationError, uploadGeospatialLandBoundaryErrorCodes }
21
+ export {
22
+ CoordinateSystemValidationError,
23
+ ThreatScreeningError,
24
+ UnknownApplicationSessionIdError,
25
+ UploadTypeValidationError,
26
+ ValidationError,
27
+ uploadGeospatialLandBoundaryErrorCodes
28
+ }
@@ -0,0 +1,8 @@
1
+ // Adapted from https://medium.com/@xjamundx/custom-javascript-errors-in-es6-aa891b173f87
2
+ export default class UnknownApplicationSessionIdError extends Error {
3
+ constructor (applicationSessionId, ...args) {
4
+ super(...args)
5
+ this.applicationSessionId = applicationSessionId
6
+ Error.captureStackTrace(this, UnknownApplicationSessionIdError)
7
+ }
8
+ }