balderdashy/sails

Stub SailsJs helper function which is called with named arguments

Aperta

#6986 aperta il 6 mag 2020

 (5 commenti) (0 reazioni) (0 assegnatari)JavaScript (1953 fork)batch import
help wantedtry this out please

Metriche repository

Star
 (22.778 stelle)
Metriche merge PR
 (Nessuna PR mergiata in 30 g)

Descrizione

Node version: 10.X Sails version (sails): 1.2.3

I'm trying to mock/stub a sailsjs helper function which is called with named arguments. Using sinon library for function mocking.

Example:

function call that needs to be mocked: await sails.helpers.getData.with({})

Tried Solutions:

  1. sinon.stub(sails.helpers, 'getData').returns(true)

issue -> sails.helpers.getData.with is not a function

  1. sinon.stub(sails.helpers.getData, 'with').returns(true)

issue -> Cannot redefine property: with

reason -> non-configurable property is set to false for sails object. And we can't change that.

  1. Tried creating a fake function and adding it to sails.helpers.getData['with'] property

  2. Also tried setting special setters to sails.helpers.getData object with the help of rewire library.

What is the way to stub a helper which is called with named args.

Guida contributor