+# -*- encoding: utf-8 -*-
require 'spec_helper'
+#フキダシ
describe SpeechBalloon do
- pending "add some examples to (or delete) #{__FILE__}"
+ before do
+ @admin = FactoryGirl.create :admin
+ @user = FactoryGirl.create( :user_yas)
+ @author = FactoryGirl.create :author, :user_id => @user.id
+ @artist = FactoryGirl.create :artist_yas, :author_id => @author.id
+
+ @panel = FactoryGirl.create :panel, :author_id => @author.id
+ @speech_balloon_template = FactoryGirl.create :speech_balloon_template
+ end
+
+ describe '検証に於いて' do
+ before do
+ @sb = FactoryGirl.build :speech_balloon, :panel_id => @panel.id, :speech_balloon_template_id => @speech_balloon_template.id
+ end
+
+ context 'オーソドックスなデータのとき' do
+ it '下限データが通る' do
+ @sb.classname = 'a'
+ @sb.z = 1
+ @sb.t = 0
+ @sb.should be_valid
+ end
+ it '上限データが通る' do
+ @sb.classname = 'a'*50
+ @sb.z = 99999
+ @sb.t = 99999
+ @sb.should be_valid
+ end
+ end
+
+ context 'panel_idを検証するとき' do
+ #ネストの保存はnilを許可しなければならないので数値チェックだけ
+ it '数値でなければ失敗する' do
+ @sb.panel_id = 'a'
+ @sb.should_not be_valid
+ end
+ end
+ context 'speech_balloon_template_idを検証するとき' do
+ it 'nullなら失敗する' do
+ @sb.speech_balloon_template_id = nil
+ @sb.should_not be_valid
+ end
+ it '数値でなければ失敗する' do
+ @sb.speech_balloon_template_id = 'a'
+ @sb.should_not be_valid
+ end
+ it '存在するフキダシテンプレートでなければ失敗する' do
+ @sb.speech_balloon_template_id = 0
+ @sb.should_not be_valid
+ end
+ end
+ context 'classnameを検証するとき' do
+ it 'nullなら失敗する' do
+ @sb.classname = ''
+ @sb.should_not be_valid
+ end
+ it '51文字以上なら失敗する' do
+ @sb.classname = 'a'*51
+ @sb.should_not be_valid
+ end
+ end
+ context 'tを検証するとき' do
+ it 'nullなら失敗する' do
+ @sb.t = nil
+ @sb.should_not be_valid
+ end
+ it '数値でなければ失敗する' do
+ @sb.t = 'a'
+ @sb.should_not be_valid
+ end
+ it '負なら失敗する' do
+ @sb.t = -1
+ @sb.should_not be_valid
+ end
+ end
+ context 'settingsを検証するとき' do
+ end
+ end
+
end