OSDN Git Service

update speech and balloon
[pettanr/pettanr.git] / spec / models / speech_balloon_spec.rb
1 # -*- encoding: utf-8 -*-
2 require 'spec_helper'
3 #フキダシ
4
5 describe SpeechBalloon do
6   before do
7     Factory :admin
8     @user = Factory( :user_yas)
9     @author = @user.author
10     @artist = Factory :artist_yas, :author_id => @author.id\r
11     @license = Factory :license
12     
13     @panel = Factory :panel
14     @speech_balloon_template = Factory :speech_balloon_template
15   end\r
16   
17   describe '検証に於いて' do
18     before do\r
19     end
20     
21     it 'オーソドックスなデータなら通る' do
22       @sb = Factory.build :speech_balloon, :panel_id => @panel.id, :speech_balloon_template_id => @speech_balloon_template.id
23       @sb.should be_valid
24     end
25     
26     context 'panel_idを検証するとき' do
27       before do
28         @sb = Factory.build :speech_balloon, :panel_id => @panel.id, :speech_balloon_template_id => @speech_balloon_template.id
29       end
30       it 'テストデータの確認' do
31         @sb.panel_id = @panel.id
32         @sb.should be_valid
33       end
34       it 'nullなら失敗する' do
35         @sb.panel_id = nil
36         @sb.should_not be_valid
37       end
38       it '数値でなければ失敗する' do
39         @sb.panel_id = 'a'
40         @sb.should_not be_valid
41       end
42       it '存在するコマでなければ失敗する' do
43         @sb.panel_id = 0
44         @sb.should_not be_valid
45       end
46     end
47     context 'speech_balloon_template_idを検証するとき' do
48       before do
49         @sb = Factory.build :speech_balloon, :panel_id => @panel.id, :speech_balloon_template_id => @speech_balloon_template.id
50       end
51       it 'テストデータの確認' do
52         @sb.speech_balloon_template_id = @speech_balloon_template.id
53         @sb.should be_valid
54       end
55       it 'nullなら失敗する' do
56         @sb.speech_balloon_template_id = nil
57         @sb.should_not be_valid
58       end
59       it '数値でなければ失敗する' do
60         @sb.speech_balloon_template_id = 'a'
61         @sb.should_not be_valid
62       end
63       it '存在するフキダシテンプレートでなければ失敗する' do
64         @sb.speech_balloon_template_id = 0
65         @sb.should_not be_valid
66       end
67     end
68     context 'classnameを検証するとき' do
69       before do
70         @sb = Factory.build :speech_balloon, :panel_id => @panel.id, :speech_balloon_template_id => @speech_balloon_template.id
71       end
72       it 'テストデータの確認' do
73         @sb.classname = 'abcdefghi0abcdefghi0abcdefghi0abcdefghi0abcdefghi0'
74         @sb.should be_valid
75       end
76       it 'nullなら失敗する' do
77         @sb.classname = ''
78         @sb.should_not be_valid
79       end
80       it '51文字以上なら失敗する' do
81         @sb.classname = 'a'*51
82         @sb.should_not be_valid
83       end
84     end
85     context 'tを検証するとき' do
86       before do
87         @sb = Factory.build :speech_balloon, :panel_id => @panel.id, :speech_balloon_template_id => @speech_balloon_template.id
88       end
89       it 'テストデータの確認' do
90         @sb.t = 0
91         @sb.should be_valid
92       end
93       it 'nullなら失敗する' do
94         @sb.t = nil
95         @sb.should_not be_valid
96       end
97       it '数値でなければ失敗する' do
98         @sb.t = 'a'
99         @sb.should_not be_valid
100       end
101       it '負なら失敗する' do
102         @sb.t = -1
103         @sb.should_not be_valid
104       end
105     end
106     context 'settingsを検証するとき' do
107       before do
108         @sb = Factory.build :speech_balloon, :panel_id => @panel.id, :speech_balloon_template_id => @speech_balloon_template.id
109       end
110       it 'テストデータの確認' do
111         @sb.settings = '{}'
112         @sb.should be_valid
113       end
114     end
115   end
116   
117   describe 'データ補充に於いて' do
118     before do
119     end
120     
121   end
122   \r
123 end