Проблема
Я пытаюсь расширить уже созданный экземпляр класса.
Я использую node-http-mocks для создания request
и response
макеты для экспресс-тестирования юнит-приложений.Я создаю макет запроса с помощью этой библиотеки:
const httpMocks = require('node-mocks-http')
let req = httpMocks.createRequest(options)
console.log(req)
печатает:
EventEmitter {
domain: null,
_events: {},
_eventsCount: 0,
_maxListeners: undefined,
method: 'GET',
url: '',
originalUrl: '',
baseUrl: '',
path: '',
params: {},
cookies: {},
headers: {},
body: {},
query: {},
files: {},
header: [Function],
get: [Function],
Поскольку мне нужно использовать одни и те же функции несколько раз, я хотел бы создать Request
Класс для работы вместо этого, который в основном должен содержать все методы и свойства предыдущего req
.
Так что я мог бы сделать что-то вроде:
req = new Request(options)
req = req.mockAuthorizationToken(token)
Идеи
Не уверен, как мне этого добиться или это вообще возможно.
Должен ли я выходить из EventEmitter?И передайте его node-http-mocks
, используя:
const EventEmitter = require('./mockEventEmitter')
const httpMocks = require('node-mocks-http')
let req= httpMocks.createRequest({
eventEmitter: new ExtendedEventEmitter()
});
Спасибо!