contentful_model 0.2.0 → 1.0.0

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.
Files changed (84) hide show
  1. checksums.yaml +5 -5
  2. data/lib/contentful_model.rb +17 -13
  3. data/lib/contentful_model/asset.rb +30 -0
  4. data/lib/contentful_model/asset_dimension_query.rb +70 -0
  5. data/lib/contentful_model/asset_dimensions.rb +54 -0
  6. data/lib/contentful_model/associations/associations.rb +10 -4
  7. data/lib/contentful_model/associations/belongs_to.rb +9 -4
  8. data/lib/contentful_model/associations/belongs_to_many.rb +22 -45
  9. data/lib/contentful_model/associations/has_many.rb +15 -13
  10. data/lib/contentful_model/associations/has_many_nested.rb +39 -37
  11. data/lib/contentful_model/associations/has_one.rb +22 -14
  12. data/lib/contentful_model/base.rb +115 -74
  13. data/lib/contentful_model/client.rb +14 -3
  14. data/lib/contentful_model/errors.rb +0 -1
  15. data/lib/contentful_model/manageable.rb +49 -21
  16. data/lib/contentful_model/management.rb +1 -0
  17. data/lib/contentful_model/migrations/content_type.rb +24 -24
  18. data/lib/contentful_model/migrations/content_type_factory.rb +9 -6
  19. data/lib/contentful_model/migrations/migration.rb +9 -4
  20. data/lib/contentful_model/queries.rb +60 -9
  21. data/lib/contentful_model/query.rb +148 -5
  22. data/lib/contentful_model/validations/lambda_validation.rb +17 -0
  23. data/lib/contentful_model/validations/validates_presence_of.rb +4 -1
  24. data/lib/contentful_model/validations/validations.rb +56 -8
  25. data/lib/contentful_model/version.rb +1 -1
  26. data/spec/asset_spec.rb +141 -0
  27. data/spec/associations/belongs_to_many_spec.rb +38 -0
  28. data/spec/associations/belongs_to_spec.rb +22 -0
  29. data/spec/associations/has_many_nested_spec.rb +321 -0
  30. data/spec/associations/has_many_spec.rb +33 -0
  31. data/spec/associations/has_one_spec.rb +32 -0
  32. data/spec/base_spec.rb +199 -0
  33. data/spec/chainable_queries_spec.rb +199 -0
  34. data/spec/client_spec.rb +11 -0
  35. data/spec/contentful_model_spec.rb +25 -0
  36. data/spec/fixtures/vcr_cassettes/asset/all.yml +161 -0
  37. data/spec/fixtures/vcr_cassettes/asset/find.yml +118 -0
  38. data/spec/fixtures/vcr_cassettes/association/belongs_to_many.yml +439 -0
  39. data/spec/fixtures/vcr_cassettes/association/has_many.yml +161 -0
  40. data/spec/fixtures/vcr_cassettes/association/has_one.yml +161 -0
  41. data/spec/fixtures/vcr_cassettes/association/nested_with_root_root.yml +240 -0
  42. data/spec/fixtures/vcr_cassettes/association/nested_without_root_child_higher_include.yml +123 -0
  43. data/spec/fixtures/vcr_cassettes/association/nested_without_root_child_parent.yml +609 -0
  44. data/spec/fixtures/vcr_cassettes/association/nested_without_root_childless.yml +688 -0
  45. data/spec/fixtures/vcr_cassettes/association/nested_without_root_middle.yml +319 -0
  46. data/spec/fixtures/vcr_cassettes/association/nested_without_root_middle_higher_include.yml +161 -0
  47. data/spec/fixtures/vcr_cassettes/association/nested_without_root_middle_parent.yml +489 -0
  48. data/spec/fixtures/vcr_cassettes/association/nested_without_root_parentless.yml +331 -0
  49. data/spec/fixtures/vcr_cassettes/association/nested_without_root_parentless_higher_include.yml +82 -0
  50. data/spec/fixtures/vcr_cassettes/associations/nested_without_root_middle.yml +161 -0
  51. data/spec/fixtures/vcr_cassettes/associations/nested_without_root_middle_higher_include.yml +82 -0
  52. data/spec/fixtures/vcr_cassettes/base/content_type.yml +185 -0
  53. data/spec/fixtures/vcr_cassettes/base/return_nil_for_empty.yml +202 -0
  54. data/spec/fixtures/vcr_cassettes/base/return_nil_for_empty_with_value.yml +124 -0
  55. data/spec/fixtures/vcr_cassettes/client.yml +98 -0
  56. data/spec/fixtures/vcr_cassettes/dog.yml +161 -0
  57. data/spec/fixtures/vcr_cassettes/human.yml +199 -0
  58. data/spec/fixtures/vcr_cassettes/management/client.yml +1362 -0
  59. data/spec/fixtures/vcr_cassettes/management/nyancat.yml +1449 -0
  60. data/spec/fixtures/vcr_cassettes/management/nyancat_2.yml +1449 -0
  61. data/spec/fixtures/vcr_cassettes/management/nyancat_publish.yml +481 -0
  62. data/spec/fixtures/vcr_cassettes/management/nyancat_refetch_and_fail.yml +558 -0
  63. data/spec/fixtures/vcr_cassettes/management/nyancat_refetch_and_save.yml +620 -0
  64. data/spec/fixtures/vcr_cassettes/management/nyancat_save.yml +479 -0
  65. data/spec/fixtures/vcr_cassettes/management/nyancat_save_2.yml +479 -0
  66. data/spec/fixtures/vcr_cassettes/nyancat.yml +196 -0
  67. data/spec/fixtures/vcr_cassettes/playground/nyancat.yml +177 -0
  68. data/spec/fixtures/vcr_cassettes/query/each_entry.yml +319 -0
  69. data/spec/fixtures/vcr_cassettes/query/each_page.yml +319 -0
  70. data/spec/fixtures/vcr_cassettes/query/empty.yml +180 -0
  71. data/spec/fixtures/vcr_cassettes/query/load.yml +197 -0
  72. data/spec/fixtures/vcr_cassettes/query/manual_pagination.yml +161 -0
  73. data/spec/fixtures/vcr_cassettes/query/nyancat_invalid_elements.yml +247 -0
  74. data/spec/manageable_spec.rb +186 -0
  75. data/spec/management_spec.rb +17 -0
  76. data/spec/migrations/content_type_factory_spec.rb +41 -0
  77. data/spec/migrations/content_type_spec.rb +176 -0
  78. data/spec/migrations/migration_spec.rb +75 -0
  79. data/spec/queries_spec.rb +85 -0
  80. data/spec/query_spec.rb +126 -0
  81. data/spec/spec_helper.rb +58 -0
  82. data/spec/validations/validations_spec.rb +182 -0
  83. metadata +213 -19
  84. data/lib/contentful_model/chainable_queries.rb +0 -104
