carter 0.5.6 → 0.6.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -10,16 +10,16 @@ class CartItem < ActiveRecord::Base
10
10
  after_update :check_quantity
11
11
 
12
12
  # Match a cart_item by owner and cartable
13
- named_scope :for_cartable, lambda { |cartable|
14
- { :conditions => { :cartable_type => cartable.class.to_s, :cartable_id => cartable.id } }
13
+ scope :for_cartable, lambda { |cartable|
14
+ where({ :cartable_type => cartable.class.to_s, :cartable_id => cartable.id })
15
15
  }
16
16
 
17
- named_scope :for_owner, lambda {|owner|
18
- { :conditions => { :owner_id => (owner ? owner.id : nil), :owner_type => (owner ? owner.class.to_s : nil) } }
17
+ scope :for_owner, lambda {|owner|
18
+ where({ :owner_id => (owner ? owner.id : nil), :owner_type => (owner ? owner.class.to_s : nil) })
19
19
  }
20
20
 
21
- named_scope :for_cartable_and_owner, lambda {|cartable, owner|
22
- { :conditions => for_owner(owner).proxy_options[:conditions].merge!(for_cartable(cartable).proxy_options[:conditions])}
21
+ scope :for_cartable_and_owner, lambda {|cartable, owner|
22
+ for_owner(owner).for_cartable(cartable)
23
23
  }
24
24
 
25
25
  money_composed_column :total_price,
@@ -6,3 +6,4 @@ require 'carter/controller_resource'
6
6
  require 'carter/state_machine'
7
7
  require 'carter/errors'
8
8
  require 'carter/active_record/extensions'
9
+ require 'rails/init'
@@ -9,7 +9,6 @@ module Carter
9
9
 
10
10
  module ClassMethods
11
11
  def init_states
12
-
13
12
  state_machine :state, :initial => :active do
14
13
  state :active, :processing, :failure, :success, :expired
15
14
 
@@ -9,6 +9,8 @@ require 'factory_girl'
9
9
  require 'action_pack'
10
10
  require 'state_machine'
11
11
  require 'money'
12
+ require 'active_support'
13
+ require 'active_support/test_case'
12
14
 
13
15
  Carter::Initializer.setup
14
16
  # Requires supporting files with custom matchers and macros, etc,
@@ -16,7 +16,7 @@ end
16
16
  def load_schema
17
17
 
18
18
  config = YAML::load(IO.read(File.dirname(__FILE__) + '/database.yml'))
19
- ActiveRecord::Base.logger = Logger.new(File.dirname(__FILE__) + "/debug.log")
19
+ # ActiveRecord::Base.logger = Logger.new(File.dirname(__FILE__) + "/debug.log")
20
20
 
21
21
  db_adapter = ENV['DB']
22
22
 
@@ -1,25 +1,43 @@
1
- Factory.sequence :name do |n|
2
- "name_#{n}"
3
- end
4
-
5
- Factory.define :product do |f|
6
- f.sequence(:name) {|n| "name#{n}" }
7
- f.price 2.00
1
+
2
+ FactoryGirl.define do
3
+ sequence :name do |n|
4
+ "name_#{n}"
5
+ end
6
+
7
+ factory :product do
8
+ Factory.next(:name) {|n| "name#{n}" }
9
+ price 2.00
10
+ end
8
11
  end
9
12
 
10
- Factory.define :thing do |f|
11
- f.sequence(:name) {|n| "name#{n}" }
12
- f.price 4.00
13
+ FactoryGirl.define do
14
+ factory :thing do
15
+ Factory.next(:name) {|n| "name#{n}" }
16
+ price 4.00
17
+ end
13
18
  end
14
19
 
15
- Factory.define :user do |f|
16
- f.sequence(:name) {|n| "name#{n}" }
20
+ FactoryGirl.define do
21
+ factory :user do
22
+ Factory.next(:name) {|n| "name#{n}" }
23
+ end
17
24
  end
18
25
 
19
- Factory.define :cart do |f|
20
- f.shopper {|a| a.association(:user) }
26
+ FactoryGirl.define do
27
+
28
+ factory :cart do
29
+ shopper {|a| a.association(:user) }
30
+ state "active"
31
+ after_create {|cart_item| cart_item.send(:initialize_state_machines, :dynamic => :force)}
32
+ end
21
33
  end
22
34
 
23
- Factory.define :cart_item do |f|
24
- f.cart {|a| a.association(:cart) }
35
+ FactoryGirl.define do
36
+
37
+ factory :cart_item do
38
+ state "in_cart"
39
+ cart {|a| a.association(:cart) }
40
+ after_create {|cart_item| cart_item.send(:initialize_state_machines, :dynamic => :force)}
41
+ end
25
42
  end
43
+
metadata CHANGED
@@ -5,9 +5,9 @@ version: !ruby/object:Gem::Version
5
5
  prerelease: false
6
6
  segments:
7
7
  - 0
8
- - 5
9
8
  - 6
10
- version: 0.5.6
9
+ - 0
10
+ version: 0.6.0
11
11
  platform: ruby
12
12
  authors:
13
13
  - Louis Gillies
@@ -15,7 +15,7 @@ autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
17
 
18
- date: 2011-03-10 00:00:00 +00:00
18
+ date: 2011-10-21 00:00:00 +01:00
19
19
  default_executable:
20
20
  dependencies:
21
21
  - !ruby/object:Gem::Dependency
@@ -119,12 +119,12 @@ dependencies:
119
119
  requirements:
120
120
  - - "="
121
121
  - !ruby/object:Gem::Version
122
- hash: 51
122
+ hash: 19
123
123
  segments:
124
+ - 1
124
125
  - 0
125
- - 9
126
- - 4
127
- version: 0.9.4
126
+ - 2
127
+ version: 1.0.2
128
128
  requirement: *id007
129
129
  - !ruby/object:Gem::Dependency
130
130
  prerelease: false
@@ -142,38 +142,6 @@ dependencies:
142
142
  - 5
143
143
  version: 3.1.5
144
144
  requirement: *id008
145
- - !ruby/object:Gem::Dependency
146
- prerelease: false
147
- type: :runtime
148
- name: state_machine
149
- version_requirements: &id009 !ruby/object:Gem::Requirement
150
- none: false
151
- requirements:
152
- - - "="
153
- - !ruby/object:Gem::Version
154
- hash: 51
155
- segments:
156
- - 0
157
- - 9
158
- - 4
159
- version: 0.9.4
160
- requirement: *id009
161
- - !ruby/object:Gem::Dependency
162
- prerelease: false
163
- type: :development
164
- name: money
165
- version_requirements: &id010 !ruby/object:Gem::Requirement
166
- none: false
167
- requirements:
168
- - - ">"
169
- - !ruby/object:Gem::Version
170
- hash: 9
171
- segments:
172
- - 3
173
- - 1
174
- - 5
175
- version: 3.1.5
176
- requirement: *id010
177
145
  description: A really simple shopping cart implementation for rails.
178
146
  email: louisgillies@ygmail.com
179
147
  executables: []