Commit b4badb69daceb445d025ec9805dc96f2c9f9c30f

Authored by Larissa Reis
1 parent 562fa646

Validates there is at least one alternative

plugins/custom_forms/lib/custom_forms_plugin/select_field.rb
... ... @@ -3,4 +3,6 @@ class CustomFormsPlugin::SelectField < CustomFormsPlugin::Field
3 3  
4 4 validates_length_of :select_field_type, :minimum => 1, :allow_nil => false
5 5 validates_inclusion_of :select_field_type, :in => %w(radio check_box select multiple_select)
  6 +
  7 + validates_length_of :alternatives, :minimum => 1
6 8 end
... ...
plugins/custom_forms/test/unit/custom_forms_plugin/select_field_test.rb
1 1 require File.dirname(__FILE__) + '/../../../../../test/test_helper'
2 2  
3 3 class CustomFormsPlugin::SelectFieldTest < ActiveSupport::TestCase
  4 + should 'have alternative' do
  5 + select = CustomFormsPlugin::SelectField.new(:name => 'select_field001' )
  6 + assert !select.save
  7 +
  8 + select.alternatives << CustomFormsPlugin::Alternative.new(:label => 'option')
  9 + assert select.save
  10 + end
  11 +
4 12 should 'validate type' do
5 13 select = CustomFormsPlugin::SelectField.new(:name => 'select_field001' )
  14 + select.alternatives << CustomFormsPlugin::Alternative.new(:label => 'option')
6 15  
7 16 select.update_attribute(:select_field_type, 'random')
8 17 assert select.invalid?
... ...