OSDN Git Service

fix peta spec
[pettanr/pettanr.git] / spec / factories / license.rb
index 4e59cb4..50b38a1 100644 (file)
@@ -1,7 +1,6 @@
 # -*- encoding: utf-8 -*-\r
 FactoryGirl.define do\r
-  factory :license001, :class => License do |i|\r
-    i.license_group_id 8\r
+  factory :license_cc_by, :class => License do |i|\r
     i.license_group_module_name 'PettanrCreativeCommonsV30Licenses'\r
     i.name 'CreativeCommonsV30Licenses:BY@us'\r
     i.caption 'BY'\r
@@ -10,115 +9,141 @@ FactoryGirl.define do
     i.license_group_settings '{"open":0,"commercial":1,"official":0,"attribution":1,"derive":1,"thumbnail":1,"gif_convert":-1,"reverse":-1,"sync_vh":1,"overlap":1}'\r
     i.credit_picture_settings '{"source_url_btn_id":1,"source_url_off_btn_id":2}'\r
   end\r
-  factory :license002, :class => License do |i|\r
-    i.license_group_id 8\r
+  factory :license_cc_bync, :class => License do |i|\r
     i.license_group_module_name 'PettanrCreativeCommonsV30Licenses'\r
     i.name 'CreativeCommonsV30Licenses:BY-NC@us'\r
     i.caption 'BY-NC'\r
-    i.system_picture_id 4\r
     i.url 'http://creativecommons.org/licenses/by-nc/3.0/'\r
     i.license_group_settings '{"open":0,"commercial":-1,"official":0,"attribution":1,"derive":1,"thumbnail":1,"gif_convert":-1,"reverse":-1,"sync_vh":1,"overlap":1}'\r
     i.credit_picture_settings '{"source_url_btn_id":1,"source_url_off_btn_id":2}'\r
   end\r
-  factory :license003, :class => License do |i|\r
-    i.license_group_id 8\r
+  factory :license_cc_bysa, :class => License do |i|\r
     i.license_group_module_name 'PettanrCreativeCommonsV30Licenses'\r
     i.name 'CreativeCommonsV30Licenses:BY-SA@us'\r
     i.caption 'BY-SA'\r
-    i.system_picture_id 5\r
     i.url 'http://creativecommons.org/licenses/by-sa/3.0/'\r
     i.license_group_settings '{"open":0,"commercial":1,"official":0,"attribution":1,"derive":1,"thumbnail":1,"gif_convert":-1,"reverse":-1,"sync_vh":1,"overlap":1}'\r
     i.credit_picture_settings '{"source_url_btn_id":1,"source_url_off_btn_id":2}'\r
   end\r
-  factory :license004, :class => License do |i|\r
-    i.license_group_id 8\r
+  factory :license_cc_byncsa, :class => License do |i|\r
     i.license_group_module_name 'PettanrCreativeCommonsV30Licenses'\r
     i.name 'CreativeCommonsV30Licenses:BY-NC-SA@us'\r
     i.caption 'BY-NC-SA'\r
-    i.system_picture_id 6\r
     i.url 'http://creativecommons.org/licenses/by-nc-sa/3.0/'\r
     i.license_group_settings '{"open":0,"commercial":-1,"official":0,"attribution":1,"derive":1,"thumbnail":1,"gif_convert":-1,"reverse":-1,"sync_vh":1,"overlap":1}'\r
     i.credit_picture_settings '{"source_url_btn_id":1,"source_url_off_btn_id":2}'\r
   end\r
-  factory :license005, :class => License do |i|\r
-    i.license_group_id 8\r
+  factory :license_cc_bynd, :class => License do |i|\r
     i.license_group_module_name 'PettanrCreativeCommonsV30Licenses'\r
     i.name 'CreativeCommonsV30Licenses:BY-ND@us'\r
     i.caption 'BY-ND'\r
-    i.system_picture_id 7\r
     i.url 'http://creativecommons.org/licenses/by-nd/3.0/'\r
     i.license_group_settings '{"open":0,"commercial":1,"official":0,"attribution":1,"derive":-1,"thumbnail":-1,"gif_convert":-1,"reverse":-1,"sync_vh":1,"overlap":1}'\r
     i.credit_picture_settings '{"source_url_btn_id":1,"source_url_off_btn_id":2}'\r
   end\r
-  factory :license006, :class => License do |i|\r
-    i.license_group_id 8\r
+  factory :license_cc_byndnc, :class => License do |i|\r
     i.license_group_module_name 'PettanrCreativeCommonsV30Licenses'\r
     i.name 'CreativeCommonsV30Licenses:BY-ND-NC@us'\r
     i.caption 'BY-ND-NC'\r
