Пересмешивающий объект ответа / запроса AWS - PullRequest
0 голосов
/ 26 февраля 2019

Вернемся снова ... Итак, после решения моих предыдущих проблем я пытаюсь протестировать ту же функцию, которая получает объект AWS.request и AWS.response.В настоящее время я получаю сообщение об ошибке, что res.setHeader не является функцией.В идеале я хотел бы оцепить или смоделировать объекты ответа и запроса, чтобы я мог проверить, что они установлены правильно.Вот файл, который я тестирую.

const Verifier = require('/verifier.js');

ValidatorFunc = function(callType){
    return function (req,res,next){
        let Header = req.headers[''];
        try {
        Verifier.verifierFunc(Header, callType, (Error) => {
            if (Error) {
                res.setHeader('Content-Type', 'application/json');
                res.status(401);
                res.json({
                    message : "Error "+ Error.message
                });
            } else {
                next();
            }
        });
        } catch (otherError) {
            res.setHeader('Content-Type', 'application/json');
            res.status(401);
            res.json({
                message : otherError.message
            });

        }
    }
}

Мой тест пока выглядит следующим образом

const { ValidatorFunc } = require('../src/Validator');
const aws  = require('aws-sdk');
jest.mock('aws-sdk');


describe('Validator', ()=>{

    test('Validator - Error', ()=>{
        let aFunc = ValidatorFunc('POST');
        let aVar = { headers: ""}; //Wrote this just to see how far I could get into the function
        let aVar2 = new aws.Response();
        aFunc(aVar, aVar2 ,null);

    });
});

Я получаю сообщение об ошибке, что res.setHeader не является функцией.Я предполагаю, что мог бы подойти к этому тесту неправильно, поэтому я открыт для предложений о том, как мне это изменить.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...