zero_push 1.1.0 → 1.2.0

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,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- zero_push (1.0.0)
4
+ zero_push (1.2.0)
5
5
  faraday (~> 0.8.5)
6
6
 
7
7
  GEM
@@ -22,12 +22,28 @@ module ZeroPush
22
22
 
23
23
  # Registers a device token with the ZeroPush backend
24
24
  #
25
- # @params device_token
25
+ # @param device_token
26
26
  # @return response
27
27
  def register(device_token)
28
28
  client.post('/register', device_token: device_token)
29
29
  end
30
30
 
31
+ # Sets the badge for a particular device
32
+ #
33
+ # @param device_token
34
+ # @param badge
35
+ # @return response
36
+ def set_badge(device_token, badge)
37
+ client.post('/set_badge', device_token: device_token, badge: badge)
38
+ end
39
+
40
+ # Returns a list of tokens that have been marked inactive
41
+ #
42
+ # @returns array
43
+ def inactive_tokens
44
+ client.get('/inactive_tokens')
45
+ end
46
+
31
47
  # the HTTP client configured for API requests
32
48
  #
33
49
  def client
@@ -1,3 +1,3 @@
1
1
  module ZeroPush
2
- VERSION = "1.1.0"
2
+ VERSION = "1.2.0"
3
3
  end
@@ -0,0 +1,52 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: https://api.zeropush.com/inactive_tokens
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ""
9
+ headers:
10
+ Authorization:
11
+ - Token token="test_token"
12
+ User-Agent:
13
+ - Faraday v0.8.7
14
+ response:
15
+ status:
16
+ code: 200
17
+ message:
18
+ headers:
19
+ server:
20
+ - nginx/1.2.6
21
+ date:
22
+ - Fri, 09 Aug 2013 01:19:03 GMT
23
+ content-type:
24
+ - application/json; charset=utf-8
25
+ transfer-encoding:
26
+ - chunked
27
+ connection:
28
+ - close
29
+ status:
30
+ - 200 OK
31
+ strict-transport-security:
32
+ - max-age=31536000
33
+ x-ua-compatible:
34
+ - IE=Edge
35
+ etag:
36
+ - "\"9c9190eec43ccacbad112e6a77dc6a83\""
37
+ cache-control:
38
+ - must-revalidate, private, max-age=0
39
+ x-request-id:
40
+ - dc4287a5b6dfe69125d0c6b36ab958f9
41
+ x-runtime:
42
+ - "0.079937"
43
+ x-rack-cache:
44
+ - miss
45
+ x-powered-by:
46
+ - Phusion Passenger 4.0.2
47
+ body:
48
+ encoding: ASCII-8BIT
49
+ string: "[{\"device_token\":\"238b8cb09011850cb4bd544dfe0c8f5eeab73d7eeaae9bdca59076db4ae49947\",\"marked_inactive_at\":\"2013-07-17T01:27:53-04:00\"},{\"device_token\":\"8c97be6643eea2143322005bc4c44a1aee5e549bce5e2bb2116114f45484ddaf\",\"marked_inactive_at\":\"2013-07-17T01:27:50-04:00\"}]"
50
+ http_version:
51
+ recorded_at: Fri, 09 Aug 2013 01:19:04 GMT
52
+ recorded_with: VCR 2.4.0
@@ -0,0 +1,57 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: post
5
+ uri: https://api.zeropush.com/set_badge
6
+ body:
7
+ encoding: US-ASCII
8
+ string: device_token=abc&badge=10
9
+ headers:
10
+ Authorization:
11
+ - Token token="test_token"
12
+ User-Agent:
13
+ - Faraday v0.8.7
14
+ Content-Type:
15
+ - application/x-www-form-urlencoded
16
+ response:
17
+ status:
18
+ code: 200
19
+ message:
20
+ headers:
21
+ server:
22
+ - nginx/1.2.6
23
+ date:
24
+ - Fri, 09 Aug 2013 00:57:11 GMT
25
+ content-type:
26
+ - application/json; charset=utf-8
27
+ transfer-encoding:
28
+ - chunked
29
+ connection:
30
+ - close
31
+ status:
32
+ - 200 OK
33
+ strict-transport-security:
34
+ - max-age=31536000
35
+ x-ua-compatible:
36
+ - IE=Edge
37
+ etag:
38
+ - ! '"4548a4f1a11a241120f97a1c3737817a"'
39
+ cache-control:
40
+ - max-age=0, private, must-revalidate
41
+ set-cookie:
42
+ - _zero-push-session=BAh7BkkiD3Nlc3Npb25faWQGOgZFRkkiJTdmMmJkMTRmNzVkNGI2NzI1ODA2MjlhMjdlZjdlYjAyBjsAVA%3D%3D--888243f320504a8621f826f76ec84ccb94f81b33;
43
+ path=/; secure; HttpOnly
44
+ x-request-id:
45
+ - fdb9461a5c2e67b8553c871a31d72695
46
+ x-runtime:
47
+ - '0.021581'
48
+ x-rack-cache:
49
+ - invalidate, pass
50
+ x-powered-by:
51
+ - Phusion Passenger 4.0.2
52
+ body:
53
+ encoding: US-ASCII
54
+ string: ! '{"message":"ok"}'
55
+ http_version:
56
+ recorded_at: Fri, 09 Aug 2013 00:57:11 GMT
57
+ recorded_with: VCR 2.4.0
@@ -8,6 +8,7 @@ VCR.configure do |c|
8
8
  c.hook_into :faraday
