heroic-sns 1.1.1 → 1.1.2

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 11d6f41c3874ec698df32ac516c3d103f74bfd7b
4
- data.tar.gz: 9dbf1f1690e3ec3888a52c661c4755c6d5c1a05e
3
+ metadata.gz: 0c597b29941ad835d01e069c7f378c49d300e81f
4
+ data.tar.gz: aae47c8fd95d89707211e1aecb6fd05d62202645
5
5
  SHA512:
6
- metadata.gz: b0e8fe315fd65c499060616c8780586c427b1ed3ff3a829df29437fe17128d764cdc502f1eed9f450c7e09c068b80e65bf9fddce08253ab2ba1d6b4dc3d1062f
7
- data.tar.gz: 20d5a1e66117f7c30e15d4107d93d6f84d8439dad5fd58919f46eb2e7bf0209067e47c048e3e7c040dbe365dfe8e18ddb4e33f16e6eb1898bb211b20b9028eac
6
+ metadata.gz: a33d5c08add0ce1406048511475972e6897b6570b47ca2a10503d1660424d1d347e69d4cbc56016e06f79a261a2d5524711b2cef9215cf45192d01cae4b2e582
7
+ data.tar.gz: dbc60c90e1f2e9c8c681bd29c0768b79c6dfdfd8a52f00e8052f453dd0048a98e3faad78344a414ab2a9c39803b5114a5f2c1478b2da829de7fcddcfec53fe5c
@@ -1,5 +1,9 @@
1
1
  language: ruby
2
2
  rvm:
3
- - "2.0.0"
3
+ - "2.2"
4
+ - "2.1"
5
+ - "2.0"
4
6
  - "1.9.3"
5
7
  - "1.8.7"
8
+ before_install:
9
+ - gem update bundler
@@ -1,3 +1,8 @@
1
+ ### 1.1.2 (March 23, 2016)
2
+
3
+ * Rewind the request body, in case the application wants to read it again.
4
+ [@cobbr2]
5
+
1
6
  ### 1.1.1 (August 9, 2013)
2
7
 
3
8
  * Ease up json gem dependency - [@speedmanly]
data/Gemfile CHANGED
@@ -2,4 +2,4 @@ source "http://rubygems.org"
2
2
 
3
3
  gemspec
4
4
 
5
- gem "rake"
5
+ gem "rake", '~> 10.3'
data/README.md CHANGED
@@ -1,11 +1,16 @@
1
1
  # Heroic::SNS, Rack middleware for Amazon SNS endpoints
2
2
 
3
+ [![Gem Version](https://badge.fury.io/rb/heroic-sns.svg)](http://badge.fury.io/rb/heroic-sns)
4
+ [![Build Status](https://travis-ci.org/benzado/heroic-sns.png?branch=master)](https://travis-ci.org/benzado/heroic-sns)
5
+
3
6
  Heroic::SNS provides secure, lightweight Rack middleware for AWS Simple
4
7
  Notification Service (SNS) endpoints.
5
8
 
6
9
  Any SNS messages POSTed by Amazon to your web application are
7
10
  intercepted, parsed, verified, and then passed along via the
8
11
  `sns.message` environment key.
12
+ (In case you need it, the original, unparsed message is also available in the
13
+ body of the request.)
9
14
 
10
15
  If something goes wrong, the error will be passed along via the
11
16
  `sns.error` environment key. `Heroic::SNS::Endpoint` does not log any
@@ -164,5 +169,3 @@ This project [is licensed under the Apache license](LICENSE).
164
169
 
165
170
  Direct correspondence to Benjamin Ragheb via email at <ben@benzado.com>
166
171
  or on Twitter [@benzado](https://twitter.com/benzado).
167
-
168
- [![Build Status](https://travis-ci.org/benzado/heroic-sns.png?branch=master)](https://travis-ci.org/benzado/heroic-sns)
@@ -27,6 +27,7 @@ EOD
27
27
  s.platform = Gem::Platform::RUBY
28
28
  s.required_ruby_version = '>= 1.8.7'
29
29
  s.add_development_dependency 'rdoc', '~> 4.0'
30
+ s.add_development_dependency 'test-unit', '1.2.3'
30
31
  s.add_runtime_dependency 'rack', '~> 1.4'
31
32
  s.add_runtime_dependency 'json', '~> 1.7'
32
33
  end
@@ -110,6 +110,7 @@ module Heroic
110
110
  def call_on_topic(env)
111
111
  begin
112
112
  message = Message.new(env['rack.input'].read)
113
+ env['rack.input'].rewind
113
114
  check_headers!(message, env)
114
115
  message.verify!
115
116
  case message.type
@@ -1,5 +1,5 @@
1
1
  module Heroic
2
2
  module SNS
3
- VERSION = '1.1.1'
3
+ VERSION = '1.1.2'
4
4
  end
5
5
  end
@@ -44,4 +44,16 @@ class EndpointTest < Test::Unit::TestCase
44
44
  assert_nothing_raised { app.call(@env) }
45
45
  end
46
46
 
47
+ def test_rewind
48
+ result = [0, {}, []]
49
+
50
+ test = Proc.new do |env|
51
+ msg_json = JSON.parse(env['rack.input'].read)
52
+ assert_equal(msg_json['Message'],'booyakasha!')
53
+ result
54
+ end
55
+ sns('notification')
56
+ app = Heroic::SNS::Endpoint.new test, :topic => @msg.topic_arn
57
+ assert_equal result, app.call(@env)
58
+ end
47
59
  end
@@ -105,7 +105,7 @@ class LRUCacheTest < Test::Unit::TestCase
105
105
  # only slept for a second.
106
106
  threads.each { |t| t.join }
107
107
  time_elapsed = (Time.now - start_time)
108
- assert_in_delta time_elapsed, 1.0, 0.01
108
+ assert_in_delta time_elapsed, 1.0, 0.05
109
109
  end
110
110
 
111
111
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: heroic-sns
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.1
4
+ version: 1.1.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Benjamin Ragheb
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2013-08-09 00:00:00.000000000 Z
11
+ date: 2016-03-24 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rdoc
@@ -24,6 +24,20 @@ dependencies:
24
24
  - - ~>
25
25
  - !ruby/object:Gem::Version
26
26
  version: '4.0'
27
+ - !ruby/object:Gem::Dependency
28
+ name: test-unit
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - '='
32
+ - !ruby/object:Gem::Version
33
+ version: 1.2.3
34
+ type: :development
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - '='
39
+ - !ruby/object:Gem::Version
40
+ version: 1.2.3
27
41
  - !ruby/object:Gem::Dependency
28
42
  name: rack
29
43
  requirement: !ruby/object:Gem::Requirement
@@ -109,7 +123,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
109
123
  version: '0'
110
124
  requirements: []
111
125
  rubyforge_project:
112
- rubygems_version: 2.0.3
126
+ rubygems_version: 2.0.14.1
113
127
  signing_key:
114
128
  specification_version: 4
115
129
  summary: Lightweight Rack middleware for AWS SNS endpoints