kart 0.3.0 → 0.4.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: d2bf83dd15cc1524891228328237e59c3b7beda4f3e0b9e9ed6a6e971be3ee4a
4
- data.tar.gz: e991e6732480c45cc80462b384b7f70e1aef7f7ba558c5d5dd8f614580fce7c3
3
+ metadata.gz: 0e8990c10fd06d1781b7c75933f757cceeb69d56729b4f0c444792854cd3a550
4
+ data.tar.gz: 5b688f8e2b0b50c60e858fcb904c138e7262d84258dc6cfcd2fec5c9b9c5d0f1
5
5
  SHA512:
6
- metadata.gz: 8d35dfd55dce137c04cd5c0a595c2aa3c23cc738a04e347d4141eaf1b4881e4ba4beb3ec020e3534ceca7bf24257bed0af7938018fd70dca1347664afd24f9e3
7
- data.tar.gz: ff146457772c81e9a2c0c0c379b7745656769344656ec6b236518f425a03a99831691b637e5740389c9aa41111814188940f3869a086fbacdaefe6cc9578f595
6
+ metadata.gz: 356d89b7248d442bf7e44af040b2dc911314860e7f69178ec031c107527c38fd549166ea90941e4f637a06e6dc733e7c2242e353923329abd887bc2050348455
7
+ data.tar.gz: a2e4a2d977777921347a87b6b6b7a4850590429f5552bd746e82ee04aa188bd2e0b6aaab318e67570666c501fb3bed454da0b516e7074643bb09a5a5dbe3f4f0
data/lib/kart/error.rb CHANGED
@@ -4,4 +4,7 @@ module Kart
4
4
 
5
5
  class ProductNotDefined < StandardError
6
6
  end
7
+
8
+ class ItemNotFound < StandardError
9
+ end
7
10
  end
data/lib/kart/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Kart
2
- VERSION = "0.3.0"
2
+ VERSION = "0.4.0"
3
3
  end
data/lib/kart.rb CHANGED
@@ -34,18 +34,17 @@ module Kart
34
34
  define_method "remove_from_cart" do |product|
35
35
  item = Cart.find_by _user => self.id, _product => product.id
36
36
 
37
- unless item.nil?
37
+ if item.nil?
38
+ raise Kart::ItemNotFound, "Item was not added to cart"
39
+ else
38
40
  item.quantity -= 1
39
- item.save
41
+
42
+ (item.quantity == 0) ? item.destroy : item.save
40
43
  end
41
44
  end
42
45
 
43
- define_method "remove_all_from_cart" do |product|
44
- item = Cart.find_by _user => self.id, _product => product.id
45
-
46
- unless item.nil?
47
- Cart.destroy item.id
48
- end
46
+ define_method "remove_all_from_cart" do
47
+ Cart.where(_user => self.id).destroy_all
49
48
  end
50
49
  end
51
50
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: kart
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.0
4
+ version: 0.4.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Tran Son Tung
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2019-08-08 00:00:00.000000000 Z
11
+ date: 2019-08-16 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler