How does one stub promise with sinon?

后端 未结 5 2127
耶瑟儿~
耶瑟儿~ 2020-12-13 01:55

I have a data service with following function

function getInsureds(searchCriteria) {

    var deferred = $q.defer();

    insuredsSearch.get(searchCriteria,
         


        
5条回答
  •  小蘑菇
    小蘑菇 (楼主)
    2020-12-13 02:21

    Also you can do something like this:

    import sinon from 'sinon';
    
    const sandbox = sinon.sandbox.create();
    
    const promiseResolved = () => sandbox.stub().returns(Promise.resolve('resolved'));
    const promiseRejected = () => sandbox.stub().returns(Promise.reject('rejected'));
    
    const x = (promise) => {
      return promise()
        .then((result) => console.log('result', result))
        .catch((error) => console.log('error', error))
    }
    
    x(promiseResolved); // resolved
    x(promiseRejected); // rejected
    

提交回复
热议问题