rad_store 0.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
data/Rakefile ADDED
@@ -0,0 +1,11 @@
1
+ require 'rake_ext'
2
+
3
+ project(
4
+ name: "store",
5
+ official_name: "rad_store",
6
+ summary: "Simple Store",
7
+ gem: true,
8
+
9
+ author: "Alexey Petrushin",
10
+ homepage: "http://github.com/alexeypetrushin/rad_store"
11
+ )
@@ -0,0 +1,22 @@
1
+ class Rad::Store
2
+ attr_writer :order_processing_email
3
+ def order_processing_email; @order_processing_email || raise("key store.order_processing_email not defined!") end
4
+ attr_accessor :currency
5
+ end
6
+
7
+ rad.register :store, depends_on: [:kit, :users] do
8
+ require 'store/gems'
9
+
10
+ rad.configure :web, "#{__FILE__}/../../.." do |c|
11
+ c.routes
12
+ c.locales
13
+ c.asset_paths 'app/static'
14
+ c.template_paths 'app/views'
15
+ c.autoload_paths %w(lib app)
16
+ end
17
+
18
+ # config
19
+ rad.kit.items.push(:product).uniq!
20
+
21
+ Rad::Store.new
22
+ end
@@ -0,0 +1 @@
1
+ currency: '$'
@@ -0,0 +1,12 @@
1
+ require 'kit/factories'
2
+ require 'users/factories'
3
+
4
+ Factory.define :product, class: 'Models::Product', parent: :item do |p|
5
+ p.sequence(:name){|i| "product_#{i}"}
6
+ p.text "cool product"
7
+ end
8
+
9
+ Factory.define :order, class: 'Models::Order' do |o|
10
+ o.name "Alex"
11
+ o.phone "8 920 456 78 31"
12
+ end
data/lib/store/gems.rb ADDED
@@ -0,0 +1,8 @@
1
+ # config.gem 'sunspot', lib: 'sunspot'
2
+ # config.gem 'sunspot_rails', lib: 'sunspot/rails'
3
+ # gem 'activemodel', '~> 3.1'
4
+
5
+ if respond_to? :fake_gem
6
+ fake_gem 'rad_kit'
7
+ fake_gem 'rad_users'
8
+ end
data/lib/store/spec.rb ADDED
@@ -0,0 +1 @@
1
+ require 'store/factories'
data/readme.md ADDED
@@ -0,0 +1,3 @@
1
+ # Store for Rad
2
+
3
+ Copyright (c) Alexey Petrushin http://petrush.in, released under the AGPL license.
@@ -0,0 +1,26 @@
1
+ require 'spec_helper'
2
+
3
+ describe "Notes" do
4
+ with_controllers
5
+ set_controller Controllers::Products
6
+ login_as :manager
7
+
8
+ it_should_behave_like "Items Controller CRUD"
9
+
10
+ it "buy :js" do
11
+ product = Factory.create :product
12
+ pcall :buy, id: product.to_param, format: 'js'
13
+ response.should be_ok
14
+ end
15
+
16
+ it "checkout :js" do
17
+ rad.store.stub!(:order_processing_email).and_return('store_owner@mail.com')
18
+ rad.users.stub!(:email).and_return("my_store.com")
19
+
20
+ product = Factory.create :product
21
+ order = Factory.attributes_for :order
22
+ pcall :checkout, id: product.to_param, order: order, format: 'js'
23
+ sent_letters.size.should == 1
24
+ response.should be_ok
25
+ end
26
+ end
data/spec/emptygit ADDED
File without changes
@@ -0,0 +1,10 @@
1
+ require 'rspec_ext'
2
+
3
+ require 'rad'
4
+ require 'rad/spec'
5
+
6
+ rad.store
7
+
8
+ require 'kit/spec'
9
+ require 'users/spec'
10
+ require 'store/spec'
metadata ADDED
@@ -0,0 +1,76 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: rad_store
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.1
5
+ prerelease:
6
+ platform: ruby
7
+ authors:
8
+ - Alexey Petrushin
9
+ autorequire:
10
+ bindir: bin
11
+ cert_chain: []
12
+ date: 2011-09-22 00:00:00.000000000Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
15
+ name: rad_kit
16
+ requirement: &2773990 !ruby/object:Gem::Requirement
17
+ none: false
18
+ requirements:
19
+ - - ! '>='
20
+ - !ruby/object:Gem::Version
21
+ version: '0'
22
+ type: :runtime
23
+ prerelease: false
24
+ version_requirements: *2773990
25
+ - !ruby/object:Gem::Dependency
26
+ name: rad_users
27
+ requirement: &2773750 !ruby/object:Gem::Requirement
28
+ none: false
29
+ requirements:
30
+ - - ! '>='
31
+ - !ruby/object:Gem::Version
32
+ version: '0'
33
+ type: :runtime
34
+ prerelease: false
35
+ version_requirements: *2773750
36
+ description:
37
+ email:
38
+ executables: []
39
+ extensions: []
40
+ extra_rdoc_files: []
41
+ files:
42
+ - Rakefile
43
+ - readme.md
44
+ - lib/components/store.rb
45
+ - lib/components/store.yml
46
+ - lib/store/factories.rb
47
+ - lib/store/gems.rb
48
+ - lib/store/spec.rb
49
+ - spec/controllers/products_spec.rb
50
+ - spec/emptygit
51
+ - spec/spec_helper.rb
52
+ homepage: http://github.com/alexeypetrushin/rad_store
53
+ licenses: []
54
+ post_install_message:
55
+ rdoc_options: []
56
+ require_paths:
57
+ - lib
58
+ required_ruby_version: !ruby/object:Gem::Requirement
59
+ none: false
60
+ requirements:
61
+ - - ! '>='
62
+ - !ruby/object:Gem::Version
63
+ version: '0'
64
+ required_rubygems_version: !ruby/object:Gem::Requirement
65
+ none: false
66
+ requirements:
67
+ - - ! '>='
68
+ - !ruby/object:Gem::Version
69
+ version: '0'
70
+ requirements: []
71
+ rubyforge_project:
72
+ rubygems_version: 1.8.6
73
+ signing_key:
74
+ specification_version: 3
75
+ summary: Simple Store
76
+ test_files: []