Sha256: 8fdf566f27f5c9a3c981716e801d8dbb1fc08798c19996f944530dbd9210113a

Contents?: true

Size: 735 Bytes

Versions: 5

Compression:

Stored size: 735 Bytes

Contents

require "pp"

require "minitest/autorun"
require "trailblazer/operation"
require "trailblazer/activity/testing"
require "trailblazer/developer/render/linear"

Minitest::Spec.class_eval do
  Activity = Trailblazer::Activity
  T = Activity::Testing
end

# TODO: replace all this with {Activity::Testing.def_steps}
module Test
  # Create a step method in `klass` with the following body.
  #
  #   def a(options, a_return:, data:, **)
  #     data << :a
  #
  #     a_return
  #   end
  def self.step(klass, *names)
    names.each do |name|
      method_def =
        %{def #{name}(options, #{name}_return:, data:, **)
          data << :#{name}
          #{name}_return
        end}

      klass.class_eval(method_def)
    end
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
trailblazer-operation-0.6.1 test/test_helper.rb
trailblazer-operation-0.6.0 test/test_helper.rb
trailblazer-operation-0.5.3 test/test_helper.rb
trailblazer-operation-0.5.2 test/test_helper.rb
trailblazer-operation-0.5.1 test/test_helper.rb