Fix `promoteSource` to expect error, not success, in callback

* Master.Stream: `promoteSource` needed to be updated to reflect the switch
  in how `useSource` uses its callback
* Add a test for `promoteSource` behavior