api_resource 0.2.3 → 0.2.4

Sign up to get free protection for your applications and to get access to all the features.
data/Gemfile CHANGED
@@ -8,6 +8,7 @@ gem 'rest-client'
8
8
  gem 'log4r'
9
9
  gem 'differ'
10
10
  gem 'colorize'
11
+ gem 'json', :require => 'json/ext'
11
12
 
12
13
  # Add dependencies to develop your gem here.
13
14
  # Include everything needed to run rake, tests, features, etc.
data/Gemfile.lock CHANGED
@@ -32,44 +32,48 @@ GEM
32
32
  arel (2.0.10)
33
33
  builder (2.1.2)
34
34
  colorize (0.5.8)
35
- columnize (0.3.4)
35
+ columnize (0.3.6)
36
36
  diff-lcs (1.1.3)
37
37
  differ (0.1.2)
38
38
  erubis (2.6.6)
39
39
  abstract (>= 1.0.0)
40
- factory_girl (2.1.2)
40
+ factory_girl (2.3.2)
41
41
  activesupport
42
42
  faker (1.0.1)
43
43
  i18n (~> 0.4)
44
+ ffi (1.0.11)
44
45
  git (1.2.5)
45
46
  growl (1.0.3)
46
- guard (0.8.4)
47
+ guard (0.10.0)
48
+ ffi (>= 0.5.0)
47
49
  thor (~> 0.14.6)
48
- guard-rspec (0.4.5)
49
- guard (>= 0.4.0)
50
- hash_dealer (1.4.4)
50
+ guard-rspec (0.6.0)
51
+ guard (>= 0.10.0)
52
+ hash_dealer (1.4.7)
51
53
  activesupport
54
+ colorize
52
55
  i18n
53
56
  i18n (0.5.0)
54
57
  jeweler (1.6.4)
55
58
  bundler (~> 1.0)
56
59
  git (>= 1.2.5)
57
60
  rake
61
+ json (1.6.4)
58
62
  linecache19 (0.5.12)
59
63
  ruby_core_source (>= 0.1.4)
60
- log4r (1.1.9)
64
+ log4r (1.1.10)
61
65
  mail (2.2.19)
62
66
  activesupport (>= 2.3.6)
63
67
  i18n (>= 0.4.0)
64
68
  mime-types (~> 1.16)
65
69
  treetop (~> 1.4.8)
66
70
  metaclass (0.0.1)
67
- mime-types (1.16)
71
+ mime-types (1.17.2)
68
72
  mocha (0.10.0)
69
73
  metaclass (~> 0.0.1)
70
- multi_json (1.0.3)
71
- polyglot (0.3.2)
72
- rack (1.2.4)
74
+ multi_json (1.0.4)
75
+ polyglot (0.3.3)
76
+ rack (1.2.5)
73
77
  rack-mount (0.6.14)
74
78
  rack (>= 1.0.0)
75
79
  rack-test (0.5.7)
@@ -88,23 +92,24 @@ GEM
88
92
  rake (>= 0.8.7)
89
93
  rdoc (~> 3.4)
90
94
  thor (~> 0.14.4)
91
- rake (0.9.2)
92
- rdoc (3.9.4)
95
+ rake (0.9.2.2)
96
+ rdoc (3.12)
97
+ json (~> 1.4)
93
98
  rest-client (1.6.7)
94
99
  mime-types (>= 1.16)
95
- rspec (2.6.0)
96
- rspec-core (~> 2.6.0)
97
- rspec-expectations (~> 2.6.0)
98
- rspec-mocks (~> 2.6.0)
99
- rspec-core (2.6.4)
100
- rspec-expectations (2.6.0)
100
+ rspec (2.8.0)
101
+ rspec-core (~> 2.8.0)
102
+ rspec-expectations (~> 2.8.0)
103
+ rspec-mocks (~> 2.8.0)
104
+ rspec-core (2.8.0)
105
+ rspec-expectations (2.8.0)
101
106
  diff-lcs (~> 1.1.2)