9
9
  c.default_cassette_options = {
10
10
  record: :new_episodes,
11
- match_requests_on: [:method, :uri, :headers]
11
+ match_requests_on: [:method, :uri, :headers],
12
+ serialize_with: :syck
12
13
  }
13
14
  end
@@ -53,4 +53,34 @@ describe ZeroPush do
53
53
  response.status.must_equal 200
54
54
  end
55
55
  end
56
+
57
+ describe "/set_badge" do
58
+ before do
59
+ VCR.insert_cassette "set_badge"
60
+ end
61
+
62
+ after do
63
+ VCR.eject_cassette
64
+ end
65
+
66
+ it "should set the device's badge" do
67
+ response = ZeroPush.set_badge('abc', 10)
68
+ response.status.must_equal 200
69
+ end
70
+ end
71
+
72
+ describe "/inactive_tokens" do
73
+ before do
74
+ VCR.insert_cassette "inactive_tokens"
75
+ end
76
+
77
+ after do
78
+ VCR.eject_cassette
79
+ end
80
+
81
+ it "should get a list of inactive tokens" do
82
+ response = ZeroPush.inactive_tokens
83
+ response.status.must_equal 200
84
+ end
85
+ end
56
86
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: zero_push
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.0
4
+ version: 1.2.0
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: 2013-08-08 00:00:00.000000000 Z
13
+ date: 2013-08-09 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: faraday
@@ -160,8 +160,10 @@ files:
160
160
  - lib/zero_push.rb
161
161
  - lib/zero_push/client.rb
162
162
  - lib/zero_push/version.rb
163
+ - spec/fixtures/inactive_tokens.yml
163
164
  - spec/fixtures/notify.yml
164
165
  - spec/fixtures/register.yml
166
+ - spec/fixtures/set_badge.yml
165
167
  - spec/fixtures/verify_credentials.yml
166
168
  - spec/generator_spec.rb
167
169
  - spec/spec_helper.rb
@@ -193,8 +195,10 @@ signing_key:
193
195
  specification_version: 3
194
196
  summary: A gem for interacting with the ZeroPush API. (http://zeropush.com)
195
197
  test_files:
198
+ - spec/fixtures/inactive_tokens.yml
196
199
  - spec/fixtures/notify.yml
197
200
  - spec/fixtures/register.yml
201
+ - spec/fixtures/set_badge.yml
198
202
  - spec/fixtures/verify_credentials.yml
199
203
  - spec/generator_spec.rb
200
204
  - spec/spec_helper.rb