spree 0.0.7 → 0.0.8

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of spree might be problematic. Click here for more details.

Files changed (211) hide show
  1. data/History.txt +5 -0
  2. data/Manifest.txt +158 -21
  3. data/config/hoe.rb +2 -1
  4. data/lib/spree/version.rb +1 -1
  5. data/starter-app/app/views/layouts/application.rhtml +6 -4
  6. data/starter-app/db/sample/line_items.yml +6 -4
  7. data/starter-app/db/sample/{variations.yml → variants.yml} +16 -0
  8. data/starter-app/log/README +1 -0
  9. data/starter-app/public/images/spree.jpg +0 -0
  10. data/starter-app/public/stylesheets/application.css +2 -2
  11. data/starter-app/script/spec +4 -0
  12. data/starter-app/script/spec_server +102 -0
  13. data/starter-app/spec/models/cart_item_spec.rb +50 -0
  14. data/starter-app/spec/models/cart_spec.rb +51 -0
  15. data/starter-app/spec/models/line_item_spec.rb +33 -0
  16. data/starter-app/spec/models/product_spec.rb +29 -0
  17. data/starter-app/spec/rcov.opts +2 -0
  18. data/starter-app/spec/spec.opts +6 -0
  19. data/starter-app/spec/spec_helper.rb +39 -0
  20. data/starter-app/stories/all.rb +4 -0
  21. data/starter-app/stories/helper.rb +3 -0
  22. data/starter-app/vendor/plugins/rspec_on_rails/MIT-LICENSE +31 -0
  23. data/starter-app/vendor/plugins/rspec_on_rails/README +3 -0
  24. data/starter-app/vendor/plugins/rspec_on_rails/Rakefile +9 -0
  25. data/starter-app/vendor/plugins/rspec_on_rails/generators/rspec/CHANGES +1 -0
  26. data/starter-app/vendor/plugins/rspec_on_rails/generators/rspec/rspec_generator.rb +35 -0
  27. data/starter-app/vendor/plugins/rspec_on_rails/generators/rspec/templates/all_stories.rb +4 -0
  28. data/starter-app/vendor/plugins/rspec_on_rails/generators/rspec/templates/previous_failures.txt +0 -0
  29. data/starter-app/vendor/plugins/rspec_on_rails/generators/rspec/templates/rcov.opts +2 -0
  30. data/starter-app/vendor/plugins/rspec_on_rails/generators/rspec/templates/script/spec +4 -0
  31. data/starter-app/vendor/plugins/rspec_on_rails/generators/rspec/templates/script/spec_server +102 -0
  32. data/starter-app/vendor/plugins/rspec_on_rails/generators/rspec/templates/spec.opts +6 -0
  33. data/starter-app/vendor/plugins/rspec_on_rails/generators/rspec/templates/spec_helper.rb +39 -0
  34. data/starter-app/vendor/plugins/rspec_on_rails/generators/rspec/templates/stories_helper.rb +3 -0
  35. data/starter-app/vendor/plugins/rspec_on_rails/generators/rspec_controller/USAGE +33 -0
  36. data/starter-app/vendor/plugins/rspec_on_rails/generators/rspec_controller/rspec_controller_generator.rb +49 -0
  37. data/starter-app/vendor/plugins/rspec_on_rails/generators/rspec_controller/templates/controller_spec.rb +25 -0
  38. data/starter-app/vendor/plugins/rspec_on_rails/generators/rspec_controller/templates/helper_spec.rb +11 -0
  39. data/starter-app/vendor/plugins/rspec_on_rails/generators/rspec_controller/templates/view_spec.rb +12 -0
  40. data/starter-app/vendor/plugins/rspec_on_rails/generators/rspec_model/USAGE +18 -0
  41. data/starter-app/vendor/plugins/rspec_on_rails/generators/rspec_model/rspec_model_generator.rb +30 -0
  42. data/starter-app/vendor/plugins/rspec_on_rails/generators/rspec_model/templates/model_spec.rb +11 -0
  43. data/starter-app/vendor/plugins/rspec_on_rails/generators/rspec_scaffold/rspec_scaffold_generator.rb +167 -0
  44. data/starter-app/vendor/plugins/rspec_on_rails/generators/rspec_scaffold/templates/controller_spec.rb +313 -0
  45. data/starter-app/vendor/plugins/rspec_on_rails/generators/rspec_scaffold/templates/edit_erb_spec.rb +25 -0
  46. data/starter-app/vendor/plugins/rspec_on_rails/generators/rspec_scaffold/templates/helper_spec.rb +11 -0
  47. data/starter-app/vendor/plugins/rspec_on_rails/generators/rspec_scaffold/templates/index_erb_spec.rb +22 -0
  48. data/starter-app/vendor/plugins/rspec_on_rails/generators/rspec_scaffold/templates/new_erb_spec.rb +26 -0
  49. data/starter-app/vendor/plugins/rspec_on_rails/generators/rspec_scaffold/templates/routing_spec.rb +61 -0
  50. data/starter-app/vendor/plugins/rspec_on_rails/generators/rspec_scaffold/templates/show_erb_spec.rb +22 -0
  51. data/starter-app/vendor/plugins/rspec_on_rails/init.rb +9 -0
  52. data/starter-app/vendor/plugins/rspec_on_rails/lib/autotest/discover.rb +1 -0
  53. data/starter-app/vendor/plugins/rspec_on_rails/lib/autotest/rails_rspec.rb +81 -0
  54. data/starter-app/vendor/plugins/rspec_on_rails/lib/spec/rails.rb +51 -0
  55. data/starter-app/vendor/plugins/rspec_on_rails/lib/spec/rails/example.rb +47 -0
  56. data/starter-app/vendor/plugins/rspec_on_rails/lib/spec/rails/example/assigns_hash_proxy.rb +42 -0
  57. data/starter-app/vendor/plugins/rspec_on_rails/lib/spec/rails/example/controller_example_group.rb +255 -0
  58. data/starter-app/vendor/plugins/rspec_on_rails/lib/spec/rails/example/functional_example_group.rb +66 -0
  59. data/starter-app/vendor/plugins/rspec_on_rails/lib/spec/rails/example/helper_example_group.rb +82 -0
  60. data/starter-app/vendor/plugins/rspec_on_rails/lib/spec/rails/example/ivar_proxy.rb +62 -0
  61. data/starter-app/vendor/plugins/rspec_on_rails/lib/spec/rails/example/model_example_group.rb +14 -0
  62. data/starter-app/vendor/plugins/rspec_on_rails/lib/spec/rails/example/rails_example_group.rb +68 -0
  63. data/starter-app/vendor/plugins/rspec_on_rails/lib/spec/rails/example/render_observer.rb +90 -0
  64. data/starter-app/vendor/plugins/rspec_on_rails/lib/spec/rails/example/view_example_group.rb +171 -0
  65. data/starter-app/vendor/plugins/rspec_on_rails/lib/spec/rails/extensions.rb +12 -0
  66. data/starter-app/vendor/plugins/rspec_on_rails/lib/spec/rails/extensions/action_controller/base.rb +14 -0
  67. data/starter-app/vendor/plugins/rspec_on_rails/lib/spec/rails/extensions/action_controller/rescue.rb +21 -0
  68. data/starter-app/vendor/plugins/rspec_on_rails/lib/spec/rails/extensions/action_controller/test_response.rb +11 -0
  69. data/starter-app/vendor/plugins/rspec_on_rails/lib/spec/rails/extensions/action_view/base.rb +27 -0
  70. data/starter-app/vendor/plugins/rspec_on_rails/lib/spec/rails/extensions/active_record/base.rb +30 -0
  71. data/starter-app/vendor/plugins/rspec_on_rails/lib/spec/rails/extensions/object.rb +5 -0
  72. data/starter-app/vendor/plugins/rspec_on_rails/lib/spec/rails/extensions/spec/example/configuration.rb +66 -0
  73. data/starter-app/vendor/plugins/rspec_on_rails/lib/spec/rails/extensions/spec/matchers/have.rb +21 -0
  74. data/starter-app/vendor/plugins/rspec_on_rails/lib/spec/rails/matchers.rb +29 -0
  75. data/starter-app/vendor/plugins/rspec_on_rails/lib/spec/rails/matchers/assert_select.rb +130 -0
  76. data/starter-app/vendor/plugins/rspec_on_rails/lib/spec/rails/matchers/have_text.rb +55 -0
  77. data/starter-app/vendor/plugins/rspec_on_rails/lib/spec/rails/matchers/redirect_to.rb +113 -0
  78. data/starter-app/vendor/plugins/rspec_on_rails/lib/spec/rails/matchers/render_template.rb +70 -0
  79. data/starter-app/vendor/plugins/rspec_on_rails/lib/spec/rails/story_adapter.rb +71 -0
  80. data/starter-app/vendor/plugins/rspec_on_rails/lib/spec/rails/version.rb +23 -0
  81. data/starter-app/vendor/plugins/rspec_on_rails/spec/rails/autotest/mappings_spec.rb +36 -0
  82. data/starter-app/vendor/plugins/rspec_on_rails/spec/rails/autotest/rails_rspec_spec.rb +8 -0
  83. data/starter-app/vendor/plugins/rspec_on_rails/spec/rails/example/assigns_hash_proxy_spec.rb +55 -0
  84. data/starter-app/vendor/plugins/rspec_on_rails/spec/rails/example/configuration_spec.rb +83 -0
  85. data/starter-app/vendor/plugins/rspec_on_rails/spec/rails/example/controller_isolation_spec.rb +43 -0
  86. data/starter-app/vendor/plugins/rspec_on_rails/spec/rails/example/controller_spec_spec.rb +187 -0
  87. data/starter-app/vendor/plugins/rspec_on_rails/spec/rails/example/example_group_factory_spec.rb +112 -0
  88. data/starter-app/vendor/plugins/rspec_on_rails/spec/rails/example/helper_spec_spec.rb +118 -0
  89. data/starter-app/vendor/plugins/rspec_on_rails/spec/rails/example/ivar_proxy_spec.rb +64 -0
  90. data/starter-app/vendor/plugins/rspec_on_rails/spec/rails/example/model_spec_spec.rb +18 -0
  91. data/starter-app/vendor/plugins/rspec_on_rails/spec/rails/example/shared_behaviour_spec.rb +16 -0
  92. data/starter-app/vendor/plugins/rspec_on_rails/spec/rails/example/test_unit_assertion_accessibility_spec.rb +33 -0
  93. data/starter-app/vendor/plugins/rspec_on_rails/spec/rails/example/view_spec_spec.rb +263 -0
  94. data/starter-app/vendor/plugins/rspec_on_rails/spec/rails/extensions/action_controller_rescue_action_spec.rb +54 -0
  95. data/starter-app/vendor/plugins/rspec_on_rails/spec/rails/extensions/action_view_base_spec.rb +48 -0
  96. data/starter-app/vendor/plugins/rspec_on_rails/spec/rails/extensions/active_record_spec.rb +14 -0
  97. data/starter-app/vendor/plugins/rspec_on_rails/spec/rails/matchers/assert_select_spec.rb +783 -0
  98. data/starter-app/vendor/plugins/rspec_on_rails/spec/rails/matchers/description_generation_spec.rb +37 -0
  99. data/starter-app/vendor/plugins/rspec_on_rails/spec/rails/matchers/errors_on_spec.rb +13 -0
  100. data/starter-app/vendor/plugins/rspec_on_rails/spec/rails/matchers/have_text_spec.rb +62 -0
  101. data/starter-app/vendor/plugins/rspec_on_rails/spec/rails/matchers/redirect_to_spec.rb +203 -0
  102. data/starter-app/vendor/plugins/rspec_on_rails/spec/rails/matchers/render_spec.rb +169 -0
  103. data/starter-app/vendor/plugins/rspec_on_rails/spec/rails/mocks/mock_model_spec.rb +65 -0
  104. data/starter-app/vendor/plugins/rspec_on_rails/spec/rails/sample_spec.rb +7 -0
  105. data/starter-app/vendor/plugins/rspec_on_rails/spec/rails/spec_server_spec.rb +89 -0
  106. data/starter-app/vendor/plugins/rspec_on_rails/spec/rails/spec_spec.rb +11 -0
  107. data/starter-app/vendor/plugins/rspec_on_rails/spec/rails_suite.rb +7 -0
  108. data/starter-app/vendor/plugins/rspec_on_rails/spec/spec_helper.rb +46 -0
  109. data/starter-app/vendor/plugins/rspec_on_rails/spec_resources/controllers/action_view_base_spec_controller.rb +2 -0
  110. data/starter-app/vendor/plugins/rspec_on_rails/spec_resources/controllers/controller_spec_controller.rb +56 -0
  111. data/starter-app/vendor/plugins/rspec_on_rails/spec_resources/controllers/redirect_spec_controller.rb +59 -0
  112. data/starter-app/vendor/plugins/rspec_on_rails/spec_resources/controllers/render_spec_controller.rb +26 -0
  113. data/starter-app/vendor/plugins/rspec_on_rails/spec_resources/controllers/rjs_spec_controller.rb +58 -0
  114. data/starter-app/vendor/plugins/rspec_on_rails/spec_resources/helpers/explicit_helper.rb +10 -0
  115. data/starter-app/vendor/plugins/rspec_on_rails/spec_resources/helpers/more_explicit_helper.rb +5 -0
  116. data/starter-app/vendor/plugins/rspec_on_rails/spec_resources/helpers/plugin_application_helper.rb +6 -0
  117. data/starter-app/vendor/plugins/rspec_on_rails/spec_resources/helpers/view_spec_helper.rb +13 -0
  118. data/starter-app/vendor/plugins/rspec_on_rails/spec_resources/views/controller_spec/_partial.rhtml +0 -0
  119. data/starter-app/vendor/plugins/rspec_on_rails/spec_resources/views/controller_spec/action_setting_flash_after_session_reset.rhtml +1 -0
  120. data/starter-app/vendor/plugins/rspec_on_rails/spec_resources/views/controller_spec/action_setting_flash_before_session_reset.rhtml +1 -0
  121. data/starter-app/vendor/plugins/rspec_on_rails/spec_resources/views/controller_spec/action_setting_the_assigns_hash.rhtml +0 -0
  122. data/starter-app/vendor/plugins/rspec_on_rails/spec_resources/views/controller_spec/action_with_errors_in_template.rhtml +1 -0
  123. data/starter-app/vendor/plugins/rspec_on_rails/spec_resources/views/controller_spec/action_with_template.rhtml +1 -0
  124. data/starter-app/vendor/plugins/rspec_on_rails/spec_resources/views/render_spec/_a_partial.rhtml +0 -0
  125. data/starter-app/vendor/plugins/rspec_on_rails/spec_resources/views/render_spec/some_action.js.rjs +1 -0
  126. data/starter-app/vendor/plugins/rspec_on_rails/spec_resources/views/render_spec/some_action.rhtml +0 -0
  127. data/starter-app/vendor/plugins/rspec_on_rails/spec_resources/views/render_spec/some_action.rjs +1 -0
  128. data/starter-app/vendor/plugins/rspec_on_rails/spec_resources/views/rjs_spec/_replacement_partial.rhtml +1 -0
  129. data/starter-app/vendor/plugins/rspec_on_rails/spec_resources/views/rjs_spec/hide_div.rjs +1 -0
  130. data/starter-app/vendor/plugins/rspec_on_rails/spec_resources/views/rjs_spec/hide_page_element.rjs +1 -0
  131. data/starter-app/vendor/plugins/rspec_on_rails/spec_resources/views/rjs_spec/insert_html.rjs +1 -0
  132. data/starter-app/vendor/plugins/rspec_on_rails/spec_resources/views/rjs_spec/replace.rjs +1 -0
  133. data/starter-app/vendor/plugins/rspec_on_rails/spec_resources/views/rjs_spec/replace_html.rjs +1 -0
  134. data/starter-app/vendor/plugins/rspec_on_rails/spec_resources/views/rjs_spec/replace_html_with_partial.rjs +1 -0
  135. data/starter-app/vendor/plugins/rspec_on_rails/spec_resources/views/rjs_spec/visual_effect.rjs +1 -0
  136. data/starter-app/vendor/plugins/rspec_on_rails/spec_resources/views/rjs_spec/visual_toggle_effect.rjs +1 -0
  137. data/starter-app/vendor/plugins/rspec_on_rails/spec_resources/views/tag_spec/no_tags.rhtml +1 -0
  138. data/starter-app/vendor/plugins/rspec_on_rails/spec_resources/views/tag_spec/single_div_with_no_attributes.rhtml +1 -0
  139. data/starter-app/vendor/plugins/rspec_on_rails/spec_resources/views/tag_spec/single_div_with_one_attribute.rhtml +1 -0
  140. data/starter-app/vendor/plugins/rspec_on_rails/spec_resources/views/view_spec/_partial.rhtml +2 -0
  141. data/starter-app/vendor/plugins/rspec_on_rails/spec_resources/views/view_spec/_partial_used_twice.rhtml +0 -0
  142. data/starter-app/vendor/plugins/rspec_on_rails/spec_resources/views/view_spec/_partial_with_local_variable.rhtml +1 -0
  143. data/starter-app/vendor/plugins/rspec_on_rails/spec_resources/views/view_spec/_partial_with_sub_partial.rhtml +1 -0
  144. data/starter-app/vendor/plugins/rspec_on_rails/spec_resources/views/view_spec/_spacer.rhtml +1 -0
  145. data/starter-app/vendor/plugins/rspec_on_rails/spec_resources/views/view_spec/accessor.rhtml +3 -0
  146. data/starter-app/vendor/plugins/rspec_on_rails/spec_resources/views/view_spec/entry_form.rhtml +2 -0
  147. data/starter-app/vendor/plugins/rspec_on_rails/spec_resources/views/view_spec/explicit_helper.rhtml +2 -0
  148. data/starter-app/vendor/plugins/rspec_on_rails/spec_resources/views/view_spec/foo/show.rhtml +1 -0
  149. data/starter-app/vendor/plugins/rspec_on_rails/spec_resources/views/view_spec/implicit_helper.rhtml +2 -0
  150. data/starter-app/vendor/plugins/rspec_on_rails/spec_resources/views/view_spec/multiple_helpers.rhtml +3 -0
  151. data/starter-app/vendor/plugins/rspec_on_rails/spec_resources/views/view_spec/template_with_partial.rhtml +5 -0
  152. data/starter-app/vendor/plugins/rspec_on_rails/spec_resources/views/view_spec/template_with_partial_using_collection.rhtml +3 -0
  153. data/starter-app/vendor/plugins/rspec_on_rails/spec_resources/views/view_spec/template_with_partial_with_array.rhtml +1 -0
  154. data/starter-app/vendor/plugins/rspec_on_rails/stories/all.rb +10 -0
  155. data/starter-app/vendor/plugins/rspec_on_rails/stories/helper.rb +5 -0
  156. data/starter-app/vendor/plugins/rspec_on_rails/stories/steps/people.rb +8 -0
  157. data/starter-app/vendor/plugins/rspec_on_rails/stories/transactions_should_rollback +15 -0
  158. data/starter-app/vendor/plugins/rspec_on_rails/stories/transactions_should_rollback.rb +25 -0
  159. data/starter-app/vendor/plugins/rspec_on_rails/tasks/rspec.rake +137 -0
  160. data/starter-app/vendor/plugins/spree/LICENSE +1 -1
  161. data/starter-app/vendor/plugins/spree/app/controllers/admin/categories_controller.rb +0 -24
  162. data/starter-app/vendor/plugins/spree/app/controllers/admin/products_controller.rb +16 -16
  163. data/starter-app/vendor/plugins/spree/app/controllers/cart_controller.rb +2 -8
  164. data/starter-app/vendor/plugins/spree/app/helpers/admin/products_helper.rb +1 -1
  165. data/starter-app/vendor/plugins/spree/app/helpers/spree/base_helper.rb +2 -2
  166. data/starter-app/vendor/plugins/spree/app/models/cart.rb +7 -20
  167. data/starter-app/vendor/plugins/spree/app/models/cart_item.rb +3 -6
  168. data/starter-app/vendor/plugins/spree/app/models/category.rb +6 -22
  169. data/starter-app/vendor/plugins/spree/app/models/line_item.rb +3 -5
  170. data/starter-app/vendor/plugins/spree/app/models/option_value.rb +1 -1
  171. data/starter-app/vendor/plugins/spree/app/models/product.rb +18 -2
  172. data/starter-app/vendor/plugins/spree/app/models/variant.rb +5 -0
  173. data/starter-app/vendor/plugins/spree/app/views/admin/categories/_form.rhtml +1 -5
  174. data/starter-app/vendor/plugins/spree/app/views/admin/overview/index.rhtml +3 -0
  175. data/starter-app/vendor/plugins/spree/app/views/admin/products/_form.rhtml +2 -2
  176. data/starter-app/vendor/plugins/spree/app/views/admin/products/{_new_variation.rhtml → _new_variant.rhtml} +1 -1
  177. data/starter-app/vendor/plugins/spree/app/views/admin/products/_variants.rhtml +43 -0
  178. data/starter-app/vendor/plugins/spree/app/views/cart/index.rhtml +4 -4
  179. data/starter-app/vendor/plugins/spree/app/views/layouts/admin.rhtml +1 -1
  180. data/starter-app/vendor/plugins/spree/app/views/order_mailer/cancel.rhtml +1 -1
  181. data/starter-app/vendor/plugins/spree/app/views/order_mailer/confirm.rhtml +1 -1
  182. data/starter-app/vendor/plugins/spree/app/views/shared/_order_details.rhtml +1 -1
  183. data/starter-app/vendor/plugins/spree/app/views/store/show.rhtml +30 -29
  184. data/starter-app/vendor/plugins/spree/assets/images/spree/spree.jpg +0 -0
  185. data/starter-app/vendor/plugins/spree/assets/stylesheets/spree-admin.css +1 -1
  186. data/starter-app/vendor/plugins/spree/assets/stylesheets/store/_controller.css +1 -1
  187. data/starter-app/vendor/plugins/spree/db/migrate/002_create_cart_items.rb +1 -2
  188. data/starter-app/vendor/plugins/spree/db/migrate/006_create_line_items.rb +5 -7
  189. data/starter-app/vendor/plugins/spree/db/migrate/011_create_variants.rb +11 -0
  190. data/starter-app/vendor/plugins/spree/db/migrate/018_create_option_values_variants.rb +12 -0
  191. data/starter-app/vendor/plugins/spree/test/unit/product_test.rb +0 -33
  192. metadata +170 -23
  193. data/starter-app/vendor/plugins/spree/app/controllers/admin/variations_controller.rb +0 -73
  194. data/starter-app/vendor/plugins/spree/app/helpers/admin/variations_helper.rb +0 -2
  195. data/starter-app/vendor/plugins/spree/app/models/variation.rb +0 -8
  196. data/starter-app/vendor/plugins/spree/app/views/admin/option_types/test.rhtml +0 -8
  197. data/starter-app/vendor/plugins/spree/app/views/admin/products/_variations.rhtml +0 -41
  198. data/starter-app/vendor/plugins/spree/app/views/admin/variations/_form.rhtml +0 -33
  199. data/starter-app/vendor/plugins/spree/app/views/admin/variations/_option_values.rhtml +0 -5
  200. data/starter-app/vendor/plugins/spree/app/views/admin/variations/list.rhtml +0 -23
  201. data/starter-app/vendor/plugins/spree/app/views/admin/variations/new.rhtml +0 -14
  202. data/starter-app/vendor/plugins/spree/assets/images/spree/spree_logo142x65.gif +0 -0
  203. data/starter-app/vendor/plugins/spree/assets/images/spree/spree_logo245x112.gif +0 -0
  204. data/starter-app/vendor/plugins/spree/db/migrate/011_create_variations.rb +0 -11
  205. data/starter-app/vendor/plugins/spree/db/migrate/018_create_option_values_variations.rb +0 -12
  206. data/starter-app/vendor/plugins/spree/test/functional/admin/variations_controller_test.rb +0 -18
  207. data/starter-app/vendor/plugins/spree/test/integration/variations_test.rb +0 -24
  208. data/starter-app/vendor/plugins/spree/test/unit/cart_item_test.rb +0 -55
  209. data/starter-app/vendor/plugins/spree/test/unit/cart_test.rb +0 -35
  210. data/starter-app/vendor/plugins/spree/test/unit/line_item_test.rb +0 -61
  211. data/starter-app/vendor/plugins/spree/test/unit/variation_test.rb +0 -9