102
- rspec-mocks (2.6.0)
103
- rspec-rails (2.6.1)
104
- actionpack (~> 3.0)
105
- activesupport (~> 3.0)
106
- railties (~> 3.0)
107
- rspec (~> 2.6.0)
107
+ rspec-mocks (2.8.0)
108
+ rspec-rails (2.8.1)
109
+ actionpack (>= 3.0)
110
+ activesupport (>= 3.0)
111
+ railties (>= 3.0)
112
+ rspec (~> 2.8.0)
108
113
  ruby-debug-base19 (0.11.25)
109
114
  columnize (>= 0.3.1)
110
115
  linecache19 (>= 0.5.11)
@@ -115,16 +120,16 @@ GEM
115
120
  ruby-debug-base19 (>= 0.11.19)
116
121
  ruby_core_source (0.1.5)
117
122
  archive-tar-minitar (>= 0.5.2)
118
- simplecov (0.5.3)
123
+ simplecov (0.5.4)
119
124
  multi_json (~> 1.0.3)
120
125
  simplecov-html (~> 0.5.3)
121
126
  simplecov-html (0.5.3)
122
- sqlite3 (1.3.4)
127
+ sqlite3 (1.3.5)
123
128
  thor (0.14.6)
124
129
  treetop (1.4.10)
125
130
  polyglot
126
131
  polyglot (>= 0.3.1)
127
- tzinfo (0.3.30)
132
+ tzinfo (0.3.31)
128
133
 
129
134
  PLATFORMS
130
135
  ruby
@@ -141,6 +146,7 @@ DEPENDENCIES
141
146
  guard-rspec
142
147
  hash_dealer
143
148
  jeweler (~> 1.6.4)
149
+ json
144
150
  log4r
145
151
  mocha
146
152
  rails (= 3.0.9)
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.2.3
1
+ 0.2.4
data/api_resource.gemspec CHANGED
@@ -5,11 +5,11 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = "api_resource"
8
- s.version = "0.2.3"
8
+ s.version = "0.2.4"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Ethan Langevin"]
12
- s.date = "2012-01-08"
12
+ s.date = "2012-01-13"
13
13
  s.description = "A replacement for ActiveResource for RESTful APIs that handles associated object and multiple data sources"
14
14
  s.email = "ejl6266@gmail.com"
