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

Version Path
trailblazer-endpoint-0.0.12 test/test_helper.rb
trailblazer-endpoint-0.0.11 test/test_helper.rb
trailblazer-endpoint-0.0.10 test/test_helper.rb
trailblazer-endpoint-0.0.9 test/test_helper.rb
trailblazer-endpoint-0.0.8 test/test_helper.rb
trailblazer-endpoint-0.0.7 test/test_helper.rb
trailblazer-endpoint-0.0.6 test/test_helper.rb
trailblazer-endpoint-0.0.5 test/test_helper.rb