OSDN Git Service

merge v04
[pettanr/pettanr.git] / spec / models / original_picture_spec.rb
index 2fa0f8e..333fd64 100644 (file)
@@ -193,27 +193,28 @@ describe OriginalPicture do
       end
     end
   end
-  describe '関連テーブルプションに於いて' do\r
-    context 'オプションがないとき' do\r
-      it '1つの項目を含んでいる' do\r
-        r = OriginalPicture.show_include_opt\r
-        r.should have(1).items\r
-      end\r
-      it '素材を含んでいる' do\r
-        r = OriginalPicture.show_include_opt\r
-        r.has_key?(:resource_picture).should be_true\r
-      end\r
-    end\r
-    context 'オプションでtestを含ませたとき' do\r
-      it '2つの項目を含んでいる' do\r
-        r = OriginalPicture.show_include_opt(:include => {:test => {}})\r
-        r.should have(2).items\r
-      end\r
-      it 'testを含んでいる' do\r
-        r = OriginalPicture.show_include_opt(:include => {:test => {}})\r
-        r.has_key?(:test).should be_true\r
-      end\r
-    end\r
+  describe '編集取得に於いて' do
+    before do
+      @op = Factory :original_picture, :artist_id => @artist.id
+    end
+    it '指定の原画を返す' do
+      pic = OriginalPicture.edit @op.id, @artist
+      pic.should eq @op
+    end
+    context '他人の原画を開こうとしたとき' do
+      it '403Forbidden例外を返す' do
+        lambda{
+          pic = OriginalPicture.edit @op.id, @other_artist
+        }.should raise_error(ActiveRecord::Forbidden)
+      end
+    end
+    context '存在しない原画を開こうとしたとき' do
+      it '404RecordNotFound例外を返す' do
+        lambda{
+          pic = OriginalPicture.edit 0, @artist
+        }.should raise_error(ActiveRecord::RecordNotFound)
+      end
+    end
   end
   describe 'json単体出力オプションに於いて' do
     it 'includeキーを含んでいる' do\r