shaman 0.3.0 → 0.3.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: b5147f164fcca5ef1169390c21ad6d57eddbe155
4
- data.tar.gz: 45a2f1b2939950fb18325a2c33117c41e8540965
3
+ metadata.gz: c7db0e52c9a2ccb6f3b34bb1001866e1c363fc9b
4
+ data.tar.gz: 234110ce510d2ee3315e9a9921610e70fc97e499
5
5
  SHA512:
6
- metadata.gz: b4c0f573a2c29875ce4d00c5a96ad6483c8a3c1a51a4627d5c8eb7c7ad90ab54462814d146dd7347c2f7d91a7dd2cc38bbbc904b80b624d5a968648b450b81e6
7
- data.tar.gz: 63acb1ada0e6d1d4de81aebb1d5411091c4f3cc1827b4a3a61d080b1ad9301e89bb7d7ebcbdc5eb9a06fa0d9450340dd317d60ac3ed7ef7d2e3fbf5a2c1f9185
6
+ metadata.gz: 91f34add21c17559b9a39c70d0b6ec08c645a58c45b9c4c8a0dee776c174f9105720eb65c53cadac246c66221b4e1f8bdf3f019c6340d05c849d9cce83fec9ac
7
+ data.tar.gz: 8f4ac4f7d435e73647c79bae32ad96db003fb29adbc88908c8eb6d81bd019a37fa6bf4ff1844e3e74b5213f02001be0c6a9261b5e60d8e24419821808bd189a2
@@ -28,14 +28,19 @@ class Shaman
28
28
  body.class == Hash
29
29
  end
30
30
 
31
+ def body_hash
32
+ return body if valid_hash?
33
+ false
34
+ end
35
+
31
36
  def parsed_json
32
- @parsed_json ||= Oj.load(body)
37
+ Oj.load(body)
33
38
  rescue Oj::ParseError
34
39
  false
35
40
  end
36
41
 
37
42
  def parsed_xml
38
- @parsed_xml ||= Hash.from_xml(body)
43
+ Hash.from_xml(body)
39
44
  rescue REXML::ParseException
40
45
  false
41
46
  end
@@ -45,7 +50,7 @@ class Shaman
45
50
  end
46
51
 
47
52
  def prepped_body
48
- parsed_json or parsed_xml or parsed_form
53
+ body_hash or parsed_json or parsed_xml or parsed_form
49
54
  end
50
55
 
51
56
  def sorted_hash(obj)
@@ -1,3 +1,3 @@
1
1
  class Shaman
2
- VERSION = "0.3.0"
2
+ VERSION = "0.3.1"
3
3
  end
@@ -33,6 +33,14 @@ describe Shaman do
33
33
  described_class.new(body).sha
34
34
  end
35
35
 
36
+ context "when body is a hash" do
37
+ let(:body) { {"foo"=> "bar"} }
38
+ it "creates a sha of the parsed JSON" do
39
+ expect(subject).to eq('f59494512dabbab0cd0a421c43834271')
40
+ end
41
+
42
+ end
43
+
36
44
  context "when request is valid JSON" do
37
45
  let(:body) { %q[{"foo":"bar"}] }
38
46
  it "creates a sha of the parsed JSON" do
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: shaman
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.0
4
+ version: 0.3.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Micah Cooper