Sha256: 38f3f82aa7b8b00ce4b20430dc488ebb65c42774bc9bdafec00530754c735a98

Contents?: true

Size: 491 Bytes

Versions: 1

Compression:

Stored size: 491 Bytes

Contents

module ATP
  # Program is the top-level container for a collection of test flows
  class Program
    def flow(name)
      flows[name] ||= Flow.new(self)
    end

    def flows
      @flows ||= {}
    end

    def respond_to?(*args)
      flows.key?(args.first) || super
    end

    def method_missing(method, *args, &block) # :nodoc:
      if f = flows[method]
        define_singleton_method method do
          f
        end
        f
      else
        super
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
atp-0.2.0 lib/atp/program.rb