15
15
  s.extra_rdoc_files = [
@@ -92,6 +92,7 @@ Gem::Specification.new do |s|
92
92
  s.add_runtime_dependency(%q<log4r>, [">= 0"])
93
93
  s.add_runtime_dependency(%q<differ>, [">= 0"])
94
94
  s.add_runtime_dependency(%q<colorize>, [">= 0"])
95
+ s.add_runtime_dependency(%q<json>, [">= 0"])
95
96
  s.add_development_dependency(%q<rspec>, [">= 0"])
96
97
  s.add_development_dependency(%q<ruby-debug19>, [">= 0"])
97
98
  s.add_development_dependency(%q<growl>, [">= 0"])
@@ -113,6 +114,7 @@ Gem::Specification.new do |s|
113
114
  s.add_dependency(%q<log4r>, [">= 0"])
114
115
  s.add_dependency(%q<differ>, [">= 0"])
115
116
  s.add_dependency(%q<colorize>, [">= 0"])
117
+ s.add_dependency(%q<json>, [">= 0"])
116
118
  s.add_dependency(%q<rspec>, [">= 0"])
117
119
  s.add_dependency(%q<ruby-debug19>, [">= 0"])
118
120
  s.add_dependency(%q<growl>, [">= 0"])
@@ -135,6 +137,7 @@ Gem::Specification.new do |s|
135
137
  s.add_dependency(%q<log4r>, [">= 0"])
136
138
  s.add_dependency(%q<differ>, [">= 0"])
137
139
  s.add_dependency(%q<colorize>, [">= 0"])
140
+ s.add_dependency(%q<json>, [">= 0"])
138
141
  s.add_dependency(%q<rspec>, [">= 0"])
139
142
  s.add_dependency(%q<ruby-debug19>, [">= 0"])
140
143
  s.add_dependency(%q<growl>, [">= 0"])
@@ -1,5 +1,5 @@
1
1
  require 'active_support/json'
2
-
2
+ require 'json'
3
3
  module ApiResource
4
4
  module Formats
5
5
  module JsonFormat
@@ -14,11 +14,11 @@ module ApiResource
14
14
  end
15
15
 
16
16
  def encode(hash, options = nil)
17
- ActiveSupport::JSON.encode(hash, options)
17
+ JSON.dump(hash, options)
18
18
  end
19
19
 
20
20
  def decode(json)
21
- ActiveSupport::JSON.decode(json)
21
+ JSON.parse(json)
22
22
  end
23
23
  end
24
24
  end
metadata CHANGED
@@ -1,247 +1,256 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: api_resource
3
- version: !ruby/object:Gem::Version
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.2.4
4
5
  prerelease:
5
- version: 0.2.3
6
6
  platform: ruby
7
- authors:
7
+ authors:
8
8
  - Ethan Langevin
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
-
13
- date: 2012-01-08 00:00:00 Z
14
- dependencies:
15
- - !ruby/object:Gem::Dependency
12
+ date: 2012-01-13 00:00:00.000000000 Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
16
15
  name: rails
17
- requirement: &id001 !ruby/object:Gem::Requirement
16
+ requirement: &2165858340 !ruby/object:Gem::Requirement
18
17
  none: false
19
- requirements:
20
- - - "="
21
- - !ruby/object:Gem::Version
18
+ requirements:
19
+ - - =
20
+ - !ruby/object:Gem::Version
22
21
  version: 3.0.9
23
22
  type: :runtime
24
23
  prerelease: false
25
- version_requirements: *id001
26
- - !ruby/object:Gem::Dependency
24
+ version_requirements: *2165858340
25
+ - !ruby/object:Gem::Dependency
27
26
  name: hash_dealer
28
- requirement: &id002 !ruby/object:Gem::Requirement
27
+ requirement: &2165857680 !ruby/object:Gem::Requirement
29
28
  none: false
30
- requirements:
31
- - - ">="
32
- - !ruby/object:Gem::Version
33
- version: "0"
29
+ requirements:
30
+ - - ! '>='
31
+ - !ruby/object:Gem::Version
32
+ version: '0'
34
33
  type: :runtime
35
34
  prerelease: false
36
- version_requirements: *id002
37
- - !ruby/object:Gem::Dependency
35
+ version_requirements: *2165857680
36
+ - !ruby/object:Gem::Dependency
38
37
  name: rest-client
39
- requirement: &id003 !ruby/object:Gem::Requirement
38
+ requirement: &2165857040 !ruby/object:Gem::Requirement
40
39
  none: false
41
- requirements:
42
- - - ">="
43
- - !ruby/object:Gem::Version
44
- version: "0"
40
+ requirements:
41
+ - - ! '>='
42
+ - !ruby/object:Gem::Version
43
+ version: '0'
45
44
  type: :runtime
46
45
  prerelease: false
47
- version_requirements: *id003
48
- - !ruby/object:Gem::Dependency
46
+ version_requirements: *2165857040
47
+ - !ruby/object:Gem::Dependency
49
48
  name: log4r
50
- requirement: &id004 !ruby/object:Gem::Requirement
49
+ requirement: &2165856420 !ruby/object:Gem::Requirement
51
50
  none: false
52
- requirements:
53
- - - ">="
54
- - !ruby/object:Gem::Version
55
- version: "0"
51
+ requirements:
52
+ - - ! '>='
53
+ - !ruby/object:Gem::Version
54
+ version: '0'
56
55
  type: :runtime
57
56
  prerelease: false
58
- version_requirements: *id004
59
- - !ruby/object:Gem::Dependency
57
+ version_requirements: *2165856420
58
+ - !ruby/object:Gem::Dependency
60
59
  name: differ
61
- requirement: &id005 !ruby/object:Gem::Requirement
60
+ requirement: &2165855800 !ruby/object:Gem::Requirement
62
61
  none: false
63
- requirements:
64
- - - ">="
65
- - !ruby/object:Gem::Version
66
- version: "0"
62
+ requirements:
63
+ - - ! '>='
64
+ - !ruby/object:Gem::Version
65
+ version: '0'
67
66
  type: :runtime
68
67
  prerelease: false
69
- version_requirements: *id005
70
- - !ruby/object:Gem::Dependency
68
+ version_requirements: *2165855800
69
+ - !ruby/object:Gem::Dependency
71
70
  name: colorize
72
- requirement: &id006 !ruby/object:Gem::Requirement
71
+ requirement: &2165855320 !ruby/object:Gem::Requirement
73
72
  none: false
74
- requirements:
75
- - - ">="
76
- - !ruby/object:Gem::Version
77
- version: "0"
73
+ requirements:
74
+ - - ! '>='
75
+ - !ruby/object:Gem::Version
76
+ version: '0'
78
77
  type: :runtime
79
78
  prerelease: false
80
- version_requirements: *id006
81
- - !ruby/object:Gem::Dependency
79
+ version_requirements: *2165855320
80
+ - !ruby/object:Gem::Dependency
81
+ name: json
82
+ requirement: &2165854780 !ruby/object:Gem::Requirement
83
+ none: false
84
+ requirements:
85
+ - - ! '>='
86
+ - !ruby/object:Gem::Version
87
+ version: '0'
88
+ type: :runtime
89
+ prerelease: false
90
+ version_requirements: *2165854780
91
+ - !ruby/object:Gem::Dependency
82
92
  name: rspec
83
- requirement: &id007 !ruby/object:Gem::Requirement
93
+ requirement: &2165854160 !ruby/object:Gem::Requirement
84
94
  none: false
85
- requirements:
86
- - - ">="
87
- - !ruby/object:Gem::Version
88
- version: "0"
95
+ requirements:
96
+ - - ! '>='
97
+ - !ruby/object:Gem::Version
98
+ version: '0'
89
99
  type: :development
90
100
  prerelease: false
91
- version_requirements: *id007
92
- - !ruby/object:Gem::Dependency
101
+ version_requirements: *2165854160
102
+ - !ruby/object:Gem::Dependency
93
103
  name: ruby-debug19
94
- requirement: &id008 !ruby/object:Gem::Requirement
104
+ requirement: &2165853580 !ruby/object:Gem::Requirement
95
105
  none: false
96
- requirements:
97
- - - ">="
98
- - !ruby/object:Gem::Version
99
- version: "0"
106
+ requirements:
107
+ - - ! '>='
108
+ - !ruby/object:Gem::Version
109
+ version: '0'
100
110
  type: :development
101
111
  prerelease: false
102
- version_requirements: *id008
103
- - !ruby/object:Gem::Dependency
112
+ version_requirements: *2165853580
113
+ - !ruby/object:Gem::Dependency
104
114
  name: growl
105
- requirement: &id009 !ruby/object:Gem::Requirement
115
+ requirement: &2165852940 !ruby/object:Gem::Requirement
106
116
  none: false
107
- requirements:
108
- - - ">="
109
- - !ruby/object:Gem::Version
110
- version: "0"
117
+ requirements:
118
+ - - ! '>='
119
+ - !ruby/object:Gem::Version
120
+ version: '0'
111
121
  type: :development
112
122
  prerelease: false
113
- version_requirements: *id009
114
- - !ruby/object:Gem::Dependency
123
+ version_requirements: *2165852940
124
+ - !ruby/object:Gem::Dependency
115
125
  name: rspec-rails
116
- requirement: &id010 !ruby/object:Gem::Requirement
126
+ requirement: &2165852300 !ruby/object:Gem::Requirement
117
127
  none: false
118
- requirements:
119
- - - ">="
120
- - !ruby/object:Gem::Version
121
- version: "0"
128
+ requirements:
129
+ - - ! '>='
130
+ - !ruby/object:Gem::Version
131
+ version: '0'
122
132
  type: :development
123
133
  prerelease: false
124
- version_requirements: *id010
125
- - !ruby/object:Gem::Dependency
134
+ version_requirements: *2165852300
135
+ - !ruby/object:Gem::Dependency
126
136
  name: factory_girl
127
- requirement: &id011 !ruby/object:Gem::Requirement
137
+ requirement: &2165851660 !ruby/object:Gem::Requirement
128
138
  none: false
129
- requirements:
130
- - - ">="
131
- - !ruby/object:Gem::Version
132
- version: "0"
139
+ requirements:
140
+ - - ! '>='
141
+ - !ruby/object:Gem::Version
142
+ version: '0'
133
143
  type: :development
134
144
  prerelease: false
135
- version_requirements: *id011
136
- - !ruby/object:Gem::Dependency
145
+ version_requirements: *2165851660
146
+ - !ruby/object:Gem::Dependency
137
147
  name: simplecov
138
- requirement: &id012 !ruby/object:Gem::Requirement
148
+ requirement: &2165851040 !ruby/object:Gem::Requirement
139
149
  none: false
140
- requirements:
141
- - - ">="
142
- - !ruby/object:Gem::Version
143
- version: "0"
150
+ requirements:
151
+ - - ! '>='
152
+ - !ruby/object:Gem::Version
153
+ version: '0'
144
154
  type: :development
145
155
  prerelease: false
146
- version_requirements: *id012
147
- - !ruby/object:Gem::Dependency
156
+ version_requirements: *2165851040
157
+ - !ruby/object:Gem::Dependency
148
158
  name: faker
149
- requirement: &id013 !ruby/object:Gem::Requirement
159
+ requirement: &2165850400 !ruby/object:Gem::Requirement
150
160
  none: false
151
- requirements:
152
- - - ">="
153
- - !ruby/object:Gem::Version
154
- version: "0"
161
+ requirements:
162
+ - - ! '>='
163
+ - !ruby/object:Gem::Version
164
+ version: '0'
155
165
  type: :development
156
166
  prerelease: false
157
- version_requirements: *id013
158
- - !ruby/object:Gem::Dependency
167
+ version_requirements: *2165850400
168
+ - !ruby/object:Gem::Dependency
159
169
  name: guard
160
- requirement: &id014 !ruby/object:Gem::Requirement
170
+ requirement: &2165849760 !ruby/object:Gem::Requirement
161
171
  none: false
162
- requirements:
163
- - - ">="
164
- - !ruby/object:Gem::Version
165
- version: "0"
172
+ requirements:
173
+ - - ! '>='
174
+ - !ruby/object:Gem::Version
175
+ version: '0'
166
176
  type: :development
167
177
  prerelease: false
168
- version_requirements: *id014
169
- - !ruby/object:Gem::Dependency
178
+ version_requirements: *2165849760
179
+ - !ruby/object:Gem::Dependency
170
180
  name: guard-rspec
171
- requirement: &id015 !ruby/object:Gem::Requirement
181
+ requirement: &2165849100 !ruby/object:Gem::Requirement
172
182
  none: false
173
- requirements:
174
- - - ">="
175
- - !ruby/object:Gem::Version
176
- version: "0"
183
+ requirements:
184
+ - - ! '>='
185
+ - !ruby/object:Gem::Version
186
+ version: '0'
177
187
  type: :development
178
188
  prerelease: false
179
- version_requirements: *id015
180
- - !ruby/object:Gem::Dependency
189
+ version_requirements: *2165849100
190
+ - !ruby/object:Gem::Dependency
181
191
  name: mocha
182
- requirement: &id016 !ruby/object:Gem::Requirement
192
+ requirement: &2165848500 !ruby/object:Gem::Requirement
183
193
  none: false
184
- requirements:
185
- - - ">="
186
- - !ruby/object:Gem::Version
187
- version: "0"
194
+ requirements:
195
+ - - ! '>='
196
+ - !ruby/object:Gem::Version
197
+ version: '0'
188
198
  type: :development
189
199
  prerelease: false
190
- version_requirements: *id016
191
- - !ruby/object:Gem::Dependency
200
+ version_requirements: *2165848500
201
+ - !ruby/object:Gem::Dependency
192
202
  name: bundler
193
- requirement: &id017 !ruby/object:Gem::Requirement
203
+ requirement: &2165847880 !ruby/object:Gem::Requirement
194
204
  none: false
195
- requirements:
205
+ requirements:
196
206
  - - ~>
197
- - !ruby/object:Gem::Version
207
+ - !ruby/object:Gem::Version
198
208
  version: 1.0.0
199
209
  type: :development
200
210
  prerelease: false
201
- version_requirements: *id017
202
- - !ruby/object:Gem::Dependency
211
+ version_requirements: *2165847880
212
+ - !ruby/object:Gem::Dependency
203
213
  name: jeweler
204
- requirement: &id018 !ruby/object:Gem::Requirement
214
+ requirement: &2165847240 !ruby/object:Gem::Requirement
205
215
  none: false
206
- requirements:
216
+ requirements:
207
217
  - - ~>
208
- - !ruby/object:Gem::Version
218
+ - !ruby/object:Gem::Version
209
219
  version: 1.6.4
210
220
  type: :development
211
221
  prerelease: false
212
- version_requirements: *id018
213
- - !ruby/object:Gem::Dependency
222
+ version_requirements: *2165847240
223
+ - !ruby/object:Gem::Dependency
214
224
  name: activerecord
215
- requirement: &id019 !ruby/object:Gem::Requirement
225
+ requirement: &2165846580 !ruby/object:Gem::Requirement
216
226
  none: false
217
- requirements:
218
- - - "="
219
- - !ruby/object:Gem::Version
227
+ requirements:
228
+ - - =
229
+ - !ruby/object:Gem::Version
220
230
  version: 3.0.9
221
231
  type: :development
222
232
  prerelease: false
223
- version_requirements: *id019
224
- - !ruby/object:Gem::Dependency
233
+ version_requirements: *2165846580
234
+ - !ruby/object:Gem::Dependency
225
235
  name: sqlite3
226
- requirement: &id020 !ruby/object:Gem::Requirement
236
+ requirement: &2165846040 !ruby/object:Gem::Requirement
227
237
  none: false
228
- requirements:
229
- - - ">="
230
- - !ruby/object:Gem::Version
231
- version: "0"
238
+ requirements:
239
+ - - ! '>='
240
+ - !ruby/object:Gem::Version
241
+ version: '0'
232
242
  type: :development
233
243
  prerelease: false
234
- version_requirements: *id020
235
- description: A replacement for ActiveResource for RESTful APIs that handles associated object and multiple data sources
244
+ version_requirements: *2165846040
245
+ description: A replacement for ActiveResource for RESTful APIs that handles associated
246
+ object and multiple data sources
236
247
  email: ejl6266@gmail.com
237
248
  executables: []
238
-
239
249
  extensions: []
240
-
241
- extra_rdoc_files:
250
+ extra_rdoc_files:
242
251
  - LICENSE.txt
243
252
  - README.rdoc
244
- files:
253
+ files:
245
254
  - .document
246
255
  - .rspec
247
256
  - Gemfile
@@ -301,34 +310,32 @@ files:
301
310
  - spec/support/requests/test_resource_requests.rb
302
311
  - spec/support/test_resource.rb
303
312
  homepage: http://github.com/ejlangev/resource
304
- licenses:
313
+ licenses:
305
314
  - MIT
306
315
  post_install_message:
307
316
  rdoc_options: []
308
-
309
- require_paths:
317
+ require_paths:
310
318
  - lib
311
- required_ruby_version: !ruby/object:Gem::Requirement
319
+ required_ruby_version: !ruby/object:Gem::Requirement
312
320
  none: false
313
- requirements:
314
- - - ">="
315
- - !ruby/object:Gem::Version
316
- hash: 4425739189866565812
317
- segments:
321
+ requirements:
322
+ - - ! '>='
323
+ - !ruby/object:Gem::Version
324
+ version: '0'
325
+ segments:
318
326
  - 0
319
- version: "0"
320
- required_rubygems_version: !ruby/object:Gem::Requirement
327
+ hash: -3650647940058164359
328
+ required_rubygems_version: !ruby/object:Gem::Requirement
321
329
  none: false
322
- requirements:
323
- - - ">="
324
- - !ruby/object:Gem::Version
325
- version: "0"
330
+ requirements:
331
+ - - ! '>='
332
+ - !ruby/object:Gem::Version
333
+ version: '0'
326
334
  requirements: []
327
-
328
335
  rubyforge_project:
329
336
  rubygems_version: 1.8.11
330
337
  signing_key:
331
338
  specification_version: 3
332
- summary: A replacement for ActiveResource for RESTful APIs that handles associated object and multiple data sources
339
+ summary: A replacement for ActiveResource for RESTful APIs that handles associated
340
+ object and multiple data sources
333
341
  test_files: []
334
-