Sha256: 62c6464017da349a23c2c1e8da33f917a05b6592279f0220980dc481920a6a8c

Contents?: true

Size: 577 Bytes

Versions: 1

Compression:

Stored size: 577 Bytes

Contents

module RSpec
  module WithParams
    module DSL
      def with_params(param_names, *parameter_groups, &block)
        parameter_groups.each do |parameter_group|
          params = param_names.zip(parameter_group)
          test_case_description = params
            .map { |name, value| "#{name} -> #{value.inspect}" }
            .join(", ")

          context("given #{test_case_description}") do
            params.each do |name, value|
              let(name) { value }
            end

            module_eval(&block)
          end
        end
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
rspec-with_params-0.1.0 lib/rspec/with_params/dsl.rb