streetcred 0.0.3 → 0.0.4

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.
@@ -1,3 +1,3 @@
1
1
  module StreetCred
2
- VERSION = "0.0.3"
2
+ VERSION = "0.0.4"
3
3
  end
data/lib/streetcred.rb CHANGED
@@ -1,5 +1,6 @@
1
1
  require 'streetcred/version'
2
2
  require 'koala'
3
+ require 'active_support'
3
4
 
4
5
  module StreetCred
5
6
  class Handler
@@ -13,7 +14,16 @@ module StreetCred
13
14
  def handle(params)
14
15
  validate_signed_request(params[:signed_request])
15
16
 
16
- if params[:order_status]
17
+ if params[:order_details]
18
+ order_details = ActiveSupport::JSON.decode(params[:order_details])
19
+ response = {
20
+ 'content' => {
21
+ 'order_id' => order_details['order_id'],
22
+ 'status' => 'settled'
23
+ },
24
+ 'method' => 'payments_status_update'
25
+ }
26
+ else
17
27
  product_info = {
18
28
  'method' => 'pay',
19
29
  'title' => 'My Awsome Virtual Item',
@@ -27,12 +37,6 @@ module StreetCred
27
37
  'content' => [product_info],
28
38
  'method' => 'payments_get_items'
29
39
  }
30
- else
31
- response = {
32
- 'method' => 'payments_status_update',
33
- 'order_id' => '1234',
34
- 'status' => 'settled',
35
- }
36
40
  end
37
41
 
38
42
  response
@@ -19,8 +19,7 @@ describe 'StreetCred::Handler' do
19
19
  it "should handle the params for info request, and respond with a hash to populate the dialogue" do
20
20
  # example parmas for info request, and expected response
21
21
  params = {
22
- :signed_request => SIGNED_REQUEST,
23
- :order_status => 'tag'
22
+ :signed_request => SIGNED_REQUEST
24
23
  }
25
24
  product_info = {
26
25
  'method' => 'pay',
@@ -46,12 +45,14 @@ describe 'StreetCred::Handler' do
46
45
  # example parmas for info request, and expected response
47
46
  params = {
48
47
  :signed_request => SIGNED_REQUEST,
49
- :order_details => '1234'
48
+ :order_details => "{'order_id':1234}"
50
49
  }
51
50
  expected_response = {
52
- 'method' => 'payments_status_update',
53
- 'order_id' => '1234',
54
- 'status' => 'settled',
51
+ 'content' => {
52
+ 'order_id' => 1234,
53
+ 'status' => 'settled'
54
+ },
55
+ 'method' => 'payments_status_update'
55
56
  }
56
57
 
57
58
  # handle the sample params, and compare response to expected_response
data/streetcred.gemspec CHANGED
@@ -16,5 +16,6 @@ Gem::Specification.new do |gem|
16
16
  gem.version = StreetCred::VERSION
17
17
 
18
18
  gem.add_runtime_dependency('koala')
19
+ gem.add_runtime_dependency('active_support')
19
20
  gem.add_development_dependency('rspec')
20
21
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: streetcred
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.3
4
+ version: 0.0.4
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2013-01-21 00:00:00.000000000 Z
12
+ date: 2013-01-24 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: koala
@@ -27,6 +27,22 @@ dependencies:
27
27
  - - ! '>='
28
28
  - !ruby/object:Gem::Version
29
29
  version: '0'
30
+ - !ruby/object:Gem::Dependency
31
+ name: active_support
32
+ requirement: !ruby/object:Gem::Requirement
33
+ none: false
34
+ requirements:
35
+ - - ! '>='
36
+ - !ruby/object:Gem::Version
37
+ version: '0'
38
+ type: :runtime
39
+ prerelease: false
40
+ version_requirements: !ruby/object:Gem::Requirement
41
+ none: false
42
+ requirements:
43
+ - - ! '>='
44
+ - !ruby/object:Gem::Version
45
+ version: '0'
30
46
  - !ruby/object:Gem::Dependency
31
47
  name: rspec
32
48
  requirement: !ruby/object:Gem::Requirement