UNPKG

@graphql-mocks/sinon

Version:

Mock using graphql-mocks with sinon spy

25 lines (23 loc) 1 kB
'use strict'; var sinon = require('sinon'); var resolver = require('graphql-mocks/resolver'); const spyWrapper = resolver.createWrapper('spy-wrapper', resolver.WrapperFor.FIELD, async function spyWrappercreate(originalResolver, wrapperDetails) { var _packState$spies, _packState$spies$type; const { type, field } = wrapperDetails; if (!type || !field) { return originalResolver; } const typeName = type.name; const fieldName = field.name; const packState = wrapperDetails.packOptions.state; const resolverSpy = sinon.spy(originalResolver); packState.spies = (_packState$spies = packState.spies) !== null && _packState$spies !== void 0 ? _packState$spies : {}; packState.spies[typeName] = (_packState$spies$type = packState.spies[typeName]) !== null && _packState$spies$type !== void 0 ? _packState$spies$type : {}; packState.spies[typeName][fieldName] = resolverSpy; return resolverSpy; }); exports.spyWrapper = spyWrapper; //# sourceMappingURL=spy-wrapper.js.map