uppy/packages/@uppy/utils/src/ErrorWithCause.test.js
2022-05-23 09:40:50 +02:00

21 lines
1.1 KiB
JavaScript

import { describe, expect, it } from '@jest/globals'
import ErrorWithCause from './ErrorWithCause.js'
import NetworkError from './NetworkError.js'
import isNetworkError from './isNetworkError.js'
describe('ErrorWithCause', () => {
it('should support a `{ cause }` option', () => {
const cause = new Error('cause')
expect(new ErrorWithCause('message').cause).toEqual(undefined)
expect(new ErrorWithCause('message', {}).cause).toEqual(undefined)
expect(new ErrorWithCause('message', { cause }).cause).toEqual(cause)
})
it('should propagate isNetworkError', () => {
const regularError = new Error('cause')
const networkError = new NetworkError('cause')
expect(isNetworkError(new ErrorWithCause('message', { cause: networkError }).isNetworkError)).toEqual(true)
expect(isNetworkError(new ErrorWithCause('message', { cause: regularError }).isNetworkError)).toEqual(false)
expect(isNetworkError(new ErrorWithCause('message', {}).isNetworkError)).toEqual(false)
expect(isNetworkError(new ErrorWithCause('message').isNetworkError)).toEqual(false)
})
})