Commit 46a9bb1f

mo khan <mo@mokhan.ca>
2015-01-11 15:26:28
add tests for loading cakes in order.
1 parent fcedb1c
Changed files (2)
app
spec
app/models/category.rb
@@ -1,6 +1,6 @@
 class Category < ActiveRecord::Base
   has_many :creations
-  default_scope -> { order(:name) }
+  default_scope -> { order(:slug) }
 
   scope :by_slug, ->(category) { find_by(slug: category.downcase)}
 
spec/models/category_spec.rb
@@ -2,14 +2,14 @@ require 'rails_helper'
 
 describe Category do
   describe ".by_slug" do
-    let!(:category) { create(:category, slug: 'cookies') }
-    let!(:category) { create(:category, slug: 'cup-cakes') }
-    let!(:category) { create(:category, slug: 'cakes') }
+    let!(:cookies) { create(:category, slug: 'cookies') }
+    let!(:cup_cakes) { create(:category, slug: 'cup-cakes') }
+    let!(:cakes) { create(:category, slug: 'cakes') }
 
     it 'finds by slug' do
-      expect(Category.by_slug('cakes')).to eql(category)
-      expect(Category.by_slug('CAKES')).to eql(category)
-      expect(Category.by_slug('Cakes')).to eql(category)
+      expect(Category.by_slug('cakes')).to eql(cakes)
+      expect(Category.by_slug('CAKES')).to eql(cakes)
+      expect(Category.by_slug('Cakes')).to eql(cakes)
     end
   end
 
@@ -20,4 +20,14 @@ describe Category do
       expect(subject.to_param).to eql('cakes')
     end
   end
+
+  describe ".all" do
+    let!(:cookies) { create(:category, slug: 'cookies') }
+    let!(:cup_cakes) { create(:category, slug: 'cup-cakes') }
+    let!(:cakes) { create(:category, slug: 'cakes') }
+
+    it 'loads categories ordered by name' do
+      expect(Category.all.to_a).to eql([cakes, cookies, cup_cakes])
+    end
+  end
 end