jeudi 15 novembre 2018

Sinon Stubbing Own function

Apologies if this was asked before. Here is the module that I'd like to unittest inside file getStuff.js. I'm having difficulty stubbing theresolveThing module used here.

getStuff.js

const resolveThing = require('./resolveThing.js');

module.exports = async function getStuff(target, stuff) {
  const { element, test, other } = resolveThing(target);

  try {
    return element;
  } catch (error) {
    throw new Error('Did not work.');
  }
};

And here is my attempt at the unittest with stubbing using sinon. However when I try to run this it errors out with TypeError: Cannot stub non-existent own property resolveType. Anyone know what I'm doing wrong here?

const getStuff = require('../com/getStuff');
const resolveThing = require('../com/resolveThing');

const mochaccino = require('mochaccino');

const { expect } = mochaccino;
const sinon = require('sinon');


describe('commands.resolveThing', function() {
    beforeEach(function () {
        sinon.stub(resolveThing, 'resolveThing').returns({element:'a',test:'b',other:'c'});
    });

    afterEach(function () {
        resolveThing.restore();
    });

    it('Standard locator with CSS selector', function() {
        const answer = getAttribute('a','b');
        expect(answer).toEqual('a');
    });
});

Aucun commentaire:

Enregistrer un commentaire