module Formify::SpecHelpers

Public Instance Methods

do_result() click to toggle source
# File lib/formify/spec_helpers.rb, line 24
def do_result
  initialized_form.save
end
do_value() click to toggle source
# File lib/formify/spec_helpers.rb, line 28
def do_value
  result.value
end
expect_error_message(message) click to toggle source

Common Expectation Helpers

# File lib/formify/spec_helpers.rb, line 38
def expect_error_message(message)
  expect(error_message).to include(message)
end
expect_error_with_attribute(attribute) click to toggle source
# File lib/formify/spec_helpers.rb, line 42
def expect_error_with_attribute(attribute)
  expect(error.attribute.try(:to_sym)).to eq(attribute.to_sym)
end
expect_error_with_attribute_value(attribute, value, error_attribute: nil, message: nil) click to toggle source
# File lib/formify/spec_helpers.rb, line 46
def expect_error_with_attribute_value(attribute, value, error_attribute: nil, message: nil)
  initialized_form.send("#{attribute}=", value)
  expect_error_with_attribute(error_attribute || attribute)
  expect_error_message(message) if message
end
expect_error_with_missing_attribute(attribute) click to toggle source
# File lib/formify/spec_helpers.rb, line 52
def expect_error_with_missing_attribute(attribute)
  raise 'No attribute' unless attributes.key?(attribute)

  attributes_to_pass.delete(attribute)
  expect_error_with_attribute(attribute)
end
expect_invalid(*args, **keywords) click to toggle source
# File lib/formify/spec_helpers.rb, line 59
def expect_invalid(*args, **keywords)
  expect_not_valid(*args, **keywords)
end
expect_not_valid(attribute: nil, message: nil) click to toggle source
# File lib/formify/spec_helpers.rb, line 63
def expect_not_valid(attribute: nil, message: nil)
  expect_error_with_attribute(attribute) if attribute.present?
  expect_error_message(message) if message.present?

  expect(initialized_form).not_to be_valid
end
expect_valid() click to toggle source
# File lib/formify/spec_helpers.rb, line 70
def expect_valid
  expect(initialized_form).to be_valid
end
expect_valid_with_attribute_value(attribute, value) click to toggle source
# File lib/formify/spec_helpers.rb, line 74
def expect_valid_with_attribute_value(attribute, value)
  initialized_form.send("#{attribute}=", value)
  expect_valid
end
expect_valid_with_missing_attribute(attribute) click to toggle source
# File lib/formify/spec_helpers.rb, line 79
def expect_valid_with_missing_attribute(attribute)
  raise 'No attribute' unless attributes.key?(attribute)

  attributes_to_pass.delete(attribute)
  expect_valid
end
initialize_form() click to toggle source
# File lib/formify/spec_helpers.rb, line 32
def initialize_form
  form.new(attributes_to_pass)
end