Skip to content

Commit de943d3

Browse files
authored
Merge pull request #211 from WyriHaximus-secret-labs/promise-should-support-low-level-throwable
Promise should support low level Throwable
2 parents 37839a4 + fa9136e commit de943d3

File tree

2 files changed

+7
-5
lines changed

2 files changed

+7
-5
lines changed

src/React/Promise.php

+1-1
Original file line numberDiff line numberDiff line change
@@ -85,7 +85,7 @@ function ($value) use ($subject) {
8585
$subject->onCompleted();
8686
},
8787
function ($error) use ($subject) {
88-
$error = $error instanceof \Exception ? $error : new RejectedPromiseException($error);
88+
$error = $error instanceof \Throwable ? $error : new RejectedPromiseException($error);
8989
$subject->onError($error);
9090
}
9191
);

test/Rx/Functional/React/PromiseToObservableTest.php

+6-4
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,8 @@
33

44
namespace Rx\Functional\React;
55

6-
use Exception;
76
use React\Promise\Deferred;
7+
use React\Promise\Promise as ReactPromise;
88
use Rx\Functional\FunctionalTestCase;
99
use Rx\Observer\CallbackObserver;
1010
use Rx\React\Promise;
@@ -40,7 +40,9 @@ function () {
4040
*/
4141
public function from_promise_failure()
4242
{
43-
$p = Promise::rejected(new Exception('error'));
43+
$p = new ReactPromise(function () {
44+
1 / 0;
45+
});
4446

4547
$source = Promise::toObservable($p);
4648

@@ -49,8 +51,8 @@ function ($x) {
4951
$this->assertFalse(true);
5052

5153
},
52-
function ($error) {
53-
$this->assertEquals($error, new Exception('error'));
54+
function (\Throwable $error) {
55+
$this->assertStringContainsStringIgnoringCase('division by zero', $error->getMessage());
5456
},
5557
function () {
5658
$this->assertFalse(true);

0 commit comments

Comments
 (0)