Why Gemfury? Push, build, and install  RubyGems npm packages Python packages Maven artifacts PHP packages Go Modules Debian packages RPM packages NuGet packages

Repository URL to install this package:

Details    
@skava/graphql-toolset / dist / expressMock.js
Size: Mime:
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
const cookieHelpers_1 = require("./cookieHelpers");
const config_1 = require("./config");
const loggerMock_1 = require("./loggerMock");
exports.toMockLogger = loggerMock_1.toMockLogger;
const DEFAULT_EXPRESS_INTERNALS = {
    headers: new Headers(),
    logger: loggerMock_1.toMockLogger(),
};
const DEFAULT_EXPRESS_RESPONSE_INTERNALS = {
    headers: new Headers(),
};
// @todo need to pass in the infos
const toMockExpressRequest = (mockRequestInternals = DEFAULT_EXPRESS_INTERNALS) => {
    const get = (key) => {
        // console.info('[expressMock] getting from headers: ' + key)
        if (mockRequestInternals.headers.has(key)) {
            const value = mockRequestInternals.headers.get(key);
            // console.debug(`[expressMock] internals has: ${key}=${value}`)
            return value;
        }
        else if (key === 'Cookie') {
            return undefined;
            return cookieHelpers_1.fromArrayToCookieString(config_1.config.get('cookies'));
        }
        else {
            return undefined;
            const got = config_1.config
                .get('cookies')
                .find(x => x.includes('x-sk-session-id='));
            // console.log('[request] get got: ', got)
            return got;
        }
    };
    // @fixme may need circular .httpRequest || .req
    const mockExpressRequest = {
        mockRequestInternals,
        // circular
        req: undefined,
        log: mockRequestInternals.logger || loggerMock_1.toMockLogger(),
        get,
        headers: {
            get Cookie() {
                return cookieHelpers_1.fromArrayToCookieString(config_1.config.get('cookies'));
                // return config.get('cookie')
            },
            get,
            has: (key) => !!get(key),
        },
        get cookies() {
            return config_1.config.get('cookies');
        },
    };
    mockExpressRequest.req = mockExpressRequest;
    return mockExpressRequest;
};
exports.toMockExpressRequest = toMockExpressRequest;
const toMockExpressResponse = (internals = DEFAULT_EXPRESS_RESPONSE_INTERNALS) => {
    const mockResponse = {
        headers: new Headers(),
        header: (key, value) => {
            console.debug('[response] header called');
            // console.log({ [key]: value })
            mockResponse.headers.set(key, value);
            return mockResponse;
        },
        cookie(key, fixedValue, attributes) {
            console.debug('[response] cookies called');
            return mockResponse;
        },
    };
    return mockResponse;
};
exports.toMockExpressResponse = toMockExpressResponse;
const toMockContext = () => {
    const mockExpressRequest = toMockExpressRequest();
    const mockExpressResponse = toMockExpressResponse();
    const context = {
        req: mockExpressRequest,
        res: mockExpressResponse,
        log: loggerMock_1.toMockLogger(),
    };
    return context;
};
exports.toMockContext = toMockContext;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhwcmVzc01vY2suanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvZXhwcmVzc01vY2sudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxtREFBeUQ7QUFDekQscUNBQWlDO0FBQ2pDLDZDQUEyQztBQWtHekMsdUJBbEdPLHlCQUFZLENBa0dQO0FBaEdkLE1BQU0seUJBQXlCLEdBQUc7SUFDaEMsT0FBTyxFQUFFLElBQUksT0FBTyxFQUFFO0lBQ3RCLE1BQU0sRUFBRSx5QkFBWSxFQUFFO0NBQ3ZCLENBQUE7QUFDRCxNQUFNLGtDQUFrQyxHQUFHO0lBQ3pDLE9BQU8sRUFBRSxJQUFJLE9BQU8sRUFBRTtDQUV2QixDQUFBO0FBRUQsa0NBQWtDO0FBQ2xDLE1BQU0sb0JBQW9CLEdBQUcsQ0FDM0Isb0JBQW9CLEdBQUcseUJBQXlCLEVBQ2hELEVBQUU7SUFDRixNQUFNLEdBQUcsR0FBRyxDQUFDLEdBQVcsRUFBRSxFQUFFO1FBQzFCLDZEQUE2RDtRQUU3RCxJQUFJLG9CQUFvQixDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLEVBQUU7WUFDekMsTUFBTSxLQUFLLEdBQUcsb0JBQW9CLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQTtZQUNuRCxnRUFBZ0U7WUFDaEUsT0FBTyxLQUFLLENBQUE7U0FDYjthQUFNLElBQUksR0FBRyxLQUFLLFFBQVEsRUFBRTtZQUMzQixPQUFPLFNBQVMsQ0FBQTtZQUNoQixPQUFPLHVDQUF1QixDQUFDLGVBQU0sQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQTtTQUN0RDthQUFNO1lBQ0wsT0FBTyxTQUFTLENBQUE7WUFDaEIsTUFBTSxHQUFHLEdBQUcsZUFBTTtpQkFDZixHQUFHLENBQUMsU0FBUyxDQUFDO2lCQUNkLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsa0JBQWtCLENBQUMsQ0FBQyxDQUFBO1lBQzVDLDBDQUEwQztZQUMxQyxPQUFPLEdBQUcsQ0FBQTtTQUNYO0lBQ0gsQ0FBQyxDQUFBO0lBRUQsZ0RBQWdEO0lBQ2hELE1BQU0sa0JBQWtCLEdBQUc7UUFDekIsb0JBQW9CO1FBRXBCLFdBQVc7UUFDWCxHQUFHLEVBQUUsU0FBUztRQUVkLEdBQUcsRUFBRSxvQkFBb0IsQ0FBQyxNQUFNLElBQUkseUJBQVksRUFBRTtRQUNsRCxHQUFHO1FBQ0gsT0FBTyxFQUFFO1lBQ1AsSUFBSSxNQUFNO2dCQUNSLE9BQU8sdUNBQXVCLENBQUMsZUFBTSxDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFBO2dCQUNyRCw4QkFBOEI7WUFDaEMsQ0FBQztZQUNELEdBQUc7WUFDSCxHQUFHLEVBQUUsQ0FBQyxHQUFXLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDO1NBQ2pDO1FBQ0QsSUFBSSxPQUFPO1lBQ1QsT0FBTyxlQUFNLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxDQUFBO1FBQzlCLENBQUM7S0FDRixDQUFBO0lBQ0Qsa0JBQWtCLENBQUMsR0FBRyxHQUFHLGtCQUFrQixDQUFBO0lBRTNDLE9BQU8sa0JBQWtCLENBQUE7QUFDM0IsQ0FBQyxDQUFBO0FBb0NDLG9EQUFvQjtBQWxDdEIsTUFBTSxxQkFBcUIsR0FBRyxDQUM1QixTQUFTLEdBQUcsa0NBQWtDLEVBQzlDLEVBQUU7SUFDRixNQUFNLFlBQVksR0FBRztRQUNuQixPQUFPLEVBQUUsSUFBSSxPQUFPLEVBQUU7UUFDdEIsTUFBTSxFQUFFLENBQUMsR0FBRyxFQUFFLEtBQUssRUFBRSxFQUFFO1lBQ3JCLE9BQU8sQ0FBQyxLQUFLLENBQUMsMEJBQTBCLENBQUMsQ0FBQTtZQUN6QyxnQ0FBZ0M7WUFDaEMsWUFBWSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLEtBQUssQ0FBQyxDQUFBO1lBQ3BDLE9BQU8sWUFBWSxDQUFBO1FBQ3JCLENBQUM7UUFDRCxNQUFNLENBQUMsR0FBVyxFQUFFLFVBQWUsRUFBRSxVQUFrQztZQUNyRSxPQUFPLENBQUMsS0FBSyxDQUFDLDJCQUEyQixDQUFDLENBQUE7WUFDMUMsT0FBTyxZQUFZLENBQUE7UUFDckIsQ0FBQztLQUNGLENBQUE7SUFDRCxPQUFPLFlBQVksQ0FBQTtBQUNyQixDQUFDLENBQUE7QUFrQkMsc0RBQXFCO0FBaEJ2QixNQUFNLGFBQWEsR0FBRyxHQUFHLEVBQUU7SUFDekIsTUFBTSxrQkFBa0IsR0FBRyxvQkFBb0IsRUFBRSxDQUFBO0lBQ2pELE1BQU0sbUJBQW1CLEdBQUcscUJBQXFCLEVBQUUsQ0FBQTtJQUNuRCxNQUFNLE9BQU8sR0FBRztRQUNkLEdBQUcsRUFBRSxrQkFBa0I7UUFDdkIsR0FBRyxFQUFFLG1CQUFtQjtRQUN4QixHQUFHLEVBQUUseUJBQVksRUFBRTtLQUdwQixDQUFBO0lBRUQsT0FBTyxPQUFPLENBQUE7QUFDaEIsQ0FBQyxDQUFBO0FBS0Msc0NBQWEifQ==