Model refactorings and further expansion of specs
[merb_mart.git] / spec / models / country_spec.rb
blob6d916ad7a57b0fa8a8836e87af75ca7343185423
1 require File.join( File.dirname(__FILE__), "..", "spec_helper" )
3 describe Country do
5   describe "associations" do
6     it "should have many (0..*) states" do
7       country = Country.new
8       country.should respond_to(:states)
9     end
10     
11     it "should have many (0..*) provinces (alias for states)" do
12       country = Country.new
13       country.should respond_to(:provinces)
14     end
15   end
17   before(:each) do
18     @country = Country.new
19     #Country.auto_migrate! # clear db table
20   end
22   it "should be valid" do
23     @country.name = "Andorra"
24     @country.should be_valid
25   end
26   
27   it "should have a name field" do
28     @country.valid?
29     @country.errors.on(:name).should_not be_nil
30   end
31   
32   it "should have a unique name field" do
33     country1 = Country.new(:code => "FR", :name => "France")
34     country2 = Country.new(:code => "ZZ", :name => "France")
35     country1.save.should be_true
36     country1.name = "France"
37     country2.save.should be_false
38     country2.errors.on(:name).should_not be_nil 
39   end
40   
41   it "should have a code field" do
42     @country.name = "Lithuania"
43     @country.code = "LT"
44     @country.should be_valid
45   end
46   
47   describe "finders" do
48     
49   end
50   
51 end