1
0
Fork 0
mirror of https://github.com/rubyjs/therubyracer synced 2023-03-27 23:21:42 -04:00
therubyracer/spec/c_spec_helper.rb
2015-07-18 16:39:36 -05:00

32 lines
566 B
Ruby

require 'v8/init'
module V8ContextHelpers
module GroupMethods
def requires_v8_context
around(:each) do |example|
bootstrap_v8_context(&example)
end
end
end
def bootstrap_v8_context
@isolate = V8::C::Isolate.New
V8::C::HandleScope(@isolate) do
@ctx = V8::C::Context::New(@isolate)
begin
@ctx.Enter
yield
ensure
@ctx.Exit
end
end
ensure
@isolate.Dispose()
end
end
RSpec.configure do |c|
c.include V8ContextHelpers
c.extend V8ContextHelpers::GroupMethods
end