one_signal 0.0.8 → 0.0.9
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.txt +4 -0
- data/example.rb +7 -1
- data/lib/one_signal/one_signal.rb +12 -0
- data/lib/one_signal/player.rb +16 -0
- data/lib/one_signal/version.rb +1 -1
- data/one_signal.gemspec +1 -1
- data/test/one_signal_test.rb +26 -4
- data/test/player_test.rb +9 -0
- metadata +6 -6
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 29c2c8a73c7d2fadc0fb84243656b143038f0ec9
|
4
|
+
data.tar.gz: 82ccfe3bd9f6b78a272552bd8d67623360ba9a83
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 3da04a064ffdb12ac4b960b384c56474df854ccd9acee9a85c10acb80f84d1ee7b0e38495df940f1e092f8ef403454216a566345a98d37a5535ae61935a50be5
|
7
|
+
data.tar.gz: 59ac4fdcc9424520f9362b157e5998708423ed0c3cf286efa90c8ef40afaa72c96b65cf78bb3083b1170c5449bd812d36a8f9e42b69685cbff7eb56232bfa304
|
data/CHANGELOG.txt
CHANGED
data/example.rb
CHANGED
@@ -103,7 +103,13 @@ def csv_export
|
|
103
103
|
puts response.body
|
104
104
|
end
|
105
105
|
|
106
|
+
def all_players
|
107
|
+
response = OneSignal::Player.all(params: {app_id: @app_id, limit: 3})
|
108
|
+
puts response.body
|
109
|
+
end
|
110
|
+
|
106
111
|
# player_id = create_player
|
107
112
|
# update_player(id: player_id)
|
108
113
|
# notify
|
109
|
-
csv_export
|
114
|
+
# csv_export
|
115
|
+
all_players
|
@@ -66,6 +66,18 @@ module OneSignal
|
|
66
66
|
response = http.request(request)
|
67
67
|
end
|
68
68
|
|
69
|
+
def self.send_get_request(uri:, params: {})
|
70
|
+
ensure_api_key
|
71
|
+
|
72
|
+
uri.query = URI.encode_www_form(params)
|
73
|
+
request = Net::HTTP::Get.new(uri.request_uri)
|
74
|
+
request = request_with_headers(request: request)
|
75
|
+
|
76
|
+
http = http_object(uri: uri)
|
77
|
+
|
78
|
+
response = http.request(request)
|
79
|
+
end
|
80
|
+
|
69
81
|
private
|
70
82
|
|
71
83
|
def self.ensure_api_key
|
data/lib/one_signal/player.rb
CHANGED
@@ -18,6 +18,22 @@ module OneSignal
|
|
18
18
|
return response
|
19
19
|
end
|
20
20
|
|
21
|
+
def self.all(params: {})
|
22
|
+
uri_string = @@base_uri
|
23
|
+
uri_string += "/players"
|
24
|
+
uri = URI.parse(uri_string)
|
25
|
+
|
26
|
+
response = send_get_request(uri: uri, params: params)
|
27
|
+
|
28
|
+
ensure_http_status(response: response,
|
29
|
+
status: '200',
|
30
|
+
method_name: 'All',
|
31
|
+
uri: uri,
|
32
|
+
params: params)
|
33
|
+
|
34
|
+
return response
|
35
|
+
end
|
36
|
+
|
21
37
|
def self.create(params: {})
|
22
38
|
uri_string = @@base_uri
|
23
39
|
uri_string += "/players"
|
data/lib/one_signal/version.rb
CHANGED
data/one_signal.gemspec
CHANGED
@@ -6,7 +6,7 @@ Gem::Specification.new do |s|
|
|
6
6
|
s.add_development_dependency 'rake', '~> 10.4'
|
7
7
|
s.add_development_dependency 'mocha', '~> 1.1'
|
8
8
|
s.add_development_dependency 'dotenv', '~> 2.0'
|
9
|
-
s.add_development_dependency 'minitest'
|
9
|
+
s.add_development_dependency 'minitest', '~> 5.8'
|
10
10
|
s.name = 'one_signal'
|
11
11
|
s.version = OneSignal::VERSION
|
12
12
|
s.summary = "A library which implements the OneSignal API"
|
data/test/one_signal_test.rb
CHANGED
@@ -5,6 +5,7 @@ class OneSignalTest < MiniTest::Test
|
|
5
5
|
def setup
|
6
6
|
@api_key = "fake_api_123"
|
7
7
|
@body = "fake body"
|
8
|
+
@params = {foo: 'bar', widget: 'acme'}
|
8
9
|
@uri = URI.parse("https://www.example.com/foo/bar")
|
9
10
|
@default_timeout = 30
|
10
11
|
end
|
@@ -15,9 +16,9 @@ class OneSignalTest < MiniTest::Test
|
|
15
16
|
OneSignal::OneSignal.read_timeout = @default_timeout
|
16
17
|
end
|
17
18
|
|
18
|
-
def build_mock_request
|
19
|
+
def build_mock_request(body: nil)
|
19
20
|
request = mock()
|
20
|
-
request.expects(:body=).with(
|
21
|
+
request.expects(:body=).with(body.to_json) unless body.nil?
|
21
22
|
request.expects(:add_field).with("Content-Type", "application/json")
|
22
23
|
request.expects(:add_field).with("Authorization", "Basic #{@api_key}")
|
23
24
|
return request
|
@@ -88,7 +89,7 @@ class OneSignalTest < MiniTest::Test
|
|
88
89
|
|
89
90
|
def test_send_post_request
|
90
91
|
# test request creation
|
91
|
-
request = build_mock_request
|
92
|
+
request = build_mock_request(body: @body)
|
92
93
|
Net::HTTP::Post.expects(:new).with(@uri.request_uri).returns(request)
|
93
94
|
|
94
95
|
# test http object creation
|
@@ -105,7 +106,7 @@ class OneSignalTest < MiniTest::Test
|
|
105
106
|
|
106
107
|
def test_send_put_request
|
107
108
|
# test request creation
|
108
|
-
request = build_mock_request
|
109
|
+
request = build_mock_request(body: @body)
|
109
110
|
Net::HTTP::Put.expects(:new).with(@uri.request_uri).returns(request)
|
110
111
|
|
111
112
|
# test http object creation
|
@@ -120,4 +121,25 @@ class OneSignalTest < MiniTest::Test
|
|
120
121
|
assert_equal response, OneSignal::OneSignal.send_put_request(uri: @uri, body: @body)
|
121
122
|
end
|
122
123
|
|
124
|
+
def test_send_get_request
|
125
|
+
expected_uri = @uri.clone
|
126
|
+
expected_uri.query = URI.encode_www_form(@params)
|
127
|
+
|
128
|
+
# test request creation
|
129
|
+
request = build_mock_request
|
130
|
+
Net::HTTP::Get.expects(:new).with(expected_uri.request_uri).returns(request)
|
131
|
+
|
132
|
+
# test http object creation
|
133
|
+
http = build_mock_http_object
|
134
|
+
Net::HTTP.expects(:new).with(expected_uri.host, expected_uri.port).returns(http)
|
135
|
+
|
136
|
+
# test send request
|
137
|
+
response = mock()
|
138
|
+
http.expects(:request).with(request).returns(response)
|
139
|
+
|
140
|
+
OneSignal::OneSignal.api_key = @api_key
|
141
|
+
assert_equal response, OneSignal::OneSignal.send_get_request(uri: @uri,
|
142
|
+
params: @params)
|
143
|
+
end
|
144
|
+
|
123
145
|
end
|
data/test/player_test.rb
CHANGED
@@ -6,6 +6,7 @@ class PlayerTest < MiniTest::Test
|
|
6
6
|
base_url = "https://onesignal.com/api/v1/players"
|
7
7
|
@create_uri = URI.parse(base_url)
|
8
8
|
@csv_export_uri = URI.parse(base_url + "/csv_export")
|
9
|
+
@all_uri = URI.parse(base_url)
|
9
10
|
|
10
11
|
@player_id = "fake-id-123"
|
11
12
|
@update_uri = URI.parse(base_url + "/#{@player_id}")
|
@@ -37,6 +38,14 @@ class PlayerTest < MiniTest::Test
|
|
37
38
|
assert_equal response, OneSignal::Player.csv_export(app_id: @app_id)
|
38
39
|
end
|
39
40
|
|
41
|
+
def test_all
|
42
|
+
response = mock_response_ok
|
43
|
+
OneSignal::OneSignal.expects(:send_get_request)
|
44
|
+
.with(uri: @all_uri, params: @params)
|
45
|
+
.returns(response)
|
46
|
+
assert_equal response, OneSignal::Player.all(params: @params)
|
47
|
+
end
|
48
|
+
|
40
49
|
def test_create
|
41
50
|
response = mock_response_ok
|
42
51
|
OneSignal::OneSignal.expects(:send_post_request)
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: one_signal
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.9
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Thomas Balthazar
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2016-01-11 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: json
|
@@ -70,16 +70,16 @@ dependencies:
|
|
70
70
|
name: minitest
|
71
71
|
requirement: !ruby/object:Gem::Requirement
|
72
72
|
requirements:
|
73
|
-
- - "
|
73
|
+
- - "~>"
|
74
74
|
- !ruby/object:Gem::Version
|
75
|
-
version: '
|
75
|
+
version: '5.8'
|
76
76
|
type: :development
|
77
77
|
prerelease: false
|
78
78
|
version_requirements: !ruby/object:Gem::Requirement
|
79
79
|
requirements:
|
80
|
-
- - "
|
80
|
+
- - "~>"
|
81
81
|
- !ruby/object:Gem::Version
|
82
|
-
version: '
|
82
|
+
version: '5.8'
|
83
83
|
description: A library which implements the OneSignal API.
|
84
84
|
email: thomas@balthazar.info
|
85
85
|
executables: []
|