workable_json_assertions 0.1.1 → 0.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: d57330f446b4c62d4d243707b7f207b3c3d1a632
4
- data.tar.gz: 4999fee276b3e4aad72d24ea92329098c9368ae1
3
+ metadata.gz: 72ea7431462f8b60fc63d86770104192de6564d0
4
+ data.tar.gz: e2b66a0b2619c7b1532edd022870db86e371cacd
5
5
  SHA512:
6
- metadata.gz: e2503918bb13ba8dc7080e30d0c2fab24410163f8a08714723260b904cf115b391e6e36bb5690171795b4b627a999f1920f4208922f4fabf5c1d49671a80fd1b
7
- data.tar.gz: 54f562abb8edf23ba5b39c8b779ee708395c7d00aabbabb9a1947b1544586f18f8c46a5e3bb76dbf652cbff1cabdee3c60fd8e3c0a38e7690b37a70b21c8e5a2
6
+ metadata.gz: 7d75335d67a4ca1cdc0049de70320729059d6cd2499ebf6ed457b54fca5647684453b3cc758eb119ab920eb44bdcd2e34aa8c4e19bf203fcafd819ee55c8894e
7
+ data.tar.gz: b2fd157a7712c22f9c675417394ac8ba165dd2459a3fa6214ff70793489d63dce3dec35f0b55356c7c820e7a650924920c34b865f22c9ac530c2fde501548853
@@ -3,22 +3,34 @@ require 'active_support/core_ext/hash/indifferent_access'
3
3
  module WorkableJsonAssertions
4
4
  module Assertions
5
5
 
6
+ def json_response_body(options = {symbolize_names: true})
7
+ JSON.parse(response.body.strip, options)
8
+ end
9
+
6
10
  def assert_json_response_empty
7
11
  assert_empty response.body.strip
8
12
  end
9
13
 
10
14
  def assert_json_response_equal(json)
11
15
  json = json.with_indifferent_access if json.is_a?(Hash)
12
- assert_equal json, JSON.parse(response.body.strip)
16
+ assert_equal json, json_response_body
13
17
  end
14
18
 
15
19
  def assert_json_response_equal_except(json, blacklist = [])
16
20
  json = json.with_indifferent_access if json.is_a?(Hash)
17
- assert_json_equal_except(json, JSON.parse(response.body), blacklist)
21
+ assert_json_equal_except(json, json_response_body, blacklist)
18
22
  end
19
23
 
20
24
  def assert_json_response_includes(hash)
21
- assert_match hash.to_json, response.body
25
+ assert_match hash, json_response_body
26
+ end
27
+
28
+ def assert_json_response_has_key(key)
29
+ assert json_response_body.has_key?(key.to_sym)
30
+ end
31
+
32
+ def refute_json_response_has_key(key)
33
+ refute json_response_body.has_key?(key.to_sym)
22
34
  end
23
35
 
24
36
  private
@@ -1,3 +1,3 @@
1
1
  module WorkableJsonAssertions
2
- VERSION = "0.1.1"
2
+ VERSION = "0.1.2"
3
3
  end
@@ -19,9 +19,9 @@ Gem::Specification.new do |spec|
19
19
  spec.require_paths = ['lib']
20
20
 
21
21
  spec.add_development_dependency 'bundler', '~> 1.3'
22
- spec.add_development_dependency 'rake'
22
+ spec.add_development_dependency 'rake', '~> 0'
23
23
 
24
- spec.add_dependency "actionpack", ">= 4.2"
25
- spec.add_dependency "actionview", ">= 4.2"
26
- spec.add_development_dependency "railties", "> 4.2"
24
+ spec.add_dependency 'actionpack', '~> 4.2'
25
+ spec.add_dependency 'actionview', '~> 4.2'
26
+ spec.add_development_dependency 'railties', '~> 4.2'
27
27
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: workable_json_assertions
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.1
4
+ version: 0.1.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Angelos Karagkiozidis
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2016-08-22 00:00:00.000000000 Z
12
+ date: 2016-11-20 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: bundler
@@ -29,56 +29,56 @@ dependencies:
29
29
  name: rake
30
30
  requirement: !ruby/object:Gem::Requirement
31
31
  requirements:
32
- - - ">="
32
+ - - "~>"
33
33
  - !ruby/object:Gem::Version
34
34
  version: '0'
35
35
  type: :development
36
36
  prerelease: false
37
37
  version_requirements: !ruby/object:Gem::Requirement
38
38
  requirements:
39
- - - ">="
39
+ - - "~>"
40
40
  - !ruby/object:Gem::Version
41
41
  version: '0'
42
42
  - !ruby/object:Gem::Dependency
43
43
  name: actionpack
44
44
  requirement: !ruby/object:Gem::Requirement
45
45
  requirements:
46
- - - ">="
46
+ - - "~>"
47
47
  - !ruby/object:Gem::Version
48
48
  version: '4.2'
49
49
  type: :runtime
50
50
  prerelease: false
51
51
  version_requirements: !ruby/object:Gem::Requirement
52
52
  requirements:
53
- - - ">="
53
+ - - "~>"
54
54
  - !ruby/object:Gem::Version
55
55
  version: '4.2'
56
56
  - !ruby/object:Gem::Dependency
57
57
  name: actionview
58
58
  requirement: !ruby/object:Gem::Requirement
59
59
  requirements:
60
- - - ">="
60
+ - - "~>"
61
61
  - !ruby/object:Gem::Version
62
62
  version: '4.2'
63
63
  type: :runtime
64
64
  prerelease: false
65
65
  version_requirements: !ruby/object:Gem::Requirement
66
66
  requirements:
67
- - - ">="
67
+ - - "~>"
68
68
  - !ruby/object:Gem::Version
69
69
  version: '4.2'
70
70
  - !ruby/object:Gem::Dependency
71
71
  name: railties
72
72
  requirement: !ruby/object:Gem::Requirement
73
73
  requirements:
74
- - - ">"
74
+ - - "~>"
75
75
  - !ruby/object:Gem::Version
76
76
  version: '4.2'
77
77
  type: :development
78
78
  prerelease: false
79
79
  version_requirements: !ruby/object:Gem::Requirement
80
80
  requirements:
81
- - - ">"
81
+ - - "~>"
82
82
  - !ruby/object:Gem::Version
83
83
  version: '4.2'
84
84
  description: Add useful JSON assertions to your Rails controller tests.