It looks like you're trying to stub a method TWICE. You would want to add your expectations to the result of the first stub:
var myObj = {reject: function(){
// here original behavior
}};
myObjStub = sinon.stub(myObj, 'reject', function() {
// here my test behavior
});
myObjStub.once().on(someContext);
I think if you want to basically stub a custom behavior ('here my test behavior' and then ensure that it is called once you do:
var myObj = {reject: function(){
// here CUSTOM behavior
}};
myObjStub = sinon.mock(myObj);
myObjStub.once().on(someContext);