dropwallet 0.0.5 → 0.0.7
Sign up to get free protection for your applications and to get access to all the features.
- data/lib/dropwallet/core/model.rb +46 -26
- data/lib/dropwallet/core/order.rb +23 -7
- data/lib/dropwallet/core/user.rb +14 -0
- data/lib/dropwallet/version.rb +8 -2
- data/lib/dropwallet.rb +1 -0
- data/test/testCdnFile.rb +9 -9
- data/test/testOrders.rb +17 -0
- data/test/testProduct.rb +18 -18
- data/test/testUser.rb +13 -0
- metadata +4 -2
@@ -46,7 +46,10 @@ class Dropwallet::Core::Model
|
|
46
46
|
end
|
47
47
|
|
48
48
|
def self.baseServiceUrl
|
49
|
-
|
49
|
+
if Dropwallet::apiUrl.to_s == ''
|
50
|
+
return "https://api.dropwallet.net"
|
51
|
+
end
|
52
|
+
return Dropwallet::apiUrl.to_s
|
50
53
|
end
|
51
54
|
|
52
55
|
def self.serviceUrl
|
@@ -68,38 +71,55 @@ class Dropwallet::Core::Model
|
|
68
71
|
|
69
72
|
#Default Restful Calls
|
70
73
|
def self.find(id, options = {})
|
71
|
-
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
|
74
|
+
if options[:path].nil?
|
75
|
+
options[:path] = serviceUrl
|
76
|
+
end
|
77
|
+
options[:path] = (options[:path] << "/#{id}")
|
78
|
+
doc = JSON.parse(RestClient.get(options[:path], {:accept => :json}))
|
79
|
+
if doc.include? 'errorMessage'
|
80
|
+
raise doc['errorMessage']
|
76
81
|
end
|
77
|
-
|
78
|
-
raise item['errorMessage']
|
79
|
-
end
|
80
|
-
return self.new(item, :new=>false)
|
82
|
+
return self.new(doc, :new=>false)
|
81
83
|
end
|
82
84
|
|
83
|
-
def self.all(page
|
85
|
+
def self.all(page=1, options={})
|
84
86
|
defaults = {:path => "#{serviceUrl}"}
|
85
|
-
|
86
|
-
|
87
|
-
|
88
|
-
|
89
|
-
|
90
|
-
if debug?
|
91
|
-
puts items.to_s
|
87
|
+
options.merge(defaults)
|
88
|
+
options[:path] = (options[:path] << "?page=#{page}&limit=20")
|
89
|
+
doc = JSON.parse(RestClient.get(options[:path], {:accept => :json}))
|
90
|
+
if doc.include? 'errorMessage'
|
91
|
+
raise doc['errorMessage']
|
92
92
|
end
|
93
93
|
objects = []
|
94
|
-
items.each do |item|
|
94
|
+
doc['items'].each do |item|
|
95
95
|
objects << self.new(item)
|
96
96
|
end
|
97
|
-
return
|
97
|
+
return objects
|
98
98
|
end
|
99
99
|
|
100
100
|
|
101
|
-
def self.count
|
102
|
-
|
101
|
+
def self.count(options={})
|
102
|
+
defaults = {:path => "#{serviceUrl}"}
|
103
|
+
options.merge(defaults)
|
104
|
+
options[:path] = (options[:path] << "?page=1&limit=1")
|
105
|
+
puts options[:path]
|
106
|
+
doc = JSON.parse(RestClient.get(options[:path], {:accept => :json}))
|
107
|
+
if doc.include? 'errorMessage'
|
108
|
+
raise doc['errorMessage']
|
109
|
+
end
|
110
|
+
return doc['pages']
|
111
|
+
end
|
112
|
+
|
113
|
+
def self.pages(options={})
|
114
|
+
defaults = {:path => "#{serviceUrl}"}
|
115
|
+
options.merge(defaults)
|
116
|
+
options[:path] = (options[:path] << "?page=1&limit=20")
|
117
|
+
puts options[:path]
|
118
|
+
doc = JSON.parse(RestClient.get(options[:path], {:accept => :json}))
|
119
|
+
if doc.include? 'errorMessage'
|
120
|
+
raise doc['errorMessage']
|
121
|
+
end
|
122
|
+
return doc['pages']
|
103
123
|
end
|
104
124
|
|
105
125
|
def save(options = {})
|
@@ -108,7 +128,7 @@ class Dropwallet::Core::Model
|
|
108
128
|
end
|
109
129
|
defaults = {:path => "#{serviceUrl}"}
|
110
130
|
defaults.merge(options)
|
111
|
-
item = JSON.parse(RestClient.post(defaults[:path], to_json, {:accept => :json}))
|
131
|
+
item = JSON.parse(RestClient.post(defaults[:path].strip, to_json, {:accept => :json}))
|
112
132
|
if item.include? 'errorMessage'
|
113
133
|
raise item['errorMessage']
|
114
134
|
end
|
@@ -122,13 +142,13 @@ class Dropwallet::Core::Model
|
|
122
142
|
end
|
123
143
|
defaults = {:path => "#{serviceUrl}/#{id}"}
|
124
144
|
defaults.merge(options)
|
125
|
-
return JSON.parse(RestClient.put(defaults[:path], to_json, {:accept => :json}))
|
145
|
+
return JSON.parse(RestClient.put(defaults[:path].strip, to_json, {:accept => :json}))
|
126
146
|
end
|
127
147
|
|
128
148
|
def delete(options={})
|
129
149
|
defaults = {:path => "#{serviceUrl}/#{id}"}
|
130
150
|
defaults.merge(options)
|
131
|
-
item = JSON.parse(RestClient.delete(defaults[:path], {:accept => :json}))
|
151
|
+
item = JSON.parse(RestClient.delete(defaults[:path].strip, {:accept => :json}))
|
132
152
|
if item.include? 'errorMessage'
|
133
153
|
raise item['errorMessage']
|
134
154
|
end
|
@@ -139,7 +159,7 @@ class Dropwallet::Core::Model
|
|
139
159
|
def self.delete(itemId, options={})
|
140
160
|
defaults = {:path => "#{serviceUrl}/#{itemId}"}
|
141
161
|
defaults.merge(options)
|
142
|
-
item = JSON.parse(RestClient.delete(defaults[:path], {:accept => :json}))
|
162
|
+
item = JSON.parse(RestClient.delete(defaults[:path].strip, {:accept => :json}))
|
143
163
|
if item.include? 'errorMessage'
|
144
164
|
raise item['errorMessage']
|
145
165
|
end
|
@@ -1,9 +1,25 @@
|
|
1
1
|
class Dropwallet::Core::Order < Dropwallet::Core::Model
|
2
|
-
field :
|
3
|
-
field :
|
4
|
-
field :
|
5
|
-
field :
|
6
|
-
field :
|
7
|
-
field :
|
8
|
-
field :
|
2
|
+
field :orderId
|
3
|
+
field :orderDate
|
4
|
+
field :grandTotal
|
5
|
+
field :taxTotal
|
6
|
+
field :shippingTotal
|
7
|
+
field :subTotal
|
8
|
+
field :shippingAddress
|
9
|
+
field :items
|
10
|
+
|
11
|
+
def status
|
12
|
+
canceled = true
|
13
|
+
self.items.each do |item|
|
14
|
+
if item['status'].upcase != 'CANCELLED'
|
15
|
+
canceled= false
|
16
|
+
end
|
17
|
+
end
|
18
|
+
|
19
|
+
if canceled
|
20
|
+
return 'CANCELLED'
|
21
|
+
end
|
22
|
+
|
23
|
+
return ''
|
24
|
+
end
|
9
25
|
end
|
data/lib/dropwallet/core/user.rb
CHANGED
@@ -6,6 +6,20 @@ class Dropwallet::Core::User < Dropwallet::Core::Model
|
|
6
6
|
field :firstName
|
7
7
|
field :lastName
|
8
8
|
|
9
|
+
def orders(page = 1)
|
10
|
+
options = {:path => "#{Dropwallet::Core::Model.baseServiceUrl}/users/#{id}/orders.json"}
|
11
|
+
return Dropwallet::Core::Order.all(page, options)
|
12
|
+
end
|
13
|
+
|
14
|
+
def order(orderId)
|
15
|
+
options = {:path => "#{Dropwallet::Core::Model.baseServiceUrl}/users/#{id}/orders"}
|
16
|
+
return Dropwallet::Core::Order.find(orderId, options)
|
17
|
+
end
|
18
|
+
|
19
|
+
def ordersPages
|
20
|
+
options = {:path => "#{Dropwallet::Core::Model.baseServiceUrl}/users/#{id}/orders.json"}
|
21
|
+
return Dropwallet::Core::Order.pages(options)
|
22
|
+
end
|
9
23
|
# Login Function, returns User object on success, nil on failure
|
10
24
|
def self.login(username, password)
|
11
25
|
login = JSON.parse(RestClient.post baseServiceUrl + '/session/login', "username=#{username}&password=#{password}", {:accept => :json})
|
data/lib/dropwallet/version.rb
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
module Dropwallet
|
2
|
-
VERSION = "0.0.
|
2
|
+
VERSION = "0.0.7"
|
3
3
|
|
4
4
|
def self.username
|
5
5
|
@username
|
@@ -7,7 +7,7 @@ module Dropwallet
|
|
7
7
|
def self.username=(name)
|
8
8
|
@username = name
|
9
9
|
end
|
10
|
-
|
10
|
+
def self.password
|
11
11
|
@password
|
12
12
|
end
|
13
13
|
def self.password=(password)
|
@@ -19,6 +19,12 @@ module Dropwallet
|
|
19
19
|
def self.cache
|
20
20
|
return @cache
|
21
21
|
end
|
22
|
+
def self.apiUrl
|
23
|
+
@apiUrl
|
24
|
+
end
|
25
|
+
def self.apiUrl=(apiUrl)
|
26
|
+
@apiUrl = apiUrl
|
27
|
+
end
|
22
28
|
|
23
29
|
module Core
|
24
30
|
end
|
data/lib/dropwallet.rb
CHANGED
data/test/testCdnFile.rb
CHANGED
@@ -1,10 +1,10 @@
|
|
1
|
-
require 'test/unit'
|
2
|
-
require 'dropwallet'
|
1
|
+
# require 'test/unit'
|
2
|
+
# require 'dropwallet'
|
3
3
|
|
4
|
-
class TestCdnFile < Test::Unit::TestCase
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
end
|
4
|
+
# class TestCdnFile < Test::Unit::TestCase
|
5
|
+
# def testUpload
|
6
|
+
# assert_nothing_raised do
|
7
|
+
# #Dropwallet::CDN::File.upload('/Users/bcentinaro/Desktop/RealSimple_DropWalletLogo.png' ,'Test', 'folder/secondFolder/logo.png')
|
8
|
+
# end
|
9
|
+
# end
|
10
|
+
# end
|
data/test/testOrders.rb
ADDED
@@ -0,0 +1,17 @@
|
|
1
|
+
require 'test/unit'
|
2
|
+
require 'dropwallet'
|
3
|
+
|
4
|
+
class TestOrders < Test::Unit::TestCase
|
5
|
+
def testOrders
|
6
|
+
RestClient.log = "/dev/null"
|
7
|
+
Dropwallet::username = 'dropwallet'
|
8
|
+
Dropwallet::password = 'icuetv789'
|
9
|
+
user1 = Dropwallet::Core::User.login('customer0000@icuetv.com','password')
|
10
|
+
items = user1.orders
|
11
|
+
puts 'ORDERS'
|
12
|
+
items.each do |item|
|
13
|
+
#order = Dropwallet::Core::Order.find(item.orderId)
|
14
|
+
end
|
15
|
+
|
16
|
+
end
|
17
|
+
end
|
data/test/testProduct.rb
CHANGED
@@ -1,20 +1,20 @@
|
|
1
|
-
require 'test/unit'
|
2
|
-
require 'dropwallet'
|
1
|
+
# require 'test/unit'
|
2
|
+
# require 'dropwallet'
|
3
3
|
|
4
|
-
class TestProduct < Test::Unit::TestCase
|
4
|
+
# class TestProduct < Test::Unit::TestCase
|
5
5
|
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
end
|
6
|
+
# def testFind
|
7
|
+
# RestClient.log = "stdout"
|
8
|
+
# Dropwallet::username = 'dropwallet'
|
9
|
+
# Dropwallet::password = 'icuetv789'
|
10
|
+
# product = Dropwallet::Core::Product.find(123)
|
11
|
+
# assert_not_nil product
|
12
|
+
# end
|
13
|
+
# def testAll
|
14
|
+
# RestClient.log = "stdout"
|
15
|
+
# Dropwallet::username = 'dropwallet'
|
16
|
+
# Dropwallet::password = 'icuetv789'
|
17
|
+
# products = Dropwallet::Core::Product.all
|
18
|
+
# assert_not_nil products
|
19
|
+
# end
|
20
|
+
# end
|
data/test/testUser.rb
CHANGED
@@ -27,4 +27,17 @@ class TestUser < Test::Unit::TestCase
|
|
27
27
|
assert_not_nil user2
|
28
28
|
assert_equal user2.id, user1.id
|
29
29
|
end
|
30
|
+
def testOrders
|
31
|
+
RestClient.log = "/dev/null"
|
32
|
+
Dropwallet::username = 'dropwallet'
|
33
|
+
Dropwallet::password = 'icuetv789'
|
34
|
+
user1 = Dropwallet::Core::User.login('customer0000@icuetv.com','password')
|
35
|
+
items = user1.orders
|
36
|
+
puts 'ORDERS'
|
37
|
+
items.each do |item|
|
38
|
+
order = user1.order(item.orderId)
|
39
|
+
puts order.to_s
|
40
|
+
end
|
41
|
+
puts "Pages: #{user1.ordersPages}"
|
42
|
+
end
|
30
43
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: dropwallet
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.7
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -10,7 +10,7 @@ authors:
|
|
10
10
|
autorequire:
|
11
11
|
bindir: bin
|
12
12
|
cert_chain: []
|
13
|
-
date: 2012-09-
|
13
|
+
date: 2012-09-24 00:00:00.000000000 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: rspec
|
@@ -102,6 +102,7 @@ files:
|
|
102
102
|
- lib/dropwallet/core/user.rb
|
103
103
|
- lib/dropwallet/version.rb
|
104
104
|
- test/testCdnFile.rb
|
105
|
+
- test/testOrders.rb
|
105
106
|
- test/testProduct.rb
|
106
107
|
- test/testUser.rb
|
107
108
|
- test/testVersion.rb
|
@@ -131,6 +132,7 @@ specification_version: 3
|
|
131
132
|
summary: Dropwallet API Bindings for Ruby
|
132
133
|
test_files:
|
133
134
|
- test/testCdnFile.rb
|
135
|
+
- test/testOrders.rb
|
134
136
|
- test/testProduct.rb
|
135
137
|
- test/testUser.rb
|
136
138
|
- test/testVersion.rb
|