contentful 2.1.1 → 2.1.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +6 -0
- data/Gemfile.lock +37 -46
- data/lib/contentful/array.rb +8 -1
- data/lib/contentful/entry.rb +9 -9
- data/lib/contentful/fields_resource.rb +9 -8
- data/lib/contentful/resource_builder.rb +1 -7
- data/lib/contentful/support.rb +22 -0
- data/lib/contentful/version.rb +1 -1
- data/spec/array_spec.rb +21 -0
- data/spec/fixtures/vcr_cassettes/array/nested_resources.yml +159 -0
- metadata +5 -106
- data/coverage/.last_run.json +0 -5
- data/coverage/.resultset.json +0 -1887
- data/coverage/.resultset.json.lock +0 -0
- data/coverage/assets/0.10.0/application.css +0 -799
- data/coverage/assets/0.10.0/application.js +0 -1707
- data/coverage/assets/0.10.0/colorbox/border.png +0 -0
- data/coverage/assets/0.10.0/colorbox/controls.png +0 -0
- data/coverage/assets/0.10.0/colorbox/loading.gif +0 -0
- data/coverage/assets/0.10.0/colorbox/loading_background.png +0 -0
- data/coverage/assets/0.10.0/favicon_green.png +0 -0
- data/coverage/assets/0.10.0/favicon_red.png +0 -0
- data/coverage/assets/0.10.0/favicon_yellow.png +0 -0
- data/coverage/assets/0.10.0/loading.gif +0 -0
- data/coverage/assets/0.10.0/magnify.png +0 -0
- data/coverage/assets/0.10.0/smoothness/images/ui-bg_flat_0_aaaaaa_40x100.png +0 -0
- data/coverage/assets/0.10.0/smoothness/images/ui-bg_flat_75_ffffff_40x100.png +0 -0
- data/coverage/assets/0.10.0/smoothness/images/ui-bg_glass_55_fbf9ee_1x400.png +0 -0
- data/coverage/assets/0.10.0/smoothness/images/ui-bg_glass_65_ffffff_1x400.png +0 -0
- data/coverage/assets/0.10.0/smoothness/images/ui-bg_glass_75_dadada_1x400.png +0 -0
- data/coverage/assets/0.10.0/smoothness/images/ui-bg_glass_75_e6e6e6_1x400.png +0 -0
- data/coverage/assets/0.10.0/smoothness/images/ui-bg_glass_95_fef1ec_1x400.png +0 -0
- data/coverage/assets/0.10.0/smoothness/images/ui-bg_highlight-soft_75_cccccc_1x100.png +0 -0
- data/coverage/assets/0.10.0/smoothness/images/ui-icons_222222_256x240.png +0 -0
- data/coverage/assets/0.10.0/smoothness/images/ui-icons_2e83ff_256x240.png +0 -0
- data/coverage/assets/0.10.0/smoothness/images/ui-icons_454545_256x240.png +0 -0
- data/coverage/assets/0.10.0/smoothness/images/ui-icons_888888_256x240.png +0 -0
- data/coverage/assets/0.10.0/smoothness/images/ui-icons_cd0a0a_256x240.png +0 -0
- data/coverage/index.html +0 -11816
- data/doc/Contentful.html +0 -153
- data/doc/Contentful/AccessDenied.html +0 -161
- data/doc/Contentful/Array.html +0 -743
- data/doc/Contentful/ArrayCoercion.html +0 -244
- data/doc/Contentful/ArrayLike.html +0 -627
- data/doc/Contentful/Asset.html +0 -475
- data/doc/Contentful/BadRequest.html +0 -161
- data/doc/Contentful/BaseCoercion.html +0 -447
- data/doc/Contentful/BaseResource.html +0 -599
- data/doc/Contentful/BooleanCoercion.html +0 -244
- data/doc/Contentful/Client.html +0 -1606
- data/doc/Contentful/Constants.html +0 -636
- data/doc/Contentful/ContentType.html +0 -614
- data/doc/Contentful/ContentTypeCache.html +0 -430
- data/doc/Contentful/DateCoercion.html +0 -240
- data/doc/Contentful/DeletedAsset.html +0 -159
- data/doc/Contentful/DeletedEntry.html +0 -159
- data/doc/Contentful/DynamicEntry.html +0 -214
- data/doc/Contentful/Entry.html +0 -273
- data/doc/Contentful/Error.html +0 -424
- data/doc/Contentful/Field.html +0 -929
- data/doc/Contentful/FieldsResource.html +0 -501
- data/doc/Contentful/File.html +0 -520
- data/doc/Contentful/FloatCoercion.html +0 -240
- data/doc/Contentful/IntegerCoercion.html +0 -240
- data/doc/Contentful/Link.html +0 -251
- data/doc/Contentful/LinkCoercion.html +0 -160
- data/doc/Contentful/Locale.html +0 -447
- data/doc/Contentful/Location.html +0 -385
- data/doc/Contentful/LocationCoercion.html +0 -240
- data/doc/Contentful/NotFound.html +0 -161
- data/doc/Contentful/ObjectCoercion.html +0 -240
- data/doc/Contentful/RateLimitExceeded.html +0 -161
- data/doc/Contentful/Request.html +0 -889
- data/doc/Contentful/Resource.html +0 -117
- data/doc/Contentful/Resource/ArrayLike.html +0 -627
- data/doc/Contentful/Resource/AssetFields.html +0 -246
- data/doc/Contentful/Resource/AssetFields/ClassMethods.html +0 -174
- data/doc/Contentful/Resource/ClassMethods.html +0 -378
- data/doc/Contentful/Resource/CustomResource.html +0 -119
- data/doc/Contentful/Resource/Fields.html +0 -288
- data/doc/Contentful/Resource/Fields/ClassMethods.html +0 -187
- data/doc/Contentful/Resource/LocalizedFields.html +0 -305
- data/doc/Contentful/Resource/SystemProperties.html +0 -205
- data/doc/Contentful/Resource/SystemProperties/ClassMethods.html +0 -174
- data/doc/Contentful/ResourceBuilder.html +0 -969
- data/doc/Contentful/Response.html +0 -641
- data/doc/Contentful/ServerError.html +0 -161
- data/doc/Contentful/ServiceUnavailable.html +0 -161
- data/doc/Contentful/Space.html +0 -395
- data/doc/Contentful/StringCoercion.html +0 -244
- data/doc/Contentful/Support.html +0 -550
- data/doc/Contentful/SymbolCoercion.html +0 -171
- data/doc/Contentful/Sync.html +0 -655
- data/doc/Contentful/SyncPage.html +0 -801
- data/doc/Contentful/TextCoercion.html +0 -171
- data/doc/Contentful/Unauthorized.html +0 -161
- data/doc/Contentful/UnparsableJson.html +0 -161
- data/doc/Contentful/UnparsableResource.html +0 -137
- data/doc/_index.html +0 -537
- data/doc/class_list.html +0 -51
- data/doc/css/common.css +0 -1
- data/doc/css/full_list.css +0 -58
- data/doc/css/style.css +0 -481
- data/doc/file.CHANGELOG.html +0 -506
- data/doc/file.LICENSE.html +0 -72
- data/doc/file.README.html +0 -565
- data/doc/file_list.html +0 -66
- data/doc/frames.html +0 -17
- data/doc/index.html +0 -565
- data/doc/js/app.js +0 -243
- data/doc/js/full_list.js +0 -216
- data/doc/js/jquery.js +0 -4
- data/doc/method_list.html +0 -1115
- data/doc/top-level-namespace.html +0 -112
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: a7cecffd2cc6dc1c3b8becbfe965693955299401
|
4
|
+
data.tar.gz: 39bcfd617abf8f802cd18adb9c976965f5cec43f
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 0a422e32a95b9d17d349d0b33a55e6b8dd02a3e0e635e5c1de4843e545895d9e0fce0c473372b8982fd4b22b7d2e804db3844195cc18f5e7212d2485a2f760aa
|
7
|
+
data.tar.gz: 748426ae43bac7533819f3ea42704894b715ab71a3b8f2ca4c6cc1d0bc47e4ff281b23c431c1f13028b2eb80095874c5650b896503717913136882ea0233fe7c
|
data/CHANGELOG.md
CHANGED
data/Gemfile.lock
CHANGED
@@ -1,33 +1,32 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
contentful (2.1.
|
4
|
+
contentful (2.1.2)
|
5
5
|
http (> 0.8, < 3.0)
|
6
6
|
multi_json (~> 1)
|
7
7
|
|
8
8
|
GEM
|
9
9
|
remote: https://rubygems.org/
|
10
10
|
specs:
|
11
|
-
addressable (2.5.
|
11
|
+
addressable (2.5.1)
|
12
12
|
public_suffix (~> 2.0, >= 2.0.2)
|
13
13
|
ast (2.3.0)
|
14
14
|
coderay (1.1.1)
|
15
|
-
coveralls (0.8.
|
15
|
+
coveralls (0.8.21)
|
16
16
|
json (>= 1.8, < 3)
|
17
|
-
simplecov (~> 0.
|
17
|
+
simplecov (~> 0.14.1)
|
18
18
|
term-ansicolor (~> 1.3)
|
19
|
-
thor (~> 0.19.
|
19
|
+
thor (~> 0.19.4)
|
20
20
|
tins (~> 1.6)
|
21
21
|
crack (0.4.3)
|
22
22
|
safe_yaml (~> 1.0.0)
|
23
|
-
diff-lcs (1.
|
23
|
+
diff-lcs (1.3)
|
24
24
|
docile (1.1.5)
|
25
25
|
domain_name (0.5.20170404)
|
26
26
|
unf (>= 0.0.5, < 1.0.0)
|
27
|
-
ffi (1.9.
|
28
|
-
ffi (1.9.14-java)
|
27
|
+
ffi (1.9.18)
|
29
28
|
formatador (0.2.5)
|
30
|
-
guard (2.14.
|
29
|
+
guard (2.14.1)
|
31
30
|
formatador (>= 0.2.4)
|
32
31
|
listen (>= 2.7, < 4.0)
|
33
32
|
lumberjack (~> 1.0)
|
@@ -41,13 +40,13 @@ GEM
|
|
41
40
|
guard (~> 2.1)
|
42
41
|
guard-compat (~> 1.1)
|
43
42
|
rspec (>= 2.99.0, < 4.0)
|
44
|
-
guard-rubocop (1.
|
43
|
+
guard-rubocop (1.3.0)
|
45
44
|
guard (~> 2.0)
|
46
45
|
rubocop (~> 0.20)
|
47
|
-
guard-yard (2.
|
46
|
+
guard-yard (2.2.0)
|
48
47
|
guard (>= 1.1.0)
|
49
48
|
yard (>= 0.7.0)
|
50
|
-
hashdiff (0.3.
|
49
|
+
hashdiff (0.3.4)
|
51
50
|
http (2.2.2)
|
52
51
|
addressable (~> 2.3)
|
53
52
|
http-cookie (~> 1.0)
|
@@ -57,50 +56,45 @@ GEM
|
|
57
56
|
domain_name (~> 0.5)
|
58
57
|
http-form_data (1.0.3)
|
59
58
|
http_parser.rb (0.6.0)
|
60
|
-
json (2.0
|
61
|
-
json (2.0.2-java)
|
59
|
+
json (2.1.0)
|
62
60
|
listen (3.0.6)
|
63
61
|
rb-fsevent (>= 0.9.3)
|
64
62
|
rb-inotify (>= 0.9.7)
|
65
|
-
lumberjack (1.0.
|
63
|
+
lumberjack (1.0.12)
|
66
64
|
method_source (0.8.2)
|
67
65
|
multi_json (1.12.1)
|
68
66
|
nenv (0.3.0)
|
69
67
|
notiffany (0.1.1)
|
70
68
|
nenv (~> 0.1)
|
71
69
|
shellany (~> 0.0)
|
72
|
-
parser (2.
|
70
|
+
parser (2.4.0.0)
|
73
71
|
ast (~> 2.2)
|
74
72
|
powerpack (0.1.1)
|
75
73
|
pry (0.10.4)
|
76
74
|
coderay (~> 1.1.0)
|
77
75
|
method_source (~> 0.8.1)
|
78
76
|
slop (~> 3.4)
|
79
|
-
|
80
|
-
|
81
|
-
|
82
|
-
slop (~> 3.4)
|
83
|
-
spoon (~> 0.0)
|
84
|
-
public_suffix (2.0.4)
|
85
|
-
rainbow (2.1.0)
|
77
|
+
public_suffix (2.0.5)
|
78
|
+
rainbow (2.2.2)
|
79
|
+
rake
|
86
80
|
rake (10.5.0)
|
87
|
-
rb-fsevent (0.
|
88
|
-
rb-inotify (0.9.
|
89
|
-
ffi (>= 0.5.0)
|
90
|
-
rr (1.2.
|
91
|
-
rspec (3.
|
92
|
-
rspec-core (~> 3.
|
93
|
-
rspec-expectations (~> 3.
|
94
|
-
rspec-mocks (~> 3.
|
95
|
-
rspec-core (3.
|
96
|
-
rspec-support (~> 3.
|
97
|
-
rspec-expectations (3.
|
81
|
+
rb-fsevent (0.10.2)
|
82
|
+
rb-inotify (0.9.10)
|
83
|
+
ffi (>= 0.5.0, < 2)
|
84
|
+
rr (1.2.1)
|
85
|
+
rspec (3.6.0)
|
86
|
+
rspec-core (~> 3.6.0)
|
87
|
+
rspec-expectations (~> 3.6.0)
|
88
|
+
rspec-mocks (~> 3.6.0)
|
89
|
+
rspec-core (3.6.0)
|
90
|
+
rspec-support (~> 3.6.0)
|
91
|
+
rspec-expectations (3.6.0)
|
98
92
|
diff-lcs (>= 1.2.0, < 2.0)
|
99
|
-
rspec-support (~> 3.
|
100
|
-
rspec-mocks (3.
|
93
|
+
rspec-support (~> 3.6.0)
|
94
|
+
rspec-mocks (3.6.0)
|
101
95
|
diff-lcs (>= 1.2.0, < 2.0)
|
102
|
-
rspec-support (~> 3.
|
103
|
-
rspec-support (3.
|
96
|
+
rspec-support (~> 3.6.0)
|
97
|
+
rspec-support (3.6.0)
|
104
98
|
rubocop (0.41.2)
|
105
99
|
parser (>= 2.3.1.1, < 3.0)
|
106
100
|
powerpack (~> 0.1)
|
@@ -111,31 +105,28 @@ GEM
|
|
111
105
|
rubygems-tasks (0.2.4)
|
112
106
|
safe_yaml (1.0.4)
|
113
107
|
shellany (0.0.1)
|
114
|
-
simplecov (0.
|
108
|
+
simplecov (0.14.1)
|
115
109
|
docile (~> 1.1.0)
|
116
110
|
json (>= 1.8, < 3)
|
117
111
|
simplecov-html (~> 0.10.0)
|
118
|
-
simplecov-html (0.10.
|
112
|
+
simplecov-html (0.10.1)
|
119
113
|
slop (3.6.0)
|
120
|
-
|
121
|
-
ffi
|
122
|
-
term-ansicolor (1.4.0)
|
114
|
+
term-ansicolor (1.6.0)
|
123
115
|
tins (~> 1.0)
|
124
116
|
thor (0.19.4)
|
125
117
|
tins (1.6.0)
|
126
118
|
unf (0.1.4)
|
127
119
|
unf_ext
|
128
120
|
unf_ext (0.0.7.4)
|
129
|
-
unicode-display_width (1.
|
121
|
+
unicode-display_width (1.3.0)
|
130
122
|
vcr (3.0.3)
|
131
123
|
webmock (1.24.6)
|
132
124
|
addressable (>= 2.3.6)
|
133
125
|
crack (>= 0.3.2)
|
134
126
|
hashdiff
|
135
|
-
yard (0.9.
|
127
|
+
yard (0.9.9)
|
136
128
|
|
137
129
|
PLATFORMS
|
138
|
-
java
|
139
130
|
ruby
|
140
131
|
|
141
132
|
DEPENDENCIES
|
data/lib/contentful/array.rb
CHANGED
@@ -37,7 +37,14 @@ module Contentful
|
|
37
37
|
@total = raw.fetch('total', nil)
|
38
38
|
@limit = raw.fetch('limit', nil)
|
39
39
|
@skip = raw.fetch('skip', nil)
|
40
|
-
@items = raw.fetch('items', [])
|
40
|
+
@items = raw.fetch('items', []).map do |item|
|
41
|
+
require_relative 'resource_builder'
|
42
|
+
ResourceBuilder.new(
|
43
|
+
item.raw,
|
44
|
+
raw_object[:configuration].merge(includes_for_single: Support.includes_from_response(raw, false)),
|
45
|
+
item.respond_to?(:localized) ? item.localized : false
|
46
|
+
).run
|
47
|
+
end
|
41
48
|
end
|
42
49
|
|
43
50
|
# @private
|
data/lib/contentful/entry.rb
CHANGED
@@ -12,9 +12,9 @@ module Contentful
|
|
12
12
|
|
13
13
|
private
|
14
14
|
|
15
|
-
def coerce(field_id, value,
|
16
|
-
return build_nested_resource(value,
|
17
|
-
return coerce_link_array(value,
|
15
|
+
def coerce(field_id, value, includes)
|
16
|
+
return build_nested_resource(value, includes) if Support.link?(value)
|
17
|
+
return coerce_link_array(value, includes) if Support.link_array?(value)
|
18
18
|
|
19
19
|
content_type = ContentTypeCache.cache_get(sys[:space].id, sys[:content_type].id)
|
20
20
|
|
@@ -23,13 +23,13 @@ module Contentful
|
|
23
23
|
return content_type_field.coerce(value) unless content_type_field.nil?
|
24
24
|
end
|
25
25
|
|
26
|
-
super(field_id, value,
|
26
|
+
super(field_id, value, includes)
|
27
27
|
end
|
28
28
|
|
29
|
-
def coerce_link_array(value,
|
29
|
+
def coerce_link_array(value, includes)
|
30
30
|
items = []
|
31
31
|
value.each do |link|
|
32
|
-
items << build_nested_resource(link,
|
32
|
+
items << build_nested_resource(link, includes)
|
33
33
|
end
|
34
34
|
|
35
35
|
items
|
@@ -39,16 +39,16 @@ module Contentful
|
|
39
39
|
# in case one of the included items has a reference in an upper level,
|
40
40
|
# so we can keep the include chain for that object as well
|
41
41
|
# Any included object after the maximum include resolution depth will be just a Link
|
42
|
-
def build_nested_resource(value,
|
42
|
+
def build_nested_resource(value, includes)
|
43
43
|
if @depth < @configuration.fetch(:max_include_resolution_depth, 20)
|
44
44
|
resource = Support.resource_for_link(value, includes)
|
45
|
-
return resolve_include(resource,
|
45
|
+
return resolve_include(resource, includes) unless resource.nil?
|
46
46
|
end
|
47
47
|
|
48
48
|
build_link(value)
|
49
49
|
end
|
50
50
|
|
51
|
-
def resolve_include(resource,
|
51
|
+
def resolve_include(resource, includes)
|
52
52
|
require_relative 'resource_builder'
|
53
53
|
|
54
54
|
ResourceBuilder.new(
|
@@ -4,10 +4,13 @@ require_relative 'base_resource'
|
|
4
4
|
module Contentful
|
5
5
|
# Base definition of a Contentful Resource containing Field properties
|
6
6
|
class FieldsResource < BaseResource
|
7
|
+
attr_reader :localized
|
8
|
+
|
7
9
|
def initialize(item, _configuration, localized = false, includes = [], *)
|
8
10
|
super
|
9
11
|
|
10
|
-
@
|
12
|
+
@localized = localized
|
13
|
+
@fields = hydrate_fields(includes)
|
11
14
|
|
12
15
|
define_fields_methods!
|
13
16
|
end
|
@@ -45,15 +48,15 @@ module Contentful
|
|
45
48
|
{
|
46
49
|
configuration: @configuration,
|
47
50
|
raw: raw_with_links,
|
48
|
-
localized:
|
51
|
+
localized: localized
|
49
52
|
}
|
50
53
|
end
|
51
54
|
|
52
55
|
# @private
|
53
56
|
def marshal_load(raw_object)
|
54
57
|
super(raw_object)
|
55
|
-
localized = raw_object[:localized]
|
56
|
-
@fields = hydrate_fields(
|
58
|
+
@localized = raw_object[:localized]
|
59
|
+
@fields = hydrate_fields(raw_object[:configuration].fetch(:includes_for_single, []))
|
57
60
|
define_fields_methods!
|
58
61
|
end
|
59
62
|
|
@@ -78,7 +81,7 @@ module Contentful
|
|
78
81
|
end
|
79
82
|
end
|
80
83
|
|
81
|
-
def hydrate_fields(
|
84
|
+
def hydrate_fields(includes)
|
82
85
|
return {} unless raw.key?('fields')
|
83
86
|
|
84
87
|
locale = internal_resource_locale
|
@@ -91,7 +94,6 @@ module Contentful
|
|
91
94
|
result[loc][Support.snakify(name).to_sym] = coerce(
|
92
95
|
Support.snakify(name),
|
93
96
|
value,
|
94
|
-
localized,
|
95
97
|
includes
|
96
98
|
)
|
97
99
|
end
|
@@ -101,7 +103,6 @@ module Contentful
|
|
101
103
|
result[locale][Support.snakify(name).to_sym] = coerce(
|
102
104
|
Support.snakify(name),
|
103
105
|
value,
|
104
|
-
localized,
|
105
106
|
includes
|
106
107
|
)
|
107
108
|
end
|
@@ -112,7 +113,7 @@ module Contentful
|
|
112
113
|
|
113
114
|
protected
|
114
115
|
|
115
|
-
def coerce(_field_id, value,
|
116
|
+
def coerce(_field_id, value, _includes)
|
116
117
|
value
|
117
118
|
end
|
118
119
|
end
|
@@ -78,13 +78,7 @@ module Contentful
|
|
78
78
|
end
|
79
79
|
|
80
80
|
def fetch_includes
|
81
|
-
|
82
|
-
%w(Entry Asset).each do |type|
|
83
|
-
if json.fetch('includes', {}).key?(type)
|
84
|
-
includes.concat(json['includes'].fetch(type, []))
|
85
|
-
end
|
86
|
-
end
|
87
|
-
includes
|
81
|
+
Support.includes_from_response(json)
|
88
82
|
end
|
89
83
|
|
90
84
|
def resource_class(item)
|
data/lib/contentful/support.rb
CHANGED
@@ -49,6 +49,28 @@ module Contentful
|
|
49
49
|
i['sys']['type'] == link['sys']['linkType']
|
50
50
|
end
|
51
51
|
end
|
52
|
+
|
53
|
+
# Returns combined include array from an API Response
|
54
|
+
#
|
55
|
+
# @param [Hash] json JSON Response
|
56
|
+
# @param [Bool] raw Response pre-proccessed?
|
57
|
+
#
|
58
|
+
# @return [Array]
|
59
|
+
def includes_from_response(json, raw = true)
|
60
|
+
includes = if raw
|
61
|
+
json['items'].dup
|
62
|
+
else
|
63
|
+
json['items'].map(&:raw)
|
64
|
+
end
|
65
|
+
|
66
|
+
%w(Entry Asset).each do |type|
|
67
|
+
if json.fetch('includes', {}).key?(type)
|
68
|
+
includes.concat(json['includes'].fetch(type, []))
|
69
|
+
end
|
70
|
+
end
|
71
|
+
|
72
|
+
includes
|
73
|
+
end
|
52
74
|
end
|
53
75
|
end
|
54
76
|
end
|
data/lib/contentful/version.rb
CHANGED
data/spec/array_spec.rb
CHANGED
@@ -73,5 +73,26 @@ describe Contentful::Array do
|
|
73
73
|
expect(re_array.skip).to eq array.skip
|
74
74
|
expect(re_array.items).to eq array.items
|
75
75
|
end
|
76
|
+
|
77
|
+
it 'marshals nested includes propertly - #138' do
|
78
|
+
vcr('array/nested_resources') {
|
79
|
+
client = create_client(
|
80
|
+
space: 'j8tb59fszch7',
|
81
|
+
access_token: '5f711401f965951eb724ac72ac905e13d892294ba209268f13a9b32e896c8694',
|
82
|
+
dynamic_entries: :auto,
|
83
|
+
max_include_resolution_depth: 5
|
84
|
+
)
|
85
|
+
entries = client.entries(content_type: 'child')
|
86
|
+
rehydrated = Marshal.load(Marshal.dump(entries))
|
87
|
+
|
88
|
+
expect(entries.inspect).to eq rehydrated.inspect
|
89
|
+
|
90
|
+
expect(entries.first.image1.url).to eq rehydrated.first.image1.url
|
91
|
+
expect(entries.last.image1.url).to eq rehydrated.last.image1.url
|
92
|
+
|
93
|
+
expect(entries.first.image2.url).to eq rehydrated.first.image2.url
|
94
|
+
expect(entries.last.image2.url).to eq rehydrated.last.image2.url
|
95
|
+
}
|
96
|
+
end
|
76
97
|
end
|
77
98
|
end
|
@@ -0,0 +1,159 @@
|
|
1
|
+
---
|
2
|
+
http_interactions:
|
3
|
+
- request:
|
4
|
+
method: get
|
5
|
+
uri: https://cdn.contentful.com/spaces/j8tb59fszch7/content_types?limit=1000
|
6
|
+
body:
|
7
|
+
encoding: US-ASCII
|
8
|
+
string: ''
|
9
|
+
headers:
|
10
|
+
X-Contentful-User-Agent:
|
11
|
+
- sdk contentful.rb/2.1.1; platform ruby/2.4.1; os macOS/16;
|
12
|
+
Authorization:
|
13
|
+
- Bearer 5f711401f965951eb724ac72ac905e13d892294ba209268f13a9b32e896c8694
|
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
|
+
User-Agent:
|
23
|
+
- http.rb/2.2.2
|
24
|
+
response:
|
25
|
+
status:
|
26
|
+
code: 200
|
27
|
+
message: OK
|
28
|
+
headers:
|
29
|
+
Access-Control-Allow-Headers:
|
30
|
+
- 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
|
31
|
+
Access-Control-Allow-Methods:
|
32
|
+
- GET,HEAD,OPTIONS
|
33
|
+
Access-Control-Allow-Origin:
|
34
|
+
- "*"
|
35
|
+
Access-Control-Expose-Headers:
|
36
|
+
- Etag
|
37
|
+
Access-Control-Max-Age:
|
38
|
+
- '86400'
|
39
|
+
Cache-Control:
|
40
|
+
- max-age=0
|
41
|
+
Content-Encoding:
|
42
|
+
- gzip
|
43
|
+
Content-Type:
|
44
|
+
- application/vnd.contentful.delivery.v1+json
|
45
|
+
Etag:
|
46
|
+
- W/"dbd86bc89681ff36b482b61f9acf6336"
|
47
|
+
Server:
|
48
|
+
- Contentful
|
49
|
+
X-Content-Type-Options:
|
50
|
+
- nosniff
|
51
|
+
X-Contentful-Request-Id:
|
52
|
+
- 2643d7904927f996839e1f7b7fc8db3a
|
53
|
+
Content-Length:
|
54
|
+
- '458'
|
55
|
+
Accept-Ranges:
|
56
|
+
- bytes
|
57
|
+
Date:
|
58
|
+
- Thu, 03 Aug 2017 16:22:25 GMT
|
59
|
+
Via:
|
60
|
+
- 1.1 varnish
|
61
|
+
Age:
|
62
|
+
- '0'
|
63
|
+
Connection:
|
64
|
+
- close
|
65
|
+
X-Served-By:
|
66
|
+
- cache-gig17024-GIG
|
67
|
+
X-Cache:
|
68
|
+
- MISS
|
69
|
+
X-Cache-Hits:
|
70
|
+
- '0'
|
71
|
+
X-Timer:
|
72
|
+
- S1501777345.028288,VS0,VE442
|
73
|
+
Vary:
|
74
|
+
- Accept-Encoding
|
75
|
+
body:
|
76
|
+
encoding: ASCII-8BIT
|
77
|
+
string: !binary |-
|
78
|
+
H4sIAAAAAAAAA9VVO2/CMBDe+RWR54KSkJCSDVXt1K1MrRhMYoqL86htkALiv/fsPHCiQJ9ShZfkzr73fXeHgWUhUQgUWgf4BUIWOQEKzTjHBQLe8Ua9kZnEDPiupsSG5kDYmmA0oRIox7ZLBpUkURpftMZSb8eMNiVyHClb9YuSaTijGJpZO/VI0w1SRk8HzKebeeX0k9bYeUBjFc/brVz605XYR+tAhVWfY/OvAy0PKmWiNWWxoa7x4y5LJUmlNmtIRZxgSeKZygZybScY2sHQ9efONHQnoe+OJlPv2RTY5vH3BDjZUUGzVKW78rZxG8VU5AwXD5SA16GVbhmrnUMpTnRZ2yGhmIiI01yWKlHjG1opJaciqrS0ylQmiCb4lTithDeW+u7O1hGxLMKM7olyfIWZIGYRESfvW8rPXELYeMnOXGbQm1CSXq1m58yEIPLUF0YvnAvbvRB25+56wq56aqG/VRKuGMA55gDTP0KwH3r2yHNvv4rg8Tj0g5FnOy0BA8HjHyG4E9NvIawHgujv5b679n5oofQ/MFzvGhOlnyyMHQwaGLsw8vR8W1zYJ/ep5HoJ1sfYFm2oALUYHAcfDww1W1AHAAA=
|
79
|
+
http_version:
|
80
|
+
recorded_at: Thu, 03 Aug 2017 16:22:25 GMT
|
81
|
+
- request:
|
82
|
+
method: get
|
83
|
+
uri: https://cdn.contentful.com/spaces/j8tb59fszch7/entries?content_type=child
|
84
|
+
body:
|
85
|
+
encoding: US-ASCII
|
86
|
+
string: ''
|
87
|
+
headers:
|
88
|
+
X-Contentful-User-Agent:
|
89
|
+
- sdk contentful.rb/2.1.1; platform ruby/2.4.1; os macOS/16;
|
90
|
+
Authorization:
|
91
|
+
- Bearer 5f711401f965951eb724ac72ac905e13d892294ba209268f13a9b32e896c8694
|
92
|
+
Content-Type:
|
93
|
+
- application/vnd.contentful.delivery.v1+json
|
94
|
+
Accept-Encoding:
|
95
|
+
- gzip
|
96
|
+
Connection:
|
97
|
+
- close
|
98
|
+
Host:
|
99
|
+
- cdn.contentful.com
|
100
|
+
User-Agent:
|
101
|
+
- http.rb/2.2.2
|
102
|
+
response:
|
103
|
+
status:
|
104
|
+
code: 200
|
105
|
+
message: OK
|
106
|
+
headers:
|
107
|
+
Access-Control-Allow-Headers:
|
108
|
+
- 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
|
109
|
+
Access-Control-Allow-Methods:
|
110
|
+
- GET,HEAD,OPTIONS
|
111
|
+
Access-Control-Allow-Origin:
|
112
|
+
- "*"
|
113
|
+
Access-Control-Expose-Headers:
|
114
|
+
- Etag
|
115
|
+
Access-Control-Max-Age:
|
116
|
+
- '86400'
|
117
|
+
Cache-Control:
|
118
|
+
- max-age=0
|
119
|
+
Content-Encoding:
|
120
|
+
- gzip
|
121
|
+
Content-Type:
|
122
|
+
- application/vnd.contentful.delivery.v1+json
|
123
|
+
Etag:
|
124
|
+
- W/"64e5b95602a4210b7b8494cb21e4dc1b"
|
125
|
+
Server:
|
126
|
+
- Contentful
|
127
|
+
X-Content-Type-Options:
|
128
|
+
- nosniff
|
129
|
+
X-Contentful-Request-Id:
|
130
|
+
- f3c2e62d826500ebd3bcd5a1123543a4
|
131
|
+
Content-Length:
|
132
|
+
- '1070'
|
133
|
+
Accept-Ranges:
|
134
|
+
- bytes
|
135
|
+
Date:
|
136
|
+
- Thu, 03 Aug 2017 16:22:26 GMT
|
137
|
+
Via:
|
138
|
+
- 1.1 varnish
|
139
|
+
Age:
|
140
|
+
- '0'
|
141
|
+
Connection:
|
142
|
+
- close
|
143
|
+
X-Served-By:
|
144
|
+
- cache-gig17031-GIG
|
145
|
+
X-Cache:
|
146
|
+
- MISS
|
147
|
+
X-Cache-Hits:
|
148
|
+
- '0'
|
149
|
+
X-Timer:
|
150
|
+
- S1501777346.023170,VS0,VE420
|
151
|
+
Vary:
|
152
|
+
- Accept-Encoding
|
153
|
+
body:
|
154
|
+
encoding: ASCII-8BIT
|
155
|
+
string: !binary |-
|
156
|
+
H4sIAAAAAAAAA+1YXW/iOBR976+o8jwQ2/FHwhtCLZrp0u4sZTvtah4cxwG3IbAkLKKj/ve1Q6CBCYTJ0korNQ8odnLte0/u8Tnix9n5uZUsE6t1/kPf6kG6nEo9stqzGV9aeu7lk3knnaQ80vMoGyVPaqoHIBtEaqxSPYJgNVapHJsF/8oWXC27s0u2UzLlwmy1fmM1WcjFTGST65x+U/GTZfZ8vfTu8dNtnnM/W3HnBRWYch7d1CdemDyLETNVra+XzX1W5+qyVjH3l+jh9o9o2u306WLYXo4X/atOYflNXhdxOlsWH4iZ5KkM2gYWCwHIGoA1ELmFXgt5LYyaFKCHYsB8GvxawEz+oxI1iQ3uhcTFJE5lnOaAnA7ZTmHdUnzFSEVBNbDRRPAo6y8ZNwb9dcAGeytUMgpe29F8D0uN+VDCk3ZKO0lkWt4p7PIxUn7UHrcn3d5iQFFPfqVP1aVlWaL3yhJO/e787gGxG9rt3YCbrhwPRXtPlnljr3o9x/p/zEviKfolxs/DpDvoL6j6fHEvu3f/lZgObAHcZOxoYpYHfBCzKCebE/XYI/wAMXH/25+3M3B1MVjeqV6vc8MHcjDY0/LFw/x9iXk9gPfi+uuX7uc2QsP21fjq77vJniy3ialH3zNFVbGI5oEsqPIKlrWmvqpqia7uUdbSN7Pj9cCn0U+r9NWke1BhtYMo6m1RPfJIWA7Z1psbW/LTwW0dEFsHtDBrQg8XxVZnfEBu94WU89oAVC5puXHKDUWJrBnkVboSQ8KkpNhDUCAScq5vQ8E85LrQY8KBzpZSaY3MoorqbmqaGX9m2XYmREkztwLhPNK3Y7togOxyxG1CQ04Z8n3IOPMZl4gxJwCuhAAGgHh2VZ7Nx+lwV1UDmXIVbUt6jkqink0hxMGYbrsK01WmjJ/KzDp2oYJ0lAVmjnP7skZSDUfGeVECd54WO3HrA2XLGlyv+TizJ3Uq3TZfqwLsx6kcVrB/XcPrB92y5GuwSuyyTrrstDWtlVviEsusn74HqcsNyglIrR00Ik3qwuNJvS/kTUl9OY/jZaPD08bvSqTzmUwaC5WO9Mw01c49acCT07oUc5tj6BLgUO5QDHiAsQdDxw1cD1EAHO7b1ZnWIzYFDNYiNkUHie0iXJvY9Wr9oHZ2Qq6Ufo8ROwG1tfhC1iTbHlzve1ivS0PelNoSaE8hBYfChQ6hDhUS6DnsYEiwK06u1+WI28ILOUKYBoQgj3tCC7UUNCSOywKBQ2pX5VmP1thjXi1aE4oP6jUltWldp9IPUhdIvedvjxOQGrktQpsE/Ype7wl5U1JXKgMipxbsctBtigjwgtADMsS+DBxXAAag73ucu4JhUS3Y2iDVsuKOPs+8XY4eY8UrFBsjVpvaR3yXsmLrsjvL87v+fTl7OfsXUKEY1CAXAAA=
|
157
|
+
http_version:
|
158
|
+
recorded_at: Thu, 03 Aug 2017 16:22:26 GMT
|
159
|
+
recorded_with: VCR 3.0.3
|