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