freireag (owner)

Revisions

gist: 23205 Download_button fork
public
Public Clone URL: git://gist.github.com/23205.git
Embed All Files: show embed
product_test.rb #
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
require 'test_helper'
 
class ProductTest < ActiveSupport::TestCase
  context "given an existing product" do
    fixtures :all
    
    should_have_db_columns :id, :name, :description, :price, :quantity
    should_have_db_column :name, :type => "string", :null => false
    should_have_db_column :price, :type => "decimal", :null => false, :scale => 2
    should_have_db_column :quantity, :type => "integer", :default => 0, :null => false
 
    should_have_instance_methods :name, :name=, :description, :description=, :price, :price=, :quantity, :quantity=
 
    should_not_allow_values_for :price, -1, 0
    should_not_allow_values_for :quantity, -1, 1.3
    should_allow_values_for :quantity, 0
 
    should_only_allow_numeric_values_for :price
    should_only_allow_numeric_values_for :quantity
 
    should_require_attributes :name, :price, :quantity
    should_require_unique_attributes :name
  end
end