OSDN Git Service

miss edit importer
[pettanr/pettanr.git] / spec / models / license_group_spec.rb
1 # -*- encoding: utf-8 -*-
2 #ライセンスグループ
3 require 'spec_helper'
4
5 describe LicenseGroup do
6   before do
7     #テストデータを用意してね
8     @f = Rails.root + 'spec/json/license_group.json'
9     @t = File.open(@f, 'r').read
10     @j = JSON.parse @t
11   end
12   describe '検証に於いて' do
13     before do
14     end
15     
16     it 'オーソドックスなデータなら通る' do
17       @lg = Factory.build :license_group
18       @lg.should be_valid
19     end
20     
21     context 'nameを検証するとき' do
22       before do
23         @lg = Factory.build :license_group
24       end
25       it 'テストデータの確認' do
26         @lg.name = 'a'*50
27         @lg.should be_valid
28       end
29       it 'nullなら失敗する' do
30         @lg.name = ''
31         @lg.should_not be_valid
32       end
33       it '51文字以上なら失敗する' do
34         @lg.name = 'a'*51
35         @lg.should_not be_valid
36       end
37       it '重複していたら失敗する' do
38         l = Factory :license_group
39         @lg.should_not be_valid
40       end
41     end
42     context 'classnameを検証するとき' do
43       before do
44         @lg = Factory.build :license_group
45       end
46       it 'テストデータの確認' do
47         @lg.classname = 'a'*50
48         @lg.should be_valid
49       end
50       it 'nullなら失敗する' do
51         @lg.classname = ''
52         @lg.should_not be_valid
53       end
54       it '51文字以上なら失敗する' do
55         @lg.classname = 'a'*51
56         @lg.should_not be_valid
57       end
58     end
59     context 'captionを検証するとき' do
60       before do
61         @lg = Factory.build :license_group
62       end
63       it 'テストデータの確認' do
64         @lg.caption = 'a'*30
65         @lg.should be_valid
66       end
67       it 'nullなら失敗する' do
68         @lg.caption = ''
69         @lg.should_not be_valid
70       end
71       it '51文字以上なら失敗する' do
72         @lg.caption = 'a'*51
73         @lg.should_not be_valid
74       end
75     end
76     context 'urlを検証するとき' do
77       before do
78         @lg = Factory.build :license_group
79       end
80       it 'テストデータの確認' do
81         @lg.url = 'http://test.com/'
82         @lg.should be_valid
83       end
84       it 'nullなら失敗する' do
85         @lg.url = ''
86         @lg.should_not be_valid
87       end
88       it '201文字以上なら失敗する' do
89         @lg.url = 'a'*201
90         @lg.should_not be_valid
91       end
92       it 'url形式でないなら失敗する' do
93         @lg.url = 'aaaaaaa'
94         @lg.should_not be_valid
95       end
96     end
97   end
98   
99 end