Sha256: d965042129d172d94529e8e2974ba57b030465fccbff535a7367aabfa103beb4

Contents?: true

Size: 646 Bytes

Versions: 4

Compression:

Stored size: 646 Bytes

Contents

##
# ensure Test

class EnsureYieldBreak
  attr_reader :ensure_context
  def try
    yield
  ensure
    @ensure_context = self
  end
end

assert('ensure - context - yield') do
  yielder = EnsureYieldBreak.new
  yielder.try do
  end
  assert_equal yielder, yielder.ensure_context
end

assert('ensure - context - yield and break') do
  yielder = EnsureYieldBreak.new
  yielder.try do
    break
  end
  assert_equal yielder, yielder.ensure_context
end

assert('ensure - context - yield and return') do
  yielder = EnsureYieldBreak.new
  lambda do
    yielder.try do
      return
    end
  end.call
  assert_equal yielder, yielder.ensure_context
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
script_core-0.3.2 ext/enterprise_script_service/mruby/test/t/ensure.rb
script_core-0.3.0 ext/enterprise_script_service/mruby/test/t/ensure.rb
script_core-0.2.7 ext/enterprise_script_service/mruby/test/t/ensure.rb
script_core-0.2.6 ext/enterprise_script_service/mruby/test/t/ensure.rb