-    i.system_picture_id 8\r
     i.url 'http://creativecommons.org/licenses/by-nc-nd/3.0/'\r
     i.license_group_settings '{"open":0,"commercial":-1,"official":0,"attribution":1,"derive":-1,"thumbnail":-1,"gif_convert":-1,"reverse":-1,"sync_vh":1,"overlap":1}'\r
     i.credit_picture_settings '{"source_url_btn_id":1,"source_url_off_btn_id":2}'\r
   end\r
-  factory :license007, :class => License do |i|\r
-    i.license_group_id 7\r
+  factory :license_pc_by, :class => License do |i|\r
     i.license_group_module_name 'PettanrPettanCommonsV01Licenses'\r
     i.name 'PettanCommonsV01Licenses:BY@pettanr'\r
     i.caption 'BY'\r
-    i.system_picture_id 9\r
     i.url 'https://github.com/yasushiito/pettanr_pcom_v01_licenses/wiki/BY'\r
     i.license_group_settings '{"open":0,"commercial":1,"official":0,"attribution":1,"derive":1,"thumbnail":1,"gif_convert":1,"reverse":1,"sync_vh":1,"overlap":1}'\r
     i.credit_picture_settings '{"source_url_btn_id":1,"source_url_off_btn_id":2}'\r
+    trait :with_system_picture do\r
+      after(:build) do |license, evaluator|\r
+        source_url_btn = SystemPicture.find_by_md5('05722b184172adef876604239842c18b') || create(:system_picture_source_url_btn)\r
+        source_url_off_btn = SystemPicture.find_by_md5('00c4246c193c7cec0425d44e34c43828') || create(:system_picture_source_url_off_btn)\r
+        license.system_picture_id = create(:system_picture_license_pc_by).id\r
+      end\r
+    end\r
+    factory :license_pc_by_with_system_picture, traits: [:with_system_picture]\r
   end\r
-  factory :license008, :class => License do |i|\r
-    i.license_group_id 7\r
+  factory :license_pc_bync, :class => License do |i|\r
     i.license_group_module_name 'PettanrPettanCommonsV01Licenses'\r
     i.name 'PettanCommonsV01Licenses:BY-NC@pettanr'\r
     i.caption 'BY-NC'\r
-    i.system_picture_id 10\r
     i.url 'https://github.com/yasushiito/pettanr_pcom_v01_licenses/wiki/BY_NC'\r
     i.license_group_settings '{"open":0,"commercial":-1,"official":0,"attribution":1,"derive":1,"thumbnail":1,"gif_convert":1,"reverse":1,"sync_vh":1,"overlap":1}'\r
     i.credit_picture_settings '{"source_url_btn_id":1,"source_url_off_btn_id":2}'\r
+    trait :with_system_picture do\r
+      after(:build) do |license, evaluator|\r
+        source_url_btn = SystemPicture.find_by_md5('05722b184172adef876604239842c18b') || create(:system_picture_source_url_btn)\r
+        source_url_off_btn = SystemPicture.find_by_md5('00c4246c193c7cec0425d44e34c43828') || create(:system_picture_source_url_off_btn)\r
+        license.system_picture_id = create(:system_picture_license_pc_bync).id\r
+      end\r
+    end\r
+    factory :license_pc_bync_with_system_picture, traits: [:with_system_picture]\r
   end\r
-  factory :license009, :class => License do |i|\r
-    i.license_group_id 7\r
+  factory :license_pc_bysa, :class => License do |i|\r
     i.license_group_module_name 'PettanrPettanCommonsV01Licenses'\r
     i.name 'PettanCommonsV01Licenses:BY-SA@pettanr'\r
     i.caption 'BY-SA'\r
-    i.system_picture_id 11\r
     i.url 'https://github.com/yasushiito/pettanr_pcom_v01_licenses/wiki/BY_SA'\r
     i.license_group_settings '{"open":0,"commercial":1,"official":0,"attribution":1,"derive":1,"thumbnail":1,"gif_convert":1,"reverse":1,"sync_vh":1,"overlap":1}'\r
     i.credit_picture_settings '{"source_url_btn_id":1,"source_url_off_btn_id":2}'\r
+    trait :with_system_picture do\r
+      after(:build) do |license, evaluator|\r
+        source_url_btn = SystemPicture.find_by_md5('05722b184172adef876604239842c18b') || create(:system_picture_source_url_btn)\r
+        source_url_off_btn = SystemPicture.find_by_md5('00c4246c193c7cec0425d44e34c43828') || create(:system_picture_source_url_off_btn)\r
+        license.system_picture_id = create(:system_picture_license_pc_bysa).id\r
+      end\r
+    end\r
+    factory :license_pc_bysa_with_system_picture, traits: [:with_system_picture]\r
   end\r
