File tree Expand file tree Collapse file tree 2 files changed +21
-13
lines changed
packages/npm-packages/ruby-wasm-wasi/test Expand file tree Collapse file tree 2 files changed +21
-13
lines changed Original file line number Diff line number Diff line change @@ -22,15 +22,16 @@ class PromiseScheduler
2222 def initialize ( main_fiber )
2323 @tasks = [ ]
2424 @is_spinning = false
25- @loop_fiber = Fiber . new do
26- loop do
27- while task = @tasks . shift
28- task . fiber . transfer ( task . value , task . status )
25+ @loop_fiber =
26+ Fiber . new do
27+ loop do
28+ while task = @tasks . shift
29+ task . fiber . transfer ( task . value , task . status )
30+ end
31+ @is_spinning = false
32+ main_fiber . transfer
2933 end
30- @is_spinning = false
31- main_fiber . transfer
3234 end
33- end
3435 end
3536
3637 def await ( promise )
@@ -61,12 +62,17 @@ def self.promise_scheduler
6162 end
6263
6364 private
65+
6466 def self . __eval_async_rb ( rb_code , future )
65- Fiber . new do
66- future . resolve JS ::Object . wrap ( Kernel . eval ( rb_code . to_s , nil , "eval_async" ) )
67- rescue => e
68- future . reject JS ::Object . wrap ( e )
69- end . transfer
67+ Fiber
68+ . new do
69+ future . resolve JS ::Object . wrap (
70+ Kernel . eval ( rb_code . to_s , nil , "eval_async" )
71+ )
72+ rescue => e
73+ future . reject JS ::Object . wrap ( e )
74+ end
75+ . transfer
7076 end
7177end
7278
Original file line number Diff line number Diff line change @@ -223,7 +223,9 @@ eval:11:in \`<main>'`);
223223
224224 test ( "await outside of evalAsync" , async ( ) => {
225225 const vm = await initRubyVM ( ) ;
226- const result = vm . eval ( `require "js"; JS.global[:Promise].resolve(42).await` ) ;
226+ const result = vm . eval (
227+ `require "js"; JS.global[:Promise].resolve(42).await`
228+ ) ;
227229 expect ( result . call ( "nil?" ) . toString ( ) ) . toBe ( "true" ) ;
228230 } ) ;
229231} ) ;
You can’t perform that action at this time.
0 commit comments