Sha256: b9be47a08e18b9349ee7978eb38372d7c5c417882afcca2a6574bca1a8ca337f

Contents?: true

Size: 1016 Bytes

Versions: 4

Compression:

Stored size: 1016 Bytes

Contents

module Erb::SimpleForm
  module ContentMatchers
    def have_simple_form_for name
      have_block :simple_form_for, :args => name
    end

    def have_input name 
      have_form_call :input, :args => ":#{name}"
    end

    def have_button name 
      have_form_call :button, :args => ":#{name}"
    end

    def self.standard_inputs
      [ :username, :email, :website, :age, :password, :remember_me]
    end

    def self.association_types
      [ :radio, :check_boxes]
    end

    def have_association name
      have_form_call :association, :args => ":#{name}"
    end

    association_types.each do |name|
      class_eval %{
        def have_#{name.to_s.pluralize} name
          have_form_call :association, :args => ":\#{name}, :as => :#{name}"
        end        
      }
    end

    standard_inputs.each do |name|
      class_eval %{
        def have_#{name}
          have_input :#{name}
        end 
      }
    end

    def have_commit_button 
      have_form_call :commit_button
    end
  end
end

Version data entries

4 entries across 4 versions & 2 rubygems

Version Path
forms-spec-0.1.2 lib/forms-spec/erb/matchers/simpleform/have_simpleform.rb
forms-spec-0.1.1 lib/forms-spec/erb/matchers/simpleform/have_simpleform.rb
forms-spec-0.1.0 lib/forms-spec/erb/matchers/simpleform/have_simpleform.rb
code-spec-0.1.3 lib/code_spec/erb/matchers/simpleform/have_simpleform.rb