-  factory :license010, :class => License do |i|\r
-    i.license_group_id 7\r
+  factory :license_pc_byncsa, :class => License do |i|\r
     i.license_group_module_name 'PettanrPettanCommonsV01Licenses'\r
     i.name 'PettanCommonsV01Licenses:BY-NC-SA@pettanr'\r
     i.caption 'BY-NC-SA'\r
-    i.system_picture_id 12\r
     i.url 'https://github.com/yasushiito/pettanr_pcom_v01_licenses/wiki/BY_NC_SA'\r
     i.license_group_settings '{"open":0,"commercial":-1,"official":0,"attribution":1,"derive":1,"thumbnail":1,"gif_convert":1,"reverse":1,"sync_vh":1,"overlap":1}'\r
     i.credit_picture_settings '{"source_url_btn_id":1,"source_url_off_btn_id":2}'\r
+    trait :with_system_picture do\r
+      after(:build) do |license, evaluator|\r
+        source_url_btn = SystemPicture.find_by_md5('05722b184172adef876604239842c18b') || create(:system_picture_source_url_btn)\r
+        source_url_off_btn = SystemPicture.find_by_md5('00c4246c193c7cec0425d44e34c43828') || create(:system_picture_source_url_off_btn)\r
+        license.system_picture_id = create(:system_picture_license_pc_byncsa).id\r
+      end\r
+    end\r
+    factory :license_pc_byncsa_with_system_picture, traits: [:with_system_picture]\r
   end\r
-  factory :license011, :class => License do |i|\r
-    i.license_group_id 7\r
+  factory :license_pc_bynd, :class => License do |i|\r
     i.license_group_module_name 'PettanrPettanCommonsV01Licenses'\r
     i.name 'PettanCommonsV01Licenses:BY-ND@pettanr'\r
     i.caption 'BY-ND'\r
-    i.system_picture_id 13\r
     i.url 'https://github.com/yasushiito/pettanr_pcom_v01_licenses/wiki/BY_ND'\r
     i.license_group_settings '{"open":0,"commercial":1,"official":0,"attribution":1,"derive":-1,"thumbnail":1,"gif_convert":1,"reverse":1,"sync_vh":1,"overlap":1}'\r
     i.credit_picture_settings '{"source_url_btn_id":1,"source_url_off_btn_id":2}'\r
+    trait :with_system_picture do\r
+      after(:build) do |license, evaluator|\r
+        source_url_btn = SystemPicture.find_by_md5('05722b184172adef876604239842c18b') || create(:system_picture_source_url_btn)\r
+        source_url_off_btn = SystemPicture.find_by_md5('00c4246c193c7cec0425d44e34c43828') || create(:system_picture_source_url_off_btn)\r
+        license.system_picture_id = create(:system_picture_license_pc_bynd).id\r
+      end\r
+    end\r
+    factory :license_pc_bynd_with_system_picture, traits: [:with_system_picture]\r
   end\r
-  factory :license012, :class => License do |i|\r
-    i.license_group_id 7\r
+  factory :license_pc_byndnc, :class => License do |i|\r
     i.license_group_module_name 'PettanrPettanCommonsV01Licenses'\r
     i.name 'PettanCommonsV01Licenses:BY-ND-NC@pettanr'\r
     i.caption 'BY-ND-NC'\r
-    i.system_picture_id 14\r
     i.url 'https://github.com/yasushiito/pettanr_pcom_v01_licenses/wiki/BY_ND_NC'\r
     i.license_group_settings '{"open":0,"commercial":-1,"official":0,"attribution":1,"derive":-1,"thumbnail":1,"gif_convert":1,"reverse":1,"sync_vh":1,"overlap":1}'\r
     i.credit_picture_settings '{"source_url_btn_id":1,"source_url_off_btn_id":2}'\r
+    trait :with_system_picture do\r
+      after(:build) do |license, evaluator|\r
+        source_url_btn = SystemPicture.find_by_md5('05722b184172adef876604239842c18b') || create(:system_picture_source_url_btn)\r
+        source_url_off_btn = SystemPicture.find_by_md5('00c4246c193c7cec0425d44e34c43828') || create(:system_picture_source_url_off_btn)\r
+        license.system_picture_id = create(:system_picture_license_pc_byndnc).id\r
+      end\r
+    end\r
+    factory :license_pc_byndnc_with_system_picture, traits: [:with_system_picture]\r
   end\r
   factory :license013, :class => License do |i|\r
     i.license_group_id 9\r