@@ -0,0 +1,82 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: https://cdn.contentful.com/spaces/a22o2qgm356c/environments/master/entries?content_type=nested&include=2&sys.id=3gpECMvSLSOC8wgkQ6GQ2q
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ X-Contentful-User-Agent:
11
+ - sdk contentful.rb/2.6.0; integration contentful_model/0.2.0; platform ruby/2.5.1;
12
+ os macOS/16;
13
+ Authorization:
14
+ - Bearer 60229df5876f14f499870d0d26f37b1323764ed637289353a5f74a5ea190c214
15
+ Content-Type:
16
+ - application/vnd.contentful.delivery.v1+json
17
+ Accept-Encoding:
18
+ - gzip
19
+ Connection:
20
+ - close
21
+ Host:
22
+ - cdn.contentful.com
23
+ User-Agent:
24
+ - http.rb/2.2.2
25
+ response:
26
+ status:
27
+ code: 200
28
+ message: OK
29
+ headers:
30
+ Access-Control-Allow-Headers:
31
+ - Accept,Accept-Language,Authorization,Cache-Control,Content-Length,Content-Range,Content-Type,DNT,Destination,Expires,If-Match,If-Modified-Since,If-None-Match,Keep-Alive,Last-Modified,Origin,Pragma,Range,User-Agent,X-Http-Method-Override,X-Mx-ReqToken,X-Requested-With,X-Contentful-Version,X-Contentful-Content-Type,X-Contentful-Organization,X-Contentful-Skip-Transformation,X-Contentful-User-Agent,X-Contentful-Enable-Alpha-Feature
32
+ Access-Control-Allow-Methods:
33
+ - GET,HEAD,OPTIONS
34
+ Access-Control-Allow-Origin:
35
+ - "*"
36
+ Access-Control-Expose-Headers:
37
+ - Etag
38
+ Access-Control-Max-Age:
39
+ - '86400'
40
+ Cache-Control:
41
+ - max-age=0
42
+ Content-Encoding:
43
+ - gzip
44
+ Content-Type:
45
+ - application/vnd.contentful.delivery.v1+json
46
+ Etag:
47
+ - W/"591559b549b4737838de306bbba84c83"
48
+ Server:
49
+ - Contentful
50
+ X-Content-Type-Options:
51
+ - nosniff
52
+ X-Contentful-Request-Id:
53
+ - 1b79ed74aa33992d4cf4ff6e88480f9c
54
+ Content-Length:
55
+ - '527'
56
+ Accept-Ranges:
57
+ - bytes
58
+ Date:
59
+ - Wed, 25 Apr 2018 13:29:25 GMT
60
+ Via:
61
+ - 1.1 varnish
62
+ Age:
63
+ - '187'
64
+ Connection:
65
+ - close
66
+ X-Served-By:
67
+ - cache-hhn1520-HHN
68
+ X-Cache:
69
+ - HIT
70
+ X-Cache-Hits:
71
+ - '1'
72
+ X-Timer:
73
+ - S1524662965.326514,VS0,VE1
74
+ Vary:
75
+ - Accept-Encoding
76
+ body:
77
+ encoding: ASCII-8BIT
78
+ string: !binary |-
79
+ H4sIAAAAAAAAA5VVW2+CMBh991eYPk8jFZnxzRBnsugWg9vDFh8YdKYRCkJ1Mcb/vl64VCyIPChf2+92+p3DudPtgvSUgkn3zF6ZQU8xYhaYJol7Amzt8sTP0Ii6AVs3hJXucMyMgTACHGLKtwbSxhSFPOC3CCjDVrKITGnsejxVfkIuKrXwBbGY17TAZAd4zvJh2clundXsiIiVA9jn7bgQRnC/DYcjy+Nd5c+leBd9ygdIn+E2ntnLo7Nw3u3x33a3suYruFfiF4XNCE1O6oaXIJcif8pxAXBgjHsDswdHa8OYjMzJyOo/m8aX6nCI/cccEDniJCIhIjzHfQxlS6GbUpRUIWqL70zJeRfDBB1xiiOSD00GrRcRymrOrux+3W1rs5W42gkgiLXu37/7IPLcQFAAkd6HkzsU4wF+MQr8kjG8L0DcULi8iSRdqF5tggJ+tQUjJBBq5xp2ZGg1dC+YV85+dQSvJhnGL4ef5evhc790cDpHdhjtUahiwXiuvdFNtip3+e9GkB4TLzj4SBEOWUBO+5L42ua05NeeFPC2h0EnAbzcRhGoNK+OT+ZZA+DVybzI25sAzXJgWn3ThKocsIqbBUHrUi8J9cg2yMJDuNdIQxOyeoFgWeslor6P9hNSLxTFnNxKRVMfNYKRfTkzHmpEg6WryMawZGTORvnPWXjpXDr/9SbSoK8HAAA=
80
+ http_version:
81
+ recorded_at: Wed, 25 Apr 2018 13:29:24 GMT
82
+ recorded_with: VCR 4.0.0
@@ -0,0 +1,185 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: https://cdn.contentful.com/spaces/cfexampleapi/environments/master/content_types?limit=1000
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ User-Agent:
11
+ - RubyContentfulGem/2.0.1
12
+ Authorization:
13
+ - Bearer b4c0n73n7fu1
14
+ Content-Type:
15
+ - application/vnd.contentful.delivery.v1+json
16
+ Accept-Encoding:
17
+ - gzip
18
+ Connection:
19
+ - close
20
+ Host:
21
+ - cdn.contentful.com
22
+ response:
23
+ status:
24
+ code: 200
25
+ message: OK
26
+ headers:
27
+ Access-Control-Allow-Headers:
28
+ - Accept,Accept-Language,Authorization,Cache-Control,Content-Length,Content-Range,Content-Type,DNT,Destination,Expires,If-Match,If-Modified-Since,If-None-Match,Keep-Alive,Last-Modified,Origin,Pragma,Range,User-Agent,X-Http-Method-Override,X-Mx-ReqToken,X-Requested-With,X-Contentful-Version,X-Contentful-Content-Type,X-Contentful-Organization,X-Contentful-Skip-Transformation,X-Contentful-User-Agent
29
+ Access-Control-Allow-Methods:
30
+ - GET,HEAD,OPTIONS
31
+ Access-Control-Allow-Origin:
32
+ - "*"
33
+ Access-Control-Expose-Headers:
34
+ - Etag
35
+ Access-Control-Max-Age:
36
+ - '86400'
37
+ Cache-Control:
38
+ - max-age=0
39
+ Content-Encoding:
40
+ - gzip
41
+ Content-Type:
42
+ - application/vnd.contentful.delivery.v1+json
43
+ Etag:
44
+ - W/"544f2fc4143849532b1aaa2d94f16221"
45
+ Server:
46
+ - Contentful
47
+ X-Content-Type-Options:
48
+ - nosniff
49
+ X-Contentful-Request-Id:
50
+ - e95277718eda27468dd943e23c1e70b9
51
+ Content-Length:
52
+ - '866'
53
+ Accept-Ranges:
54
+ - bytes
55
+ Date:
56
+ - Thu, 04 May 2017 16:58:14 GMT
57
+ Via:
58
+ - 1.1 varnish
59
+ Age:
60
+ - '69'
61
+ Connection:
62
+ - close
63
+ X-Served-By:
64
+ - cache-lax8626-LAX
65
+ X-Cache:
66
+ - HIT
67
+ X-Cache-Hits:
68
+ - '1'
69
+ X-Timer:
70
+ - S1493917094.271699,VS0,VE1
71
+ Vary:
72
+ - Accept-Encoding
73
+ body:
74
+ encoding: ASCII-8BIT
75
+ string: !binary |-
76
+ H4sIAAAAAAAAA+1YTVPbMBC98ytSnxuPZRuT+AahTDOlvSSndjgotgKayB+1
77
+ FUrK8N+7kmNHsh0mmBCmQC4grT727Vpvn3R/1OsZ+So3/N49/AsNvkoJtIzT
78
+ LMMrA/oePosxPOGYQb8rW/mCptCwZIPRiHJoIcsqOignkVjxl1yxWLe2jdwq
79
+ T3Eg9ipHFJ2KM6JDdpZOXdJ4YYhNNz/YPl5M105P5Iq1ATQUeII5ucNRyghO
80
+ qYBV/h6q/yXQ4mcUcxAfjmfBPBwtvMhyl+PJJMfjb8r6lWOjJOYk5tIPZZkg
81
+ I5iT8FSEx7At5PYtu2+jKXJ81/Ydx7Ss4U91wjINnzYhI7c0p0ks4r92v8Jh
82
+ hDRPGV5dUMJkDGIcbdwrWtA7onxV+WCEJA8ymvJizXjJWInHmIt1NokVodJS
83
+ VwRN20SMqTb6oW4vLWVep+SOa2kzWBJgRv8S4fccs5yoSTUy8ntJM2nk2VK3
84
+ AWg8Y1smJvCpQkLKRdty3wIpgNSSTHdQwhTRa7FVnyuAkIHUnD80tDXIK/l3
85
+ /XH8x4fyZhlhNaJPPYNO3/L69snUtn3X85FrIsd59AzChCGc2yk69pHl2545
86
+ QANtgnIGnY5n8KsG6uMQthxClZi081SexHOFubQBe2CZJgW9AM0wuiB5O8tc
87
+ Nk16oe7GMM+Dpe1ZFn01cwrDT1bRLGEaOLDeAsdDwQOKlGWloChBU0BUO3Iz
88
+ jfC1XvKrejNuml48aI1yVKs4T4lZm9qpR0xdT2qxjRg6zXPCt0idN1YTwuRa
89
+ VVFllndUZbWK4JjuUCf4uiqrKoLrO7aPkDlwTrZVBLtjRThXINXqgXGGs8Wn
90
+ jWR7t7rs7ZeEbuzWII7d5fQeK8IjXFSS+1vRpCDz98c/tjk4th9VpF4fIXmN
91
+ PPYt5LuOOfCsbfzjdeSfkQKpzj/fSfLHfH3+adTaA18LP/RapdF212tBwpJt
92
+ V+mmqazkLfLxUJy2ow6dkZxfZJTEYbuCPwN7r21A9VhQf9s6FED96qAIyC8x
93
+ z+QT4FqRbwa2XM9mNOM3ITwZtt7NzlqtJfRzePPS5+38RvK8erUjNkbn2y9m
94
+ YOoxMq+9X5XQxvBydF1/O9oPugb9dXvcYvR2OzgwvQ64Zl67oXsfAgq+46uj
95
+ h6N/7PsSCM4XAAA=
96
+ http_version:
97
+ recorded_at: Thu, 04 May 2017 16:58:14 GMT
98
+ - request:
99
+ method: get
100
+ uri: https://cdn.contentful.com/spaces/cfexampleapi/environments/master/content_types/cat
101
+ body:
102
+ encoding: US-ASCII
103
+ string: ''
104
+ headers:
105
+ User-Agent:
106
+ - RubyContentfulGem/2.0.1
107
+ Authorization:
108
+ - Bearer b4c0n73n7fu1
109
+ Content-Type:
110
+ - application/vnd.contentful.delivery.v1+json
111
+ Accept-Encoding:
112
+ - gzip
113
+ Connection:
114
+ - close
115
+ Host:
116
+ - cdn.contentful.com
117
+ response:
118
+ status:
119
+ code: 200
120
+ message: OK
121
+ headers:
122
+ Access-Control-Allow-Headers:
123
+ - Accept,Accept-Language,Authorization,Cache-Control,Content-Length,Content-Range,Content-Type,DNT,Destination,Expires,If-Match,If-Modified-Since,If-None-Match,Keep-Alive,Last-Modified,Origin,Pragma,Range,User-Agent,X-Http-Method-Override,X-Mx-ReqToken,X-Requested-With,X-Contentful-Version,X-Contentful-Content-Type,X-Contentful-Organization,X-Contentful-Skip-Transformation,X-Contentful-User-Agent
124
+ Access-Control-Allow-Methods:
125
+ - GET,HEAD,OPTIONS
126
+ Access-Control-Allow-Origin:
127
+ - "*"
128
+ Access-Control-Expose-Headers:
129
+ - Etag
130
+ Access-Control-Max-Age:
131
+ - '86400'
132
+ Cache-Control:
133
+ - max-age=0
134
+ Content-Encoding:
135
+ - gzip
136
+ Content-Type:
137
+ - application/vnd.contentful.delivery.v1+json
138
+ Etag:
139
+ - W/"0fafeae5dc31f84b8a1f629e4fc7039a"
140
+ Server:
141
+ - Contentful
142
+ X-Content-Type-Options:
143
+ - nosniff
144
+ X-Contentful-Request-Id:
145
+ - c68d8d98332f70d1abc3bf08b2082a33
146
+ Content-Length:
147
+ - '517'
148
+ Accept-Ranges:
149
+ - bytes
150
+ Date:
151
+ - Thu, 04 May 2017 16:58:14 GMT
152
+ Via:
153
+ - 1.1 varnish
154
+ Age:
155
+ - '26'
156
+ Connection:
157
+ - close
158
+ X-Served-By:
159
+ - cache-lax8651-LAX
160
+ X-Cache:
161
+ - HIT
162
+ X-Cache-Hits:
163
+ - '1'
164
+ X-Timer:
165
+ - S1493917095.988717,VS0,VE2
166
+ Vary:
167
+ - Accept-Encoding
168
+ body:
169
+ encoding: ASCII-8BIT
170
+ string: !binary |-
171
+ H4sIAAAAAAAAA81UTW/bMAy951cYOjdB7LZe4VuarkCBbpfmtKEHxaY7ovLH
172
+ JCWrV+S/j5YtR3KCYuu2oidbjx96fKT4PAkCphrFkuCZfttDzVMYjiOr8dBN
173
+ 3TqwWywf2YmJMrig86q33ZksjhGzNiTN4YkXtQBeI+sjd+a763xZ78d1Hzzc
174
+ tqxKDaU2F/S+qQSuIVvoNnU0D0+n83gafVhFUXIWJ2E0uziPvljnTZ15zvE0
175
+ DKdRuArPk3mYnJ3OLuL54CxhiwqrkhLHRM+QYxmqWvDmGkGYYkpedFS6P0KW
176
+ PW2WgUol1rpLwT5B9WNmiLC8jW7l/mrK7kQnvKt7SGkENSdK+9leZFAr/wqe
177
+ rEit+FXKBf6ElpmWG7DSMwnfNygPcaqGr4XBcy7UPqAqUJOqFne7M2Ir8BHU
178
+ 0OSB7q0PW74LKXmz93YJ+wQcxr7hdykPtaOGYj/annp3TbGuhDuhW9KPRoRa
179
+ Ztpzf2w8RwKklajkoQBLH7YCjK70WvaPFXihaWtQ+loilNkh8UuyBWPj0ef+
180
+ P8kP7XMXysdSy6ZbGf2qGPVijVJ/y9wJs8/n8sBiS7qijfAmE/lCPwTmxx8R
181
+ wYGA3HnjlvYNbcIHcAbv796Sty7+5PVvjxMn+G2Iv3ZvYcEfnL7bObnx4fcx
182
+ 9wulQPdzT1N0P9lNfgHq3q6KtAcAAA==
183
+ http_version:
184
+ recorded_at: Thu, 04 May 2017 16:58:15 GMT
185
+ recorded_with: VCR 3.0.3
@@ -0,0 +1,202 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: https://cdn.contentful.com/spaces/a22o2qgm356c/environments/master/content_types?limit=1000
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ X-Contentful-User-Agent:
11
+ - sdk contentful.rb/2.6.0; integration contentful_model/0.2.0; platform ruby/2.5.1;
12
+ os macOS/16;
13
+ Authorization:
14
+ - Bearer 60229df5876f14f499870d0d26f37b1323764ed637289353a5f74a5ea190c214
15
+ Content-Type:
16
+ - application/vnd.contentful.delivery.v1+json
17
+ Accept-Encoding:
18
+ - gzip
19
+ Connection:
20
+ - close
21
+ Host:
22
+ - cdn.contentful.com
23
+ User-Agent:
24
+ - http.rb/2.2.2
25
+ response:
26
+ status:
27
+ code: 200
28
+ message: OK
29
+ headers:
30
+ Access-Control-Allow-Headers:
31
+ - Accept,Accept-Language,Authorization,Cache-Control,Content-Length,Content-Range,Content-Type,DNT,Destination,Expires,If-Match,If-Modified-Since,If-None-Match,Keep-Alive,Last-Modified,Origin,Pragma,Range,User-Agent,X-Http-Method-Override,X-Mx-ReqToken,X-Requested-With,X-Contentful-Version,X-Contentful-Content-Type,X-Contentful-Organization,X-Contentful-Skip-Transformation,X-Contentful-User-Agent,X-Contentful-Enable-Alpha-Feature
32
+ Access-Control-Allow-Methods:
33
+ - GET,HEAD,OPTIONS
34
+ Access-Control-Allow-Origin:
35
+ - "*"
36
+ Access-Control-Expose-Headers:
37
+ - Etag
38
+ Access-Control-Max-Age:
39
+ - '86400'
40
+ Cache-Control:
41
+ - max-age=0
42
+ Content-Encoding:
43
+ - gzip
44
+ Content-Type:
45
+ - application/vnd.contentful.delivery.v1+json
46
+ Etag:
47
+ - W/"3be3c701524e3ba2bfb4bc8cb4969adf"
48
+ Server:
49
+ - Contentful
50
+ X-Content-Type-Options:
51
+ - nosniff
52
+ X-Contentful-Request-Id:
53
+ - fde9e8855358aa63691fb30674c7a218
54
+ Content-Length:
55
+ - '931'
56
+ Accept-Ranges:
57
+ - bytes
58
+ Date:
59
+ - Thu, 26 Apr 2018 09:02:55 GMT
60
+ Via:
61
+ - 1.1 varnish
62
+ Age:
63
+ - '0'
64
+ Connection:
65
+ - close
66
+ X-Served-By:
67
+ - cache-hhn1533-HHN
68
+ X-Cache:
69
+ - MISS
70
+ X-Cache-Hits:
71
+ - '0'
72
+ X-Timer:
73
+ - S1524733375.891877,VS0,VE265
74
+ Vary:
75
+ - Accept-Encoding
76
+ body:
77
+ encoding: ASCII-8BIT
78
+ string: !binary |-
79
+ H4sIAAAAAAAAA+1ZSU/cMBS+8ysin0uUOMvM5EYRVQ+lrcpIlVpxMBMDFtlIAtUU8d/7bCcTO5ghDAh1mOQQxcvz8pYv9vfu9iwLVcsKRdYdfEKhXhYUSuigLMkSQd39B96nzmuSQP1UlKorVkDBEYWEpayGkus4soLVNOUj/hYjynF704ipqoIs+FxtD1mpLIZXiMp2UV9YdoX4pN0D02dX82bRJ2LEXgcW8/0QjHN8fZF6Qbjg22qf+9W32Kh8kJTJaFXTWBlvtZDDPKtpVot5FbFFSQlIHHB1IOy4033H38fB3HWjwIuwY/u+/0sVuCniNQLe1A4w1gRodsvKPEth8kGakxtJCWyk7CtmqFaPlDmf1FxJb1nF8gxW5zWdV4pFMauKhCw/MZoIo2Qk7fQnS1D7VVc7imm1KFlRy1HRahvonI/TeRq3neZLjRXVSXifbqIHLa1KTpbpWZ5oCkNJviAJ+wsOEVnnJKmo6meopNc3rHykEfZNzpJHGnMIH+5mzagmfzTsqqQJ9xx9iUKfoEFjox7Z2uLfaGvanC1KqHt7ItRvQf8QL+AHutFl0OoDCUNzbFBDtcUkKdC+URPnGq7wxtNeTYcVonUNEB1ldSnQs30UmGlq5eBNbGwxSF6S6phkyzkE7XEeUzVoNoNLf+76ke9GbmjPfGcAXK4R2Ca4dDeEy8+ksrgFLG4CS7fBiJ2mP0Ld+mplhs9Okb0OI4TC30Ue6zpo419opVIV9GSfEUUbXa07ap7RJM8uqnnOI/k7Kfn5TjlYto73/HMndiJ3Yk/wdACQioOqWWAXgPTjGhuMQGoC0sUlS2LwVTOMmltHDH0MQzUMOOSqHcF0o3t7ys+hP1l9eZQW9fLFOBrOnWkUhBGe2OHEG4CjawR2AUfFEdT6A/q3dAOMIGoCUdpzUoWg6Puvcj/+LxiKd3aVLfO87pFPisaff/YK/MiZ2LNgOOfnRxjbszDYWs4Pb3iJ/fFQ9SNamNDCSO2NvJ92HR3K+ynxPnJ/myRIgPv7ltFXpv4cuINi2w/dASctQf05OPI8e+pvb6ZkU9Tk1B8YYGT+6Cp+lSyeIWvS0VRaLqLFTwODKtmtJr/4IP/4VkkhPVujZDx7iYaWYnovyQWTvV6QVQBo8R3bmYaDocUosAuXOEMo7OyB7J1dcww806tQze4M0nZ2iGcDoktQzWaBXYgujWqWVF9rgjHK+C+X/8hO9+73/gFB7FuRoSQAAA==
80
+ http_version:
81
+ recorded_at: Thu, 26 Apr 2018 09:02:53 GMT
82
+ - request:
83
+ method: get
84
+ uri: https://cdn.contentful.com/spaces/a22o2qgm356c/environments/master/entries?content_type=modelWithEmpty&sys.id=3QBNQLVctWIUMy4MEMUECK
85
+ body:
86
+ encoding: US-ASCII
87
+ string: ''
88
+ headers:
89
+ X-Contentful-User-Agent:
90
+ - sdk contentful.rb/2.6.0; integration contentful_model/0.2.0; platform ruby/2.5.1;
91
+ os macOS/16;
92
+ Authorization:
93
+ - Bearer 60229df5876f14f499870d0d26f37b1323764ed637289353a5f74a5ea190c214
94
+ Content-Type:
95
+ - application/vnd.contentful.delivery.v1+json
96
+ Accept-Encoding:
97
+ - gzip
98
+ Connection:
99
+ - close
100
+ Host:
101
+ - cdn.contentful.com
102
+ User-Agent:
103
+ - http.rb/2.2.2
104
+ response:
105
+ status:
106
+ code: 200
107
+ message: OK
108
+ headers:
109
+ Access-Control-Allow-Headers:
110
+ - Accept,Accept-Language,Authorization,Cache-Control,Content-Length,Content-Range,Content-Type,DNT,Destination,Expires,If-Match,If-Modified-Since,If-None-Match,Keep-Alive,Last-Modified,Origin,Pragma,Range,User-Agent,X-Http-Method-Override,X-Mx-ReqToken,X-Requested-With,X-Contentful-Version,X-Contentful-Content-Type,X-Contentful-Organization,X-Contentful-Skip-Transformation,X-Contentful-User-Agent,X-Contentful-Enable-Alpha-Feature
111
+ Access-Control-Allow-Methods:
112
+ - GET,HEAD,OPTIONS
113
+ Access-Control-Allow-Origin:
114
+ - "*"
115
+ Access-Control-Expose-Headers:
116
+ - Etag
117
+ Access-Control-Max-Age:
118
+ - '86400'
119
+ Cache-Control:
120
+ - max-age=0
121
+ Content-Type:
122
+ - application/vnd.contentful.delivery.v1+json
123
+ Etag:
124
+ - '"644a26aab473961fd6ed45d8104607c3"'
125
+ Server:
126
+ - Contentful
127
+ X-Content-Type-Options:
128
+ - nosniff
129
+ X-Contentful-Request-Id:
130
+ - ae9bf4ea5d3c9b880e6d103ad5a8af6f
131
+ Content-Length:
132
+ - '893'
133
+ Accept-Ranges:
134
+ - bytes
135
+ Date:
136
+ - Thu, 26 Apr 2018 09:02:55 GMT
137
+ Via:
138
+ - 1.1 varnish
139
+ Age:
140
+ - '0'
141
+ Connection:
142
+ - close
143
+ X-Served-By:
144
+ - cache-hhn1528-HHN
145
+ X-Cache:
146
+ - MISS
147
+ X-Cache-Hits:
148
+ - '0'
149
+ X-Timer:
150
+ - S1524733375.433716,VS0,VE268
151
+ Vary:
152
+ - Accept-Encoding
153
+ body:
154
+ encoding: ASCII-8BIT
155
+ string: |
156
+ {
157
+ "sys": {
158
+ "type": "Array"
159
+ },
160
+ "total": 1,
161
+ "skip": 0,
162
+ "limit": 100,
163
+ "items": [
164
+ {
165
+ "sys": {
166
+ "space": {
167
+ "sys": {
168
+ "type": "Link",
169
+ "linkType": "Space",
170
+ "id": "a22o2qgm356c"
171
+ }
172
+ },
173
+ "id": "3QBNQLVctWIUMy4MEMUECK",
174
+ "type": "Entry",
175
+ "createdAt": "2018-04-26T09:01:06.854Z",
176
+ "updatedAt": "2018-04-26T09:01:06.854Z",
177
+ "environment": {
178
+ "sys": {
179
+ "id": "master",
180
+ "type": "Link",
181
+ "linkType": "Environment"
182
+ }
183
+ },
184
+ "revision": 1,
185
+ "contentType": {
186
+ "sys": {
187
+ "type": "Link",
188
+ "linkType": "ContentType",
189
+ "id": "modelWithEmpty"
190
+ }
191
+ },
192
+ "locale": "en-US"
193
+ },
194
+ "fields": {
195
+ "name": "Has Empty Field"
196
+ }
197
+ }
198
+ ]
199
+ }
200
+ http_version:
201
+ recorded_at: Thu, 26 Apr 2018 09:02:53 GMT
202
+ recorded_with: VCR 4.0.0