json_api_client_mock 0.2.4 → 0.3.0

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: ded8a7a37ecd597a987172d22a4497699d008675
4
- data.tar.gz: 88339c610ac9c50d9a41eac4e746becafd97e8f2
3
+ metadata.gz: 844a5078f3405888a37610b10c0a7198f2e0d600
4
+ data.tar.gz: 026b8a493d59ca83bc36313ffd86f81ec8782386
5
5
  SHA512:
6
- metadata.gz: a70ae80ea4e04c6eba89a8b8e482a1ac559a34fe7499dda86c3e621032853ebeebc447145fa1312e5bd93dfbe96c7abb61d9f44881d78a81dec484f78f4fe2de
7
- data.tar.gz: f89e5e46ddc5bb09b6244be88a6aa6c61e41bee6afe57e6f23d517127e3177bd914ec2fff10b81488a327a7d2addf461a62e147ea388567821b8846e977fb9f0
6
+ metadata.gz: d3465ab1c2b5704d5fb26515e6d321da9f40885ee518982148e0b3f4b69ba397163959184e4d76e1adc9097ad2578460c004582dda85cb8c2add91e85f5a2fde
7
+ data.tar.gz: 1e3ff9b9863978837356aae7d98c7ef70341a5fe37ffde8a3ffd83b0c457994ab0f81b74d5d41203cb1e00f97e744b207dae9b93fefc1141a935240b7319c25d
data/README.md CHANGED
@@ -39,6 +39,24 @@ MyResource.set_test_results([
39
39
 
40
40
  MyResource.where(condition1: 'value1', condition2: 'value2').all
41
41
  => [<#MyResource foo:'asdf', qwer:'bar'>]
42
+ ```
43
+ To set the response meta for `MyResource`:
44
+
45
+ ```
46
+ MyResource.set_test_results([
47
+ {foo: 'asdf', 'qwer': 'bar'}
48
+ ], {
49
+ condition1: 'value1',
50
+ condition2: 'value2',
51
+ }, {
52
+ meta_attribute: 1000
53
+ })
54
+
55
+ response = MyResource.where(condition1: 'value1', condition2: 'value2').all
56
+ => [<#MyResource foo:'asdf', qwer:'bar'>]
57
+ puts response.meta
58
+ => { :meta_attribute => 1000 }
59
+ ```
42
60
 
43
61
  # condition order should not matter
44
62
  MyResource.where(condition2: 'value2', condition1: 'value1').all
@@ -13,16 +13,17 @@ module JsonApiClientMock
13
13
  def execute(query)
14
14
  if results = find_test_results(query)
15
15
  OpenStruct.new(:body => {
16
- query.klass.table_name => results[:results]
16
+ query.klass.table_name => results[:results],
17
+ "meta" => results[:meta]
17
18
  })
18
19
  else
19
20
  raise MissingMock, missing_message(query)
20
21
  end
21
22
  end
22
23
 
23
- def set_test_results(klass, results, conditions = nil)
24
+ def set_test_results(klass, results, conditions = nil, response_meta = {})
24
25
  self.class.mocks[klass.name] ||= []
25
- self.class.mocks[klass.name].unshift({results: results, conditions: conditions})
26
+ self.class.mocks[klass.name].unshift({results: results, conditions: conditions, meta: response_meta })
26
27
  end
27
28
 
28
29
  def clear_test_results
@@ -8,8 +8,8 @@ module JsonApiClientMock
8
8
  end
9
9
 
10
10
  module ClassMethods
11
- def set_test_results(results, conditions = nil)
12
- connection.set_test_results(self, results, conditions)
11
+ def set_test_results(results, conditions = nil, meta = {})
12
+ connection.set_test_results(self, results, conditions, meta)
13
13
  end
14
14
 
15
15
  def clear_test_results
@@ -1,3 +1,3 @@
1
1
  module JsonApiClientMock
2
- VERSION = "0.2.4"
2
+ VERSION = "0.3.0"
3
3
  end
@@ -50,6 +50,13 @@ class JsonApiClientMockTest < MiniTest::Unit::TestCase
50
50
  assert_equal('asdf', first.qwer)
51
51
  end
52
52
 
53
+ def test_meta_response
54
+ BarResource.set_test_results([{foo: 'bar', qwer: 'asdf'}], {foo: 'bar'}, {meta_attr: 1000})
55
+ results = BarResource.where(foo: 'bar').all
56
+
57
+ assert_equal(1000, results.meta[:meta_attr])
58
+ end
59
+
53
60
  def test_by_conditional_request_path_mocking
54
61
  BarResource.set_test_results([{foo: 'bar', qwer: 'asdf'}], {path: 'bar_resources/10'})
55
62
  assert_raises(JsonApiClientMock::MissingMock) do
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: json_api_client_mock
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.4
4
+ version: 0.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jeff Ching
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-04-09 00:00:00.000000000 Z
11
+ date: 2015-07-20 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: json_api_client