aboutsummaryrefslogtreecommitdiffstats
path: root/spec/models/widget_vote_spec.rb
diff options
context:
space:
mode:
Diffstat (limited to 'spec/models/widget_vote_spec.rb')
-rw-r--r--spec/models/widget_vote_spec.rb37
1 files changed, 37 insertions, 0 deletions
diff --git a/spec/models/widget_vote_spec.rb b/spec/models/widget_vote_spec.rb
new file mode 100644
index 000000000..f1e30ed22
--- /dev/null
+++ b/spec/models/widget_vote_spec.rb
@@ -0,0 +1,37 @@
+# == Schema Information
+#
+# Table name: widget_votes
+#
+# id :integer not null, primary key
+# cookie :string(255)
+# info_request_id :integer
+# created_at :datetime not null
+# updated_at :datetime not null
+#
+
+require File.expand_path(File.dirname(__FILE__) + '/../spec_helper')
+
+describe WidgetVote do
+
+ describe :new do
+
+ it 'requires an info request' do
+ widget_vote = WidgetVote.new
+ widget_vote.should_not be_valid
+ widget_vote.errors[:info_request].should == ["can't be blank"]
+ end
+
+ it 'validates the cookie length' do
+ widget_vote = WidgetVote.new
+ widget_vote.should_not be_valid
+ widget_vote.errors[:cookie].should == ["is the wrong length (should be 20 characters)"]
+ end
+
+ it 'is valid with a cookie and info request' do
+ widget_vote = FactoryGirl.create(:info_request).widget_votes.build(:cookie => 'x' * 20)
+ widget_vote.should be_valid
+ end
+
+ end
+
+end