From 5c2ce7302ba3177a9c4c177e75a43440777d646b Mon Sep 17 00:00:00 2001 From: Kyrylo Silin Date: Thu, 13 Jun 2024 17:25:10 +0300 Subject: [PATCH] Expose #rescue --- lib/telebugs/promise.rb | 4 ++++ test/test_promise.rb | 6 ++++++ 2 files changed, 10 insertions(+) diff --git a/lib/telebugs/promise.rb b/lib/telebugs/promise.rb index cd22811..e83d0cb 100644 --- a/lib/telebugs/promise.rb +++ b/lib/telebugs/promise.rb @@ -31,5 +31,9 @@ def rejected? def then(...) @future.then(...) end + + def rescue(...) + @future.rescue(...) + end end end diff --git a/test/test_promise.rb b/test/test_promise.rb index c44ef34..8ba48cd 100644 --- a/test/test_promise.rb +++ b/test/test_promise.rb @@ -34,4 +34,10 @@ def test_then assert_equal 4, p.value end + + def test_rescue + p = Telebugs::Promise.new { raise "error" }.rescue { |e| e.message } + + assert_equal "error", p.value + end end