OSDN Git Service

fix spec
[pettanr/pettanr.git] / spec / support / peta_macros.rb
1 module ItemMacros\r
2   # 文字コード検証\r
3   def valid_encode? item, text_column_names\r
4     text_column_names.each do |name|\r
5       expect(item.class.valid_encode_columns).to include name\r
6       item.attributes[name] = "\x83G\x83r\x83]\x83D"\r
7       # バージョンが上がって問題なくなったかもしれない\r
8       #expect { item.valid_encode }.to raise_error(Pettanr::BadRequest)\r
9     end\r
10   end\r
11   \r
12   def define_child_models? model, models\r
13     expect(model.child_models.size).to eq models.size\r
14     models.each do |m|\r
15       expect(model.child_models).to include m\r
16     end\r
17   end\r
18   \r
19   def define_child_element_names? model, item_names\r
20     expect(model.child_models.size).to eq item_names.size\r
21     item_names.each do |m|\r
22       expect(model.child_element_names).to include m\r
23     end\r
24   end\r
25   \r
26   def define_my_manifest? model\r
27     expect(model.my_peta).to eq Manifest.manifest.items[model.item_name]\r
28     expect(model.my_controller).to eq Manifest.manifest.controllers[model.table_name]\r
29     expect(model.my_manifest).to eq Manifest.manifest.models[model.item_name]\r
30   end\r
31   \r
32   # マニフェストを取得するためのショートカット\r
33   def define_my_manifest? model\r
34     expect(model.my_peta).to eq Manifest.manifest.items[model.item_name]\r
35     expect(model.my_controller).to eq Manifest.manifest.controllers[model.table_name]\r
36     expect(model.my_manifest).to eq Manifest.manifest.models[model.item_name]\r
37   end\r
38   \r
39   # 名前の活用が正しく変化していることを確認している\r
40   def set_name? item, subjects\r
41     subjects.each do |name, value|\r
42       expect(item.__send__(name)).to eq value\r
43     end\r
44   end\r
45   \r
46   # 拡張カラムなのかを確認している\r
47   def set_extend_column? model, subjects\r
48     subjects.each do |name, value|\r
49       expect(model.extend_column?(name)).to eq value\r
50     end\r
51   end\r
52   \r
53   # ブースターが用意されているか、名前だけでも確認する\r
54   def set_boosters? item, names\r
55     item.boosts 'post'\r
56     item.boosters.keys.each do |name|\r
57       expect(name).to include names\r
58     end\r
59   end\r
60   \r
61   # 拡張データを畳み込めるか確認する\r
62   def fold_extend_settings? model, attr, extend_column_names\r
63     model.fold_extend_settings attr\r
64     extend_column_names.each do |name|\r
65       expect(attr[name]).to be_kind_of String\r
66     end\r
67   end\r
68   \r
69   def define_test item\r
70     expect {expect(item.dom_id)}.not_to raise_error\r
71     expect {expect(item.editize?)}.not_to raise_error\r
72     expect {expect(item.dom_pool_type)}.not_to raise_error\r
73     expect {expect(item.merge_dom_item_id({}))}.not_to raise_error\r
74     expect {expect(item.tag_attributes)}.not_to raise_error\r
75     expect {expect(item.field_tag_attributes(:hoge))}.not_to raise_error\r
76     expect {expect(item.post_attribute_key)}.not_to raise_error\r
77   end\r
78   \r
79 end\r
80 \r
81 module ContentMacros\r
82   # ぶら下がるそれぞれのリーフを取得\r
83   def define_leaf_items? item, leaf_models\r
84     expect(item.respond_to?(:leaf_items)).to be true\r
85     leaf_models.each do |model|\r
86       expect(item.leaf_items(model)).to_not be_empty\r
87       expect(item.leaf_items(model).first.class).to eq model\r
88     end\r
89   end\r
90   \r
91   def define_leafs_items? item, leaf_models\r
92     expect(item.respond_to?(:leafs_items)).to be true\r
93     expect(item.leafs_items).to_not be_empty\r
94     item.leafs_items.map {|i| i.class }.each do |model|\r
95       expect(leaf_models).to include model\r
96     end\r
97   end\r
98   \r
99 end\r
100 \r
101 module BinderMacros\r
102   # ぶら下がるそれぞれのリーフを取得\r
103   def define_leaf_items? item, leaf_models\r
104     expect(item.respond_to?(:leaf_items)).to be true\r
105     leaf_models.each do |model|\r
106       expect(item.leaf_items(model)).to_not be_empty\r
107       expect(item.leaf_items(model).first.class).to eq model\r
108     end\r
109   end\r
110   \r
111   def define_leafs_items? item, leaf_models\r
112     expect(item.respond_to?(:leafs_items)).to be true\r
113     expect(item.leafs_items).to_not be_empty\r
114     item.leafs_items.map {|i| i.class }.each do |model|\r
115       expect(leaf_models).to include model\r
116     end\r
117   end\r
118   \r
119 end\r
120 \r
121 module LeafMacros\r
122   # ぶら下がるそれぞれのリーフを取得\r
123   def define_leaf_items? item, leaf_models\r
124     expect(item.respond_to?(:leaf_items)).to be true\r
125     leaf_models.each do |model|\r
126       expect(item.leaf_items(model)).to_not be_empty\r
127       expect(item.leaf_items(model).first.class).to eq model\r
128     end\r
129   end\r
130   \r
131   def define_leafs_items? item, leaf_models\r
132     expect(item.respond_to?(:leafs_items)).to be true\r
133     expect(item.leafs_items).to_not be_empty\r
134     item.leafs_items.map {|i| i.class }.each do |model|\r
135       expect(leaf_models).to include model\r
136     end\r
137   end\r
138   \r
139 end\r
140 \r
141 module RootMacros\r
142   # ぶら下がるそれぞれのリーフを取得\r
143   def define_leaf_items? item, leaf_models\r
144     expect(item.respond_to?(:leaf_items)).to be true\r
145     leaf_models.each do |model|\r
146       expect(item.leaf_items(model)).to_not be_empty\r
147       expect(item.leaf_items(model).first.class).to eq model\r
148     end\r
149   end\r
150   \r
151   def define_leafs_items? item, leaf_models\r
152     expect(item.respond_to?(:leafs_items)).to be true\r
153     expect(item.leafs_items).to_not be_empty\r
154     item.leafs_items.map {|i| i.class }.each do |model|\r
155       expect(leaf_models).to include model\r
156     end\r
157   end\r
158   \r
159 end\r
160 \r
161 module ElementMacros\r
162   # ぶら下がるそれぞれのリーフを取得\r
163   def define_leaf_items? item, leaf_models\r
164     expect(item.respond_to?(:leaf_items)).to be true\r
165     leaf_models.each do |model|\r
166       expect(item.leaf_items(model)).to_not be_empty\r
167       expect(item.leaf_items(model).first.class).to eq model\r
168     end\r
169   end\r
170   \r
171   def define_leafs_items? item, leaf_models\r
172     expect(item.respond_to?(:leafs_items)).to be true\r
173     expect(item.leafs_items).to_not be_empty\r
174     item.leafs_items.map {|i| i.class }.each do |model|\r
175       expect(leaf_models).to include model\r
176     end\r
177   end\r
178   \r
179 end\r
180 \r
181 module OwnerMacros\r
182   # ぶら下がるそれぞれのリーフを取得\r
183   def define_leaf_items? item, leaf_models\r
184     expect(item.respond_to?(:leaf_items)).to be true\r
185     leaf_models.each do |model|\r
186       expect(item.leaf_items(model)).to_not be_empty\r
187       expect(item.leaf_items(model).first.class).to eq model\r
188     end\r
189   end\r
190   \r
191   def define_leafs_items? item, leaf_models\r
192     expect(item.respond_to?(:leafs_items)).to be true\r
193     expect(item.leafs_items).to_not be_empty\r
194     item.leafs_items.map {|i| i.class }.each do |model|\r
195       expect(leaf_models).to include model\r
196     end\r
197   end\r
198   \r
199 end\r
200 \r
201 module SystemResourceMacros\r
202   # ぶら下がるそれぞれのリーフを取得\r
203   def define_leaf_items? item, leaf_models\r
204     expect(item.respond_to?(:leaf_items)).to be true\r
205     leaf_models.each do |model|\r
206       expect(item.leaf_items(model)).to_not be_empty\r
207       expect(item.leaf_items(model).first.class).to eq model\r
208     end\r
209   end\r
210   \r
211   def define_leafs_items? item, leaf_models\r
212     expect(item.respond_to?(:leafs_items)).to be true\r
213     expect(item.leafs_items).to_not be_empty\r
214     item.leafs_items.map {|i| i.class }.each do |model|\r
215       expect(leaf_models).to include model\r
216     end\r
217   end\r
218   \r
219 end\r
220 \r
221 module TemplateMacros\r
222   # ぶら下がるそれぞれのリーフを取得\r
223   def define_leaf_items? item, leaf_models\r
224     expect(item.respond_to?(:leaf_items)).to be true\r
225     leaf_models.each do |model|\r
226       expect(item.leaf_items(model)).to_not be_empty\r
227       expect(item.leaf_items(model).first.class).to eq model\r
228     end\r
229   end\r
230   \r
231   def define_leafs_items? item, leaf_models\r
232     expect(item.respond_to?(:leafs_items)).to be true\r
233     expect(item.leafs_items).to_not be_empty\r
234     item.leafs_items.map {|i| i.class }.each do |model|\r
235       expect(leaf_models).to include model\r
236     end\r
237   end\r
238   \r
239 end\r
240 \r