Sha256: 19a2ff49f6b1fe0b280bc9cd688a99271b6a5e9ac0efe9c66c7013f70040f1c3
Contents?: true
Size: 1.32 KB
Versions: 5
Compression:
Stored size: 1.32 KB
Contents
#!/usr/bin/ruby $: << "../lib" require "runit/testcase" require "runit/cui/testrunner" require 'jiji/util/block_to_session' require 'logger' require 'csv' class BlockToSessionTest < RUNIT::TestCase def setup end def teardown end def test_basic buff = "" s = Session.new {|wait| do_as( "a", "b", buff ) {|a,b,log| log << "#{a}.#{b}.wait." wait.call( a, b, log ) } } assert_equals buff, "start.a.b.wait." # リクエストを送る assert_equals "result", s.request {|a,b,log| log << "#{a}.#{b}.req." "result" } assert_equals buff, "start.a.b.wait.a.b.req." assert_equals "result2", s.request {|a,b,log| log << "#{a}.#{b}.req." "result2" } assert_equals buff, "start.a.b.wait.a.b.req.a.b.req." # リクエスト中にエラー#呼び出し元に伝搬される begin s.request {|a,b,log| raise NameError.new("test") } fail rescue NameError end begin s.request {|a,b,log| raise Exception.new } fail rescue Exception end s.close assert_equals buff, "start.a.b.wait.a.b.req.a.b.req.end." end def do_as( a,b,log ) begin log << "start." yield a, b, log ensure log << "end." end end end
Version data entries
5 entries across 5 versions & 1 rubygems