Skip to content

Commit

Permalink
Merge remote-tracking branch 'origin/master'
Browse files Browse the repository at this point in the history
  • Loading branch information
WyriHaximus committed Mar 22, 2017
2 parents d9efea8 + a1d7976 commit 7f5d1b8
Show file tree
Hide file tree
Showing 2 changed files with 18 additions and 1 deletion.
3 changes: 2 additions & 1 deletion src/functions.php
Expand Up @@ -6,6 +6,7 @@
use Rx\Observable;
use Rx\ObserverInterface;
use Rx\SchedulerInterface;
use function React\Promise\resolve;

/**
* Take an observable from a promise and return an new observable piping through the stream.
Expand All @@ -20,7 +21,7 @@ function (
ObserverInterface $observer,
SchedulerInterface $scheduler
) use ($promise) {
$promise->then(function (Observable $observable) use ($observer, $scheduler) {
resolve($promise)->done(function (Observable $observable) use ($observer, $scheduler) {
$observable->subscribeCallback(
function ($next) use ($observer) {
$observer->onNext($next);
Expand Down
16 changes: 16 additions & 0 deletions tests/FunctionsTest.php
Expand Up @@ -63,4 +63,20 @@ function () use (&$completed) {
self::assertFalse($completed);
self::assertSame($exception, $currentException);
}

/**
* @expectedException Exception
*/
public function testUnwrapObservableFromPromiseDoesNotSwallowException()
{
unwrapObservableFromPromise(
resolve(
Observable::just(1)
)
)->subscribeCallback(
function () {
throw new Exception('boom');
}
);
}
}

0 comments on commit 7f5d1b8

Please sign in to comment.