Расширить экземпляр в Javascript - PullRequest
0 голосов
/ 30 января 2019

Проблема

Я пытаюсь расширить уже созданный экземпляр класса.

Я использую 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()
});

Спасибо!

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