Sha256: 4e3e5cd3fe0da2db0b44a50a8451ebdb8425c45a6cb54627ea127ef089ae601e
Contents?: true
Size: 962 Bytes
Versions: 8
Compression:
Stored size: 962 Bytes
Contents
require "minitest/autorun" require "trailblazer/activity/dsl/linear" require "trailblazer/activity/testing" require "trailblazer/developer" require "trailblazer/endpoint" require "trailblazer/endpoint/protocol" require "trailblazer/endpoint/adapter" Minitest::Spec.class_eval do T = Trailblazer::Activity::Testing def assert_route(endpoint, ctx_additions, *route, **ctx_assumptions) seq = route[0..-2] terminus = route[-1] signal, (ctx, ) = Trailblazer::Developer.wtf?(endpoint, [{seq: [], domain_ctx: {}}.merge(ctx_additions)]) signal.inspect.must_equal %{#<Trailblazer::Activity::End semantic=#{terminus.inspect}>} ctx[:seq].must_equal seq ctx.to_h.slice(*ctx_assumptions.keys).must_equal ctx_assumptions end def activity activity = Class.new(Trailblazer::Activity::Railway) do step :model, Output(:failure) => End(:not_found) step :validate include T.def_steps(:validate, :model) end end end
Version data entries
8 entries across 8 versions & 1 rubygems