rainforest_auth 0.1.0 → 0.1.1

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: 249cec5e62b6a45777bfce7594bbd2ff2212b2e7
4
- data.tar.gz: f0fe7101381ea10ff5514d83b91d63bc45823eb5
3
+ metadata.gz: 980dfd004061d614b9fe029789fd9b9c4684d852
4
+ data.tar.gz: 5dab043d568f273e6a82e47a861422ef0a821c43
5
5
  SHA512:
6
- metadata.gz: 5090047e6ef0d300ded3f7139230d668e9ca8eb22a9d240ad361f3c77493d3dedc712a054d0b490f085b2ed66de562a08c9fa380cf8c3414a071a9f71f2475ad
7
- data.tar.gz: 925598ed41d78140b75823642fc46d08423cd7bb529c346e51c9c355af38f3b2205179a203eb418131f54038a013e88a445a8ff2b4a6dbd16bee0c3591659e7a
6
+ metadata.gz: 13583387b606552eaf3f16cfab460046dbab0d4bd4f770ed131ac2c6bec5df8fc5e4e9f23df9a18e85cdc594c6b68c23b55e8c95ecde7773df9474f8ae5c6b4b
7
+ data.tar.gz: 80fd94cb083e0bbfb4d3644194f309b1c8f7bcb87a6f44400b8f8fb6aeac2364c5f29f2f469f8727774f2dca4a57c9567264ef2b5d1bcd6e3183db124352cd3f
@@ -1,14 +1,14 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- rainforest_auth (0.1.0)
4
+ rainforest_auth (0.1.1)
5
5
  json
6
6
 
7
7
  GEM
8
8
  remote: http://rubygems.org/
9
9
  specs:
10
10
  diff-lcs (1.2.5)
11
- json (2.0.3)
11
+ json (2.1.0)
12
12
  rake (10.1.1)
13
13
  rspec (2.14.1)
14
14
  rspec-core (~> 2.14.0)
@@ -30,4 +30,4 @@ DEPENDENCIES
30
30
  rspec (>= 2.0)
31
31
 
32
32
  BUNDLED WITH
33
- 1.14.4
33
+ 1.16.0
data/LICENSE CHANGED
@@ -1,4 +1,4 @@
1
- Copyright (c) 2013 CLDRDR, Inc.
1
+ Copyright (c) 2013 Rainforest QA
2
2
 
3
3
  Permission is hereby granted, free of charge, to any person obtaining
4
4
  a copy of this software and associated documentation files (the
@@ -1,5 +1,5 @@
1
1
  #
2
- # Rainforest Authenitcation
2
+ # Rainforest Authentication
3
3
  #
4
4
  #
5
5
  # @author Russell Smith <russ@rainforestqa.com>
@@ -9,6 +9,9 @@ require 'openssl'
9
9
  require 'json'
10
10
 
11
11
  class RainforestAuth
12
+ class MissingKeyException < StandardError
13
+ end
14
+
12
15
  attr_reader :key
13
16
 
14
17
  def initialize(key, key_hash=nil)
@@ -29,11 +32,13 @@ class RainforestAuth
29
32
 
30
33
  # Return a signature for a callback_type and specified options
31
34
  def sign(callback_type, options = nil)
35
+ raise MissingKeyException, 'Missing key hash' if @key_hash.nil?
32
36
  OpenSSL::HMAC.hexdigest(digest, @key_hash, merge_data(callback_type, options))
33
37
  end
34
38
 
35
39
  # Return a signature for a callback_type and specified options
36
40
  def sign_old(callback_type, options = nil)
41
+ raise MissingKeyException, 'Missing key' if @key.nil?
37
42
  OpenSSL::HMAC.hexdigest(digest, @key, merge_data(callback_type, options))
38
43
  end
39
44
 
@@ -1,7 +1,7 @@
1
1
  Gem::Specification.new do |s|
2
2
  s.name = "rainforest_auth"
3
- s.version = "0.1.0"
4
- s.date = "2017-03-07"
3
+ s.version = "0.1.1"
4
+ s.date = "2017-12-19"
5
5
  s.summary = "Authentication of messages for Rainforest webhooks"
6
6
  s.description = "Signs / Authenticates messages"
7
7
  s.authors = ["Russell Smith"]
@@ -53,6 +53,12 @@ describe RainforestAuth do
53
53
  it "works with no options parameter" do
54
54
  @auth.sign('test').should == 'd38f897889c808c021a8ed97d2caacdac48b8259'
55
55
  end
56
+
57
+ context 'key hash is nil' do
58
+ it 'raises an exception' do
59
+ expect { RainforestAuth.new(nil).sign('test') }.to raise_error(RainforestAuth::MissingKeyException)
60
+ end
61
+ end
56
62
  end
57
63
 
58
64
  #TODO: nuke
@@ -72,6 +78,12 @@ describe RainforestAuth do
72
78
  it "works with no options parameter" do
73
79
  @auth.sign_old('test').should == '0a41bdf26fac08a89573a7f5efe0a5145f2730df'
74
80
  end
81
+
82
+ context 'key is nil' do
83
+ it 'raises an exception' do
84
+ expect { RainforestAuth.new(nil, 'I am not nil!').sign_old('test') }.to raise_error(RainforestAuth::MissingKeyException)
85
+ end
86
+ end
75
87
  end
76
88
 
77
89
  context ".verify" do
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rainforest_auth
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.1.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Russell Smith
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-03-07 00:00:00.000000000 Z
11
+ date: 2017-12-19 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: json
@@ -68,4 +68,6 @@ rubygems_version: 2.2.2
68
68
  signing_key:
69
69
  specification_version: 4
70
70
  summary: Authentication of messages for Rainforest webhooks
71
- test_files: []
71
+ test_files:
72
+ - spec/rainforest_auth_spec.rb
73
+ - spec/spec_helper.rb