diff options
Diffstat (limited to 'test/mock-scope.js')
-rw-r--r-- | test/mock-scope.js | 73 |
1 files changed, 73 insertions, 0 deletions
diff --git a/test/mock-scope.js b/test/mock-scope.js new file mode 100644 index 0000000..605ba58 --- /dev/null +++ b/test/mock-scope.js @@ -0,0 +1,73 @@ +'use strict' + +const { test } = require('tap') +const { MockScope } = require('../lib/mock/mock-interceptor') +const { InvalidArgumentError } = require('../lib/core/errors') + +test('MockScope - delay', t => { + t.plan(2) + + t.test('should return MockScope', t => { + t.plan(1) + const mockScope = new MockScope({ + path: '', + method: '' + }, []) + const result = mockScope.delay(200) + t.type(result, MockScope) + }) + + t.test('should error if passed options invalid', t => { + t.plan(4) + + const mockScope = new MockScope({ + path: '', + method: '' + }, []) + t.throws(() => mockScope.delay(), new InvalidArgumentError('waitInMs must be a valid integer > 0')) + t.throws(() => mockScope.delay(200.1), new InvalidArgumentError('waitInMs must be a valid integer > 0')) + t.throws(() => mockScope.delay(0), new InvalidArgumentError('waitInMs must be a valid integer > 0')) + t.throws(() => mockScope.delay(-1), new InvalidArgumentError('waitInMs must be a valid integer > 0')) + }) +}) + +test('MockScope - persist', t => { + t.plan(1) + + t.test('should return MockScope', t => { + t.plan(1) + const mockScope = new MockScope({ + path: '', + method: '' + }, []) + const result = mockScope.persist() + t.type(result, MockScope) + }) +}) + +test('MockScope - times', t => { + t.plan(2) + + t.test('should return MockScope', t => { + t.plan(1) + const mockScope = new MockScope({ + path: '', + method: '' + }, []) + const result = mockScope.times(200) + t.type(result, MockScope) + }) + + t.test('should error if passed options invalid', t => { + t.plan(4) + + const mockScope = new MockScope({ + path: '', + method: '' + }, []) + t.throws(() => mockScope.times(), new InvalidArgumentError('repeatTimes must be a valid integer > 0')) + t.throws(() => mockScope.times(200.1), new InvalidArgumentError('repeatTimes must be a valid integer > 0')) + t.throws(() => mockScope.times(0), new InvalidArgumentError('repeatTimes must be a valid integer > 0')) + t.throws(() => mockScope.times(-1), new InvalidArgumentError('repeatTimes must be a valid integer > 0')) + }) +}) |