hello,
I would like to assert that an attribute of a model has value among
those in an array. How would I do it in rspec?
Something like this…
describe OptionType do
context “shoulda validations” do
it { assert_contains :type, [‘Type1’, ‘Type1’]}
end
end
             
            
              
              
              
            
            
                
                
              
           
          
            
              
                slavix
                
              
              
              
                  
                  
              2
              
             
            
              Hey Slavix. How about this:
it ‘has a valid “attribute_x” value’ do
valid_values = %w(some values here)
valid_values.should include subject.attribute_x
end
             
            
              
              
              
            
            
                
                
              
           
          
            
              
                slavix
                
              
              
              
                  
                  
              3
              
             
            
              this seems to be the way to do it.
it
{ should_validate_numericality_of :amount, :greater_than_or_equal_to
=> 0 }
it { should_validate_inclusion_of :gender, :in => %w( m f )
             
            
              
              
              
            
            
                
                
              
           
          
            
              
                slavix
                
              
              
              
                  
                  
              4
              
             
            
              Thanks. I wanted to test it as part of model validation like
it { should validate_presence_of(:some_attribute).among(['value1',
‘value2’]) }
it { should validate_that(:some_attribute) >= 0 }