@@ -1,2 +0,0 @@
1
- module Admin::VariationsHelper
2
- end
@@ -1,8 +0,0 @@
1
- class Variation < ActiveRecord::Base
2
- belongs_to :product
3
- has_and_belongs_to_many :option_values
4
- validates_presence_of :product
5
- #has_one :sku
6
- #belongs_to :variable, :polymorphic => true
7
- #validates_presence_of :name
8
- end
@@ -1,8 +0,0 @@
1
- <form>
2
- <% form_remote_tag :url => {:controller => 'option_types', :action => 'select', :id => @product},
3
- :update => 'result',
4
- :complete => visual_effect(:highlight, 'result') do %>
5
- <%= text_field :product, 'name' %>
6
- <%= submit_tag 'Select Variation(s)' %>
7
- <% end %>
8
- </form>
@@ -1,41 +0,0 @@
1
- <h2>Variations</h2>
2
- <%=error_message_on :product, :variations %>
3
- <table class="basic-table">
4
- <thead>
5
- <tr>
6
- <th>Options</th>
7
- <th>Action</th>
8
- </tr>
9
- </thead>
10
- <tbody>
11
- <% @product.variations.each do |v| %>
12
- <tr>
13
- <td><%= variation_options v %></td>
14
- <td>
15
- <%= link_to_remote "Remove",
16
- :url => {:action => 'delete_variation', :id=> @product, :variation_id => v},
17
- :before => "Element.show('busy_indicator')",
18
- :complete => "Element.hide('busy_indicator')",
19
- :update => 'variation-listing' %>
20
- </td>
21
- </tr>
22
- <% end %>
23
- <% if @product.variations.empty? %>
24
- <tr>
25
- <td colspan="3">None Available.</td>
26
- </tr>
27
- <% end %>
28
- </tbody>
29
- </table>
30
- <% unless @product.new_record? or @product.selected_options.empty? %>
31
- <span id="new-var-link">
32
- <%= link_to_remote "New Product Variation",
33
- :url => {:controller => 'products', :action => 'new_variation', :id=> @product},
34
- :before => "Element.hide('new-var-link');Element.show('var_busy_indicator')",
35
- :complete => "Element.hide('var_busy_indicator')",
36
- :update => 'new-variation' %>
37
- </span>
38
- <%= image_tag "spinner.gif", :plugin=>"spree", :style => "display:none", :id => 'var_busy_indicator' %>
39
- <% end %>
40
-
41
- <div id="new-variation"></div>
@@ -1,33 +0,0 @@
1
- <%= error_messages_for 'variation' %>
2
-
3
- <!--[form:variation]-->
4
- <table>
5
- <tr>
6
- <td>Option</td>
7
- <td>
8
- <select name="option_id" id="option_id" style="width:200px">
9
- <%= options_from_collection_for_select(@all_options, :id, :name) -%>
10
- </select>
11
- </td>
12
- <td>Option Value</td>
13
- <td>
14
- <%= render :partial => 'option_values' -%>
15
- </td>
16
- <td><%= link_to_function "+", "alert('foo!')" %></td>
17
- <td>-</td>
18
- </tr>
19
- <tr>
20
- <td>Name: </td>
21
- <td><%= form.text_field :name %></td>
22
- <td>Sku: </td>
23
- <td><%= form.text_field :name %></td>
24
- <td></td>
25
- </tr>
26
- </table>
27
-
28
- <%= observe_field :option_id,
29
- :update => 'ajaxWrapper',
30
- :url => {:action => 'option_values', :only_path => false},
31
- :with => "'option_id=' +value" -%>
32
-
33
- <!--[eoform:variation]-->
@@ -1,5 +0,0 @@
1
- <div id="ajaxWrapper">
2
- <select name="option_value" id="option_value" style="width:200px">
3
- <%= options_from_collection_for_select(@option.option_values, :id, :name) -%>
4
- </select>
5
- </div>
@@ -1,23 +0,0 @@
1
- <h1>Listing attributes</h1>
2
- <table>
3
- <tr>
4
- <td><b>Name</b></td>
5
- <td/>
6
- </tr>
7
- <% for attribute in @product.attributes %>
8
- <tr>
9
- <td valign="top"><%= attribute.name -%></td>
10
- <td valign="top">
11
- <%= link_to "Show", :action => 'show', :id => attribute -%>
12
- <%= link_to "Edit", :action => 'edit', :id => attribute -%>
13
- <%= link_to "Delete",
14
- {:action => 'destroy', :id => attribute},
15
- {:confirm => "Are you sure you want to delete this option?"} -%>
16
- </td>
17
- </tr>
18
- <% end %>
19
- </table>
20
-
21
- <br />
22
-
23
- <%= link_to 'New Option', :action => 'new' -%>
@@ -1,14 +0,0 @@
1
- <b>New Variation</b>
2
- <br/>
3
- <% fields_for :variation, @variation do |form| %>
4
- <table>
5
- <tr>
6
- <td width="135">Name: </td>
7
- <td><%= form.text_field :name %></td>
8
- </tr>
9
- <tr>
10
- <td>Price Effect: </td>
11
- <td><%= form.text_field :price_effect %></td>
12
- </tr>
13
- </table>
14
- <% end %>
@@ -1,11 +0,0 @@
1
- class CreateVariations < ActiveRecord::Migration
2
- def self.up
3
- create_table :variations do |t|
4
- t.integer :product_id
5
- end
6
- end
7
-
8
- def self.down
9
- drop_table :variations
10
- end
11
- end
@@ -1,12 +0,0 @@
1
- class CreateOptionValuesVariations < ActiveRecord::Migration
2
- def self.up
3
- create_table :option_values_variations, :id=>false do |t|
4
- t.integer :variation_id
5
- t.integer :option_value_id
6
- end
7
- end
8
-
9
- def self.down
10
- drop_table :option_values_variations
11
- end
12
- end
@@ -1,18 +0,0 @@
1
- require File.dirname(__FILE__) + '/../../test_helper'
2
- require 'admin/variations_controller'
3
-
4
- # Re-raise errors caught by the controller.
5
- class Admin::VariationsController; def rescue_action(e) raise e end; end
6
-
7
- class Admin::VariationsControllerTest < Test::Unit::TestCase
8
- def setup
9
- @controller = Admin::VariationsController.new
10
- @request = ActionController::TestRequest.new
11
- @response = ActionController::TestResponse.new
12
- end
13
-
14
- # Replace this with your real tests.
15
- def test_truth
16
- assert true
17
- end
18
- end
@@ -1,24 +0,0 @@
1
- require "#{File.dirname(__FILE__)}/../test_helper"
2
-
3
- class VariationsTest < ActionController::IntegrationTest
4
- fixtures :categories, :variations, :products
5
-
6
- def test_var_save_with_cat
7
- c1 = categories(:pants)
8
- c2 = categories(:hats)
9
- v = variations(:s)
10
- c1.parent = c2
11
- c1.save
12
- c1.reload
13
- assert_raise(ActiveRecord::RecordNotFound) {Variation.find(v.id)}
14
- end
15
-
16
- def test_var_save_with_product
17
- c = categories(:pants)
18
- p = products(:foo_shirt)
19
- v = variations(:l)
20
- p.category = c
21
- p.save
22
- assert_raise(ActiveRecord::RecordNotFound) {Variation.find(v.id)}
23
- end
24
- end
@@ -1,55 +0,0 @@
1
- require File.dirname(__FILE__) + '/../test_helper'
2
-
3
- class CartItemTest < Test::Unit::TestCase
4
- fixtures :products
5
-
6
- PRICE = 10
7
- PRICE_EFFECT = 5
8
-
9
- def setup
10
- @cart_item = CartItem.new
11
- end
12
-
13
- def test_invalid_with_empty_attributes
14
- assert !@cart_item.valid?
15
- assert @cart_item.errors.invalid?(:product), "product required"
16
- assert @cart_item.errors.invalid?(:quantity), "quantity required"
17
- end
18
-
19
- def test_invalid_quantity
20
- @cart_item.quantity = "foo"
21
- @cart_item.product = products(:ror_tote)
22
- assert !@cart_item.valid?
23
- assert @cart_item.errors.invalid?(:quantity), "quantity must be numeric"
24
-
25
- @cart_item.quantity = 0.5
26
- assert !@cart_item.valid?
27
- assert @cart_item.errors.invalid?(:quantity), "quantity must be an integer"
28
-
29
- @cart_item.quantity = -1
30
- assert !@cart_item.valid?
31
- assert @cart_item.errors.invalid?(:quantity), "quantity must be positive"
32
- end
33
-
34
- def test_valid_quantity
35
- @cart_item.quantity = 1
36
- @cart_item.product = products(:ror_tote)
37
- assert @cart_item.valid?, "positive integer quantity should be allowed"
38
- end
39
-
40
- def test_increment_quantity
41
- @cart_item.quantity = 0
42
- @cart_item.increment_quantity
43
- assert_equal 1, @cart_item.quantity
44
- end
45
-
46
- def test_price
47
- p = Product.new
48
- p.stubs(:price).returns PRICE
49
- p.stubs(:quantity).returns 1
50
- @cart_item.product = p
51
- @cart_item.variation = Variation.new(:price_effect => PRICE_EFFECT)
52
- assert_equal PRICE + PRICE_EFFECT, @cart_item.price
53
- end
54
-
55
- end
@@ -1,35 +0,0 @@
1
- require File.dirname(__FILE__) + '/../test_helper'
2
-
3
- class CartTest < Test::Unit::TestCase
4
-
5
- def setup
6
- @cart = Cart.new
7
- end
8
-
9
- def test_add_product
10
- product = Product.new
11
- @cart.add_product(product)
12
- cart_item = @cart.cart_items.first
13
- assert_equal product, cart_item.product, "expected same product after adding to cart"
14
- assert_equal 1, cart_item.quantity
15
- end
16
-
17
- def test_add_product_already_in_cart
18
- product = Product.new(:id => 1)
19
- product.expects(:increment_quantity).returns 2
20
- CartItem.expects(:find).returns product
21
- @cart.add_product(product)
22
- end
23
-
24
- def test_total
25
- item1 = CartItem.new
26
- item1.stubs(:price).returns 10
27
- item1.stubs(:quantity).returns 2
28
- item2 = CartItem.new
29
- item2.stubs(:price).returns 100
30
- item2.stubs(:quantity).returns 1
31
- @cart.cart_items << item1
32
- @cart.cart_items << item2
33
- assert_equal 120, @cart.total
34
- end
35
- end
@@ -1,61 +0,0 @@
1
- require File.dirname(__FILE__) + '/../test_helper'
2
-
3
- class LineItemTest < Test::Unit::TestCase
4
-
5
- PRICE = 10
6
- POS_PRICE_EFFECT = 5
7
- NEG_PRICE_EFFECT = -10
8
- QUANTITY = 2
9
-
10
- def setup
11
- @p = Product.new
12
- @p.stubs(:price).returns(PRICE)
13
- end
14
-
15
- def test_empty_line_item
16
- line_item = LineItem.new
17
- assert !line_item.valid?
18
- assert line_item.errors.invalid?(:product)
19
- assert line_item.errors.invalid?(:quantity)
20
- assert line_item.errors.invalid?(:price)
21
- end
22
-
23
- def test_from_cart_item
24
- ci = CartItem.new
25
- ci.expects(:quantity).returns(QUANTITY)
26
- ci.expects(:product).returns(@p).at_least_once
27
- li = LineItem.from_cart_item(ci)
28
- assert li.price == 10
29
- assert li.quantity == QUANTITY
30
- assert li.product == @p
31
- end
32
-
33
- def test_total
34
- li = LineItem.new
35
- li.product = @p
36
- li.quantity = 3
37
- li.price = PRICE
38
- assert_equal 3 * PRICE, li.total
39
- end
40
-
41
- def test_positive_price_variation
42
- v = Variation.new(:price_effect => POS_PRICE_EFFECT)
43
- ci = CartItem.new
44
- ci.stubs(:product).returns @p
45
- ci.stubs(:variation).returns v
46
- ci.stubs(:quantity).returns QUANTITY
47
- li = LineItem.from_cart_item(ci)
48
- assert_equal li.price, PRICE + POS_PRICE_EFFECT
49
- end
50
-
51
- def test_negative_price_variation
52
- v = Variation.new(:price_effect => NEG_PRICE_EFFECT)
53
- ci = CartItem.new
54
- ci.stubs(:product).returns @p
55
- ci.stubs(:variation).returns v
56
- ci.stubs(:quantity).returns QUANTITY
57
- li = LineItem.from_cart_item(ci)
58
- assert_equal li.price, PRICE + NEG_PRICE_EFFECT
59
- end
60
-
61
- end
@@ -1,9 +0,0 @@
1
- require File.dirname(__FILE__) + '/../test_helper'
2
-
3
- class VariationTest < Test::Unit::TestCase
4
-
5
- def test_truth
6
- true
7
- end
8
-
9
- end