blob: 2e15c351055d637940aa4a7818a9eb5ae6c48332 [file] [log] [blame]
Kevin Moore6d21e902021-01-15 06:41:08 -08001// ignore_for_file: camel_case_types
2// ignore_for_file: comment_references
3// ignore_for_file: constant_identifier_names
4// ignore_for_file: directives_ordering
Kevin Moore6d21e902021-01-15 06:41:08 -08005// ignore_for_file: library_names
6// ignore_for_file: lines_longer_than_80_chars
7// ignore_for_file: non_constant_identifier_names
8// ignore_for_file: omit_local_variable_types
9// ignore_for_file: prefer_final_locals
10// ignore_for_file: prefer_interpolation_to_compose_strings
Kevin Moore6d21e902021-01-15 06:41:08 -080011// ignore_for_file: unnecessary_brace_in_string_interps
12// ignore_for_file: unnecessary_cast
13// ignore_for_file: unnecessary_parenthesis
14// ignore_for_file: unnecessary_string_interpolations
Kevin Moore6d21e902021-01-15 06:41:08 -080015// ignore_for_file: avoid_returning_null
16// ignore_for_file: cascade_invocations
Kevin Moored0251702021-01-15 06:41:08 -080017// ignore_for_file: prefer_single_quotes
Kevin Moore6d21e902021-01-15 06:41:08 -080018// ignore_for_file: unnecessary_lambdas
19// ignore_for_file: unused_local_variable
20
Martin Kustermann26171812015-12-21 15:06:06 +010021library googleapis.drive.v3.test;
22
23import "dart:core" as core;
Martin Kustermann26171812015-12-21 15:06:06 +010024import "dart:async" as async;
25import "dart:convert" as convert;
26
27import 'package:http/http.dart' as http;
Martin Kustermann3953f0d2017-06-12 16:59:53 +020028import 'package:test/test.dart' as unittest;
Martin Kustermann26171812015-12-21 15:06:06 +010029
30import 'package:googleapis/drive/v3.dart' as api;
31
32class HttpServerMock extends http.BaseClient {
33 core.Function _callback;
34 core.bool _expectJson;
35
36 void register(core.Function callback, core.bool expectJson) {
37 _callback = callback;
38 _expectJson = expectJson;
39 }
40
Kevin Moore6d21e902021-01-15 06:41:08 -080041 @core.override
42 async.Future<http.StreamedResponse> send(http.BaseRequest request) async {
Martin Kustermann26171812015-12-21 15:06:06 +010043 if (_expectJson) {
Kevin Moore6d21e902021-01-15 06:41:08 -080044 final jsonString =
45 await request.finalize().transform(convert.utf8.decoder).join('');
46 if (jsonString.isEmpty) {
47 return _callback(request, null);
48 } else {
49 return _callback(request, convert.json.decode(jsonString));
50 }
Martin Kustermann26171812015-12-21 15:06:06 +010051 } else {
52 var stream = request.finalize();
53 if (stream == null) {
54 return _callback(request, []);
55 } else {
Kevin Moore6d21e902021-01-15 06:41:08 -080056 final data = await stream.toBytes();
57 return _callback(request, data);
Martin Kustermann26171812015-12-21 15:06:06 +010058 }
59 }
60 }
61}
62
Martin Kustermann5eb85c12017-09-11 12:35:54 +020063http.StreamedResponse stringResponse(core.int status,
64 core.Map<core.String, core.String> headers, core.String body) {
Kevin Moore6d21e902021-01-15 06:41:08 -080065 var stream = async.Stream.fromIterable([convert.utf8.encode(body)]);
66 return http.StreamedResponse(stream, status, headers: headers);
Martin Kustermann26171812015-12-21 15:06:06 +010067}
68
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +020069core.int buildCounterAboutDriveThemes = 0;
Kevin Moore6d21e902021-01-15 06:41:08 -080070api.AboutDriveThemes buildAboutDriveThemes() {
71 var o = api.AboutDriveThemes();
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +020072 buildCounterAboutDriveThemes++;
73 if (buildCounterAboutDriveThemes < 3) {
Kevin Moored0251702021-01-15 06:41:08 -080074 o.backgroundImageLink = 'foo';
75 o.colorRgb = 'foo';
76 o.id = 'foo';
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +020077 }
78 buildCounterAboutDriveThemes--;
79 return o;
80}
81
Kevin Moore6d21e902021-01-15 06:41:08 -080082void checkAboutDriveThemes(api.AboutDriveThemes o) {
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +020083 buildCounterAboutDriveThemes++;
84 if (buildCounterAboutDriveThemes < 3) {
85 unittest.expect(o.backgroundImageLink, unittest.equals('foo'));
86 unittest.expect(o.colorRgb, unittest.equals('foo'));
87 unittest.expect(o.id, unittest.equals('foo'));
88 }
89 buildCounterAboutDriveThemes--;
90}
91
Kevin Moore6d21e902021-01-15 06:41:08 -080092core.List<api.AboutDriveThemes> buildUnnamed2638() {
93 var o = <api.AboutDriveThemes>[];
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +020094 o.add(buildAboutDriveThemes());
95 o.add(buildAboutDriveThemes());
96 return o;
97}
98
Kevin Moore6d21e902021-01-15 06:41:08 -080099void checkUnnamed2638(core.List<api.AboutDriveThemes> o) {
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +0200100 unittest.expect(o, unittest.hasLength(2));
101 checkAboutDriveThemes(o[0]);
102 checkAboutDriveThemes(o[1]);
103}
104
Kevin Moore6d21e902021-01-15 06:41:08 -0800105core.List<core.String> buildUnnamed2639() {
106 var o = <core.String>[];
Kevin Moored0251702021-01-15 06:41:08 -0800107 o.add('foo');
108 o.add('foo');
Martin Kustermann5eb85c12017-09-11 12:35:54 +0200109 return o;
110}
111
Kevin Moore6d21e902021-01-15 06:41:08 -0800112void checkUnnamed2639(core.List<core.String> o) {
Martin Kustermann5eb85c12017-09-11 12:35:54 +0200113 unittest.expect(o, unittest.hasLength(2));
114 unittest.expect(o[0], unittest.equals('foo'));
115 unittest.expect(o[1], unittest.equals('foo'));
116}
117
Kevin Moore6d21e902021-01-15 06:41:08 -0800118core.Map<core.String, core.List<core.String>> buildUnnamed2640() {
119 var o = <core.String, core.List<core.String>>{};
Kevin Moored0251702021-01-15 06:41:08 -0800120 o['x'] = buildUnnamed2639();
121 o['y'] = buildUnnamed2639();
Martin Kustermann5eb85c12017-09-11 12:35:54 +0200122 return o;
123}
124
Kevin Moore6d21e902021-01-15 06:41:08 -0800125void checkUnnamed2640(core.Map<core.String, core.List<core.String>> o) {
Martin Kustermann5eb85c12017-09-11 12:35:54 +0200126 unittest.expect(o, unittest.hasLength(2));
Kevin Moored0251702021-01-15 06:41:08 -0800127 checkUnnamed2639(o['x']);
128 checkUnnamed2639(o['y']);
Martin Kustermann5eb85c12017-09-11 12:35:54 +0200129}
130
Kevin Moore6d21e902021-01-15 06:41:08 -0800131core.List<core.String> buildUnnamed2641() {
132 var o = <core.String>[];
Kevin Moored0251702021-01-15 06:41:08 -0800133 o.add('foo');
134 o.add('foo');
Martin Kustermann5eb85c12017-09-11 12:35:54 +0200135 return o;
136}
137
Kevin Moore6d21e902021-01-15 06:41:08 -0800138void checkUnnamed2641(core.List<core.String> o) {
Martin Kustermann5eb85c12017-09-11 12:35:54 +0200139 unittest.expect(o, unittest.hasLength(2));
140 unittest.expect(o[0], unittest.equals('foo'));
141 unittest.expect(o[1], unittest.equals('foo'));
142}
143
Kevin Moore6d21e902021-01-15 06:41:08 -0800144core.List<core.String> buildUnnamed2642() {
145 var o = <core.String>[];
Kevin Moored0251702021-01-15 06:41:08 -0800146 o.add('foo');
147 o.add('foo');
Martin Kustermann5eb85c12017-09-11 12:35:54 +0200148 return o;
149}
150
Kevin Moore6d21e902021-01-15 06:41:08 -0800151void checkUnnamed2642(core.List<core.String> o) {
Martin Kustermann5eb85c12017-09-11 12:35:54 +0200152 unittest.expect(o, unittest.hasLength(2));
153 unittest.expect(o[0], unittest.equals('foo'));
154 unittest.expect(o[1], unittest.equals('foo'));
155}
156
Kevin Moore6d21e902021-01-15 06:41:08 -0800157core.Map<core.String, core.List<core.String>> buildUnnamed2643() {
158 var o = <core.String, core.List<core.String>>{};
Kevin Moored0251702021-01-15 06:41:08 -0800159 o['x'] = buildUnnamed2642();
160 o['y'] = buildUnnamed2642();
Martin Kustermann5eb85c12017-09-11 12:35:54 +0200161 return o;
162}
163
Kevin Moore6d21e902021-01-15 06:41:08 -0800164void checkUnnamed2643(core.Map<core.String, core.List<core.String>> o) {
Martin Kustermann5eb85c12017-09-11 12:35:54 +0200165 unittest.expect(o, unittest.hasLength(2));
Kevin Moored0251702021-01-15 06:41:08 -0800166 checkUnnamed2642(o['x']);
167 checkUnnamed2642(o['y']);
Martin Kustermann5eb85c12017-09-11 12:35:54 +0200168}
169
Kevin Moore6d21e902021-01-15 06:41:08 -0800170core.Map<core.String, core.String> buildUnnamed2644() {
171 var o = <core.String, core.String>{};
Kevin Moored0251702021-01-15 06:41:08 -0800172 o['x'] = 'foo';
173 o['y'] = 'foo';
Martin Kustermann26171812015-12-21 15:06:06 +0100174 return o;
175}
176
Kevin Moore6d21e902021-01-15 06:41:08 -0800177void checkUnnamed2644(core.Map<core.String, core.String> o) {
Martin Kustermann26171812015-12-21 15:06:06 +0100178 unittest.expect(o, unittest.hasLength(2));
Kevin Moored0251702021-01-15 06:41:08 -0800179 unittest.expect(o['x'], unittest.equals('foo'));
180 unittest.expect(o['y'], unittest.equals('foo'));
Martin Kustermann26171812015-12-21 15:06:06 +0100181}
182
183core.int buildCounterAboutStorageQuota = 0;
Kevin Moore6d21e902021-01-15 06:41:08 -0800184api.AboutStorageQuota buildAboutStorageQuota() {
185 var o = api.AboutStorageQuota();
Martin Kustermann26171812015-12-21 15:06:06 +0100186 buildCounterAboutStorageQuota++;
187 if (buildCounterAboutStorageQuota < 3) {
Kevin Moored0251702021-01-15 06:41:08 -0800188 o.limit = 'foo';
189 o.usage = 'foo';
190 o.usageInDrive = 'foo';
191 o.usageInDriveTrash = 'foo';
Martin Kustermann26171812015-12-21 15:06:06 +0100192 }
193 buildCounterAboutStorageQuota--;
194 return o;
195}
196
Kevin Moore6d21e902021-01-15 06:41:08 -0800197void checkAboutStorageQuota(api.AboutStorageQuota o) {
Martin Kustermann26171812015-12-21 15:06:06 +0100198 buildCounterAboutStorageQuota++;
199 if (buildCounterAboutStorageQuota < 3) {
200 unittest.expect(o.limit, unittest.equals('foo'));
201 unittest.expect(o.usage, unittest.equals('foo'));
202 unittest.expect(o.usageInDrive, unittest.equals('foo'));
203 unittest.expect(o.usageInDriveTrash, unittest.equals('foo'));
204 }
205 buildCounterAboutStorageQuota--;
206}
207
Martin Kustermannc95693d2017-04-18 12:30:00 +0200208core.int buildCounterAboutTeamDriveThemes = 0;
Kevin Moore6d21e902021-01-15 06:41:08 -0800209api.AboutTeamDriveThemes buildAboutTeamDriveThemes() {
210 var o = api.AboutTeamDriveThemes();
Martin Kustermannc95693d2017-04-18 12:30:00 +0200211 buildCounterAboutTeamDriveThemes++;
212 if (buildCounterAboutTeamDriveThemes < 3) {
Kevin Moored0251702021-01-15 06:41:08 -0800213 o.backgroundImageLink = 'foo';
214 o.colorRgb = 'foo';
215 o.id = 'foo';
Martin Kustermannc95693d2017-04-18 12:30:00 +0200216 }
217 buildCounterAboutTeamDriveThemes--;
218 return o;
219}
220
Kevin Moore6d21e902021-01-15 06:41:08 -0800221void checkAboutTeamDriveThemes(api.AboutTeamDriveThemes o) {
Martin Kustermannc95693d2017-04-18 12:30:00 +0200222 buildCounterAboutTeamDriveThemes++;
223 if (buildCounterAboutTeamDriveThemes < 3) {
224 unittest.expect(o.backgroundImageLink, unittest.equals('foo'));
225 unittest.expect(o.colorRgb, unittest.equals('foo'));
226 unittest.expect(o.id, unittest.equals('foo'));
227 }
228 buildCounterAboutTeamDriveThemes--;
229}
230
Kevin Moore6d21e902021-01-15 06:41:08 -0800231core.List<api.AboutTeamDriveThemes> buildUnnamed2645() {
232 var o = <api.AboutTeamDriveThemes>[];
Martin Kustermannc95693d2017-04-18 12:30:00 +0200233 o.add(buildAboutTeamDriveThemes());
234 o.add(buildAboutTeamDriveThemes());
235 return o;
236}
237
Kevin Moore6d21e902021-01-15 06:41:08 -0800238void checkUnnamed2645(core.List<api.AboutTeamDriveThemes> o) {
Martin Kustermannc95693d2017-04-18 12:30:00 +0200239 unittest.expect(o, unittest.hasLength(2));
240 checkAboutTeamDriveThemes(o[0]);
241 checkAboutTeamDriveThemes(o[1]);
242}
243
Martin Kustermann26171812015-12-21 15:06:06 +0100244core.int buildCounterAbout = 0;
Kevin Moore6d21e902021-01-15 06:41:08 -0800245api.About buildAbout() {
246 var o = api.About();
Martin Kustermann26171812015-12-21 15:06:06 +0100247 buildCounterAbout++;
248 if (buildCounterAbout < 3) {
249 o.appInstalled = true;
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +0200250 o.canCreateDrives = true;
Martin Kustermann67f25a22018-01-26 23:31:34 +0100251 o.canCreateTeamDrives = true;
Kevin Moore6d21e902021-01-15 06:41:08 -0800252 o.driveThemes = buildUnnamed2638();
253 o.exportFormats = buildUnnamed2640();
254 o.folderColorPalette = buildUnnamed2641();
255 o.importFormats = buildUnnamed2643();
Kevin Moored0251702021-01-15 06:41:08 -0800256 o.kind = 'foo';
Kevin Moore6d21e902021-01-15 06:41:08 -0800257 o.maxImportSizes = buildUnnamed2644();
Kevin Moored0251702021-01-15 06:41:08 -0800258 o.maxUploadSize = 'foo';
Martin Kustermann26171812015-12-21 15:06:06 +0100259 o.storageQuota = buildAboutStorageQuota();
Kevin Moore6d21e902021-01-15 06:41:08 -0800260 o.teamDriveThemes = buildUnnamed2645();
Martin Kustermann26171812015-12-21 15:06:06 +0100261 o.user = buildUser();
262 }
263 buildCounterAbout--;
264 return o;
265}
266
Kevin Moore6d21e902021-01-15 06:41:08 -0800267void checkAbout(api.About o) {
Martin Kustermann26171812015-12-21 15:06:06 +0100268 buildCounterAbout++;
269 if (buildCounterAbout < 3) {
270 unittest.expect(o.appInstalled, unittest.isTrue);
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +0200271 unittest.expect(o.canCreateDrives, unittest.isTrue);
Martin Kustermann67f25a22018-01-26 23:31:34 +0100272 unittest.expect(o.canCreateTeamDrives, unittest.isTrue);
Kevin Moore6d21e902021-01-15 06:41:08 -0800273 checkUnnamed2638(o.driveThemes);
274 checkUnnamed2640(o.exportFormats);
275 checkUnnamed2641(o.folderColorPalette);
276 checkUnnamed2643(o.importFormats);
Martin Kustermann26171812015-12-21 15:06:06 +0100277 unittest.expect(o.kind, unittest.equals('foo'));
Kevin Moore6d21e902021-01-15 06:41:08 -0800278 checkUnnamed2644(o.maxImportSizes);
Martin Kustermann26171812015-12-21 15:06:06 +0100279 unittest.expect(o.maxUploadSize, unittest.equals('foo'));
280 checkAboutStorageQuota(o.storageQuota);
Kevin Moore6d21e902021-01-15 06:41:08 -0800281 checkUnnamed2645(o.teamDriveThemes);
Martin Kustermann26171812015-12-21 15:06:06 +0100282 checkUser(o.user);
283 }
284 buildCounterAbout--;
285}
286
287core.int buildCounterChange = 0;
Kevin Moore6d21e902021-01-15 06:41:08 -0800288api.Change buildChange() {
289 var o = api.Change();
Martin Kustermann26171812015-12-21 15:06:06 +0100290 buildCounterChange++;
291 if (buildCounterChange < 3) {
Kevin Moored0251702021-01-15 06:41:08 -0800292 o.changeType = 'foo';
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +0200293 o.drive = buildDrive();
Kevin Moored0251702021-01-15 06:41:08 -0800294 o.driveId = 'foo';
Martin Kustermann26171812015-12-21 15:06:06 +0100295 o.file = buildFile();
Kevin Moored0251702021-01-15 06:41:08 -0800296 o.fileId = 'foo';
297 o.kind = 'foo';
Martin Kustermann26171812015-12-21 15:06:06 +0100298 o.removed = true;
Martin Kustermann77f42ff2017-03-06 13:56:35 +0100299 o.teamDrive = buildTeamDrive();
Kevin Moored0251702021-01-15 06:41:08 -0800300 o.teamDriveId = 'foo';
Martin Kustermann26171812015-12-21 15:06:06 +0100301 o.time = core.DateTime.parse("2002-02-27T14:01:02");
Kevin Moored0251702021-01-15 06:41:08 -0800302 o.type = 'foo';
Martin Kustermann26171812015-12-21 15:06:06 +0100303 }
304 buildCounterChange--;
305 return o;
306}
307
Kevin Moore6d21e902021-01-15 06:41:08 -0800308void checkChange(api.Change o) {
Martin Kustermann26171812015-12-21 15:06:06 +0100309 buildCounterChange++;
310 if (buildCounterChange < 3) {
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +0200311 unittest.expect(o.changeType, unittest.equals('foo'));
312 checkDrive(o.drive);
313 unittest.expect(o.driveId, unittest.equals('foo'));
Martin Kustermann26171812015-12-21 15:06:06 +0100314 checkFile(o.file);
315 unittest.expect(o.fileId, unittest.equals('foo'));
316 unittest.expect(o.kind, unittest.equals('foo'));
317 unittest.expect(o.removed, unittest.isTrue);
Martin Kustermann77f42ff2017-03-06 13:56:35 +0100318 checkTeamDrive(o.teamDrive);
319 unittest.expect(o.teamDriveId, unittest.equals('foo'));
Martin Kustermann5eb85c12017-09-11 12:35:54 +0200320 unittest.expect(
321 o.time, unittest.equals(core.DateTime.parse("2002-02-27T14:01:02")));
Martin Kustermann77f42ff2017-03-06 13:56:35 +0100322 unittest.expect(o.type, unittest.equals('foo'));
Martin Kustermann26171812015-12-21 15:06:06 +0100323 }
324 buildCounterChange--;
325}
326
Kevin Moore6d21e902021-01-15 06:41:08 -0800327core.List<api.Change> buildUnnamed2646() {
328 var o = <api.Change>[];
Martin Kustermann26171812015-12-21 15:06:06 +0100329 o.add(buildChange());
330 o.add(buildChange());
331 return o;
332}
333
Kevin Moore6d21e902021-01-15 06:41:08 -0800334void checkUnnamed2646(core.List<api.Change> o) {
Martin Kustermann26171812015-12-21 15:06:06 +0100335 unittest.expect(o, unittest.hasLength(2));
336 checkChange(o[0]);
337 checkChange(o[1]);
338}
339
340core.int buildCounterChangeList = 0;
Kevin Moore6d21e902021-01-15 06:41:08 -0800341api.ChangeList buildChangeList() {
342 var o = api.ChangeList();
Martin Kustermann26171812015-12-21 15:06:06 +0100343 buildCounterChangeList++;
344 if (buildCounterChangeList < 3) {
Kevin Moore6d21e902021-01-15 06:41:08 -0800345 o.changes = buildUnnamed2646();
Kevin Moored0251702021-01-15 06:41:08 -0800346 o.kind = 'foo';
347 o.newStartPageToken = 'foo';
348 o.nextPageToken = 'foo';
Martin Kustermann26171812015-12-21 15:06:06 +0100349 }
350 buildCounterChangeList--;
351 return o;
352}
353
Kevin Moore6d21e902021-01-15 06:41:08 -0800354void checkChangeList(api.ChangeList o) {
Martin Kustermann26171812015-12-21 15:06:06 +0100355 buildCounterChangeList++;
356 if (buildCounterChangeList < 3) {
Kevin Moore6d21e902021-01-15 06:41:08 -0800357 checkUnnamed2646(o.changes);
Martin Kustermann26171812015-12-21 15:06:06 +0100358 unittest.expect(o.kind, unittest.equals('foo'));
359 unittest.expect(o.newStartPageToken, unittest.equals('foo'));
360 unittest.expect(o.nextPageToken, unittest.equals('foo'));
361 }
362 buildCounterChangeList--;
363}
364
Kevin Moore6d21e902021-01-15 06:41:08 -0800365core.Map<core.String, core.String> buildUnnamed2647() {
366 var o = <core.String, core.String>{};
Kevin Moored0251702021-01-15 06:41:08 -0800367 o['x'] = 'foo';
368 o['y'] = 'foo';
Martin Kustermann26171812015-12-21 15:06:06 +0100369 return o;
370}
371
Kevin Moore6d21e902021-01-15 06:41:08 -0800372void checkUnnamed2647(core.Map<core.String, core.String> o) {
Martin Kustermann26171812015-12-21 15:06:06 +0100373 unittest.expect(o, unittest.hasLength(2));
Kevin Moored0251702021-01-15 06:41:08 -0800374 unittest.expect(o['x'], unittest.equals('foo'));
375 unittest.expect(o['y'], unittest.equals('foo'));
Martin Kustermann26171812015-12-21 15:06:06 +0100376}
377
378core.int buildCounterChannel = 0;
Kevin Moore6d21e902021-01-15 06:41:08 -0800379api.Channel buildChannel() {
380 var o = api.Channel();
Martin Kustermann26171812015-12-21 15:06:06 +0100381 buildCounterChannel++;
382 if (buildCounterChannel < 3) {
Kevin Moored0251702021-01-15 06:41:08 -0800383 o.address = 'foo';
384 o.expiration = 'foo';
385 o.id = 'foo';
386 o.kind = 'foo';
Kevin Moore6d21e902021-01-15 06:41:08 -0800387 o.params = buildUnnamed2647();
Martin Kustermann26171812015-12-21 15:06:06 +0100388 o.payload = true;
Kevin Moored0251702021-01-15 06:41:08 -0800389 o.resourceId = 'foo';
390 o.resourceUri = 'foo';
391 o.token = 'foo';
392 o.type = 'foo';
Martin Kustermann26171812015-12-21 15:06:06 +0100393 }
394 buildCounterChannel--;
395 return o;
396}
397
Kevin Moore6d21e902021-01-15 06:41:08 -0800398void checkChannel(api.Channel o) {
Martin Kustermann26171812015-12-21 15:06:06 +0100399 buildCounterChannel++;
400 if (buildCounterChannel < 3) {
401 unittest.expect(o.address, unittest.equals('foo'));
402 unittest.expect(o.expiration, unittest.equals('foo'));
403 unittest.expect(o.id, unittest.equals('foo'));
404 unittest.expect(o.kind, unittest.equals('foo'));
Kevin Moore6d21e902021-01-15 06:41:08 -0800405 checkUnnamed2647(o.params);
Martin Kustermann26171812015-12-21 15:06:06 +0100406 unittest.expect(o.payload, unittest.isTrue);
407 unittest.expect(o.resourceId, unittest.equals('foo'));
408 unittest.expect(o.resourceUri, unittest.equals('foo'));
409 unittest.expect(o.token, unittest.equals('foo'));
410 unittest.expect(o.type, unittest.equals('foo'));
411 }
412 buildCounterChannel--;
413}
414
415core.int buildCounterCommentQuotedFileContent = 0;
Kevin Moore6d21e902021-01-15 06:41:08 -0800416api.CommentQuotedFileContent buildCommentQuotedFileContent() {
417 var o = api.CommentQuotedFileContent();
Martin Kustermann26171812015-12-21 15:06:06 +0100418 buildCounterCommentQuotedFileContent++;
419 if (buildCounterCommentQuotedFileContent < 3) {
Kevin Moored0251702021-01-15 06:41:08 -0800420 o.mimeType = 'foo';
421 o.value = 'foo';
Martin Kustermann26171812015-12-21 15:06:06 +0100422 }
423 buildCounterCommentQuotedFileContent--;
424 return o;
425}
426
Kevin Moore6d21e902021-01-15 06:41:08 -0800427void checkCommentQuotedFileContent(api.CommentQuotedFileContent o) {
Martin Kustermann26171812015-12-21 15:06:06 +0100428 buildCounterCommentQuotedFileContent++;
429 if (buildCounterCommentQuotedFileContent < 3) {
430 unittest.expect(o.mimeType, unittest.equals('foo'));
431 unittest.expect(o.value, unittest.equals('foo'));
432 }
433 buildCounterCommentQuotedFileContent--;
434}
435
Kevin Moore6d21e902021-01-15 06:41:08 -0800436core.List<api.Reply> buildUnnamed2648() {
437 var o = <api.Reply>[];
Martin Kustermann26171812015-12-21 15:06:06 +0100438 o.add(buildReply());
439 o.add(buildReply());
440 return o;
441}
442
Kevin Moore6d21e902021-01-15 06:41:08 -0800443void checkUnnamed2648(core.List<api.Reply> o) {
Martin Kustermann26171812015-12-21 15:06:06 +0100444 unittest.expect(o, unittest.hasLength(2));
445 checkReply(o[0]);
446 checkReply(o[1]);
447}
448
449core.int buildCounterComment = 0;
Kevin Moore6d21e902021-01-15 06:41:08 -0800450api.Comment buildComment() {
451 var o = api.Comment();
Martin Kustermann26171812015-12-21 15:06:06 +0100452 buildCounterComment++;
453 if (buildCounterComment < 3) {
Kevin Moored0251702021-01-15 06:41:08 -0800454 o.anchor = 'foo';
Martin Kustermann26171812015-12-21 15:06:06 +0100455 o.author = buildUser();
Kevin Moored0251702021-01-15 06:41:08 -0800456 o.content = 'foo';
Martin Kustermann26171812015-12-21 15:06:06 +0100457 o.createdTime = core.DateTime.parse("2002-02-27T14:01:02");
458 o.deleted = true;
Kevin Moored0251702021-01-15 06:41:08 -0800459 o.htmlContent = 'foo';
460 o.id = 'foo';
461 o.kind = 'foo';
Martin Kustermann26171812015-12-21 15:06:06 +0100462 o.modifiedTime = core.DateTime.parse("2002-02-27T14:01:02");
463 o.quotedFileContent = buildCommentQuotedFileContent();
Kevin Moore6d21e902021-01-15 06:41:08 -0800464 o.replies = buildUnnamed2648();
Martin Kustermann26171812015-12-21 15:06:06 +0100465 o.resolved = true;
466 }
467 buildCounterComment--;
468 return o;
469}
470
Kevin Moore6d21e902021-01-15 06:41:08 -0800471void checkComment(api.Comment o) {
Martin Kustermann26171812015-12-21 15:06:06 +0100472 buildCounterComment++;
473 if (buildCounterComment < 3) {
474 unittest.expect(o.anchor, unittest.equals('foo'));
475 checkUser(o.author);
476 unittest.expect(o.content, unittest.equals('foo'));
Martin Kustermann5eb85c12017-09-11 12:35:54 +0200477 unittest.expect(o.createdTime,
478 unittest.equals(core.DateTime.parse("2002-02-27T14:01:02")));
Martin Kustermann26171812015-12-21 15:06:06 +0100479 unittest.expect(o.deleted, unittest.isTrue);
480 unittest.expect(o.htmlContent, unittest.equals('foo'));
481 unittest.expect(o.id, unittest.equals('foo'));
482 unittest.expect(o.kind, unittest.equals('foo'));
Martin Kustermann5eb85c12017-09-11 12:35:54 +0200483 unittest.expect(o.modifiedTime,
484 unittest.equals(core.DateTime.parse("2002-02-27T14:01:02")));
Martin Kustermann26171812015-12-21 15:06:06 +0100485 checkCommentQuotedFileContent(o.quotedFileContent);
Kevin Moore6d21e902021-01-15 06:41:08 -0800486 checkUnnamed2648(o.replies);
Martin Kustermann26171812015-12-21 15:06:06 +0100487 unittest.expect(o.resolved, unittest.isTrue);
488 }
489 buildCounterComment--;
490}
491
Kevin Moore6d21e902021-01-15 06:41:08 -0800492core.List<api.Comment> buildUnnamed2649() {
493 var o = <api.Comment>[];
Martin Kustermann26171812015-12-21 15:06:06 +0100494 o.add(buildComment());
495 o.add(buildComment());
496 return o;
497}
498
Kevin Moore6d21e902021-01-15 06:41:08 -0800499void checkUnnamed2649(core.List<api.Comment> o) {
Martin Kustermann26171812015-12-21 15:06:06 +0100500 unittest.expect(o, unittest.hasLength(2));
501 checkComment(o[0]);
502 checkComment(o[1]);
503}
504
505core.int buildCounterCommentList = 0;
Kevin Moore6d21e902021-01-15 06:41:08 -0800506api.CommentList buildCommentList() {
507 var o = api.CommentList();
Martin Kustermann26171812015-12-21 15:06:06 +0100508 buildCounterCommentList++;
509 if (buildCounterCommentList < 3) {
Kevin Moore6d21e902021-01-15 06:41:08 -0800510 o.comments = buildUnnamed2649();
Kevin Moored0251702021-01-15 06:41:08 -0800511 o.kind = 'foo';
512 o.nextPageToken = 'foo';
Martin Kustermann26171812015-12-21 15:06:06 +0100513 }
514 buildCounterCommentList--;
515 return o;
516}
517
Kevin Moore6d21e902021-01-15 06:41:08 -0800518void checkCommentList(api.CommentList o) {
Martin Kustermann26171812015-12-21 15:06:06 +0100519 buildCounterCommentList++;
520 if (buildCounterCommentList < 3) {
Kevin Moore6d21e902021-01-15 06:41:08 -0800521 checkUnnamed2649(o.comments);
Martin Kustermann26171812015-12-21 15:06:06 +0100522 unittest.expect(o.kind, unittest.equals('foo'));
523 unittest.expect(o.nextPageToken, unittest.equals('foo'));
524 }
525 buildCounterCommentList--;
526}
527
Jonas Finnemann Jensenef0c8a32020-10-07 20:58:20 +0200528core.int buildCounterContentRestriction = 0;
Kevin Moore6d21e902021-01-15 06:41:08 -0800529api.ContentRestriction buildContentRestriction() {
530 var o = api.ContentRestriction();
Jonas Finnemann Jensenef0c8a32020-10-07 20:58:20 +0200531 buildCounterContentRestriction++;
532 if (buildCounterContentRestriction < 3) {
533 o.readOnly = true;
Kevin Moored0251702021-01-15 06:41:08 -0800534 o.reason = 'foo';
Jonas Finnemann Jensenef0c8a32020-10-07 20:58:20 +0200535 o.restrictingUser = buildUser();
536 o.restrictionTime = core.DateTime.parse("2002-02-27T14:01:02");
Kevin Moored0251702021-01-15 06:41:08 -0800537 o.type = 'foo';
Jonas Finnemann Jensenef0c8a32020-10-07 20:58:20 +0200538 }
539 buildCounterContentRestriction--;
540 return o;
541}
542
Kevin Moore6d21e902021-01-15 06:41:08 -0800543void checkContentRestriction(api.ContentRestriction o) {
Jonas Finnemann Jensenef0c8a32020-10-07 20:58:20 +0200544 buildCounterContentRestriction++;
545 if (buildCounterContentRestriction < 3) {
546 unittest.expect(o.readOnly, unittest.isTrue);
547 unittest.expect(o.reason, unittest.equals('foo'));
548 checkUser(o.restrictingUser);
549 unittest.expect(o.restrictionTime,
550 unittest.equals(core.DateTime.parse("2002-02-27T14:01:02")));
551 unittest.expect(o.type, unittest.equals('foo'));
552 }
553 buildCounterContentRestriction--;
554}
555
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +0200556core.int buildCounterDriveBackgroundImageFile = 0;
Kevin Moore6d21e902021-01-15 06:41:08 -0800557api.DriveBackgroundImageFile buildDriveBackgroundImageFile() {
558 var o = api.DriveBackgroundImageFile();
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +0200559 buildCounterDriveBackgroundImageFile++;
560 if (buildCounterDriveBackgroundImageFile < 3) {
Kevin Moored0251702021-01-15 06:41:08 -0800561 o.id = 'foo';
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +0200562 o.width = 42.0;
563 o.xCoordinate = 42.0;
564 o.yCoordinate = 42.0;
565 }
566 buildCounterDriveBackgroundImageFile--;
567 return o;
568}
569
Kevin Moore6d21e902021-01-15 06:41:08 -0800570void checkDriveBackgroundImageFile(api.DriveBackgroundImageFile o) {
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +0200571 buildCounterDriveBackgroundImageFile++;
572 if (buildCounterDriveBackgroundImageFile < 3) {
573 unittest.expect(o.id, unittest.equals('foo'));
574 unittest.expect(o.width, unittest.equals(42.0));
575 unittest.expect(o.xCoordinate, unittest.equals(42.0));
576 unittest.expect(o.yCoordinate, unittest.equals(42.0));
577 }
578 buildCounterDriveBackgroundImageFile--;
579}
580
581core.int buildCounterDriveCapabilities = 0;
Kevin Moore6d21e902021-01-15 06:41:08 -0800582api.DriveCapabilities buildDriveCapabilities() {
583 var o = api.DriveCapabilities();
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +0200584 buildCounterDriveCapabilities++;
585 if (buildCounterDriveCapabilities < 3) {
586 o.canAddChildren = true;
587 o.canChangeCopyRequiresWriterPermissionRestriction = true;
588 o.canChangeDomainUsersOnlyRestriction = true;
589 o.canChangeDriveBackground = true;
590 o.canChangeDriveMembersOnlyRestriction = true;
591 o.canComment = true;
592 o.canCopy = true;
593 o.canDeleteChildren = true;
594 o.canDeleteDrive = true;
595 o.canDownload = true;
596 o.canEdit = true;
597 o.canListChildren = true;
598 o.canManageMembers = true;
599 o.canReadRevisions = true;
600 o.canRename = true;
601 o.canRenameDrive = true;
602 o.canShare = true;
603 o.canTrashChildren = true;
604 }
605 buildCounterDriveCapabilities--;
606 return o;
607}
608
Kevin Moore6d21e902021-01-15 06:41:08 -0800609void checkDriveCapabilities(api.DriveCapabilities o) {
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +0200610 buildCounterDriveCapabilities++;
611 if (buildCounterDriveCapabilities < 3) {
612 unittest.expect(o.canAddChildren, unittest.isTrue);
613 unittest.expect(
614 o.canChangeCopyRequiresWriterPermissionRestriction, unittest.isTrue);
615 unittest.expect(o.canChangeDomainUsersOnlyRestriction, unittest.isTrue);
616 unittest.expect(o.canChangeDriveBackground, unittest.isTrue);
617 unittest.expect(o.canChangeDriveMembersOnlyRestriction, unittest.isTrue);
618 unittest.expect(o.canComment, unittest.isTrue);
619 unittest.expect(o.canCopy, unittest.isTrue);
620 unittest.expect(o.canDeleteChildren, unittest.isTrue);
621 unittest.expect(o.canDeleteDrive, unittest.isTrue);
622 unittest.expect(o.canDownload, unittest.isTrue);
623 unittest.expect(o.canEdit, unittest.isTrue);
624 unittest.expect(o.canListChildren, unittest.isTrue);
625 unittest.expect(o.canManageMembers, unittest.isTrue);
626 unittest.expect(o.canReadRevisions, unittest.isTrue);
627 unittest.expect(o.canRename, unittest.isTrue);
628 unittest.expect(o.canRenameDrive, unittest.isTrue);
629 unittest.expect(o.canShare, unittest.isTrue);
630 unittest.expect(o.canTrashChildren, unittest.isTrue);
631 }
632 buildCounterDriveCapabilities--;
633}
634
635core.int buildCounterDriveRestrictions = 0;
Kevin Moore6d21e902021-01-15 06:41:08 -0800636api.DriveRestrictions buildDriveRestrictions() {
637 var o = api.DriveRestrictions();
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +0200638 buildCounterDriveRestrictions++;
639 if (buildCounterDriveRestrictions < 3) {
640 o.adminManagedRestrictions = true;
641 o.copyRequiresWriterPermission = true;
642 o.domainUsersOnly = true;
643 o.driveMembersOnly = true;
644 }
645 buildCounterDriveRestrictions--;
646 return o;
647}
648
Kevin Moore6d21e902021-01-15 06:41:08 -0800649void checkDriveRestrictions(api.DriveRestrictions o) {
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +0200650 buildCounterDriveRestrictions++;
651 if (buildCounterDriveRestrictions < 3) {
652 unittest.expect(o.adminManagedRestrictions, unittest.isTrue);
653 unittest.expect(o.copyRequiresWriterPermission, unittest.isTrue);
654 unittest.expect(o.domainUsersOnly, unittest.isTrue);
655 unittest.expect(o.driveMembersOnly, unittest.isTrue);
656 }
657 buildCounterDriveRestrictions--;
658}
659
660core.int buildCounterDrive = 0;
Kevin Moore6d21e902021-01-15 06:41:08 -0800661api.Drive buildDrive() {
662 var o = api.Drive();
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +0200663 buildCounterDrive++;
664 if (buildCounterDrive < 3) {
665 o.backgroundImageFile = buildDriveBackgroundImageFile();
Kevin Moored0251702021-01-15 06:41:08 -0800666 o.backgroundImageLink = 'foo';
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +0200667 o.capabilities = buildDriveCapabilities();
Kevin Moored0251702021-01-15 06:41:08 -0800668 o.colorRgb = 'foo';
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +0200669 o.createdTime = core.DateTime.parse("2002-02-27T14:01:02");
670 o.hidden = true;
Kevin Moored0251702021-01-15 06:41:08 -0800671 o.id = 'foo';
672 o.kind = 'foo';
673 o.name = 'foo';
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +0200674 o.restrictions = buildDriveRestrictions();
Kevin Moored0251702021-01-15 06:41:08 -0800675 o.themeId = 'foo';
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +0200676 }
677 buildCounterDrive--;
678 return o;
679}
680
Kevin Moore6d21e902021-01-15 06:41:08 -0800681void checkDrive(api.Drive o) {
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +0200682 buildCounterDrive++;
683 if (buildCounterDrive < 3) {
684 checkDriveBackgroundImageFile(o.backgroundImageFile);
685 unittest.expect(o.backgroundImageLink, unittest.equals('foo'));
686 checkDriveCapabilities(o.capabilities);
687 unittest.expect(o.colorRgb, unittest.equals('foo'));
688 unittest.expect(o.createdTime,
689 unittest.equals(core.DateTime.parse("2002-02-27T14:01:02")));
690 unittest.expect(o.hidden, unittest.isTrue);
691 unittest.expect(o.id, unittest.equals('foo'));
692 unittest.expect(o.kind, unittest.equals('foo'));
693 unittest.expect(o.name, unittest.equals('foo'));
694 checkDriveRestrictions(o.restrictions);
695 unittest.expect(o.themeId, unittest.equals('foo'));
696 }
697 buildCounterDrive--;
698}
699
Kevin Moore6d21e902021-01-15 06:41:08 -0800700core.List<api.Drive> buildUnnamed2650() {
701 var o = <api.Drive>[];
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +0200702 o.add(buildDrive());
703 o.add(buildDrive());
704 return o;
705}
706
Kevin Moore6d21e902021-01-15 06:41:08 -0800707void checkUnnamed2650(core.List<api.Drive> o) {
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +0200708 unittest.expect(o, unittest.hasLength(2));
709 checkDrive(o[0]);
710 checkDrive(o[1]);
711}
712
713core.int buildCounterDriveList = 0;
Kevin Moore6d21e902021-01-15 06:41:08 -0800714api.DriveList buildDriveList() {
715 var o = api.DriveList();
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +0200716 buildCounterDriveList++;
717 if (buildCounterDriveList < 3) {
Kevin Moore6d21e902021-01-15 06:41:08 -0800718 o.drives = buildUnnamed2650();
Kevin Moored0251702021-01-15 06:41:08 -0800719 o.kind = 'foo';
720 o.nextPageToken = 'foo';
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +0200721 }
722 buildCounterDriveList--;
723 return o;
724}
725
Kevin Moore6d21e902021-01-15 06:41:08 -0800726void checkDriveList(api.DriveList o) {
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +0200727 buildCounterDriveList++;
728 if (buildCounterDriveList < 3) {
Kevin Moore6d21e902021-01-15 06:41:08 -0800729 checkUnnamed2650(o.drives);
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +0200730 unittest.expect(o.kind, unittest.equals('foo'));
731 unittest.expect(o.nextPageToken, unittest.equals('foo'));
732 }
733 buildCounterDriveList--;
734}
735
Kevin Moore6d21e902021-01-15 06:41:08 -0800736core.Map<core.String, core.String> buildUnnamed2651() {
737 var o = <core.String, core.String>{};
Kevin Moored0251702021-01-15 06:41:08 -0800738 o['x'] = 'foo';
739 o['y'] = 'foo';
Martin Kustermann26171812015-12-21 15:06:06 +0100740 return o;
741}
742
Kevin Moore6d21e902021-01-15 06:41:08 -0800743void checkUnnamed2651(core.Map<core.String, core.String> o) {
Martin Kustermann26171812015-12-21 15:06:06 +0100744 unittest.expect(o, unittest.hasLength(2));
Kevin Moored0251702021-01-15 06:41:08 -0800745 unittest.expect(o['x'], unittest.equals('foo'));
746 unittest.expect(o['y'], unittest.equals('foo'));
Martin Kustermann26171812015-12-21 15:06:06 +0100747}
748
749core.int buildCounterFileCapabilities = 0;
Kevin Moore6d21e902021-01-15 06:41:08 -0800750api.FileCapabilities buildFileCapabilities() {
751 var o = api.FileCapabilities();
Martin Kustermann26171812015-12-21 15:06:06 +0100752 buildCounterFileCapabilities++;
753 if (buildCounterFileCapabilities < 3) {
Martin Kustermann77f42ff2017-03-06 13:56:35 +0100754 o.canAddChildren = true;
Jonas Finnemann Jensenef0c8a32020-10-07 20:58:20 +0200755 o.canAddFolderFromAnotherDrive = true;
Jonas Finnemann Jensen94d5b4d2020-05-07 12:00:14 +0200756 o.canAddMyDriveParent = true;
Martin Kustermann12cdd522018-08-27 10:46:50 +0200757 o.canChangeCopyRequiresWriterPermission = true;
Martin Kustermann24901b32017-05-23 17:10:24 +0200758 o.canChangeViewersCanCopyContent = true;
Martin Kustermann26171812015-12-21 15:06:06 +0100759 o.canComment = true;
760 o.canCopy = true;
Martin Kustermann77f42ff2017-03-06 13:56:35 +0100761 o.canDelete = true;
Martin Kustermann12cdd522018-08-27 10:46:50 +0200762 o.canDeleteChildren = true;
Martin Kustermann77f42ff2017-03-06 13:56:35 +0100763 o.canDownload = true;
Martin Kustermann26171812015-12-21 15:06:06 +0100764 o.canEdit = true;
Martin Kustermann77f42ff2017-03-06 13:56:35 +0100765 o.canListChildren = true;
Jonas Finnemann Jensen94d5b4d2020-05-07 12:00:14 +0200766 o.canModifyContent = true;
Jonas Finnemann Jensenef0c8a32020-10-07 20:58:20 +0200767 o.canModifyContentRestriction = true;
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +0200768 o.canMoveChildrenOutOfDrive = true;
Martin Kustermann12cdd522018-08-27 10:46:50 +0200769 o.canMoveChildrenOutOfTeamDrive = true;
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +0200770 o.canMoveChildrenWithinDrive = true;
Martin Kustermann12cdd522018-08-27 10:46:50 +0200771 o.canMoveChildrenWithinTeamDrive = true;
Martin Kustermann77f42ff2017-03-06 13:56:35 +0100772 o.canMoveItemIntoTeamDrive = true;
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +0200773 o.canMoveItemOutOfDrive = true;
Martin Kustermann12cdd522018-08-27 10:46:50 +0200774 o.canMoveItemOutOfTeamDrive = true;
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +0200775 o.canMoveItemWithinDrive = true;
Martin Kustermann12cdd522018-08-27 10:46:50 +0200776 o.canMoveItemWithinTeamDrive = true;
Martin Kustermann77f42ff2017-03-06 13:56:35 +0100777 o.canMoveTeamDriveItem = true;
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +0200778 o.canReadDrive = true;
Martin Kustermannf6325572016-03-14 14:25:28 +0100779 o.canReadRevisions = true;
Martin Kustermann77f42ff2017-03-06 13:56:35 +0100780 o.canReadTeamDrive = true;
781 o.canRemoveChildren = true;
Jonas Finnemann Jensen94d5b4d2020-05-07 12:00:14 +0200782 o.canRemoveMyDriveParent = true;
Martin Kustermann77f42ff2017-03-06 13:56:35 +0100783 o.canRename = true;
Martin Kustermann26171812015-12-21 15:06:06 +0100784 o.canShare = true;
Martin Kustermann77f42ff2017-03-06 13:56:35 +0100785 o.canTrash = true;
Martin Kustermann12cdd522018-08-27 10:46:50 +0200786 o.canTrashChildren = true;
Martin Kustermann77f42ff2017-03-06 13:56:35 +0100787 o.canUntrash = true;
Martin Kustermann26171812015-12-21 15:06:06 +0100788 }
789 buildCounterFileCapabilities--;
790 return o;
791}
792
Kevin Moore6d21e902021-01-15 06:41:08 -0800793void checkFileCapabilities(api.FileCapabilities o) {
Martin Kustermann26171812015-12-21 15:06:06 +0100794 buildCounterFileCapabilities++;
795 if (buildCounterFileCapabilities < 3) {
Martin Kustermann77f42ff2017-03-06 13:56:35 +0100796 unittest.expect(o.canAddChildren, unittest.isTrue);
Jonas Finnemann Jensenef0c8a32020-10-07 20:58:20 +0200797 unittest.expect(o.canAddFolderFromAnotherDrive, unittest.isTrue);
Jonas Finnemann Jensen94d5b4d2020-05-07 12:00:14 +0200798 unittest.expect(o.canAddMyDriveParent, unittest.isTrue);
Martin Kustermann12cdd522018-08-27 10:46:50 +0200799 unittest.expect(o.canChangeCopyRequiresWriterPermission, unittest.isTrue);
Martin Kustermann24901b32017-05-23 17:10:24 +0200800 unittest.expect(o.canChangeViewersCanCopyContent, unittest.isTrue);
Martin Kustermann26171812015-12-21 15:06:06 +0100801 unittest.expect(o.canComment, unittest.isTrue);
802 unittest.expect(o.canCopy, unittest.isTrue);
Martin Kustermann77f42ff2017-03-06 13:56:35 +0100803 unittest.expect(o.canDelete, unittest.isTrue);
Martin Kustermann12cdd522018-08-27 10:46:50 +0200804 unittest.expect(o.canDeleteChildren, unittest.isTrue);
Martin Kustermann77f42ff2017-03-06 13:56:35 +0100805 unittest.expect(o.canDownload, unittest.isTrue);
Martin Kustermann26171812015-12-21 15:06:06 +0100806 unittest.expect(o.canEdit, unittest.isTrue);
Martin Kustermann77f42ff2017-03-06 13:56:35 +0100807 unittest.expect(o.canListChildren, unittest.isTrue);
Jonas Finnemann Jensen94d5b4d2020-05-07 12:00:14 +0200808 unittest.expect(o.canModifyContent, unittest.isTrue);
Jonas Finnemann Jensenef0c8a32020-10-07 20:58:20 +0200809 unittest.expect(o.canModifyContentRestriction, unittest.isTrue);
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +0200810 unittest.expect(o.canMoveChildrenOutOfDrive, unittest.isTrue);
Martin Kustermann12cdd522018-08-27 10:46:50 +0200811 unittest.expect(o.canMoveChildrenOutOfTeamDrive, unittest.isTrue);
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +0200812 unittest.expect(o.canMoveChildrenWithinDrive, unittest.isTrue);
Martin Kustermann12cdd522018-08-27 10:46:50 +0200813 unittest.expect(o.canMoveChildrenWithinTeamDrive, unittest.isTrue);
Martin Kustermann77f42ff2017-03-06 13:56:35 +0100814 unittest.expect(o.canMoveItemIntoTeamDrive, unittest.isTrue);
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +0200815 unittest.expect(o.canMoveItemOutOfDrive, unittest.isTrue);
Martin Kustermann12cdd522018-08-27 10:46:50 +0200816 unittest.expect(o.canMoveItemOutOfTeamDrive, unittest.isTrue);
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +0200817 unittest.expect(o.canMoveItemWithinDrive, unittest.isTrue);
Martin Kustermann12cdd522018-08-27 10:46:50 +0200818 unittest.expect(o.canMoveItemWithinTeamDrive, unittest.isTrue);
Martin Kustermann77f42ff2017-03-06 13:56:35 +0100819 unittest.expect(o.canMoveTeamDriveItem, unittest.isTrue);
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +0200820 unittest.expect(o.canReadDrive, unittest.isTrue);
Martin Kustermannf6325572016-03-14 14:25:28 +0100821 unittest.expect(o.canReadRevisions, unittest.isTrue);
Martin Kustermann77f42ff2017-03-06 13:56:35 +0100822 unittest.expect(o.canReadTeamDrive, unittest.isTrue);
823 unittest.expect(o.canRemoveChildren, unittest.isTrue);
Jonas Finnemann Jensen94d5b4d2020-05-07 12:00:14 +0200824 unittest.expect(o.canRemoveMyDriveParent, unittest.isTrue);
Martin Kustermann77f42ff2017-03-06 13:56:35 +0100825 unittest.expect(o.canRename, unittest.isTrue);
Martin Kustermann26171812015-12-21 15:06:06 +0100826 unittest.expect(o.canShare, unittest.isTrue);
Martin Kustermann77f42ff2017-03-06 13:56:35 +0100827 unittest.expect(o.canTrash, unittest.isTrue);
Martin Kustermann12cdd522018-08-27 10:46:50 +0200828 unittest.expect(o.canTrashChildren, unittest.isTrue);
Martin Kustermann77f42ff2017-03-06 13:56:35 +0100829 unittest.expect(o.canUntrash, unittest.isTrue);
Martin Kustermann26171812015-12-21 15:06:06 +0100830 }
831 buildCounterFileCapabilities--;
832}
833
834core.int buildCounterFileContentHintsThumbnail = 0;
Kevin Moore6d21e902021-01-15 06:41:08 -0800835api.FileContentHintsThumbnail buildFileContentHintsThumbnail() {
836 var o = api.FileContentHintsThumbnail();
Martin Kustermann26171812015-12-21 15:06:06 +0100837 buildCounterFileContentHintsThumbnail++;
838 if (buildCounterFileContentHintsThumbnail < 3) {
Kevin Moored0251702021-01-15 06:41:08 -0800839 o.image = 'foo';
840 o.mimeType = 'foo';
Martin Kustermann26171812015-12-21 15:06:06 +0100841 }
842 buildCounterFileContentHintsThumbnail--;
843 return o;
844}
845
Kevin Moore6d21e902021-01-15 06:41:08 -0800846void checkFileContentHintsThumbnail(api.FileContentHintsThumbnail o) {
Martin Kustermann26171812015-12-21 15:06:06 +0100847 buildCounterFileContentHintsThumbnail++;
848 if (buildCounterFileContentHintsThumbnail < 3) {
849 unittest.expect(o.image, unittest.equals('foo'));
850 unittest.expect(o.mimeType, unittest.equals('foo'));
851 }
852 buildCounterFileContentHintsThumbnail--;
853}
854
855core.int buildCounterFileContentHints = 0;
Kevin Moore6d21e902021-01-15 06:41:08 -0800856api.FileContentHints buildFileContentHints() {
857 var o = api.FileContentHints();
Martin Kustermann26171812015-12-21 15:06:06 +0100858 buildCounterFileContentHints++;
859 if (buildCounterFileContentHints < 3) {
Kevin Moored0251702021-01-15 06:41:08 -0800860 o.indexableText = 'foo';
Martin Kustermann26171812015-12-21 15:06:06 +0100861 o.thumbnail = buildFileContentHintsThumbnail();
862 }
863 buildCounterFileContentHints--;
864 return o;
865}
866
Kevin Moore6d21e902021-01-15 06:41:08 -0800867void checkFileContentHints(api.FileContentHints o) {
Martin Kustermann26171812015-12-21 15:06:06 +0100868 buildCounterFileContentHints++;
869 if (buildCounterFileContentHints < 3) {
870 unittest.expect(o.indexableText, unittest.equals('foo'));
871 checkFileContentHintsThumbnail(o.thumbnail);
872 }
873 buildCounterFileContentHints--;
874}
875
Kevin Moore6d21e902021-01-15 06:41:08 -0800876core.List<api.ContentRestriction> buildUnnamed2652() {
877 var o = <api.ContentRestriction>[];
Jonas Finnemann Jensenef0c8a32020-10-07 20:58:20 +0200878 o.add(buildContentRestriction());
879 o.add(buildContentRestriction());
880 return o;
881}
882
Kevin Moore6d21e902021-01-15 06:41:08 -0800883void checkUnnamed2652(core.List<api.ContentRestriction> o) {
Jonas Finnemann Jensenef0c8a32020-10-07 20:58:20 +0200884 unittest.expect(o, unittest.hasLength(2));
885 checkContentRestriction(o[0]);
886 checkContentRestriction(o[1]);
887}
888
Kevin Moore6d21e902021-01-15 06:41:08 -0800889core.Map<core.String, core.String> buildUnnamed2653() {
890 var o = <core.String, core.String>{};
Kevin Moored0251702021-01-15 06:41:08 -0800891 o['x'] = 'foo';
892 o['y'] = 'foo';
Jonas Finnemann Jensendda12e42019-02-09 12:37:20 +0100893 return o;
894}
895
Kevin Moore6d21e902021-01-15 06:41:08 -0800896void checkUnnamed2653(core.Map<core.String, core.String> o) {
Jonas Finnemann Jensendda12e42019-02-09 12:37:20 +0100897 unittest.expect(o, unittest.hasLength(2));
Kevin Moored0251702021-01-15 06:41:08 -0800898 unittest.expect(o['x'], unittest.equals('foo'));
899 unittest.expect(o['y'], unittest.equals('foo'));
Jonas Finnemann Jensendda12e42019-02-09 12:37:20 +0100900}
901
Martin Kustermann26171812015-12-21 15:06:06 +0100902core.int buildCounterFileImageMediaMetadataLocation = 0;
Kevin Moore6d21e902021-01-15 06:41:08 -0800903api.FileImageMediaMetadataLocation buildFileImageMediaMetadataLocation() {
904 var o = api.FileImageMediaMetadataLocation();
Martin Kustermann26171812015-12-21 15:06:06 +0100905 buildCounterFileImageMediaMetadataLocation++;
906 if (buildCounterFileImageMediaMetadataLocation < 3) {
907 o.altitude = 42.0;
908 o.latitude = 42.0;
909 o.longitude = 42.0;
910 }
911 buildCounterFileImageMediaMetadataLocation--;
912 return o;
913}
914
Kevin Moore6d21e902021-01-15 06:41:08 -0800915void checkFileImageMediaMetadataLocation(api.FileImageMediaMetadataLocation o) {
Martin Kustermann26171812015-12-21 15:06:06 +0100916 buildCounterFileImageMediaMetadataLocation++;
917 if (buildCounterFileImageMediaMetadataLocation < 3) {
918 unittest.expect(o.altitude, unittest.equals(42.0));
919 unittest.expect(o.latitude, unittest.equals(42.0));
920 unittest.expect(o.longitude, unittest.equals(42.0));
921 }
922 buildCounterFileImageMediaMetadataLocation--;
923}
924
925core.int buildCounterFileImageMediaMetadata = 0;
Kevin Moore6d21e902021-01-15 06:41:08 -0800926api.FileImageMediaMetadata buildFileImageMediaMetadata() {
927 var o = api.FileImageMediaMetadata();
Martin Kustermann26171812015-12-21 15:06:06 +0100928 buildCounterFileImageMediaMetadata++;
929 if (buildCounterFileImageMediaMetadata < 3) {
930 o.aperture = 42.0;
Kevin Moored0251702021-01-15 06:41:08 -0800931 o.cameraMake = 'foo';
932 o.cameraModel = 'foo';
933 o.colorSpace = 'foo';
Martin Kustermann26171812015-12-21 15:06:06 +0100934 o.exposureBias = 42.0;
Kevin Moored0251702021-01-15 06:41:08 -0800935 o.exposureMode = 'foo';
Martin Kustermann26171812015-12-21 15:06:06 +0100936 o.exposureTime = 42.0;
937 o.flashUsed = true;
938 o.focalLength = 42.0;
939 o.height = 42;
940 o.isoSpeed = 42;
Kevin Moored0251702021-01-15 06:41:08 -0800941 o.lens = 'foo';
Martin Kustermann26171812015-12-21 15:06:06 +0100942 o.location = buildFileImageMediaMetadataLocation();
943 o.maxApertureValue = 42.0;
Kevin Moored0251702021-01-15 06:41:08 -0800944 o.meteringMode = 'foo';
Martin Kustermann26171812015-12-21 15:06:06 +0100945 o.rotation = 42;
Kevin Moored0251702021-01-15 06:41:08 -0800946 o.sensor = 'foo';
Martin Kustermann26171812015-12-21 15:06:06 +0100947 o.subjectDistance = 42;
Kevin Moored0251702021-01-15 06:41:08 -0800948 o.time = 'foo';
949 o.whiteBalance = 'foo';
Martin Kustermann26171812015-12-21 15:06:06 +0100950 o.width = 42;
951 }
952 buildCounterFileImageMediaMetadata--;
953 return o;
954}
955
Kevin Moore6d21e902021-01-15 06:41:08 -0800956void checkFileImageMediaMetadata(api.FileImageMediaMetadata o) {
Martin Kustermann26171812015-12-21 15:06:06 +0100957 buildCounterFileImageMediaMetadata++;
958 if (buildCounterFileImageMediaMetadata < 3) {
959 unittest.expect(o.aperture, unittest.equals(42.0));
960 unittest.expect(o.cameraMake, unittest.equals('foo'));
961 unittest.expect(o.cameraModel, unittest.equals('foo'));
962 unittest.expect(o.colorSpace, unittest.equals('foo'));
963 unittest.expect(o.exposureBias, unittest.equals(42.0));
964 unittest.expect(o.exposureMode, unittest.equals('foo'));
965 unittest.expect(o.exposureTime, unittest.equals(42.0));
966 unittest.expect(o.flashUsed, unittest.isTrue);
967 unittest.expect(o.focalLength, unittest.equals(42.0));
968 unittest.expect(o.height, unittest.equals(42));
969 unittest.expect(o.isoSpeed, unittest.equals(42));
970 unittest.expect(o.lens, unittest.equals('foo'));
971 checkFileImageMediaMetadataLocation(o.location);
972 unittest.expect(o.maxApertureValue, unittest.equals(42.0));
973 unittest.expect(o.meteringMode, unittest.equals('foo'));
974 unittest.expect(o.rotation, unittest.equals(42));
975 unittest.expect(o.sensor, unittest.equals('foo'));
976 unittest.expect(o.subjectDistance, unittest.equals(42));
977 unittest.expect(o.time, unittest.equals('foo'));
978 unittest.expect(o.whiteBalance, unittest.equals('foo'));
979 unittest.expect(o.width, unittest.equals(42));
980 }
981 buildCounterFileImageMediaMetadata--;
982}
983
Kevin Moore6d21e902021-01-15 06:41:08 -0800984core.List<api.User> buildUnnamed2654() {
985 var o = <api.User>[];
Martin Kustermann26171812015-12-21 15:06:06 +0100986 o.add(buildUser());
987 o.add(buildUser());
988 return o;
989}
990
Kevin Moore6d21e902021-01-15 06:41:08 -0800991void checkUnnamed2654(core.List<api.User> o) {
Martin Kustermann26171812015-12-21 15:06:06 +0100992 unittest.expect(o, unittest.hasLength(2));
993 checkUser(o[0]);
994 checkUser(o[1]);
995}
996
Kevin Moore6d21e902021-01-15 06:41:08 -0800997core.List<core.String> buildUnnamed2655() {
998 var o = <core.String>[];
Kevin Moored0251702021-01-15 06:41:08 -0800999 o.add('foo');
1000 o.add('foo');
Martin Kustermannc95693d2017-04-18 12:30:00 +02001001 return o;
1002}
1003
Kevin Moore6d21e902021-01-15 06:41:08 -08001004void checkUnnamed2655(core.List<core.String> o) {
Martin Kustermannc95693d2017-04-18 12:30:00 +02001005 unittest.expect(o, unittest.hasLength(2));
1006 unittest.expect(o[0], unittest.equals('foo'));
1007 unittest.expect(o[1], unittest.equals('foo'));
1008}
1009
Kevin Moore6d21e902021-01-15 06:41:08 -08001010core.List<core.String> buildUnnamed2656() {
1011 var o = <core.String>[];
Kevin Moored0251702021-01-15 06:41:08 -08001012 o.add('foo');
1013 o.add('foo');
Martin Kustermann5eb85c12017-09-11 12:35:54 +02001014 return o;
1015}
1016
Kevin Moore6d21e902021-01-15 06:41:08 -08001017void checkUnnamed2656(core.List<core.String> o) {
Martin Kustermann5eb85c12017-09-11 12:35:54 +02001018 unittest.expect(o, unittest.hasLength(2));
1019 unittest.expect(o[0], unittest.equals('foo'));
1020 unittest.expect(o[1], unittest.equals('foo'));
1021}
1022
Kevin Moore6d21e902021-01-15 06:41:08 -08001023core.List<api.Permission> buildUnnamed2657() {
1024 var o = <api.Permission>[];
Martin Kustermannc95693d2017-04-18 12:30:00 +02001025 o.add(buildPermission());
1026 o.add(buildPermission());
1027 return o;
1028}
1029
Kevin Moore6d21e902021-01-15 06:41:08 -08001030void checkUnnamed2657(core.List<api.Permission> o) {
Martin Kustermannc95693d2017-04-18 12:30:00 +02001031 unittest.expect(o, unittest.hasLength(2));
1032 checkPermission(o[0]);
1033 checkPermission(o[1]);
1034}
1035
Kevin Moore6d21e902021-01-15 06:41:08 -08001036core.Map<core.String, core.String> buildUnnamed2658() {
1037 var o = <core.String, core.String>{};
Kevin Moored0251702021-01-15 06:41:08 -08001038 o['x'] = 'foo';
1039 o['y'] = 'foo';
Martin Kustermannc95693d2017-04-18 12:30:00 +02001040 return o;
1041}
1042
Kevin Moore6d21e902021-01-15 06:41:08 -08001043void checkUnnamed2658(core.Map<core.String, core.String> o) {
Martin Kustermannc95693d2017-04-18 12:30:00 +02001044 unittest.expect(o, unittest.hasLength(2));
Kevin Moored0251702021-01-15 06:41:08 -08001045 unittest.expect(o['x'], unittest.equals('foo'));
1046 unittest.expect(o['y'], unittest.equals('foo'));
Martin Kustermannc95693d2017-04-18 12:30:00 +02001047}
1048
Jonas Finnemann Jensen94d5b4d2020-05-07 12:00:14 +02001049core.int buildCounterFileShortcutDetails = 0;
Kevin Moore6d21e902021-01-15 06:41:08 -08001050api.FileShortcutDetails buildFileShortcutDetails() {
1051 var o = api.FileShortcutDetails();
Jonas Finnemann Jensen94d5b4d2020-05-07 12:00:14 +02001052 buildCounterFileShortcutDetails++;
1053 if (buildCounterFileShortcutDetails < 3) {
Kevin Moored0251702021-01-15 06:41:08 -08001054 o.targetId = 'foo';
1055 o.targetMimeType = 'foo';
Jonas Finnemann Jensen94d5b4d2020-05-07 12:00:14 +02001056 }
1057 buildCounterFileShortcutDetails--;
1058 return o;
1059}
1060
Kevin Moore6d21e902021-01-15 06:41:08 -08001061void checkFileShortcutDetails(api.FileShortcutDetails o) {
Jonas Finnemann Jensen94d5b4d2020-05-07 12:00:14 +02001062 buildCounterFileShortcutDetails++;
1063 if (buildCounterFileShortcutDetails < 3) {
1064 unittest.expect(o.targetId, unittest.equals('foo'));
1065 unittest.expect(o.targetMimeType, unittest.equals('foo'));
1066 }
1067 buildCounterFileShortcutDetails--;
1068}
1069
Kevin Moore6d21e902021-01-15 06:41:08 -08001070core.List<core.String> buildUnnamed2659() {
1071 var o = <core.String>[];
Kevin Moored0251702021-01-15 06:41:08 -08001072 o.add('foo');
1073 o.add('foo');
Martin Kustermann26171812015-12-21 15:06:06 +01001074 return o;
1075}
1076
Kevin Moore6d21e902021-01-15 06:41:08 -08001077void checkUnnamed2659(core.List<core.String> o) {
Martin Kustermann26171812015-12-21 15:06:06 +01001078 unittest.expect(o, unittest.hasLength(2));
1079 unittest.expect(o[0], unittest.equals('foo'));
1080 unittest.expect(o[1], unittest.equals('foo'));
1081}
1082
Martin Kustermann26171812015-12-21 15:06:06 +01001083core.int buildCounterFileVideoMediaMetadata = 0;
Kevin Moore6d21e902021-01-15 06:41:08 -08001084api.FileVideoMediaMetadata buildFileVideoMediaMetadata() {
1085 var o = api.FileVideoMediaMetadata();
Martin Kustermann26171812015-12-21 15:06:06 +01001086 buildCounterFileVideoMediaMetadata++;
1087 if (buildCounterFileVideoMediaMetadata < 3) {
Kevin Moored0251702021-01-15 06:41:08 -08001088 o.durationMillis = 'foo';
Martin Kustermann26171812015-12-21 15:06:06 +01001089 o.height = 42;
1090 o.width = 42;
1091 }
1092 buildCounterFileVideoMediaMetadata--;
1093 return o;
1094}
1095
Kevin Moore6d21e902021-01-15 06:41:08 -08001096void checkFileVideoMediaMetadata(api.FileVideoMediaMetadata o) {
Martin Kustermann26171812015-12-21 15:06:06 +01001097 buildCounterFileVideoMediaMetadata++;
1098 if (buildCounterFileVideoMediaMetadata < 3) {
1099 unittest.expect(o.durationMillis, unittest.equals('foo'));
1100 unittest.expect(o.height, unittest.equals(42));
1101 unittest.expect(o.width, unittest.equals(42));
1102 }
1103 buildCounterFileVideoMediaMetadata--;
1104}
1105
1106core.int buildCounterFile = 0;
Kevin Moore6d21e902021-01-15 06:41:08 -08001107api.File buildFile() {
1108 var o = api.File();
Martin Kustermann26171812015-12-21 15:06:06 +01001109 buildCounterFile++;
1110 if (buildCounterFile < 3) {
Kevin Moore6d21e902021-01-15 06:41:08 -08001111 o.appProperties = buildUnnamed2651();
Martin Kustermann26171812015-12-21 15:06:06 +01001112 o.capabilities = buildFileCapabilities();
1113 o.contentHints = buildFileContentHints();
Kevin Moore6d21e902021-01-15 06:41:08 -08001114 o.contentRestrictions = buildUnnamed2652();
Martin Kustermann12cdd522018-08-27 10:46:50 +02001115 o.copyRequiresWriterPermission = true;
Martin Kustermann26171812015-12-21 15:06:06 +01001116 o.createdTime = core.DateTime.parse("2002-02-27T14:01:02");
Kevin Moored0251702021-01-15 06:41:08 -08001117 o.description = 'foo';
1118 o.driveId = 'foo';
Martin Kustermann26171812015-12-21 15:06:06 +01001119 o.explicitlyTrashed = true;
Kevin Moore6d21e902021-01-15 06:41:08 -08001120 o.exportLinks = buildUnnamed2653();
Kevin Moored0251702021-01-15 06:41:08 -08001121 o.fileExtension = 'foo';
1122 o.folderColorRgb = 'foo';
1123 o.fullFileExtension = 'foo';
Martin Kustermann77f42ff2017-03-06 13:56:35 +01001124 o.hasAugmentedPermissions = true;
Martin Kustermannb25a7842016-12-13 16:42:27 +01001125 o.hasThumbnail = true;
Kevin Moored0251702021-01-15 06:41:08 -08001126 o.headRevisionId = 'foo';
1127 o.iconLink = 'foo';
1128 o.id = 'foo';
Martin Kustermann26171812015-12-21 15:06:06 +01001129 o.imageMediaMetadata = buildFileImageMediaMetadata();
Martin Kustermann33f85242016-04-25 10:45:06 +02001130 o.isAppAuthorized = true;
Kevin Moored0251702021-01-15 06:41:08 -08001131 o.kind = 'foo';
Martin Kustermann26171812015-12-21 15:06:06 +01001132 o.lastModifyingUser = buildUser();
Kevin Moored0251702021-01-15 06:41:08 -08001133 o.md5Checksum = 'foo';
1134 o.mimeType = 'foo';
Martin Kustermann4ff71db2016-11-09 10:46:40 +01001135 o.modifiedByMe = true;
Martin Kustermann26171812015-12-21 15:06:06 +01001136 o.modifiedByMeTime = core.DateTime.parse("2002-02-27T14:01:02");
1137 o.modifiedTime = core.DateTime.parse("2002-02-27T14:01:02");
Kevin Moored0251702021-01-15 06:41:08 -08001138 o.name = 'foo';
1139 o.originalFilename = 'foo';
Martin Kustermann26171812015-12-21 15:06:06 +01001140 o.ownedByMe = true;
Kevin Moore6d21e902021-01-15 06:41:08 -08001141 o.owners = buildUnnamed2654();
1142 o.parents = buildUnnamed2655();
1143 o.permissionIds = buildUnnamed2656();
1144 o.permissions = buildUnnamed2657();
1145 o.properties = buildUnnamed2658();
Kevin Moored0251702021-01-15 06:41:08 -08001146 o.quotaBytesUsed = 'foo';
Martin Kustermann26171812015-12-21 15:06:06 +01001147 o.shared = true;
1148 o.sharedWithMeTime = core.DateTime.parse("2002-02-27T14:01:02");
1149 o.sharingUser = buildUser();
Jonas Finnemann Jensen94d5b4d2020-05-07 12:00:14 +02001150 o.shortcutDetails = buildFileShortcutDetails();
Kevin Moored0251702021-01-15 06:41:08 -08001151 o.size = 'foo';
Kevin Moore6d21e902021-01-15 06:41:08 -08001152 o.spaces = buildUnnamed2659();
Martin Kustermann26171812015-12-21 15:06:06 +01001153 o.starred = true;
Kevin Moored0251702021-01-15 06:41:08 -08001154 o.teamDriveId = 'foo';
1155 o.thumbnailLink = 'foo';
1156 o.thumbnailVersion = 'foo';
Martin Kustermann26171812015-12-21 15:06:06 +01001157 o.trashed = true;
Martin Kustermann77f42ff2017-03-06 13:56:35 +01001158 o.trashedTime = core.DateTime.parse("2002-02-27T14:01:02");
1159 o.trashingUser = buildUser();
Kevin Moored0251702021-01-15 06:41:08 -08001160 o.version = 'foo';
Martin Kustermann26171812015-12-21 15:06:06 +01001161 o.videoMediaMetadata = buildFileVideoMediaMetadata();
1162 o.viewedByMe = true;
1163 o.viewedByMeTime = core.DateTime.parse("2002-02-27T14:01:02");
1164 o.viewersCanCopyContent = true;
Kevin Moored0251702021-01-15 06:41:08 -08001165 o.webContentLink = 'foo';
1166 o.webViewLink = 'foo';
Martin Kustermann26171812015-12-21 15:06:06 +01001167 o.writersCanShare = true;
1168 }
1169 buildCounterFile--;
1170 return o;
1171}
1172
Kevin Moore6d21e902021-01-15 06:41:08 -08001173void checkFile(api.File o) {
Martin Kustermann26171812015-12-21 15:06:06 +01001174 buildCounterFile++;
1175 if (buildCounterFile < 3) {
Kevin Moore6d21e902021-01-15 06:41:08 -08001176 checkUnnamed2651(o.appProperties);
Martin Kustermann26171812015-12-21 15:06:06 +01001177 checkFileCapabilities(o.capabilities);
1178 checkFileContentHints(o.contentHints);
Kevin Moore6d21e902021-01-15 06:41:08 -08001179 checkUnnamed2652(o.contentRestrictions);
Martin Kustermann12cdd522018-08-27 10:46:50 +02001180 unittest.expect(o.copyRequiresWriterPermission, unittest.isTrue);
Martin Kustermann5eb85c12017-09-11 12:35:54 +02001181 unittest.expect(o.createdTime,
1182 unittest.equals(core.DateTime.parse("2002-02-27T14:01:02")));
Martin Kustermann26171812015-12-21 15:06:06 +01001183 unittest.expect(o.description, unittest.equals('foo'));
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02001184 unittest.expect(o.driveId, unittest.equals('foo'));
Martin Kustermann26171812015-12-21 15:06:06 +01001185 unittest.expect(o.explicitlyTrashed, unittest.isTrue);
Kevin Moore6d21e902021-01-15 06:41:08 -08001186 checkUnnamed2653(o.exportLinks);
Martin Kustermann26171812015-12-21 15:06:06 +01001187 unittest.expect(o.fileExtension, unittest.equals('foo'));
1188 unittest.expect(o.folderColorRgb, unittest.equals('foo'));
1189 unittest.expect(o.fullFileExtension, unittest.equals('foo'));
Martin Kustermann77f42ff2017-03-06 13:56:35 +01001190 unittest.expect(o.hasAugmentedPermissions, unittest.isTrue);
Martin Kustermannb25a7842016-12-13 16:42:27 +01001191 unittest.expect(o.hasThumbnail, unittest.isTrue);
Martin Kustermann26171812015-12-21 15:06:06 +01001192 unittest.expect(o.headRevisionId, unittest.equals('foo'));
1193 unittest.expect(o.iconLink, unittest.equals('foo'));
1194 unittest.expect(o.id, unittest.equals('foo'));
1195 checkFileImageMediaMetadata(o.imageMediaMetadata);
Martin Kustermann33f85242016-04-25 10:45:06 +02001196 unittest.expect(o.isAppAuthorized, unittest.isTrue);
Martin Kustermann26171812015-12-21 15:06:06 +01001197 unittest.expect(o.kind, unittest.equals('foo'));
1198 checkUser(o.lastModifyingUser);
1199 unittest.expect(o.md5Checksum, unittest.equals('foo'));
1200 unittest.expect(o.mimeType, unittest.equals('foo'));
Martin Kustermann4ff71db2016-11-09 10:46:40 +01001201 unittest.expect(o.modifiedByMe, unittest.isTrue);
Martin Kustermann5eb85c12017-09-11 12:35:54 +02001202 unittest.expect(o.modifiedByMeTime,
1203 unittest.equals(core.DateTime.parse("2002-02-27T14:01:02")));
1204 unittest.expect(o.modifiedTime,
1205 unittest.equals(core.DateTime.parse("2002-02-27T14:01:02")));
Martin Kustermann26171812015-12-21 15:06:06 +01001206 unittest.expect(o.name, unittest.equals('foo'));
1207 unittest.expect(o.originalFilename, unittest.equals('foo'));
1208 unittest.expect(o.ownedByMe, unittest.isTrue);
Kevin Moore6d21e902021-01-15 06:41:08 -08001209 checkUnnamed2654(o.owners);
1210 checkUnnamed2655(o.parents);
1211 checkUnnamed2656(o.permissionIds);
1212 checkUnnamed2657(o.permissions);
1213 checkUnnamed2658(o.properties);
Martin Kustermann26171812015-12-21 15:06:06 +01001214 unittest.expect(o.quotaBytesUsed, unittest.equals('foo'));
1215 unittest.expect(o.shared, unittest.isTrue);
Martin Kustermann5eb85c12017-09-11 12:35:54 +02001216 unittest.expect(o.sharedWithMeTime,
1217 unittest.equals(core.DateTime.parse("2002-02-27T14:01:02")));
Martin Kustermann26171812015-12-21 15:06:06 +01001218 checkUser(o.sharingUser);
Jonas Finnemann Jensen94d5b4d2020-05-07 12:00:14 +02001219 checkFileShortcutDetails(o.shortcutDetails);
Martin Kustermann26171812015-12-21 15:06:06 +01001220 unittest.expect(o.size, unittest.equals('foo'));
Kevin Moore6d21e902021-01-15 06:41:08 -08001221 checkUnnamed2659(o.spaces);
Martin Kustermann26171812015-12-21 15:06:06 +01001222 unittest.expect(o.starred, unittest.isTrue);
Martin Kustermann77f42ff2017-03-06 13:56:35 +01001223 unittest.expect(o.teamDriveId, unittest.equals('foo'));
Martin Kustermann26171812015-12-21 15:06:06 +01001224 unittest.expect(o.thumbnailLink, unittest.equals('foo'));
Martin Kustermannb25a7842016-12-13 16:42:27 +01001225 unittest.expect(o.thumbnailVersion, unittest.equals('foo'));
Martin Kustermann26171812015-12-21 15:06:06 +01001226 unittest.expect(o.trashed, unittest.isTrue);
Martin Kustermann5eb85c12017-09-11 12:35:54 +02001227 unittest.expect(o.trashedTime,
1228 unittest.equals(core.DateTime.parse("2002-02-27T14:01:02")));
Martin Kustermann77f42ff2017-03-06 13:56:35 +01001229 checkUser(o.trashingUser);
Martin Kustermann26171812015-12-21 15:06:06 +01001230 unittest.expect(o.version, unittest.equals('foo'));
1231 checkFileVideoMediaMetadata(o.videoMediaMetadata);
1232 unittest.expect(o.viewedByMe, unittest.isTrue);
Martin Kustermann5eb85c12017-09-11 12:35:54 +02001233 unittest.expect(o.viewedByMeTime,
1234 unittest.equals(core.DateTime.parse("2002-02-27T14:01:02")));
Martin Kustermann26171812015-12-21 15:06:06 +01001235 unittest.expect(o.viewersCanCopyContent, unittest.isTrue);
1236 unittest.expect(o.webContentLink, unittest.equals('foo'));
1237 unittest.expect(o.webViewLink, unittest.equals('foo'));
1238 unittest.expect(o.writersCanShare, unittest.isTrue);
1239 }
1240 buildCounterFile--;
1241}
1242
Kevin Moore6d21e902021-01-15 06:41:08 -08001243core.List<api.File> buildUnnamed2660() {
1244 var o = <api.File>[];
Martin Kustermann26171812015-12-21 15:06:06 +01001245 o.add(buildFile());
1246 o.add(buildFile());
1247 return o;
1248}
1249
Kevin Moore6d21e902021-01-15 06:41:08 -08001250void checkUnnamed2660(core.List<api.File> o) {
Martin Kustermann26171812015-12-21 15:06:06 +01001251 unittest.expect(o, unittest.hasLength(2));
1252 checkFile(o[0]);
1253 checkFile(o[1]);
1254}
1255
1256core.int buildCounterFileList = 0;
Kevin Moore6d21e902021-01-15 06:41:08 -08001257api.FileList buildFileList() {
1258 var o = api.FileList();
Martin Kustermann26171812015-12-21 15:06:06 +01001259 buildCounterFileList++;
1260 if (buildCounterFileList < 3) {
Kevin Moore6d21e902021-01-15 06:41:08 -08001261 o.files = buildUnnamed2660();
Martin Kustermann77f42ff2017-03-06 13:56:35 +01001262 o.incompleteSearch = true;
Kevin Moored0251702021-01-15 06:41:08 -08001263 o.kind = 'foo';
1264 o.nextPageToken = 'foo';
Martin Kustermann26171812015-12-21 15:06:06 +01001265 }
1266 buildCounterFileList--;
1267 return o;
1268}
1269
Kevin Moore6d21e902021-01-15 06:41:08 -08001270void checkFileList(api.FileList o) {
Martin Kustermann26171812015-12-21 15:06:06 +01001271 buildCounterFileList++;
1272 if (buildCounterFileList < 3) {
Kevin Moore6d21e902021-01-15 06:41:08 -08001273 checkUnnamed2660(o.files);
Martin Kustermann77f42ff2017-03-06 13:56:35 +01001274 unittest.expect(o.incompleteSearch, unittest.isTrue);
Martin Kustermann26171812015-12-21 15:06:06 +01001275 unittest.expect(o.kind, unittest.equals('foo'));
1276 unittest.expect(o.nextPageToken, unittest.equals('foo'));
1277 }
1278 buildCounterFileList--;
1279}
1280
Kevin Moore6d21e902021-01-15 06:41:08 -08001281core.List<core.String> buildUnnamed2661() {
1282 var o = <core.String>[];
Kevin Moored0251702021-01-15 06:41:08 -08001283 o.add('foo');
1284 o.add('foo');
Martin Kustermann26171812015-12-21 15:06:06 +01001285 return o;
1286}
1287
Kevin Moore6d21e902021-01-15 06:41:08 -08001288void checkUnnamed2661(core.List<core.String> o) {
Martin Kustermann26171812015-12-21 15:06:06 +01001289 unittest.expect(o, unittest.hasLength(2));
1290 unittest.expect(o[0], unittest.equals('foo'));
1291 unittest.expect(o[1], unittest.equals('foo'));
1292}
1293
1294core.int buildCounterGeneratedIds = 0;
Kevin Moore6d21e902021-01-15 06:41:08 -08001295api.GeneratedIds buildGeneratedIds() {
1296 var o = api.GeneratedIds();
Martin Kustermann26171812015-12-21 15:06:06 +01001297 buildCounterGeneratedIds++;
1298 if (buildCounterGeneratedIds < 3) {
Kevin Moore6d21e902021-01-15 06:41:08 -08001299 o.ids = buildUnnamed2661();
Kevin Moored0251702021-01-15 06:41:08 -08001300 o.kind = 'foo';
1301 o.space = 'foo';
Martin Kustermann26171812015-12-21 15:06:06 +01001302 }
1303 buildCounterGeneratedIds--;
1304 return o;
1305}
1306
Kevin Moore6d21e902021-01-15 06:41:08 -08001307void checkGeneratedIds(api.GeneratedIds o) {
Martin Kustermann26171812015-12-21 15:06:06 +01001308 buildCounterGeneratedIds++;
1309 if (buildCounterGeneratedIds < 3) {
Kevin Moore6d21e902021-01-15 06:41:08 -08001310 checkUnnamed2661(o.ids);
Martin Kustermann26171812015-12-21 15:06:06 +01001311 unittest.expect(o.kind, unittest.equals('foo'));
1312 unittest.expect(o.space, unittest.equals('foo'));
1313 }
1314 buildCounterGeneratedIds--;
1315}
1316
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02001317core.int buildCounterPermissionPermissionDetails = 0;
Kevin Moore6d21e902021-01-15 06:41:08 -08001318api.PermissionPermissionDetails buildPermissionPermissionDetails() {
1319 var o = api.PermissionPermissionDetails();
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02001320 buildCounterPermissionPermissionDetails++;
1321 if (buildCounterPermissionPermissionDetails < 3) {
1322 o.inherited = true;
Kevin Moored0251702021-01-15 06:41:08 -08001323 o.inheritedFrom = 'foo';
1324 o.permissionType = 'foo';
1325 o.role = 'foo';
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02001326 }
1327 buildCounterPermissionPermissionDetails--;
1328 return o;
1329}
1330
Kevin Moore6d21e902021-01-15 06:41:08 -08001331void checkPermissionPermissionDetails(api.PermissionPermissionDetails o) {
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02001332 buildCounterPermissionPermissionDetails++;
1333 if (buildCounterPermissionPermissionDetails < 3) {
1334 unittest.expect(o.inherited, unittest.isTrue);
1335 unittest.expect(o.inheritedFrom, unittest.equals('foo'));
1336 unittest.expect(o.permissionType, unittest.equals('foo'));
1337 unittest.expect(o.role, unittest.equals('foo'));
1338 }
1339 buildCounterPermissionPermissionDetails--;
1340}
1341
Kevin Moore6d21e902021-01-15 06:41:08 -08001342core.List<api.PermissionPermissionDetails> buildUnnamed2662() {
1343 var o = <api.PermissionPermissionDetails>[];
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02001344 o.add(buildPermissionPermissionDetails());
1345 o.add(buildPermissionPermissionDetails());
1346 return o;
1347}
1348
Kevin Moore6d21e902021-01-15 06:41:08 -08001349void checkUnnamed2662(core.List<api.PermissionPermissionDetails> o) {
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02001350 unittest.expect(o, unittest.hasLength(2));
1351 checkPermissionPermissionDetails(o[0]);
1352 checkPermissionPermissionDetails(o[1]);
1353}
1354
Martin Kustermann77f42ff2017-03-06 13:56:35 +01001355core.int buildCounterPermissionTeamDrivePermissionDetails = 0;
Kevin Moore6d21e902021-01-15 06:41:08 -08001356api.PermissionTeamDrivePermissionDetails
1357 buildPermissionTeamDrivePermissionDetails() {
1358 var o = api.PermissionTeamDrivePermissionDetails();
Martin Kustermann77f42ff2017-03-06 13:56:35 +01001359 buildCounterPermissionTeamDrivePermissionDetails++;
1360 if (buildCounterPermissionTeamDrivePermissionDetails < 3) {
1361 o.inherited = true;
Kevin Moored0251702021-01-15 06:41:08 -08001362 o.inheritedFrom = 'foo';
1363 o.role = 'foo';
1364 o.teamDrivePermissionType = 'foo';
Martin Kustermann77f42ff2017-03-06 13:56:35 +01001365 }
1366 buildCounterPermissionTeamDrivePermissionDetails--;
1367 return o;
1368}
1369
Kevin Moore6d21e902021-01-15 06:41:08 -08001370void checkPermissionTeamDrivePermissionDetails(
Martin Kustermann5eb85c12017-09-11 12:35:54 +02001371 api.PermissionTeamDrivePermissionDetails o) {
Martin Kustermann77f42ff2017-03-06 13:56:35 +01001372 buildCounterPermissionTeamDrivePermissionDetails++;
1373 if (buildCounterPermissionTeamDrivePermissionDetails < 3) {
1374 unittest.expect(o.inherited, unittest.isTrue);
1375 unittest.expect(o.inheritedFrom, unittest.equals('foo'));
1376 unittest.expect(o.role, unittest.equals('foo'));
1377 unittest.expect(o.teamDrivePermissionType, unittest.equals('foo'));
1378 }
1379 buildCounterPermissionTeamDrivePermissionDetails--;
1380}
1381
Kevin Moore6d21e902021-01-15 06:41:08 -08001382core.List<api.PermissionTeamDrivePermissionDetails> buildUnnamed2663() {
1383 var o = <api.PermissionTeamDrivePermissionDetails>[];
Martin Kustermann77f42ff2017-03-06 13:56:35 +01001384 o.add(buildPermissionTeamDrivePermissionDetails());
1385 o.add(buildPermissionTeamDrivePermissionDetails());
1386 return o;
1387}
1388
Kevin Moore6d21e902021-01-15 06:41:08 -08001389void checkUnnamed2663(core.List<api.PermissionTeamDrivePermissionDetails> o) {
Martin Kustermann77f42ff2017-03-06 13:56:35 +01001390 unittest.expect(o, unittest.hasLength(2));
1391 checkPermissionTeamDrivePermissionDetails(o[0]);
1392 checkPermissionTeamDrivePermissionDetails(o[1]);
1393}
1394
Martin Kustermann26171812015-12-21 15:06:06 +01001395core.int buildCounterPermission = 0;
Kevin Moore6d21e902021-01-15 06:41:08 -08001396api.Permission buildPermission() {
1397 var o = api.Permission();
Martin Kustermann26171812015-12-21 15:06:06 +01001398 buildCounterPermission++;
1399 if (buildCounterPermission < 3) {
1400 o.allowFileDiscovery = true;
Martin Kustermannc95693d2017-04-18 12:30:00 +02001401 o.deleted = true;
Kevin Moored0251702021-01-15 06:41:08 -08001402 o.displayName = 'foo';
1403 o.domain = 'foo';
1404 o.emailAddress = 'foo';
Martin Kustermanneabc5e12016-06-06 11:23:46 +02001405 o.expirationTime = core.DateTime.parse("2002-02-27T14:01:02");
Kevin Moored0251702021-01-15 06:41:08 -08001406 o.id = 'foo';
1407 o.kind = 'foo';
Kevin Moore6d21e902021-01-15 06:41:08 -08001408 o.permissionDetails = buildUnnamed2662();
Kevin Moored0251702021-01-15 06:41:08 -08001409 o.photoLink = 'foo';
1410 o.role = 'foo';
Kevin Moore6d21e902021-01-15 06:41:08 -08001411 o.teamDrivePermissionDetails = buildUnnamed2663();
Kevin Moored0251702021-01-15 06:41:08 -08001412 o.type = 'foo';
1413 o.view = 'foo';
Martin Kustermann26171812015-12-21 15:06:06 +01001414 }
1415 buildCounterPermission--;
1416 return o;
1417}
1418
Kevin Moore6d21e902021-01-15 06:41:08 -08001419void checkPermission(api.Permission o) {
Martin Kustermann26171812015-12-21 15:06:06 +01001420 buildCounterPermission++;
1421 if (buildCounterPermission < 3) {
1422 unittest.expect(o.allowFileDiscovery, unittest.isTrue);
Martin Kustermannc95693d2017-04-18 12:30:00 +02001423 unittest.expect(o.deleted, unittest.isTrue);
Martin Kustermann26171812015-12-21 15:06:06 +01001424 unittest.expect(o.displayName, unittest.equals('foo'));
1425 unittest.expect(o.domain, unittest.equals('foo'));
1426 unittest.expect(o.emailAddress, unittest.equals('foo'));
Martin Kustermann5eb85c12017-09-11 12:35:54 +02001427 unittest.expect(o.expirationTime,
1428 unittest.equals(core.DateTime.parse("2002-02-27T14:01:02")));
Martin Kustermann26171812015-12-21 15:06:06 +01001429 unittest.expect(o.id, unittest.equals('foo'));
1430 unittest.expect(o.kind, unittest.equals('foo'));
Kevin Moore6d21e902021-01-15 06:41:08 -08001431 checkUnnamed2662(o.permissionDetails);
Martin Kustermann26171812015-12-21 15:06:06 +01001432 unittest.expect(o.photoLink, unittest.equals('foo'));
1433 unittest.expect(o.role, unittest.equals('foo'));
Kevin Moore6d21e902021-01-15 06:41:08 -08001434 checkUnnamed2663(o.teamDrivePermissionDetails);
Martin Kustermann26171812015-12-21 15:06:06 +01001435 unittest.expect(o.type, unittest.equals('foo'));
Jonas Finnemann Jensenef0c8a32020-10-07 20:58:20 +02001436 unittest.expect(o.view, unittest.equals('foo'));
Martin Kustermann26171812015-12-21 15:06:06 +01001437 }
1438 buildCounterPermission--;
1439}
1440
Kevin Moore6d21e902021-01-15 06:41:08 -08001441core.List<api.Permission> buildUnnamed2664() {
1442 var o = <api.Permission>[];
Martin Kustermann26171812015-12-21 15:06:06 +01001443 o.add(buildPermission());
1444 o.add(buildPermission());
1445 return o;
1446}
1447
Kevin Moore6d21e902021-01-15 06:41:08 -08001448void checkUnnamed2664(core.List<api.Permission> o) {
Martin Kustermann26171812015-12-21 15:06:06 +01001449 unittest.expect(o, unittest.hasLength(2));
1450 checkPermission(o[0]);
1451 checkPermission(o[1]);
1452}
1453
1454core.int buildCounterPermissionList = 0;
Kevin Moore6d21e902021-01-15 06:41:08 -08001455api.PermissionList buildPermissionList() {
1456 var o = api.PermissionList();
Martin Kustermann26171812015-12-21 15:06:06 +01001457 buildCounterPermissionList++;
1458 if (buildCounterPermissionList < 3) {
Kevin Moored0251702021-01-15 06:41:08 -08001459 o.kind = 'foo';
1460 o.nextPageToken = 'foo';
Kevin Moore6d21e902021-01-15 06:41:08 -08001461 o.permissions = buildUnnamed2664();
Martin Kustermann26171812015-12-21 15:06:06 +01001462 }
1463 buildCounterPermissionList--;
1464 return o;
1465}
1466
Kevin Moore6d21e902021-01-15 06:41:08 -08001467void checkPermissionList(api.PermissionList o) {
Martin Kustermann26171812015-12-21 15:06:06 +01001468 buildCounterPermissionList++;
1469 if (buildCounterPermissionList < 3) {
1470 unittest.expect(o.kind, unittest.equals('foo'));
Martin Kustermann77f42ff2017-03-06 13:56:35 +01001471 unittest.expect(o.nextPageToken, unittest.equals('foo'));
Kevin Moore6d21e902021-01-15 06:41:08 -08001472 checkUnnamed2664(o.permissions);
Martin Kustermann26171812015-12-21 15:06:06 +01001473 }
1474 buildCounterPermissionList--;
1475}
1476
1477core.int buildCounterReply = 0;
Kevin Moore6d21e902021-01-15 06:41:08 -08001478api.Reply buildReply() {
1479 var o = api.Reply();
Martin Kustermann26171812015-12-21 15:06:06 +01001480 buildCounterReply++;
1481 if (buildCounterReply < 3) {
Kevin Moored0251702021-01-15 06:41:08 -08001482 o.action = 'foo';
Martin Kustermann26171812015-12-21 15:06:06 +01001483 o.author = buildUser();
Kevin Moored0251702021-01-15 06:41:08 -08001484 o.content = 'foo';
Martin Kustermann26171812015-12-21 15:06:06 +01001485 o.createdTime = core.DateTime.parse("2002-02-27T14:01:02");
1486 o.deleted = true;
Kevin Moored0251702021-01-15 06:41:08 -08001487 o.htmlContent = 'foo';
1488 o.id = 'foo';
1489 o.kind = 'foo';
Martin Kustermann26171812015-12-21 15:06:06 +01001490 o.modifiedTime = core.DateTime.parse("2002-02-27T14:01:02");
1491 }
1492 buildCounterReply--;
1493 return o;
1494}
1495
Kevin Moore6d21e902021-01-15 06:41:08 -08001496void checkReply(api.Reply o) {
Martin Kustermann26171812015-12-21 15:06:06 +01001497 buildCounterReply++;
1498 if (buildCounterReply < 3) {
1499 unittest.expect(o.action, unittest.equals('foo'));
1500 checkUser(o.author);
1501 unittest.expect(o.content, unittest.equals('foo'));
Martin Kustermann5eb85c12017-09-11 12:35:54 +02001502 unittest.expect(o.createdTime,
1503 unittest.equals(core.DateTime.parse("2002-02-27T14:01:02")));
Martin Kustermann26171812015-12-21 15:06:06 +01001504 unittest.expect(o.deleted, unittest.isTrue);
1505 unittest.expect(o.htmlContent, unittest.equals('foo'));
1506 unittest.expect(o.id, unittest.equals('foo'));
1507 unittest.expect(o.kind, unittest.equals('foo'));
Martin Kustermann5eb85c12017-09-11 12:35:54 +02001508 unittest.expect(o.modifiedTime,
1509 unittest.equals(core.DateTime.parse("2002-02-27T14:01:02")));
Martin Kustermann26171812015-12-21 15:06:06 +01001510 }
1511 buildCounterReply--;
1512}
1513
Kevin Moore6d21e902021-01-15 06:41:08 -08001514core.List<api.Reply> buildUnnamed2665() {
1515 var o = <api.Reply>[];
Martin Kustermann26171812015-12-21 15:06:06 +01001516 o.add(buildReply());
1517 o.add(buildReply());
1518 return o;
1519}
1520
Kevin Moore6d21e902021-01-15 06:41:08 -08001521void checkUnnamed2665(core.List<api.Reply> o) {
Martin Kustermann26171812015-12-21 15:06:06 +01001522 unittest.expect(o, unittest.hasLength(2));
1523 checkReply(o[0]);
1524 checkReply(o[1]);
1525}
1526
1527core.int buildCounterReplyList = 0;
Kevin Moore6d21e902021-01-15 06:41:08 -08001528api.ReplyList buildReplyList() {
1529 var o = api.ReplyList();
Martin Kustermann26171812015-12-21 15:06:06 +01001530 buildCounterReplyList++;
1531 if (buildCounterReplyList < 3) {
Kevin Moored0251702021-01-15 06:41:08 -08001532 o.kind = 'foo';
1533 o.nextPageToken = 'foo';
Kevin Moore6d21e902021-01-15 06:41:08 -08001534 o.replies = buildUnnamed2665();
Martin Kustermann26171812015-12-21 15:06:06 +01001535 }
1536 buildCounterReplyList--;
1537 return o;
1538}
1539
Kevin Moore6d21e902021-01-15 06:41:08 -08001540void checkReplyList(api.ReplyList o) {
Martin Kustermann26171812015-12-21 15:06:06 +01001541 buildCounterReplyList++;
1542 if (buildCounterReplyList < 3) {
1543 unittest.expect(o.kind, unittest.equals('foo'));
1544 unittest.expect(o.nextPageToken, unittest.equals('foo'));
Kevin Moore6d21e902021-01-15 06:41:08 -08001545 checkUnnamed2665(o.replies);
Martin Kustermann26171812015-12-21 15:06:06 +01001546 }
1547 buildCounterReplyList--;
1548}
1549
Kevin Moore6d21e902021-01-15 06:41:08 -08001550core.Map<core.String, core.String> buildUnnamed2666() {
1551 var o = <core.String, core.String>{};
Kevin Moored0251702021-01-15 06:41:08 -08001552 o['x'] = 'foo';
1553 o['y'] = 'foo';
Jonas Finnemann Jensendda12e42019-02-09 12:37:20 +01001554 return o;
1555}
1556
Kevin Moore6d21e902021-01-15 06:41:08 -08001557void checkUnnamed2666(core.Map<core.String, core.String> o) {
Jonas Finnemann Jensendda12e42019-02-09 12:37:20 +01001558 unittest.expect(o, unittest.hasLength(2));
Kevin Moored0251702021-01-15 06:41:08 -08001559 unittest.expect(o['x'], unittest.equals('foo'));
1560 unittest.expect(o['y'], unittest.equals('foo'));
Jonas Finnemann Jensendda12e42019-02-09 12:37:20 +01001561}
1562
Martin Kustermann26171812015-12-21 15:06:06 +01001563core.int buildCounterRevision = 0;
Kevin Moore6d21e902021-01-15 06:41:08 -08001564api.Revision buildRevision() {
1565 var o = api.Revision();
Martin Kustermann26171812015-12-21 15:06:06 +01001566 buildCounterRevision++;
1567 if (buildCounterRevision < 3) {
Kevin Moore6d21e902021-01-15 06:41:08 -08001568 o.exportLinks = buildUnnamed2666();
Kevin Moored0251702021-01-15 06:41:08 -08001569 o.id = 'foo';
Martin Kustermann26171812015-12-21 15:06:06 +01001570 o.keepForever = true;
Kevin Moored0251702021-01-15 06:41:08 -08001571 o.kind = 'foo';
Martin Kustermann26171812015-12-21 15:06:06 +01001572 o.lastModifyingUser = buildUser();
Kevin Moored0251702021-01-15 06:41:08 -08001573 o.md5Checksum = 'foo';
1574 o.mimeType = 'foo';
Martin Kustermann26171812015-12-21 15:06:06 +01001575 o.modifiedTime = core.DateTime.parse("2002-02-27T14:01:02");
Kevin Moored0251702021-01-15 06:41:08 -08001576 o.originalFilename = 'foo';
Martin Kustermann26171812015-12-21 15:06:06 +01001577 o.publishAuto = true;
1578 o.published = true;
Kevin Moored0251702021-01-15 06:41:08 -08001579 o.publishedLink = 'foo';
Martin Kustermann26171812015-12-21 15:06:06 +01001580 o.publishedOutsideDomain = true;
Kevin Moored0251702021-01-15 06:41:08 -08001581 o.size = 'foo';
Martin Kustermann26171812015-12-21 15:06:06 +01001582 }
1583 buildCounterRevision--;
1584 return o;
1585}
1586
Kevin Moore6d21e902021-01-15 06:41:08 -08001587void checkRevision(api.Revision o) {
Martin Kustermann26171812015-12-21 15:06:06 +01001588 buildCounterRevision++;
1589 if (buildCounterRevision < 3) {
Kevin Moore6d21e902021-01-15 06:41:08 -08001590 checkUnnamed2666(o.exportLinks);
Martin Kustermann26171812015-12-21 15:06:06 +01001591 unittest.expect(o.id, unittest.equals('foo'));
1592 unittest.expect(o.keepForever, unittest.isTrue);
1593 unittest.expect(o.kind, unittest.equals('foo'));
1594 checkUser(o.lastModifyingUser);
1595 unittest.expect(o.md5Checksum, unittest.equals('foo'));
1596 unittest.expect(o.mimeType, unittest.equals('foo'));
Martin Kustermann5eb85c12017-09-11 12:35:54 +02001597 unittest.expect(o.modifiedTime,
1598 unittest.equals(core.DateTime.parse("2002-02-27T14:01:02")));
Martin Kustermann26171812015-12-21 15:06:06 +01001599 unittest.expect(o.originalFilename, unittest.equals('foo'));
1600 unittest.expect(o.publishAuto, unittest.isTrue);
1601 unittest.expect(o.published, unittest.isTrue);
Jonas Finnemann Jensenef0c8a32020-10-07 20:58:20 +02001602 unittest.expect(o.publishedLink, unittest.equals('foo'));
Martin Kustermann26171812015-12-21 15:06:06 +01001603 unittest.expect(o.publishedOutsideDomain, unittest.isTrue);
1604 unittest.expect(o.size, unittest.equals('foo'));
1605 }
1606 buildCounterRevision--;
1607}
1608
Kevin Moore6d21e902021-01-15 06:41:08 -08001609core.List<api.Revision> buildUnnamed2667() {
1610 var o = <api.Revision>[];
Martin Kustermann26171812015-12-21 15:06:06 +01001611 o.add(buildRevision());
1612 o.add(buildRevision());
1613 return o;
1614}
1615
Kevin Moore6d21e902021-01-15 06:41:08 -08001616void checkUnnamed2667(core.List<api.Revision> o) {
Martin Kustermann26171812015-12-21 15:06:06 +01001617 unittest.expect(o, unittest.hasLength(2));
1618 checkRevision(o[0]);
1619 checkRevision(o[1]);
1620}
1621
1622core.int buildCounterRevisionList = 0;
Kevin Moore6d21e902021-01-15 06:41:08 -08001623api.RevisionList buildRevisionList() {
1624 var o = api.RevisionList();
Martin Kustermann26171812015-12-21 15:06:06 +01001625 buildCounterRevisionList++;
1626 if (buildCounterRevisionList < 3) {
Kevin Moored0251702021-01-15 06:41:08 -08001627 o.kind = 'foo';
1628 o.nextPageToken = 'foo';
Kevin Moore6d21e902021-01-15 06:41:08 -08001629 o.revisions = buildUnnamed2667();
Martin Kustermann26171812015-12-21 15:06:06 +01001630 }
1631 buildCounterRevisionList--;
1632 return o;
1633}
1634
Kevin Moore6d21e902021-01-15 06:41:08 -08001635void checkRevisionList(api.RevisionList o) {
Martin Kustermann26171812015-12-21 15:06:06 +01001636 buildCounterRevisionList++;
1637 if (buildCounterRevisionList < 3) {
1638 unittest.expect(o.kind, unittest.equals('foo'));
Martin Kustermann4ff71db2016-11-09 10:46:40 +01001639 unittest.expect(o.nextPageToken, unittest.equals('foo'));
Kevin Moore6d21e902021-01-15 06:41:08 -08001640 checkUnnamed2667(o.revisions);
Martin Kustermann26171812015-12-21 15:06:06 +01001641 }
1642 buildCounterRevisionList--;
1643}
1644
1645core.int buildCounterStartPageToken = 0;
Kevin Moore6d21e902021-01-15 06:41:08 -08001646api.StartPageToken buildStartPageToken() {
1647 var o = api.StartPageToken();
Martin Kustermann26171812015-12-21 15:06:06 +01001648 buildCounterStartPageToken++;
1649 if (buildCounterStartPageToken < 3) {
Kevin Moored0251702021-01-15 06:41:08 -08001650 o.kind = 'foo';
1651 o.startPageToken = 'foo';
Martin Kustermann26171812015-12-21 15:06:06 +01001652 }
1653 buildCounterStartPageToken--;
1654 return o;
1655}
1656
Kevin Moore6d21e902021-01-15 06:41:08 -08001657void checkStartPageToken(api.StartPageToken o) {
Martin Kustermann26171812015-12-21 15:06:06 +01001658 buildCounterStartPageToken++;
1659 if (buildCounterStartPageToken < 3) {
1660 unittest.expect(o.kind, unittest.equals('foo'));
1661 unittest.expect(o.startPageToken, unittest.equals('foo'));
1662 }
1663 buildCounterStartPageToken--;
1664}
1665
Martin Kustermannc95693d2017-04-18 12:30:00 +02001666core.int buildCounterTeamDriveBackgroundImageFile = 0;
Kevin Moore6d21e902021-01-15 06:41:08 -08001667api.TeamDriveBackgroundImageFile buildTeamDriveBackgroundImageFile() {
1668 var o = api.TeamDriveBackgroundImageFile();
Martin Kustermannc95693d2017-04-18 12:30:00 +02001669 buildCounterTeamDriveBackgroundImageFile++;
1670 if (buildCounterTeamDriveBackgroundImageFile < 3) {
Kevin Moored0251702021-01-15 06:41:08 -08001671 o.id = 'foo';
Martin Kustermannc95693d2017-04-18 12:30:00 +02001672 o.width = 42.0;
1673 o.xCoordinate = 42.0;
1674 o.yCoordinate = 42.0;
1675 }
1676 buildCounterTeamDriveBackgroundImageFile--;
1677 return o;
1678}
1679
Kevin Moore6d21e902021-01-15 06:41:08 -08001680void checkTeamDriveBackgroundImageFile(api.TeamDriveBackgroundImageFile o) {
Martin Kustermannc95693d2017-04-18 12:30:00 +02001681 buildCounterTeamDriveBackgroundImageFile++;
1682 if (buildCounterTeamDriveBackgroundImageFile < 3) {
1683 unittest.expect(o.id, unittest.equals('foo'));
1684 unittest.expect(o.width, unittest.equals(42.0));
1685 unittest.expect(o.xCoordinate, unittest.equals(42.0));
1686 unittest.expect(o.yCoordinate, unittest.equals(42.0));
1687 }
1688 buildCounterTeamDriveBackgroundImageFile--;
1689}
1690
Martin Kustermann77f42ff2017-03-06 13:56:35 +01001691core.int buildCounterTeamDriveCapabilities = 0;
Kevin Moore6d21e902021-01-15 06:41:08 -08001692api.TeamDriveCapabilities buildTeamDriveCapabilities() {
1693 var o = api.TeamDriveCapabilities();
Martin Kustermann77f42ff2017-03-06 13:56:35 +01001694 buildCounterTeamDriveCapabilities++;
1695 if (buildCounterTeamDriveCapabilities < 3) {
1696 o.canAddChildren = true;
Martin Kustermann12cdd522018-08-27 10:46:50 +02001697 o.canChangeCopyRequiresWriterPermissionRestriction = true;
1698 o.canChangeDomainUsersOnlyRestriction = true;
Martin Kustermannc95693d2017-04-18 12:30:00 +02001699 o.canChangeTeamDriveBackground = true;
Martin Kustermann12cdd522018-08-27 10:46:50 +02001700 o.canChangeTeamMembersOnlyRestriction = true;
Martin Kustermann77f42ff2017-03-06 13:56:35 +01001701 o.canComment = true;
1702 o.canCopy = true;
Martin Kustermann12cdd522018-08-27 10:46:50 +02001703 o.canDeleteChildren = true;
Martin Kustermann77f42ff2017-03-06 13:56:35 +01001704 o.canDeleteTeamDrive = true;
1705 o.canDownload = true;
1706 o.canEdit = true;
1707 o.canListChildren = true;
1708 o.canManageMembers = true;
1709 o.canReadRevisions = true;
1710 o.canRemoveChildren = true;
1711 o.canRename = true;
1712 o.canRenameTeamDrive = true;
1713 o.canShare = true;
Martin Kustermann12cdd522018-08-27 10:46:50 +02001714 o.canTrashChildren = true;
Martin Kustermann77f42ff2017-03-06 13:56:35 +01001715 }
1716 buildCounterTeamDriveCapabilities--;
1717 return o;
1718}
1719
Kevin Moore6d21e902021-01-15 06:41:08 -08001720void checkTeamDriveCapabilities(api.TeamDriveCapabilities o) {
Martin Kustermann77f42ff2017-03-06 13:56:35 +01001721 buildCounterTeamDriveCapabilities++;
1722 if (buildCounterTeamDriveCapabilities < 3) {
1723 unittest.expect(o.canAddChildren, unittest.isTrue);
Martin Kustermann12cdd522018-08-27 10:46:50 +02001724 unittest.expect(
1725 o.canChangeCopyRequiresWriterPermissionRestriction, unittest.isTrue);
1726 unittest.expect(o.canChangeDomainUsersOnlyRestriction, unittest.isTrue);
Martin Kustermannc95693d2017-04-18 12:30:00 +02001727 unittest.expect(o.canChangeTeamDriveBackground, unittest.isTrue);
Martin Kustermann12cdd522018-08-27 10:46:50 +02001728 unittest.expect(o.canChangeTeamMembersOnlyRestriction, unittest.isTrue);
Martin Kustermann77f42ff2017-03-06 13:56:35 +01001729 unittest.expect(o.canComment, unittest.isTrue);
1730 unittest.expect(o.canCopy, unittest.isTrue);
Martin Kustermann12cdd522018-08-27 10:46:50 +02001731 unittest.expect(o.canDeleteChildren, unittest.isTrue);
Martin Kustermann77f42ff2017-03-06 13:56:35 +01001732 unittest.expect(o.canDeleteTeamDrive, unittest.isTrue);
1733 unittest.expect(o.canDownload, unittest.isTrue);
1734 unittest.expect(o.canEdit, unittest.isTrue);
1735 unittest.expect(o.canListChildren, unittest.isTrue);
1736 unittest.expect(o.canManageMembers, unittest.isTrue);
1737 unittest.expect(o.canReadRevisions, unittest.isTrue);
1738 unittest.expect(o.canRemoveChildren, unittest.isTrue);
1739 unittest.expect(o.canRename, unittest.isTrue);
1740 unittest.expect(o.canRenameTeamDrive, unittest.isTrue);
1741 unittest.expect(o.canShare, unittest.isTrue);
Martin Kustermann12cdd522018-08-27 10:46:50 +02001742 unittest.expect(o.canTrashChildren, unittest.isTrue);
Martin Kustermann77f42ff2017-03-06 13:56:35 +01001743 }
1744 buildCounterTeamDriveCapabilities--;
1745}
1746
Martin Kustermann12cdd522018-08-27 10:46:50 +02001747core.int buildCounterTeamDriveRestrictions = 0;
Kevin Moore6d21e902021-01-15 06:41:08 -08001748api.TeamDriveRestrictions buildTeamDriveRestrictions() {
1749 var o = api.TeamDriveRestrictions();
Martin Kustermann12cdd522018-08-27 10:46:50 +02001750 buildCounterTeamDriveRestrictions++;
1751 if (buildCounterTeamDriveRestrictions < 3) {
1752 o.adminManagedRestrictions = true;
1753 o.copyRequiresWriterPermission = true;
1754 o.domainUsersOnly = true;
1755 o.teamMembersOnly = true;
1756 }
1757 buildCounterTeamDriveRestrictions--;
1758 return o;
1759}
1760
Kevin Moore6d21e902021-01-15 06:41:08 -08001761void checkTeamDriveRestrictions(api.TeamDriveRestrictions o) {
Martin Kustermann12cdd522018-08-27 10:46:50 +02001762 buildCounterTeamDriveRestrictions++;
1763 if (buildCounterTeamDriveRestrictions < 3) {
1764 unittest.expect(o.adminManagedRestrictions, unittest.isTrue);
1765 unittest.expect(o.copyRequiresWriterPermission, unittest.isTrue);
1766 unittest.expect(o.domainUsersOnly, unittest.isTrue);
1767 unittest.expect(o.teamMembersOnly, unittest.isTrue);
1768 }
1769 buildCounterTeamDriveRestrictions--;
1770}
1771
Martin Kustermann77f42ff2017-03-06 13:56:35 +01001772core.int buildCounterTeamDrive = 0;
Kevin Moore6d21e902021-01-15 06:41:08 -08001773api.TeamDrive buildTeamDrive() {
1774 var o = api.TeamDrive();
Martin Kustermann77f42ff2017-03-06 13:56:35 +01001775 buildCounterTeamDrive++;
1776 if (buildCounterTeamDrive < 3) {
Martin Kustermannc95693d2017-04-18 12:30:00 +02001777 o.backgroundImageFile = buildTeamDriveBackgroundImageFile();
Kevin Moored0251702021-01-15 06:41:08 -08001778 o.backgroundImageLink = 'foo';
Martin Kustermann77f42ff2017-03-06 13:56:35 +01001779 o.capabilities = buildTeamDriveCapabilities();
Kevin Moored0251702021-01-15 06:41:08 -08001780 o.colorRgb = 'foo';
Martin Kustermann2a131182017-11-13 13:50:07 +01001781 o.createdTime = core.DateTime.parse("2002-02-27T14:01:02");
Kevin Moored0251702021-01-15 06:41:08 -08001782 o.id = 'foo';
1783 o.kind = 'foo';
1784 o.name = 'foo';
Martin Kustermann12cdd522018-08-27 10:46:50 +02001785 o.restrictions = buildTeamDriveRestrictions();
Kevin Moored0251702021-01-15 06:41:08 -08001786 o.themeId = 'foo';
Martin Kustermann77f42ff2017-03-06 13:56:35 +01001787 }
1788 buildCounterTeamDrive--;
1789 return o;
1790}
1791
Kevin Moore6d21e902021-01-15 06:41:08 -08001792void checkTeamDrive(api.TeamDrive o) {
Martin Kustermann77f42ff2017-03-06 13:56:35 +01001793 buildCounterTeamDrive++;
1794 if (buildCounterTeamDrive < 3) {
Martin Kustermannc95693d2017-04-18 12:30:00 +02001795 checkTeamDriveBackgroundImageFile(o.backgroundImageFile);
1796 unittest.expect(o.backgroundImageLink, unittest.equals('foo'));
Martin Kustermann77f42ff2017-03-06 13:56:35 +01001797 checkTeamDriveCapabilities(o.capabilities);
Martin Kustermannc95693d2017-04-18 12:30:00 +02001798 unittest.expect(o.colorRgb, unittest.equals('foo'));
Martin Kustermann2a131182017-11-13 13:50:07 +01001799 unittest.expect(o.createdTime,
1800 unittest.equals(core.DateTime.parse("2002-02-27T14:01:02")));
Martin Kustermann77f42ff2017-03-06 13:56:35 +01001801 unittest.expect(o.id, unittest.equals('foo'));
1802 unittest.expect(o.kind, unittest.equals('foo'));
1803 unittest.expect(o.name, unittest.equals('foo'));
Martin Kustermann12cdd522018-08-27 10:46:50 +02001804 checkTeamDriveRestrictions(o.restrictions);
Martin Kustermannc95693d2017-04-18 12:30:00 +02001805 unittest.expect(o.themeId, unittest.equals('foo'));
Martin Kustermann77f42ff2017-03-06 13:56:35 +01001806 }
1807 buildCounterTeamDrive--;
1808}
1809
Kevin Moore6d21e902021-01-15 06:41:08 -08001810core.List<api.TeamDrive> buildUnnamed2668() {
1811 var o = <api.TeamDrive>[];
Martin Kustermann77f42ff2017-03-06 13:56:35 +01001812 o.add(buildTeamDrive());
1813 o.add(buildTeamDrive());
1814 return o;
1815}
1816
Kevin Moore6d21e902021-01-15 06:41:08 -08001817void checkUnnamed2668(core.List<api.TeamDrive> o) {
Martin Kustermann77f42ff2017-03-06 13:56:35 +01001818 unittest.expect(o, unittest.hasLength(2));
1819 checkTeamDrive(o[0]);
1820 checkTeamDrive(o[1]);
1821}
1822
1823core.int buildCounterTeamDriveList = 0;
Kevin Moore6d21e902021-01-15 06:41:08 -08001824api.TeamDriveList buildTeamDriveList() {
1825 var o = api.TeamDriveList();
Martin Kustermann77f42ff2017-03-06 13:56:35 +01001826 buildCounterTeamDriveList++;
1827 if (buildCounterTeamDriveList < 3) {
Kevin Moored0251702021-01-15 06:41:08 -08001828 o.kind = 'foo';
1829 o.nextPageToken = 'foo';
Kevin Moore6d21e902021-01-15 06:41:08 -08001830 o.teamDrives = buildUnnamed2668();
Martin Kustermann77f42ff2017-03-06 13:56:35 +01001831 }
1832 buildCounterTeamDriveList--;
1833 return o;
1834}
1835
Kevin Moore6d21e902021-01-15 06:41:08 -08001836void checkTeamDriveList(api.TeamDriveList o) {
Martin Kustermann77f42ff2017-03-06 13:56:35 +01001837 buildCounterTeamDriveList++;
1838 if (buildCounterTeamDriveList < 3) {
1839 unittest.expect(o.kind, unittest.equals('foo'));
1840 unittest.expect(o.nextPageToken, unittest.equals('foo'));
Kevin Moore6d21e902021-01-15 06:41:08 -08001841 checkUnnamed2668(o.teamDrives);
Martin Kustermann77f42ff2017-03-06 13:56:35 +01001842 }
1843 buildCounterTeamDriveList--;
1844}
1845
Martin Kustermann26171812015-12-21 15:06:06 +01001846core.int buildCounterUser = 0;
Kevin Moore6d21e902021-01-15 06:41:08 -08001847api.User buildUser() {
1848 var o = api.User();
Martin Kustermann26171812015-12-21 15:06:06 +01001849 buildCounterUser++;
1850 if (buildCounterUser < 3) {
Kevin Moored0251702021-01-15 06:41:08 -08001851 o.displayName = 'foo';
1852 o.emailAddress = 'foo';
1853 o.kind = 'foo';
Martin Kustermann26171812015-12-21 15:06:06 +01001854 o.me = true;
Kevin Moored0251702021-01-15 06:41:08 -08001855 o.permissionId = 'foo';
1856 o.photoLink = 'foo';
Martin Kustermann26171812015-12-21 15:06:06 +01001857 }
1858 buildCounterUser--;
1859 return o;
1860}
1861
Kevin Moore6d21e902021-01-15 06:41:08 -08001862void checkUser(api.User o) {
Martin Kustermann26171812015-12-21 15:06:06 +01001863 buildCounterUser++;
1864 if (buildCounterUser < 3) {
1865 unittest.expect(o.displayName, unittest.equals('foo'));
1866 unittest.expect(o.emailAddress, unittest.equals('foo'));
1867 unittest.expect(o.kind, unittest.equals('foo'));
1868 unittest.expect(o.me, unittest.isTrue);
1869 unittest.expect(o.permissionId, unittest.equals('foo'));
1870 unittest.expect(o.photoLink, unittest.equals('foo'));
1871 }
1872 buildCounterUser--;
1873}
1874
Kevin Moore6d21e902021-01-15 06:41:08 -08001875void main() {
Kevin Moored0251702021-01-15 06:41:08 -08001876 unittest.group('obj-schema-AboutDriveThemes', () {
1877 unittest.test('to-json--from-json', () {
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02001878 var o = buildAboutDriveThemes();
Kevin Moore6d21e902021-01-15 06:41:08 -08001879 var od = api.AboutDriveThemes.fromJson(o.toJson());
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02001880 checkAboutDriveThemes(od);
1881 });
1882 });
1883
Kevin Moored0251702021-01-15 06:41:08 -08001884 unittest.group('obj-schema-AboutStorageQuota', () {
1885 unittest.test('to-json--from-json', () {
Martin Kustermann26171812015-12-21 15:06:06 +01001886 var o = buildAboutStorageQuota();
Kevin Moore6d21e902021-01-15 06:41:08 -08001887 var od = api.AboutStorageQuota.fromJson(o.toJson());
Martin Kustermann26171812015-12-21 15:06:06 +01001888 checkAboutStorageQuota(od);
1889 });
1890 });
1891
Kevin Moored0251702021-01-15 06:41:08 -08001892 unittest.group('obj-schema-AboutTeamDriveThemes', () {
1893 unittest.test('to-json--from-json', () {
Martin Kustermannc95693d2017-04-18 12:30:00 +02001894 var o = buildAboutTeamDriveThemes();
Kevin Moore6d21e902021-01-15 06:41:08 -08001895 var od = api.AboutTeamDriveThemes.fromJson(o.toJson());
Martin Kustermannc95693d2017-04-18 12:30:00 +02001896 checkAboutTeamDriveThemes(od);
1897 });
1898 });
1899
Kevin Moored0251702021-01-15 06:41:08 -08001900 unittest.group('obj-schema-About', () {
1901 unittest.test('to-json--from-json', () {
Martin Kustermann26171812015-12-21 15:06:06 +01001902 var o = buildAbout();
Kevin Moore6d21e902021-01-15 06:41:08 -08001903 var od = api.About.fromJson(o.toJson());
Martin Kustermann26171812015-12-21 15:06:06 +01001904 checkAbout(od);
1905 });
1906 });
1907
Kevin Moored0251702021-01-15 06:41:08 -08001908 unittest.group('obj-schema-Change', () {
1909 unittest.test('to-json--from-json', () {
Martin Kustermann26171812015-12-21 15:06:06 +01001910 var o = buildChange();
Kevin Moore6d21e902021-01-15 06:41:08 -08001911 var od = api.Change.fromJson(o.toJson());
Martin Kustermann26171812015-12-21 15:06:06 +01001912 checkChange(od);
1913 });
1914 });
1915
Kevin Moored0251702021-01-15 06:41:08 -08001916 unittest.group('obj-schema-ChangeList', () {
1917 unittest.test('to-json--from-json', () {
Martin Kustermann26171812015-12-21 15:06:06 +01001918 var o = buildChangeList();
Kevin Moore6d21e902021-01-15 06:41:08 -08001919 var od = api.ChangeList.fromJson(o.toJson());
Martin Kustermann26171812015-12-21 15:06:06 +01001920 checkChangeList(od);
1921 });
1922 });
1923
Kevin Moored0251702021-01-15 06:41:08 -08001924 unittest.group('obj-schema-Channel', () {
1925 unittest.test('to-json--from-json', () {
Martin Kustermann26171812015-12-21 15:06:06 +01001926 var o = buildChannel();
Kevin Moore6d21e902021-01-15 06:41:08 -08001927 var od = api.Channel.fromJson(o.toJson());
Martin Kustermann26171812015-12-21 15:06:06 +01001928 checkChannel(od);
1929 });
1930 });
1931
Kevin Moored0251702021-01-15 06:41:08 -08001932 unittest.group('obj-schema-CommentQuotedFileContent', () {
1933 unittest.test('to-json--from-json', () {
Martin Kustermann26171812015-12-21 15:06:06 +01001934 var o = buildCommentQuotedFileContent();
Kevin Moore6d21e902021-01-15 06:41:08 -08001935 var od = api.CommentQuotedFileContent.fromJson(o.toJson());
Martin Kustermann26171812015-12-21 15:06:06 +01001936 checkCommentQuotedFileContent(od);
1937 });
1938 });
1939
Kevin Moored0251702021-01-15 06:41:08 -08001940 unittest.group('obj-schema-Comment', () {
1941 unittest.test('to-json--from-json', () {
Martin Kustermann26171812015-12-21 15:06:06 +01001942 var o = buildComment();
Kevin Moore6d21e902021-01-15 06:41:08 -08001943 var od = api.Comment.fromJson(o.toJson());
Martin Kustermann26171812015-12-21 15:06:06 +01001944 checkComment(od);
1945 });
1946 });
1947
Kevin Moored0251702021-01-15 06:41:08 -08001948 unittest.group('obj-schema-CommentList', () {
1949 unittest.test('to-json--from-json', () {
Martin Kustermann26171812015-12-21 15:06:06 +01001950 var o = buildCommentList();
Kevin Moore6d21e902021-01-15 06:41:08 -08001951 var od = api.CommentList.fromJson(o.toJson());
Martin Kustermann26171812015-12-21 15:06:06 +01001952 checkCommentList(od);
1953 });
1954 });
1955
Kevin Moored0251702021-01-15 06:41:08 -08001956 unittest.group('obj-schema-ContentRestriction', () {
1957 unittest.test('to-json--from-json', () {
Jonas Finnemann Jensenef0c8a32020-10-07 20:58:20 +02001958 var o = buildContentRestriction();
Kevin Moore6d21e902021-01-15 06:41:08 -08001959 var od = api.ContentRestriction.fromJson(o.toJson());
Jonas Finnemann Jensenef0c8a32020-10-07 20:58:20 +02001960 checkContentRestriction(od);
1961 });
1962 });
1963
Kevin Moored0251702021-01-15 06:41:08 -08001964 unittest.group('obj-schema-DriveBackgroundImageFile', () {
1965 unittest.test('to-json--from-json', () {
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02001966 var o = buildDriveBackgroundImageFile();
Kevin Moore6d21e902021-01-15 06:41:08 -08001967 var od = api.DriveBackgroundImageFile.fromJson(o.toJson());
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02001968 checkDriveBackgroundImageFile(od);
1969 });
1970 });
1971
Kevin Moored0251702021-01-15 06:41:08 -08001972 unittest.group('obj-schema-DriveCapabilities', () {
1973 unittest.test('to-json--from-json', () {
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02001974 var o = buildDriveCapabilities();
Kevin Moore6d21e902021-01-15 06:41:08 -08001975 var od = api.DriveCapabilities.fromJson(o.toJson());
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02001976 checkDriveCapabilities(od);
1977 });
1978 });
1979
Kevin Moored0251702021-01-15 06:41:08 -08001980 unittest.group('obj-schema-DriveRestrictions', () {
1981 unittest.test('to-json--from-json', () {
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02001982 var o = buildDriveRestrictions();
Kevin Moore6d21e902021-01-15 06:41:08 -08001983 var od = api.DriveRestrictions.fromJson(o.toJson());
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02001984 checkDriveRestrictions(od);
1985 });
1986 });
1987
Kevin Moored0251702021-01-15 06:41:08 -08001988 unittest.group('obj-schema-Drive', () {
1989 unittest.test('to-json--from-json', () {
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02001990 var o = buildDrive();
Kevin Moore6d21e902021-01-15 06:41:08 -08001991 var od = api.Drive.fromJson(o.toJson());
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02001992 checkDrive(od);
1993 });
1994 });
1995
Kevin Moored0251702021-01-15 06:41:08 -08001996 unittest.group('obj-schema-DriveList', () {
1997 unittest.test('to-json--from-json', () {
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02001998 var o = buildDriveList();
Kevin Moore6d21e902021-01-15 06:41:08 -08001999 var od = api.DriveList.fromJson(o.toJson());
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02002000 checkDriveList(od);
2001 });
2002 });
2003
Kevin Moored0251702021-01-15 06:41:08 -08002004 unittest.group('obj-schema-FileCapabilities', () {
2005 unittest.test('to-json--from-json', () {
Martin Kustermann26171812015-12-21 15:06:06 +01002006 var o = buildFileCapabilities();
Kevin Moore6d21e902021-01-15 06:41:08 -08002007 var od = api.FileCapabilities.fromJson(o.toJson());
Martin Kustermann26171812015-12-21 15:06:06 +01002008 checkFileCapabilities(od);
2009 });
2010 });
2011
Kevin Moored0251702021-01-15 06:41:08 -08002012 unittest.group('obj-schema-FileContentHintsThumbnail', () {
2013 unittest.test('to-json--from-json', () {
Martin Kustermann26171812015-12-21 15:06:06 +01002014 var o = buildFileContentHintsThumbnail();
Kevin Moore6d21e902021-01-15 06:41:08 -08002015 var od = api.FileContentHintsThumbnail.fromJson(o.toJson());
Martin Kustermann26171812015-12-21 15:06:06 +01002016 checkFileContentHintsThumbnail(od);
2017 });
2018 });
2019
Kevin Moored0251702021-01-15 06:41:08 -08002020 unittest.group('obj-schema-FileContentHints', () {
2021 unittest.test('to-json--from-json', () {
Martin Kustermann26171812015-12-21 15:06:06 +01002022 var o = buildFileContentHints();
Kevin Moore6d21e902021-01-15 06:41:08 -08002023 var od = api.FileContentHints.fromJson(o.toJson());
Martin Kustermann26171812015-12-21 15:06:06 +01002024 checkFileContentHints(od);
2025 });
2026 });
2027
Kevin Moored0251702021-01-15 06:41:08 -08002028 unittest.group('obj-schema-FileImageMediaMetadataLocation', () {
2029 unittest.test('to-json--from-json', () {
Martin Kustermann26171812015-12-21 15:06:06 +01002030 var o = buildFileImageMediaMetadataLocation();
Kevin Moore6d21e902021-01-15 06:41:08 -08002031 var od = api.FileImageMediaMetadataLocation.fromJson(o.toJson());
Martin Kustermann26171812015-12-21 15:06:06 +01002032 checkFileImageMediaMetadataLocation(od);
2033 });
2034 });
2035
Kevin Moored0251702021-01-15 06:41:08 -08002036 unittest.group('obj-schema-FileImageMediaMetadata', () {
2037 unittest.test('to-json--from-json', () {
Martin Kustermann26171812015-12-21 15:06:06 +01002038 var o = buildFileImageMediaMetadata();
Kevin Moore6d21e902021-01-15 06:41:08 -08002039 var od = api.FileImageMediaMetadata.fromJson(o.toJson());
Martin Kustermann26171812015-12-21 15:06:06 +01002040 checkFileImageMediaMetadata(od);
2041 });
2042 });
2043
Kevin Moored0251702021-01-15 06:41:08 -08002044 unittest.group('obj-schema-FileShortcutDetails', () {
2045 unittest.test('to-json--from-json', () {
Jonas Finnemann Jensen94d5b4d2020-05-07 12:00:14 +02002046 var o = buildFileShortcutDetails();
Kevin Moore6d21e902021-01-15 06:41:08 -08002047 var od = api.FileShortcutDetails.fromJson(o.toJson());
Jonas Finnemann Jensen94d5b4d2020-05-07 12:00:14 +02002048 checkFileShortcutDetails(od);
2049 });
2050 });
2051
Kevin Moored0251702021-01-15 06:41:08 -08002052 unittest.group('obj-schema-FileVideoMediaMetadata', () {
2053 unittest.test('to-json--from-json', () {
Martin Kustermann26171812015-12-21 15:06:06 +01002054 var o = buildFileVideoMediaMetadata();
Kevin Moore6d21e902021-01-15 06:41:08 -08002055 var od = api.FileVideoMediaMetadata.fromJson(o.toJson());
Martin Kustermann26171812015-12-21 15:06:06 +01002056 checkFileVideoMediaMetadata(od);
2057 });
2058 });
2059
Kevin Moored0251702021-01-15 06:41:08 -08002060 unittest.group('obj-schema-File', () {
2061 unittest.test('to-json--from-json', () {
Martin Kustermann26171812015-12-21 15:06:06 +01002062 var o = buildFile();
Kevin Moore6d21e902021-01-15 06:41:08 -08002063 var od = api.File.fromJson(o.toJson());
Martin Kustermann26171812015-12-21 15:06:06 +01002064 checkFile(od);
2065 });
2066 });
2067
Kevin Moored0251702021-01-15 06:41:08 -08002068 unittest.group('obj-schema-FileList', () {
2069 unittest.test('to-json--from-json', () {
Martin Kustermann26171812015-12-21 15:06:06 +01002070 var o = buildFileList();
Kevin Moore6d21e902021-01-15 06:41:08 -08002071 var od = api.FileList.fromJson(o.toJson());
Martin Kustermann26171812015-12-21 15:06:06 +01002072 checkFileList(od);
2073 });
2074 });
2075
Kevin Moored0251702021-01-15 06:41:08 -08002076 unittest.group('obj-schema-GeneratedIds', () {
2077 unittest.test('to-json--from-json', () {
Martin Kustermann26171812015-12-21 15:06:06 +01002078 var o = buildGeneratedIds();
Kevin Moore6d21e902021-01-15 06:41:08 -08002079 var od = api.GeneratedIds.fromJson(o.toJson());
Martin Kustermann26171812015-12-21 15:06:06 +01002080 checkGeneratedIds(od);
2081 });
2082 });
2083
Kevin Moored0251702021-01-15 06:41:08 -08002084 unittest.group('obj-schema-PermissionPermissionDetails', () {
2085 unittest.test('to-json--from-json', () {
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02002086 var o = buildPermissionPermissionDetails();
Kevin Moore6d21e902021-01-15 06:41:08 -08002087 var od = api.PermissionPermissionDetails.fromJson(o.toJson());
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02002088 checkPermissionPermissionDetails(od);
2089 });
2090 });
2091
Kevin Moored0251702021-01-15 06:41:08 -08002092 unittest.group('obj-schema-PermissionTeamDrivePermissionDetails', () {
2093 unittest.test('to-json--from-json', () {
Martin Kustermann77f42ff2017-03-06 13:56:35 +01002094 var o = buildPermissionTeamDrivePermissionDetails();
Kevin Moore6d21e902021-01-15 06:41:08 -08002095 var od = api.PermissionTeamDrivePermissionDetails.fromJson(o.toJson());
Martin Kustermann77f42ff2017-03-06 13:56:35 +01002096 checkPermissionTeamDrivePermissionDetails(od);
2097 });
2098 });
2099
Kevin Moored0251702021-01-15 06:41:08 -08002100 unittest.group('obj-schema-Permission', () {
2101 unittest.test('to-json--from-json', () {
Martin Kustermann26171812015-12-21 15:06:06 +01002102 var o = buildPermission();
Kevin Moore6d21e902021-01-15 06:41:08 -08002103 var od = api.Permission.fromJson(o.toJson());
Martin Kustermann26171812015-12-21 15:06:06 +01002104 checkPermission(od);
2105 });
2106 });
2107
Kevin Moored0251702021-01-15 06:41:08 -08002108 unittest.group('obj-schema-PermissionList', () {
2109 unittest.test('to-json--from-json', () {
Martin Kustermann26171812015-12-21 15:06:06 +01002110 var o = buildPermissionList();
Kevin Moore6d21e902021-01-15 06:41:08 -08002111 var od = api.PermissionList.fromJson(o.toJson());
Martin Kustermann26171812015-12-21 15:06:06 +01002112 checkPermissionList(od);
2113 });
2114 });
2115
Kevin Moored0251702021-01-15 06:41:08 -08002116 unittest.group('obj-schema-Reply', () {
2117 unittest.test('to-json--from-json', () {
Martin Kustermann26171812015-12-21 15:06:06 +01002118 var o = buildReply();
Kevin Moore6d21e902021-01-15 06:41:08 -08002119 var od = api.Reply.fromJson(o.toJson());
Martin Kustermann26171812015-12-21 15:06:06 +01002120 checkReply(od);
2121 });
2122 });
2123
Kevin Moored0251702021-01-15 06:41:08 -08002124 unittest.group('obj-schema-ReplyList', () {
2125 unittest.test('to-json--from-json', () {
Martin Kustermann26171812015-12-21 15:06:06 +01002126 var o = buildReplyList();
Kevin Moore6d21e902021-01-15 06:41:08 -08002127 var od = api.ReplyList.fromJson(o.toJson());
Martin Kustermann26171812015-12-21 15:06:06 +01002128 checkReplyList(od);
2129 });
2130 });
2131
Kevin Moored0251702021-01-15 06:41:08 -08002132 unittest.group('obj-schema-Revision', () {
2133 unittest.test('to-json--from-json', () {
Martin Kustermann26171812015-12-21 15:06:06 +01002134 var o = buildRevision();
Kevin Moore6d21e902021-01-15 06:41:08 -08002135 var od = api.Revision.fromJson(o.toJson());
Martin Kustermann26171812015-12-21 15:06:06 +01002136 checkRevision(od);
2137 });
2138 });
2139
Kevin Moored0251702021-01-15 06:41:08 -08002140 unittest.group('obj-schema-RevisionList', () {
2141 unittest.test('to-json--from-json', () {
Martin Kustermann26171812015-12-21 15:06:06 +01002142 var o = buildRevisionList();
Kevin Moore6d21e902021-01-15 06:41:08 -08002143 var od = api.RevisionList.fromJson(o.toJson());
Martin Kustermann26171812015-12-21 15:06:06 +01002144 checkRevisionList(od);
2145 });
2146 });
2147
Kevin Moored0251702021-01-15 06:41:08 -08002148 unittest.group('obj-schema-StartPageToken', () {
2149 unittest.test('to-json--from-json', () {
Martin Kustermann26171812015-12-21 15:06:06 +01002150 var o = buildStartPageToken();
Kevin Moore6d21e902021-01-15 06:41:08 -08002151 var od = api.StartPageToken.fromJson(o.toJson());
Martin Kustermann26171812015-12-21 15:06:06 +01002152 checkStartPageToken(od);
2153 });
2154 });
2155
Kevin Moored0251702021-01-15 06:41:08 -08002156 unittest.group('obj-schema-TeamDriveBackgroundImageFile', () {
2157 unittest.test('to-json--from-json', () {
Martin Kustermannc95693d2017-04-18 12:30:00 +02002158 var o = buildTeamDriveBackgroundImageFile();
Kevin Moore6d21e902021-01-15 06:41:08 -08002159 var od = api.TeamDriveBackgroundImageFile.fromJson(o.toJson());
Martin Kustermannc95693d2017-04-18 12:30:00 +02002160 checkTeamDriveBackgroundImageFile(od);
2161 });
2162 });
2163
Kevin Moored0251702021-01-15 06:41:08 -08002164 unittest.group('obj-schema-TeamDriveCapabilities', () {
2165 unittest.test('to-json--from-json', () {
Martin Kustermann77f42ff2017-03-06 13:56:35 +01002166 var o = buildTeamDriveCapabilities();
Kevin Moore6d21e902021-01-15 06:41:08 -08002167 var od = api.TeamDriveCapabilities.fromJson(o.toJson());
Martin Kustermann77f42ff2017-03-06 13:56:35 +01002168 checkTeamDriveCapabilities(od);
2169 });
2170 });
2171
Kevin Moored0251702021-01-15 06:41:08 -08002172 unittest.group('obj-schema-TeamDriveRestrictions', () {
2173 unittest.test('to-json--from-json', () {
Martin Kustermann12cdd522018-08-27 10:46:50 +02002174 var o = buildTeamDriveRestrictions();
Kevin Moore6d21e902021-01-15 06:41:08 -08002175 var od = api.TeamDriveRestrictions.fromJson(o.toJson());
Martin Kustermann12cdd522018-08-27 10:46:50 +02002176 checkTeamDriveRestrictions(od);
2177 });
2178 });
2179
Kevin Moored0251702021-01-15 06:41:08 -08002180 unittest.group('obj-schema-TeamDrive', () {
2181 unittest.test('to-json--from-json', () {
Martin Kustermann77f42ff2017-03-06 13:56:35 +01002182 var o = buildTeamDrive();
Kevin Moore6d21e902021-01-15 06:41:08 -08002183 var od = api.TeamDrive.fromJson(o.toJson());
Martin Kustermann77f42ff2017-03-06 13:56:35 +01002184 checkTeamDrive(od);
2185 });
2186 });
2187
Kevin Moored0251702021-01-15 06:41:08 -08002188 unittest.group('obj-schema-TeamDriveList', () {
2189 unittest.test('to-json--from-json', () {
Martin Kustermann77f42ff2017-03-06 13:56:35 +01002190 var o = buildTeamDriveList();
Kevin Moore6d21e902021-01-15 06:41:08 -08002191 var od = api.TeamDriveList.fromJson(o.toJson());
Martin Kustermann77f42ff2017-03-06 13:56:35 +01002192 checkTeamDriveList(od);
2193 });
2194 });
2195
Kevin Moored0251702021-01-15 06:41:08 -08002196 unittest.group('obj-schema-User', () {
2197 unittest.test('to-json--from-json', () {
Martin Kustermann26171812015-12-21 15:06:06 +01002198 var o = buildUser();
Kevin Moore6d21e902021-01-15 06:41:08 -08002199 var od = api.User.fromJson(o.toJson());
Martin Kustermann26171812015-12-21 15:06:06 +01002200 checkUser(od);
2201 });
2202 });
2203
Kevin Moored0251702021-01-15 06:41:08 -08002204 unittest.group('resource-AboutResourceApi', () {
2205 unittest.test('method--get', () {
Kevin Moore6d21e902021-01-15 06:41:08 -08002206 var mock = HttpServerMock();
2207 api.AboutResourceApi res = api.DriveApi(mock).about;
Kevin Moored0251702021-01-15 06:41:08 -08002208 var arg_$fields = 'foo';
Martin Kustermann3953f0d2017-06-12 16:59:53 +02002209 mock.register(unittest.expectAsync2((http.BaseRequest req, json) {
Martin Kustermann26171812015-12-21 15:06:06 +01002210 var path = (req.url).path;
2211 var pathOffset = 0;
Kevin Moore6d21e902021-01-15 06:41:08 -08002212 core.int index;
2213 core.String subPart;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02002214 unittest.expect(
2215 path.substring(pathOffset, pathOffset + 1), unittest.equals("/"));
Martin Kustermann26171812015-12-21 15:06:06 +01002216 pathOffset += 1;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02002217 unittest.expect(path.substring(pathOffset, pathOffset + 9),
2218 unittest.equals("drive/v3/"));
Martin Kustermann26171812015-12-21 15:06:06 +01002219 pathOffset += 9;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02002220 unittest.expect(path.substring(pathOffset, pathOffset + 5),
2221 unittest.equals("about"));
Martin Kustermann26171812015-12-21 15:06:06 +01002222 pathOffset += 5;
2223
2224 var query = (req.url).query;
2225 var queryOffset = 0;
Jakob Andersen52715df2018-05-01 13:58:48 +02002226 var queryMap = <core.String, core.List<core.String>>{};
Kevin Moore6d21e902021-01-15 06:41:08 -08002227 void addQueryParam(n, v) => queryMap.putIfAbsent(n, () => []).add(v);
Martin Kustermann5eb85c12017-09-11 12:35:54 +02002228
Kevin Moore6d21e902021-01-15 06:41:08 -08002229 if (query.isNotEmpty) {
Kevin Moored0251702021-01-15 06:41:08 -08002230 for (var part in query.split('&')) {
2231 var keyValue = part.split('=');
Kevin Moore6d21e902021-01-15 06:41:08 -08002232 addQueryParam(
2233 core.Uri.decodeQueryComponent(keyValue[0]),
2234 core.Uri.decodeQueryComponent(keyValue[1]),
2235 );
Martin Kustermann26171812015-12-21 15:06:06 +01002236 }
2237 }
Martin Kustermann7a3b5f52017-10-23 11:34:19 +02002238 unittest.expect(queryMap["fields"].first, unittest.equals(arg_$fields));
Martin Kustermann26171812015-12-21 15:06:06 +01002239
Martin Kustermann26171812015-12-21 15:06:06 +01002240 var h = {
Kevin Moored0251702021-01-15 06:41:08 -08002241 'content-type': 'application/json; charset=utf-8',
Martin Kustermann26171812015-12-21 15:06:06 +01002242 };
Jakob Andersen52715df2018-05-01 13:58:48 +02002243 var resp = convert.json.encode(buildAbout());
Kevin Moore6d21e902021-01-15 06:41:08 -08002244 return async.Future.value(stringResponse(200, h, resp));
Martin Kustermann26171812015-12-21 15:06:06 +01002245 }), true);
Jakob Andersen4ce761d2018-04-19 11:19:11 +02002246 res.get($fields: arg_$fields).then(unittest.expectAsync1(((response) {
Martin Kustermann26171812015-12-21 15:06:06 +01002247 checkAbout(response);
2248 })));
2249 });
Martin Kustermann26171812015-12-21 15:06:06 +01002250 });
2251
Kevin Moored0251702021-01-15 06:41:08 -08002252 unittest.group('resource-ChangesResourceApi', () {
2253 unittest.test('method--getStartPageToken', () {
Kevin Moore6d21e902021-01-15 06:41:08 -08002254 var mock = HttpServerMock();
2255 api.ChangesResourceApi res = api.DriveApi(mock).changes;
Kevin Moored0251702021-01-15 06:41:08 -08002256 var arg_driveId = 'foo';
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02002257 var arg_supportsAllDrives = true;
Martin Kustermann77f42ff2017-03-06 13:56:35 +01002258 var arg_supportsTeamDrives = true;
Kevin Moored0251702021-01-15 06:41:08 -08002259 var arg_teamDriveId = 'foo';
2260 var arg_$fields = 'foo';
Martin Kustermann3953f0d2017-06-12 16:59:53 +02002261 mock.register(unittest.expectAsync2((http.BaseRequest req, json) {
Martin Kustermann26171812015-12-21 15:06:06 +01002262 var path = (req.url).path;
2263 var pathOffset = 0;
Kevin Moore6d21e902021-01-15 06:41:08 -08002264 core.int index;
2265 core.String subPart;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02002266 unittest.expect(
2267 path.substring(pathOffset, pathOffset + 1), unittest.equals("/"));
Martin Kustermann26171812015-12-21 15:06:06 +01002268 pathOffset += 1;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02002269 unittest.expect(path.substring(pathOffset, pathOffset + 9),
2270 unittest.equals("drive/v3/"));
Martin Kustermann26171812015-12-21 15:06:06 +01002271 pathOffset += 9;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02002272 unittest.expect(path.substring(pathOffset, pathOffset + 22),
2273 unittest.equals("changes/startPageToken"));
Martin Kustermann26171812015-12-21 15:06:06 +01002274 pathOffset += 22;
2275
2276 var query = (req.url).query;
2277 var queryOffset = 0;
Jakob Andersen52715df2018-05-01 13:58:48 +02002278 var queryMap = <core.String, core.List<core.String>>{};
Kevin Moore6d21e902021-01-15 06:41:08 -08002279 void addQueryParam(n, v) => queryMap.putIfAbsent(n, () => []).add(v);
Martin Kustermann5eb85c12017-09-11 12:35:54 +02002280
Kevin Moore6d21e902021-01-15 06:41:08 -08002281 if (query.isNotEmpty) {
Kevin Moored0251702021-01-15 06:41:08 -08002282 for (var part in query.split('&')) {
2283 var keyValue = part.split('=');
Kevin Moore6d21e902021-01-15 06:41:08 -08002284 addQueryParam(
2285 core.Uri.decodeQueryComponent(keyValue[0]),
2286 core.Uri.decodeQueryComponent(keyValue[1]),
2287 );
Martin Kustermann26171812015-12-21 15:06:06 +01002288 }
2289 }
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02002290 unittest.expect(
2291 queryMap["driveId"].first, unittest.equals(arg_driveId));
2292 unittest.expect(queryMap["supportsAllDrives"].first,
2293 unittest.equals("$arg_supportsAllDrives"));
Martin Kustermann5eb85c12017-09-11 12:35:54 +02002294 unittest.expect(queryMap["supportsTeamDrives"].first,
2295 unittest.equals("$arg_supportsTeamDrives"));
2296 unittest.expect(
2297 queryMap["teamDriveId"].first, unittest.equals(arg_teamDriveId));
Martin Kustermann7a3b5f52017-10-23 11:34:19 +02002298 unittest.expect(queryMap["fields"].first, unittest.equals(arg_$fields));
Martin Kustermann26171812015-12-21 15:06:06 +01002299
2300 var h = {
Kevin Moored0251702021-01-15 06:41:08 -08002301 'content-type': 'application/json; charset=utf-8',
Martin Kustermann26171812015-12-21 15:06:06 +01002302 };
Jakob Andersen52715df2018-05-01 13:58:48 +02002303 var resp = convert.json.encode(buildStartPageToken());
Kevin Moore6d21e902021-01-15 06:41:08 -08002304 return async.Future.value(stringResponse(200, h, resp));
Martin Kustermann26171812015-12-21 15:06:06 +01002305 }), true);
Martin Kustermann5eb85c12017-09-11 12:35:54 +02002306 res
2307 .getStartPageToken(
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02002308 driveId: arg_driveId,
2309 supportsAllDrives: arg_supportsAllDrives,
Martin Kustermann5eb85c12017-09-11 12:35:54 +02002310 supportsTeamDrives: arg_supportsTeamDrives,
Martin Kustermann7a3b5f52017-10-23 11:34:19 +02002311 teamDriveId: arg_teamDriveId,
2312 $fields: arg_$fields)
Jakob Andersen4ce761d2018-04-19 11:19:11 +02002313 .then(unittest.expectAsync1(((response) {
Martin Kustermann26171812015-12-21 15:06:06 +01002314 checkStartPageToken(response);
2315 })));
2316 });
2317
Kevin Moored0251702021-01-15 06:41:08 -08002318 unittest.test('method--list', () {
Kevin Moore6d21e902021-01-15 06:41:08 -08002319 var mock = HttpServerMock();
2320 api.ChangesResourceApi res = api.DriveApi(mock).changes;
Kevin Moored0251702021-01-15 06:41:08 -08002321 var arg_pageToken = 'foo';
2322 var arg_driveId = 'foo';
Martin Kustermann77f42ff2017-03-06 13:56:35 +01002323 var arg_includeCorpusRemovals = true;
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02002324 var arg_includeItemsFromAllDrives = true;
Kevin Moored0251702021-01-15 06:41:08 -08002325 var arg_includePermissionsForView = 'foo';
Martin Kustermann26171812015-12-21 15:06:06 +01002326 var arg_includeRemoved = true;
Martin Kustermann77f42ff2017-03-06 13:56:35 +01002327 var arg_includeTeamDriveItems = true;
Martin Kustermann26171812015-12-21 15:06:06 +01002328 var arg_pageSize = 42;
2329 var arg_restrictToMyDrive = true;
Kevin Moored0251702021-01-15 06:41:08 -08002330 var arg_spaces = 'foo';
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02002331 var arg_supportsAllDrives = true;
Martin Kustermann77f42ff2017-03-06 13:56:35 +01002332 var arg_supportsTeamDrives = true;
Kevin Moored0251702021-01-15 06:41:08 -08002333 var arg_teamDriveId = 'foo';
2334 var arg_$fields = 'foo';
Martin Kustermann3953f0d2017-06-12 16:59:53 +02002335 mock.register(unittest.expectAsync2((http.BaseRequest req, json) {
Martin Kustermann26171812015-12-21 15:06:06 +01002336 var path = (req.url).path;
2337 var pathOffset = 0;
Kevin Moore6d21e902021-01-15 06:41:08 -08002338 core.int index;
2339 core.String subPart;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02002340 unittest.expect(
2341 path.substring(pathOffset, pathOffset + 1), unittest.equals("/"));
Martin Kustermann26171812015-12-21 15:06:06 +01002342 pathOffset += 1;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02002343 unittest.expect(path.substring(pathOffset, pathOffset + 9),
2344 unittest.equals("drive/v3/"));
Martin Kustermann26171812015-12-21 15:06:06 +01002345 pathOffset += 9;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02002346 unittest.expect(path.substring(pathOffset, pathOffset + 7),
2347 unittest.equals("changes"));
Martin Kustermann26171812015-12-21 15:06:06 +01002348 pathOffset += 7;
2349
2350 var query = (req.url).query;
2351 var queryOffset = 0;
Jakob Andersen52715df2018-05-01 13:58:48 +02002352 var queryMap = <core.String, core.List<core.String>>{};
Kevin Moore6d21e902021-01-15 06:41:08 -08002353 void addQueryParam(n, v) => queryMap.putIfAbsent(n, () => []).add(v);
Martin Kustermann5eb85c12017-09-11 12:35:54 +02002354
Kevin Moore6d21e902021-01-15 06:41:08 -08002355 if (query.isNotEmpty) {
Kevin Moored0251702021-01-15 06:41:08 -08002356 for (var part in query.split('&')) {
2357 var keyValue = part.split('=');
Kevin Moore6d21e902021-01-15 06:41:08 -08002358 addQueryParam(
2359 core.Uri.decodeQueryComponent(keyValue[0]),
2360 core.Uri.decodeQueryComponent(keyValue[1]),
2361 );
Martin Kustermann26171812015-12-21 15:06:06 +01002362 }
2363 }
Martin Kustermann5eb85c12017-09-11 12:35:54 +02002364 unittest.expect(
2365 queryMap["pageToken"].first, unittest.equals(arg_pageToken));
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02002366 unittest.expect(
2367 queryMap["driveId"].first, unittest.equals(arg_driveId));
Martin Kustermann5eb85c12017-09-11 12:35:54 +02002368 unittest.expect(queryMap["includeCorpusRemovals"].first,
2369 unittest.equals("$arg_includeCorpusRemovals"));
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02002370 unittest.expect(queryMap["includeItemsFromAllDrives"].first,
2371 unittest.equals("$arg_includeItemsFromAllDrives"));
Jonas Finnemann Jensenef0c8a32020-10-07 20:58:20 +02002372 unittest.expect(queryMap["includePermissionsForView"].first,
2373 unittest.equals(arg_includePermissionsForView));
Martin Kustermann5eb85c12017-09-11 12:35:54 +02002374 unittest.expect(queryMap["includeRemoved"].first,
2375 unittest.equals("$arg_includeRemoved"));
2376 unittest.expect(queryMap["includeTeamDriveItems"].first,
2377 unittest.equals("$arg_includeTeamDriveItems"));
2378 unittest.expect(core.int.parse(queryMap["pageSize"].first),
2379 unittest.equals(arg_pageSize));
2380 unittest.expect(queryMap["restrictToMyDrive"].first,
2381 unittest.equals("$arg_restrictToMyDrive"));
Martin Kustermann26171812015-12-21 15:06:06 +01002382 unittest.expect(queryMap["spaces"].first, unittest.equals(arg_spaces));
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02002383 unittest.expect(queryMap["supportsAllDrives"].first,
2384 unittest.equals("$arg_supportsAllDrives"));
Martin Kustermann5eb85c12017-09-11 12:35:54 +02002385 unittest.expect(queryMap["supportsTeamDrives"].first,
2386 unittest.equals("$arg_supportsTeamDrives"));
2387 unittest.expect(
2388 queryMap["teamDriveId"].first, unittest.equals(arg_teamDriveId));
Martin Kustermann7a3b5f52017-10-23 11:34:19 +02002389 unittest.expect(queryMap["fields"].first, unittest.equals(arg_$fields));
Martin Kustermann26171812015-12-21 15:06:06 +01002390
2391 var h = {
Kevin Moored0251702021-01-15 06:41:08 -08002392 'content-type': 'application/json; charset=utf-8',
Martin Kustermann26171812015-12-21 15:06:06 +01002393 };
Jakob Andersen52715df2018-05-01 13:58:48 +02002394 var resp = convert.json.encode(buildChangeList());
Kevin Moore6d21e902021-01-15 06:41:08 -08002395 return async.Future.value(stringResponse(200, h, resp));
Martin Kustermann26171812015-12-21 15:06:06 +01002396 }), true);
Martin Kustermann5eb85c12017-09-11 12:35:54 +02002397 res
2398 .list(arg_pageToken,
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02002399 driveId: arg_driveId,
Martin Kustermann5eb85c12017-09-11 12:35:54 +02002400 includeCorpusRemovals: arg_includeCorpusRemovals,
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02002401 includeItemsFromAllDrives: arg_includeItemsFromAllDrives,
Jonas Finnemann Jensenef0c8a32020-10-07 20:58:20 +02002402 includePermissionsForView: arg_includePermissionsForView,
Martin Kustermann5eb85c12017-09-11 12:35:54 +02002403 includeRemoved: arg_includeRemoved,
2404 includeTeamDriveItems: arg_includeTeamDriveItems,
2405 pageSize: arg_pageSize,
2406 restrictToMyDrive: arg_restrictToMyDrive,
2407 spaces: arg_spaces,
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02002408 supportsAllDrives: arg_supportsAllDrives,
Martin Kustermann5eb85c12017-09-11 12:35:54 +02002409 supportsTeamDrives: arg_supportsTeamDrives,
Martin Kustermann7a3b5f52017-10-23 11:34:19 +02002410 teamDriveId: arg_teamDriveId,
2411 $fields: arg_$fields)
Jakob Andersen4ce761d2018-04-19 11:19:11 +02002412 .then(unittest.expectAsync1(((response) {
Martin Kustermann26171812015-12-21 15:06:06 +01002413 checkChangeList(response);
2414 })));
2415 });
2416
Kevin Moored0251702021-01-15 06:41:08 -08002417 unittest.test('method--watch', () {
Kevin Moore6d21e902021-01-15 06:41:08 -08002418 var mock = HttpServerMock();
2419 api.ChangesResourceApi res = api.DriveApi(mock).changes;
Martin Kustermann26171812015-12-21 15:06:06 +01002420 var arg_request = buildChannel();
Kevin Moored0251702021-01-15 06:41:08 -08002421 var arg_pageToken = 'foo';
2422 var arg_driveId = 'foo';
Martin Kustermann77f42ff2017-03-06 13:56:35 +01002423 var arg_includeCorpusRemovals = true;
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02002424 var arg_includeItemsFromAllDrives = true;
Kevin Moored0251702021-01-15 06:41:08 -08002425 var arg_includePermissionsForView = 'foo';
Martin Kustermann26171812015-12-21 15:06:06 +01002426 var arg_includeRemoved = true;
Martin Kustermann77f42ff2017-03-06 13:56:35 +01002427 var arg_includeTeamDriveItems = true;
Martin Kustermann26171812015-12-21 15:06:06 +01002428 var arg_pageSize = 42;
2429 var arg_restrictToMyDrive = true;
Kevin Moored0251702021-01-15 06:41:08 -08002430 var arg_spaces = 'foo';
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02002431 var arg_supportsAllDrives = true;
Martin Kustermann77f42ff2017-03-06 13:56:35 +01002432 var arg_supportsTeamDrives = true;
Kevin Moored0251702021-01-15 06:41:08 -08002433 var arg_teamDriveId = 'foo';
2434 var arg_$fields = 'foo';
Martin Kustermann3953f0d2017-06-12 16:59:53 +02002435 mock.register(unittest.expectAsync2((http.BaseRequest req, json) {
Kevin Moore6d21e902021-01-15 06:41:08 -08002436 var obj = api.Channel.fromJson(json);
Martin Kustermann26171812015-12-21 15:06:06 +01002437 checkChannel(obj);
2438
2439 var path = (req.url).path;
2440 var pathOffset = 0;
Kevin Moore6d21e902021-01-15 06:41:08 -08002441 core.int index;
2442 core.String subPart;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02002443 unittest.expect(
2444 path.substring(pathOffset, pathOffset + 1), unittest.equals("/"));
Martin Kustermann26171812015-12-21 15:06:06 +01002445 pathOffset += 1;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02002446 unittest.expect(path.substring(pathOffset, pathOffset + 9),
2447 unittest.equals("drive/v3/"));
Martin Kustermann26171812015-12-21 15:06:06 +01002448 pathOffset += 9;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02002449 unittest.expect(path.substring(pathOffset, pathOffset + 13),
2450 unittest.equals("changes/watch"));
Martin Kustermann26171812015-12-21 15:06:06 +01002451 pathOffset += 13;
2452
2453 var query = (req.url).query;
2454 var queryOffset = 0;
Jakob Andersen52715df2018-05-01 13:58:48 +02002455 var queryMap = <core.String, core.List<core.String>>{};
Kevin Moore6d21e902021-01-15 06:41:08 -08002456 void addQueryParam(n, v) => queryMap.putIfAbsent(n, () => []).add(v);
Martin Kustermann5eb85c12017-09-11 12:35:54 +02002457
Kevin Moore6d21e902021-01-15 06:41:08 -08002458 if (query.isNotEmpty) {
Kevin Moored0251702021-01-15 06:41:08 -08002459 for (var part in query.split('&')) {
2460 var keyValue = part.split('=');
Kevin Moore6d21e902021-01-15 06:41:08 -08002461 addQueryParam(
2462 core.Uri.decodeQueryComponent(keyValue[0]),
2463 core.Uri.decodeQueryComponent(keyValue[1]),
2464 );
Martin Kustermann26171812015-12-21 15:06:06 +01002465 }
2466 }
Martin Kustermann5eb85c12017-09-11 12:35:54 +02002467 unittest.expect(
2468 queryMap["pageToken"].first, unittest.equals(arg_pageToken));
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02002469 unittest.expect(
2470 queryMap["driveId"].first, unittest.equals(arg_driveId));
Martin Kustermann5eb85c12017-09-11 12:35:54 +02002471 unittest.expect(queryMap["includeCorpusRemovals"].first,
2472 unittest.equals("$arg_includeCorpusRemovals"));
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02002473 unittest.expect(queryMap["includeItemsFromAllDrives"].first,
2474 unittest.equals("$arg_includeItemsFromAllDrives"));
Jonas Finnemann Jensenef0c8a32020-10-07 20:58:20 +02002475 unittest.expect(queryMap["includePermissionsForView"].first,
2476 unittest.equals(arg_includePermissionsForView));
Martin Kustermann5eb85c12017-09-11 12:35:54 +02002477 unittest.expect(queryMap["includeRemoved"].first,
2478 unittest.equals("$arg_includeRemoved"));
2479 unittest.expect(queryMap["includeTeamDriveItems"].first,
2480 unittest.equals("$arg_includeTeamDriveItems"));
2481 unittest.expect(core.int.parse(queryMap["pageSize"].first),
2482 unittest.equals(arg_pageSize));
2483 unittest.expect(queryMap["restrictToMyDrive"].first,
2484 unittest.equals("$arg_restrictToMyDrive"));
Martin Kustermann26171812015-12-21 15:06:06 +01002485 unittest.expect(queryMap["spaces"].first, unittest.equals(arg_spaces));
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02002486 unittest.expect(queryMap["supportsAllDrives"].first,
2487 unittest.equals("$arg_supportsAllDrives"));
Martin Kustermann5eb85c12017-09-11 12:35:54 +02002488 unittest.expect(queryMap["supportsTeamDrives"].first,
2489 unittest.equals("$arg_supportsTeamDrives"));
2490 unittest.expect(
2491 queryMap["teamDriveId"].first, unittest.equals(arg_teamDriveId));
Martin Kustermann7a3b5f52017-10-23 11:34:19 +02002492 unittest.expect(queryMap["fields"].first, unittest.equals(arg_$fields));
Martin Kustermann26171812015-12-21 15:06:06 +01002493
2494 var h = {
Kevin Moored0251702021-01-15 06:41:08 -08002495 'content-type': 'application/json; charset=utf-8',
Martin Kustermann26171812015-12-21 15:06:06 +01002496 };
Jakob Andersen52715df2018-05-01 13:58:48 +02002497 var resp = convert.json.encode(buildChannel());
Kevin Moore6d21e902021-01-15 06:41:08 -08002498 return async.Future.value(stringResponse(200, h, resp));
Martin Kustermann26171812015-12-21 15:06:06 +01002499 }), true);
Martin Kustermann5eb85c12017-09-11 12:35:54 +02002500 res
2501 .watch(arg_request, arg_pageToken,
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02002502 driveId: arg_driveId,
Martin Kustermann5eb85c12017-09-11 12:35:54 +02002503 includeCorpusRemovals: arg_includeCorpusRemovals,
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02002504 includeItemsFromAllDrives: arg_includeItemsFromAllDrives,
Jonas Finnemann Jensenef0c8a32020-10-07 20:58:20 +02002505 includePermissionsForView: arg_includePermissionsForView,
Martin Kustermann5eb85c12017-09-11 12:35:54 +02002506 includeRemoved: arg_includeRemoved,
2507 includeTeamDriveItems: arg_includeTeamDriveItems,
2508 pageSize: arg_pageSize,
2509 restrictToMyDrive: arg_restrictToMyDrive,
2510 spaces: arg_spaces,
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02002511 supportsAllDrives: arg_supportsAllDrives,
Martin Kustermann5eb85c12017-09-11 12:35:54 +02002512 supportsTeamDrives: arg_supportsTeamDrives,
Martin Kustermann7a3b5f52017-10-23 11:34:19 +02002513 teamDriveId: arg_teamDriveId,
2514 $fields: arg_$fields)
Jakob Andersen4ce761d2018-04-19 11:19:11 +02002515 .then(unittest.expectAsync1(((response) {
Martin Kustermann26171812015-12-21 15:06:06 +01002516 checkChannel(response);
2517 })));
2518 });
Martin Kustermann26171812015-12-21 15:06:06 +01002519 });
2520
Kevin Moored0251702021-01-15 06:41:08 -08002521 unittest.group('resource-ChannelsResourceApi', () {
2522 unittest.test('method--stop', () {
Kevin Moore6d21e902021-01-15 06:41:08 -08002523 var mock = HttpServerMock();
2524 api.ChannelsResourceApi res = api.DriveApi(mock).channels;
Martin Kustermann26171812015-12-21 15:06:06 +01002525 var arg_request = buildChannel();
Kevin Moored0251702021-01-15 06:41:08 -08002526 var arg_$fields = 'foo';
Martin Kustermann3953f0d2017-06-12 16:59:53 +02002527 mock.register(unittest.expectAsync2((http.BaseRequest req, json) {
Kevin Moore6d21e902021-01-15 06:41:08 -08002528 var obj = api.Channel.fromJson(json);
Martin Kustermann26171812015-12-21 15:06:06 +01002529 checkChannel(obj);
2530
2531 var path = (req.url).path;
2532 var pathOffset = 0;
Kevin Moore6d21e902021-01-15 06:41:08 -08002533 core.int index;
2534 core.String subPart;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02002535 unittest.expect(
2536 path.substring(pathOffset, pathOffset + 1), unittest.equals("/"));
Martin Kustermann26171812015-12-21 15:06:06 +01002537 pathOffset += 1;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02002538 unittest.expect(path.substring(pathOffset, pathOffset + 9),
2539 unittest.equals("drive/v3/"));
Martin Kustermann26171812015-12-21 15:06:06 +01002540 pathOffset += 9;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02002541 unittest.expect(path.substring(pathOffset, pathOffset + 13),
2542 unittest.equals("channels/stop"));
Martin Kustermann26171812015-12-21 15:06:06 +01002543 pathOffset += 13;
2544
2545 var query = (req.url).query;
2546 var queryOffset = 0;
Jakob Andersen52715df2018-05-01 13:58:48 +02002547 var queryMap = <core.String, core.List<core.String>>{};
Kevin Moore6d21e902021-01-15 06:41:08 -08002548 void addQueryParam(n, v) => queryMap.putIfAbsent(n, () => []).add(v);
Martin Kustermann5eb85c12017-09-11 12:35:54 +02002549
Kevin Moore6d21e902021-01-15 06:41:08 -08002550 if (query.isNotEmpty) {
Kevin Moored0251702021-01-15 06:41:08 -08002551 for (var part in query.split('&')) {
2552 var keyValue = part.split('=');
Kevin Moore6d21e902021-01-15 06:41:08 -08002553 addQueryParam(
2554 core.Uri.decodeQueryComponent(keyValue[0]),
2555 core.Uri.decodeQueryComponent(keyValue[1]),
2556 );
Martin Kustermann26171812015-12-21 15:06:06 +01002557 }
2558 }
Martin Kustermann7a3b5f52017-10-23 11:34:19 +02002559 unittest.expect(queryMap["fields"].first, unittest.equals(arg_$fields));
Martin Kustermann26171812015-12-21 15:06:06 +01002560
Martin Kustermann26171812015-12-21 15:06:06 +01002561 var h = {
Kevin Moored0251702021-01-15 06:41:08 -08002562 'content-type': 'application/json; charset=utf-8',
Martin Kustermann26171812015-12-21 15:06:06 +01002563 };
Kevin Moored0251702021-01-15 06:41:08 -08002564 var resp = '';
Kevin Moore6d21e902021-01-15 06:41:08 -08002565 return async.Future.value(stringResponse(200, h, resp));
Martin Kustermann26171812015-12-21 15:06:06 +01002566 }), true);
Martin Kustermann7a3b5f52017-10-23 11:34:19 +02002567 res
2568 .stop(arg_request, $fields: arg_$fields)
2569 .then(unittest.expectAsync1((_) {}));
Martin Kustermann26171812015-12-21 15:06:06 +01002570 });
Martin Kustermann26171812015-12-21 15:06:06 +01002571 });
2572
Kevin Moored0251702021-01-15 06:41:08 -08002573 unittest.group('resource-CommentsResourceApi', () {
2574 unittest.test('method--create', () {
Kevin Moore6d21e902021-01-15 06:41:08 -08002575 var mock = HttpServerMock();
2576 api.CommentsResourceApi res = api.DriveApi(mock).comments;
Martin Kustermann26171812015-12-21 15:06:06 +01002577 var arg_request = buildComment();
Kevin Moored0251702021-01-15 06:41:08 -08002578 var arg_fileId = 'foo';
2579 var arg_$fields = 'foo';
Martin Kustermann3953f0d2017-06-12 16:59:53 +02002580 mock.register(unittest.expectAsync2((http.BaseRequest req, json) {
Kevin Moore6d21e902021-01-15 06:41:08 -08002581 var obj = api.Comment.fromJson(json);
Martin Kustermann26171812015-12-21 15:06:06 +01002582 checkComment(obj);
2583
2584 var path = (req.url).path;
2585 var pathOffset = 0;
Kevin Moore6d21e902021-01-15 06:41:08 -08002586 core.int index;
2587 core.String subPart;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02002588 unittest.expect(
2589 path.substring(pathOffset, pathOffset + 1), unittest.equals("/"));
Martin Kustermann26171812015-12-21 15:06:06 +01002590 pathOffset += 1;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02002591 unittest.expect(path.substring(pathOffset, pathOffset + 9),
2592 unittest.equals("drive/v3/"));
Martin Kustermann26171812015-12-21 15:06:06 +01002593 pathOffset += 9;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02002594 unittest.expect(path.substring(pathOffset, pathOffset + 6),
2595 unittest.equals("files/"));
Martin Kustermann26171812015-12-21 15:06:06 +01002596 pathOffset += 6;
Kevin Moored0251702021-01-15 06:41:08 -08002597 index = path.indexOf('/comments', pathOffset);
Martin Kustermann26171812015-12-21 15:06:06 +01002598 unittest.expect(index >= 0, unittest.isTrue);
Martin Kustermann5eb85c12017-09-11 12:35:54 +02002599 subPart =
2600 core.Uri.decodeQueryComponent(path.substring(pathOffset, index));
Martin Kustermann26171812015-12-21 15:06:06 +01002601 pathOffset = index;
Kevin Moored0251702021-01-15 06:41:08 -08002602 unittest.expect(subPart, unittest.equals('$arg_fileId'));
Martin Kustermann5eb85c12017-09-11 12:35:54 +02002603 unittest.expect(path.substring(pathOffset, pathOffset + 9),
2604 unittest.equals("/comments"));
Martin Kustermann26171812015-12-21 15:06:06 +01002605 pathOffset += 9;
2606
2607 var query = (req.url).query;
2608 var queryOffset = 0;
Jakob Andersen52715df2018-05-01 13:58:48 +02002609 var queryMap = <core.String, core.List<core.String>>{};
Kevin Moore6d21e902021-01-15 06:41:08 -08002610 void addQueryParam(n, v) => queryMap.putIfAbsent(n, () => []).add(v);
Martin Kustermann5eb85c12017-09-11 12:35:54 +02002611
Kevin Moore6d21e902021-01-15 06:41:08 -08002612 if (query.isNotEmpty) {
Kevin Moored0251702021-01-15 06:41:08 -08002613 for (var part in query.split('&')) {
2614 var keyValue = part.split('=');
Kevin Moore6d21e902021-01-15 06:41:08 -08002615 addQueryParam(
2616 core.Uri.decodeQueryComponent(keyValue[0]),
2617 core.Uri.decodeQueryComponent(keyValue[1]),
2618 );
Martin Kustermann26171812015-12-21 15:06:06 +01002619 }
2620 }
Martin Kustermann7a3b5f52017-10-23 11:34:19 +02002621 unittest.expect(queryMap["fields"].first, unittest.equals(arg_$fields));
Martin Kustermann26171812015-12-21 15:06:06 +01002622
Martin Kustermann26171812015-12-21 15:06:06 +01002623 var h = {
Kevin Moored0251702021-01-15 06:41:08 -08002624 'content-type': 'application/json; charset=utf-8',
Martin Kustermann26171812015-12-21 15:06:06 +01002625 };
Jakob Andersen52715df2018-05-01 13:58:48 +02002626 var resp = convert.json.encode(buildComment());
Kevin Moore6d21e902021-01-15 06:41:08 -08002627 return async.Future.value(stringResponse(200, h, resp));
Martin Kustermann26171812015-12-21 15:06:06 +01002628 }), true);
Martin Kustermann5eb85c12017-09-11 12:35:54 +02002629 res
Martin Kustermann7a3b5f52017-10-23 11:34:19 +02002630 .create(arg_request, arg_fileId, $fields: arg_$fields)
Jakob Andersen4ce761d2018-04-19 11:19:11 +02002631 .then(unittest.expectAsync1(((response) {
Martin Kustermann26171812015-12-21 15:06:06 +01002632 checkComment(response);
2633 })));
2634 });
2635
Kevin Moored0251702021-01-15 06:41:08 -08002636 unittest.test('method--delete', () {
Kevin Moore6d21e902021-01-15 06:41:08 -08002637 var mock = HttpServerMock();
2638 api.CommentsResourceApi res = api.DriveApi(mock).comments;
Kevin Moored0251702021-01-15 06:41:08 -08002639 var arg_fileId = 'foo';
2640 var arg_commentId = 'foo';
2641 var arg_$fields = 'foo';
Martin Kustermann3953f0d2017-06-12 16:59:53 +02002642 mock.register(unittest.expectAsync2((http.BaseRequest req, json) {
Martin Kustermann26171812015-12-21 15:06:06 +01002643 var path = (req.url).path;
2644 var pathOffset = 0;
Kevin Moore6d21e902021-01-15 06:41:08 -08002645 core.int index;
2646 core.String subPart;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02002647 unittest.expect(
2648 path.substring(pathOffset, pathOffset + 1), unittest.equals("/"));
Martin Kustermann26171812015-12-21 15:06:06 +01002649 pathOffset += 1;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02002650 unittest.expect(path.substring(pathOffset, pathOffset + 9),
2651 unittest.equals("drive/v3/"));
Martin Kustermann26171812015-12-21 15:06:06 +01002652 pathOffset += 9;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02002653 unittest.expect(path.substring(pathOffset, pathOffset + 6),
2654 unittest.equals("files/"));
Martin Kustermann26171812015-12-21 15:06:06 +01002655 pathOffset += 6;
Kevin Moored0251702021-01-15 06:41:08 -08002656 index = path.indexOf('/comments/', pathOffset);
Martin Kustermann26171812015-12-21 15:06:06 +01002657 unittest.expect(index >= 0, unittest.isTrue);
Martin Kustermann5eb85c12017-09-11 12:35:54 +02002658 subPart =
2659 core.Uri.decodeQueryComponent(path.substring(pathOffset, index));
Martin Kustermann26171812015-12-21 15:06:06 +01002660 pathOffset = index;
Kevin Moored0251702021-01-15 06:41:08 -08002661 unittest.expect(subPart, unittest.equals('$arg_fileId'));
Martin Kustermann5eb85c12017-09-11 12:35:54 +02002662 unittest.expect(path.substring(pathOffset, pathOffset + 10),
2663 unittest.equals("/comments/"));
Martin Kustermann26171812015-12-21 15:06:06 +01002664 pathOffset += 10;
2665 subPart = core.Uri.decodeQueryComponent(path.substring(pathOffset));
2666 pathOffset = path.length;
Kevin Moored0251702021-01-15 06:41:08 -08002667 unittest.expect(subPart, unittest.equals('$arg_commentId'));
Martin Kustermann26171812015-12-21 15:06:06 +01002668
2669 var query = (req.url).query;
2670 var queryOffset = 0;
Jakob Andersen52715df2018-05-01 13:58:48 +02002671 var queryMap = <core.String, core.List<core.String>>{};
Kevin Moore6d21e902021-01-15 06:41:08 -08002672 void addQueryParam(n, v) => queryMap.putIfAbsent(n, () => []).add(v);
Martin Kustermann5eb85c12017-09-11 12:35:54 +02002673
Kevin Moore6d21e902021-01-15 06:41:08 -08002674 if (query.isNotEmpty) {
Kevin Moored0251702021-01-15 06:41:08 -08002675 for (var part in query.split('&')) {
2676 var keyValue = part.split('=');
Kevin Moore6d21e902021-01-15 06:41:08 -08002677 addQueryParam(
2678 core.Uri.decodeQueryComponent(keyValue[0]),
2679 core.Uri.decodeQueryComponent(keyValue[1]),
2680 );
Martin Kustermann26171812015-12-21 15:06:06 +01002681 }
2682 }
Martin Kustermann7a3b5f52017-10-23 11:34:19 +02002683 unittest.expect(queryMap["fields"].first, unittest.equals(arg_$fields));
Martin Kustermann26171812015-12-21 15:06:06 +01002684
Martin Kustermann26171812015-12-21 15:06:06 +01002685 var h = {
Kevin Moored0251702021-01-15 06:41:08 -08002686 'content-type': 'application/json; charset=utf-8',
Martin Kustermann26171812015-12-21 15:06:06 +01002687 };
Kevin Moored0251702021-01-15 06:41:08 -08002688 var resp = '';
Kevin Moore6d21e902021-01-15 06:41:08 -08002689 return async.Future.value(stringResponse(200, h, resp));
Martin Kustermann26171812015-12-21 15:06:06 +01002690 }), true);
Martin Kustermann7a3b5f52017-10-23 11:34:19 +02002691 res
2692 .delete(arg_fileId, arg_commentId, $fields: arg_$fields)
2693 .then(unittest.expectAsync1((_) {}));
Martin Kustermann26171812015-12-21 15:06:06 +01002694 });
2695
Kevin Moored0251702021-01-15 06:41:08 -08002696 unittest.test('method--get', () {
Kevin Moore6d21e902021-01-15 06:41:08 -08002697 var mock = HttpServerMock();
2698 api.CommentsResourceApi res = api.DriveApi(mock).comments;
Kevin Moored0251702021-01-15 06:41:08 -08002699 var arg_fileId = 'foo';
2700 var arg_commentId = 'foo';
Martin Kustermann26171812015-12-21 15:06:06 +01002701 var arg_includeDeleted = true;
Kevin Moored0251702021-01-15 06:41:08 -08002702 var arg_$fields = 'foo';
Martin Kustermann3953f0d2017-06-12 16:59:53 +02002703 mock.register(unittest.expectAsync2((http.BaseRequest req, json) {
Martin Kustermann26171812015-12-21 15:06:06 +01002704 var path = (req.url).path;
2705 var pathOffset = 0;
Kevin Moore6d21e902021-01-15 06:41:08 -08002706 core.int index;
2707 core.String subPart;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02002708 unittest.expect(
2709 path.substring(pathOffset, pathOffset + 1), unittest.equals("/"));
Martin Kustermann26171812015-12-21 15:06:06 +01002710 pathOffset += 1;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02002711 unittest.expect(path.substring(pathOffset, pathOffset + 9),
2712 unittest.equals("drive/v3/"));
Martin Kustermann26171812015-12-21 15:06:06 +01002713 pathOffset += 9;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02002714 unittest.expect(path.substring(pathOffset, pathOffset + 6),
2715 unittest.equals("files/"));
Martin Kustermann26171812015-12-21 15:06:06 +01002716 pathOffset += 6;
Kevin Moored0251702021-01-15 06:41:08 -08002717 index = path.indexOf('/comments/', pathOffset);
Martin Kustermann26171812015-12-21 15:06:06 +01002718 unittest.expect(index >= 0, unittest.isTrue);
Martin Kustermann5eb85c12017-09-11 12:35:54 +02002719 subPart =
2720 core.Uri.decodeQueryComponent(path.substring(pathOffset, index));
Martin Kustermann26171812015-12-21 15:06:06 +01002721 pathOffset = index;
Kevin Moored0251702021-01-15 06:41:08 -08002722 unittest.expect(subPart, unittest.equals('$arg_fileId'));
Martin Kustermann5eb85c12017-09-11 12:35:54 +02002723 unittest.expect(path.substring(pathOffset, pathOffset + 10),
2724 unittest.equals("/comments/"));
Martin Kustermann26171812015-12-21 15:06:06 +01002725 pathOffset += 10;
2726 subPart = core.Uri.decodeQueryComponent(path.substring(pathOffset));
2727 pathOffset = path.length;
Kevin Moored0251702021-01-15 06:41:08 -08002728 unittest.expect(subPart, unittest.equals('$arg_commentId'));
Martin Kustermann26171812015-12-21 15:06:06 +01002729
2730 var query = (req.url).query;
2731 var queryOffset = 0;
Jakob Andersen52715df2018-05-01 13:58:48 +02002732 var queryMap = <core.String, core.List<core.String>>{};
Kevin Moore6d21e902021-01-15 06:41:08 -08002733 void addQueryParam(n, v) => queryMap.putIfAbsent(n, () => []).add(v);
Martin Kustermann5eb85c12017-09-11 12:35:54 +02002734
Kevin Moore6d21e902021-01-15 06:41:08 -08002735 if (query.isNotEmpty) {
Kevin Moored0251702021-01-15 06:41:08 -08002736 for (var part in query.split('&')) {
2737 var keyValue = part.split('=');
Kevin Moore6d21e902021-01-15 06:41:08 -08002738 addQueryParam(
2739 core.Uri.decodeQueryComponent(keyValue[0]),
2740 core.Uri.decodeQueryComponent(keyValue[1]),
2741 );
Martin Kustermann26171812015-12-21 15:06:06 +01002742 }
2743 }
Martin Kustermann5eb85c12017-09-11 12:35:54 +02002744 unittest.expect(queryMap["includeDeleted"].first,
2745 unittest.equals("$arg_includeDeleted"));
Martin Kustermann7a3b5f52017-10-23 11:34:19 +02002746 unittest.expect(queryMap["fields"].first, unittest.equals(arg_$fields));
Martin Kustermann26171812015-12-21 15:06:06 +01002747
2748 var h = {
Kevin Moored0251702021-01-15 06:41:08 -08002749 'content-type': 'application/json; charset=utf-8',
Martin Kustermann26171812015-12-21 15:06:06 +01002750 };
Jakob Andersen52715df2018-05-01 13:58:48 +02002751 var resp = convert.json.encode(buildComment());
Kevin Moore6d21e902021-01-15 06:41:08 -08002752 return async.Future.value(stringResponse(200, h, resp));
Martin Kustermann26171812015-12-21 15:06:06 +01002753 }), true);
Martin Kustermann5eb85c12017-09-11 12:35:54 +02002754 res
Martin Kustermann7a3b5f52017-10-23 11:34:19 +02002755 .get(arg_fileId, arg_commentId,
2756 includeDeleted: arg_includeDeleted, $fields: arg_$fields)
Jakob Andersen4ce761d2018-04-19 11:19:11 +02002757 .then(unittest.expectAsync1(((response) {
Martin Kustermann26171812015-12-21 15:06:06 +01002758 checkComment(response);
2759 })));
2760 });
2761
Kevin Moored0251702021-01-15 06:41:08 -08002762 unittest.test('method--list', () {
Kevin Moore6d21e902021-01-15 06:41:08 -08002763 var mock = HttpServerMock();
2764 api.CommentsResourceApi res = api.DriveApi(mock).comments;
Kevin Moored0251702021-01-15 06:41:08 -08002765 var arg_fileId = 'foo';
Martin Kustermann26171812015-12-21 15:06:06 +01002766 var arg_includeDeleted = true;
2767 var arg_pageSize = 42;
Kevin Moored0251702021-01-15 06:41:08 -08002768 var arg_pageToken = 'foo';
2769 var arg_startModifiedTime = 'foo';
2770 var arg_$fields = 'foo';
Martin Kustermann3953f0d2017-06-12 16:59:53 +02002771 mock.register(unittest.expectAsync2((http.BaseRequest req, json) {
Martin Kustermann26171812015-12-21 15:06:06 +01002772 var path = (req.url).path;
2773 var pathOffset = 0;
Kevin Moore6d21e902021-01-15 06:41:08 -08002774 core.int index;
2775 core.String subPart;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02002776 unittest.expect(
2777 path.substring(pathOffset, pathOffset + 1), unittest.equals("/"));
Martin Kustermann26171812015-12-21 15:06:06 +01002778 pathOffset += 1;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02002779 unittest.expect(path.substring(pathOffset, pathOffset + 9),
2780 unittest.equals("drive/v3/"));
Martin Kustermann26171812015-12-21 15:06:06 +01002781 pathOffset += 9;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02002782 unittest.expect(path.substring(pathOffset, pathOffset + 6),
2783 unittest.equals("files/"));
Martin Kustermann26171812015-12-21 15:06:06 +01002784 pathOffset += 6;
Kevin Moored0251702021-01-15 06:41:08 -08002785 index = path.indexOf('/comments', pathOffset);
Martin Kustermann26171812015-12-21 15:06:06 +01002786 unittest.expect(index >= 0, unittest.isTrue);
Martin Kustermann5eb85c12017-09-11 12:35:54 +02002787 subPart =
2788 core.Uri.decodeQueryComponent(path.substring(pathOffset, index));
Martin Kustermann26171812015-12-21 15:06:06 +01002789 pathOffset = index;
Kevin Moored0251702021-01-15 06:41:08 -08002790 unittest.expect(subPart, unittest.equals('$arg_fileId'));
Martin Kustermann5eb85c12017-09-11 12:35:54 +02002791 unittest.expect(path.substring(pathOffset, pathOffset + 9),
2792 unittest.equals("/comments"));
Martin Kustermann26171812015-12-21 15:06:06 +01002793 pathOffset += 9;
2794
2795 var query = (req.url).query;
2796 var queryOffset = 0;
Jakob Andersen52715df2018-05-01 13:58:48 +02002797 var queryMap = <core.String, core.List<core.String>>{};
Kevin Moore6d21e902021-01-15 06:41:08 -08002798 void addQueryParam(n, v) => queryMap.putIfAbsent(n, () => []).add(v);
Martin Kustermann5eb85c12017-09-11 12:35:54 +02002799
Kevin Moore6d21e902021-01-15 06:41:08 -08002800 if (query.isNotEmpty) {
Kevin Moored0251702021-01-15 06:41:08 -08002801 for (var part in query.split('&')) {
2802 var keyValue = part.split('=');
Kevin Moore6d21e902021-01-15 06:41:08 -08002803 addQueryParam(
2804 core.Uri.decodeQueryComponent(keyValue[0]),
2805 core.Uri.decodeQueryComponent(keyValue[1]),
2806 );
Martin Kustermann26171812015-12-21 15:06:06 +01002807 }
2808 }
Martin Kustermann5eb85c12017-09-11 12:35:54 +02002809 unittest.expect(queryMap["includeDeleted"].first,
2810 unittest.equals("$arg_includeDeleted"));
2811 unittest.expect(core.int.parse(queryMap["pageSize"].first),
2812 unittest.equals(arg_pageSize));
2813 unittest.expect(
2814 queryMap["pageToken"].first, unittest.equals(arg_pageToken));
2815 unittest.expect(queryMap["startModifiedTime"].first,
2816 unittest.equals(arg_startModifiedTime));
Martin Kustermann7a3b5f52017-10-23 11:34:19 +02002817 unittest.expect(queryMap["fields"].first, unittest.equals(arg_$fields));
Martin Kustermann26171812015-12-21 15:06:06 +01002818
2819 var h = {
Kevin Moored0251702021-01-15 06:41:08 -08002820 'content-type': 'application/json; charset=utf-8',
Martin Kustermann26171812015-12-21 15:06:06 +01002821 };
Jakob Andersen52715df2018-05-01 13:58:48 +02002822 var resp = convert.json.encode(buildCommentList());
Kevin Moore6d21e902021-01-15 06:41:08 -08002823 return async.Future.value(stringResponse(200, h, resp));
Martin Kustermann26171812015-12-21 15:06:06 +01002824 }), true);
Martin Kustermann5eb85c12017-09-11 12:35:54 +02002825 res
2826 .list(arg_fileId,
2827 includeDeleted: arg_includeDeleted,
2828 pageSize: arg_pageSize,
2829 pageToken: arg_pageToken,
Martin Kustermann7a3b5f52017-10-23 11:34:19 +02002830 startModifiedTime: arg_startModifiedTime,
2831 $fields: arg_$fields)
Jakob Andersen4ce761d2018-04-19 11:19:11 +02002832 .then(unittest.expectAsync1(((response) {
Martin Kustermann26171812015-12-21 15:06:06 +01002833 checkCommentList(response);
2834 })));
2835 });
2836
Kevin Moored0251702021-01-15 06:41:08 -08002837 unittest.test('method--update', () {
Kevin Moore6d21e902021-01-15 06:41:08 -08002838 var mock = HttpServerMock();
2839 api.CommentsResourceApi res = api.DriveApi(mock).comments;
Martin Kustermann26171812015-12-21 15:06:06 +01002840 var arg_request = buildComment();
Kevin Moored0251702021-01-15 06:41:08 -08002841 var arg_fileId = 'foo';
2842 var arg_commentId = 'foo';
2843 var arg_$fields = 'foo';
Martin Kustermann3953f0d2017-06-12 16:59:53 +02002844 mock.register(unittest.expectAsync2((http.BaseRequest req, json) {
Kevin Moore6d21e902021-01-15 06:41:08 -08002845 var obj = api.Comment.fromJson(json);
Martin Kustermann26171812015-12-21 15:06:06 +01002846 checkComment(obj);
2847
2848 var path = (req.url).path;
2849 var pathOffset = 0;
Kevin Moore6d21e902021-01-15 06:41:08 -08002850 core.int index;
2851 core.String subPart;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02002852 unittest.expect(
2853 path.substring(pathOffset, pathOffset + 1), unittest.equals("/"));
Martin Kustermann26171812015-12-21 15:06:06 +01002854 pathOffset += 1;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02002855 unittest.expect(path.substring(pathOffset, pathOffset + 9),
2856 unittest.equals("drive/v3/"));
Martin Kustermann26171812015-12-21 15:06:06 +01002857 pathOffset += 9;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02002858 unittest.expect(path.substring(pathOffset, pathOffset + 6),
2859 unittest.equals("files/"));
Martin Kustermann26171812015-12-21 15:06:06 +01002860 pathOffset += 6;
Kevin Moored0251702021-01-15 06:41:08 -08002861 index = path.indexOf('/comments/', pathOffset);
Martin Kustermann26171812015-12-21 15:06:06 +01002862 unittest.expect(index >= 0, unittest.isTrue);
Martin Kustermann5eb85c12017-09-11 12:35:54 +02002863 subPart =
2864 core.Uri.decodeQueryComponent(path.substring(pathOffset, index));
Martin Kustermann26171812015-12-21 15:06:06 +01002865 pathOffset = index;
Kevin Moored0251702021-01-15 06:41:08 -08002866 unittest.expect(subPart, unittest.equals('$arg_fileId'));
Martin Kustermann5eb85c12017-09-11 12:35:54 +02002867 unittest.expect(path.substring(pathOffset, pathOffset + 10),
2868 unittest.equals("/comments/"));
Martin Kustermann26171812015-12-21 15:06:06 +01002869 pathOffset += 10;
2870 subPart = core.Uri.decodeQueryComponent(path.substring(pathOffset));
2871 pathOffset = path.length;
Kevin Moored0251702021-01-15 06:41:08 -08002872 unittest.expect(subPart, unittest.equals('$arg_commentId'));
Martin Kustermann26171812015-12-21 15:06:06 +01002873
2874 var query = (req.url).query;
2875 var queryOffset = 0;
Jakob Andersen52715df2018-05-01 13:58:48 +02002876 var queryMap = <core.String, core.List<core.String>>{};
Kevin Moore6d21e902021-01-15 06:41:08 -08002877 void addQueryParam(n, v) => queryMap.putIfAbsent(n, () => []).add(v);
Martin Kustermann5eb85c12017-09-11 12:35:54 +02002878
Kevin Moore6d21e902021-01-15 06:41:08 -08002879 if (query.isNotEmpty) {
Kevin Moored0251702021-01-15 06:41:08 -08002880 for (var part in query.split('&')) {
2881 var keyValue = part.split('=');
Kevin Moore6d21e902021-01-15 06:41:08 -08002882 addQueryParam(
2883 core.Uri.decodeQueryComponent(keyValue[0]),
2884 core.Uri.decodeQueryComponent(keyValue[1]),
2885 );
Martin Kustermann26171812015-12-21 15:06:06 +01002886 }
2887 }
Martin Kustermann7a3b5f52017-10-23 11:34:19 +02002888 unittest.expect(queryMap["fields"].first, unittest.equals(arg_$fields));
Martin Kustermann26171812015-12-21 15:06:06 +01002889
Martin Kustermann26171812015-12-21 15:06:06 +01002890 var h = {
Kevin Moored0251702021-01-15 06:41:08 -08002891 'content-type': 'application/json; charset=utf-8',
Martin Kustermann26171812015-12-21 15:06:06 +01002892 };
Jakob Andersen52715df2018-05-01 13:58:48 +02002893 var resp = convert.json.encode(buildComment());
Kevin Moore6d21e902021-01-15 06:41:08 -08002894 return async.Future.value(stringResponse(200, h, resp));
Martin Kustermann26171812015-12-21 15:06:06 +01002895 }), true);
Martin Kustermann5eb85c12017-09-11 12:35:54 +02002896 res
Martin Kustermann7a3b5f52017-10-23 11:34:19 +02002897 .update(arg_request, arg_fileId, arg_commentId, $fields: arg_$fields)
Jakob Andersen4ce761d2018-04-19 11:19:11 +02002898 .then(unittest.expectAsync1(((response) {
Martin Kustermann26171812015-12-21 15:06:06 +01002899 checkComment(response);
2900 })));
2901 });
Martin Kustermann26171812015-12-21 15:06:06 +01002902 });
2903
Kevin Moored0251702021-01-15 06:41:08 -08002904 unittest.group('resource-DrivesResourceApi', () {
2905 unittest.test('method--create', () {
Kevin Moore6d21e902021-01-15 06:41:08 -08002906 var mock = HttpServerMock();
2907 api.DrivesResourceApi res = api.DriveApi(mock).drives;
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02002908 var arg_request = buildDrive();
Kevin Moored0251702021-01-15 06:41:08 -08002909 var arg_requestId = 'foo';
2910 var arg_$fields = 'foo';
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02002911 mock.register(unittest.expectAsync2((http.BaseRequest req, json) {
Kevin Moore6d21e902021-01-15 06:41:08 -08002912 var obj = api.Drive.fromJson(json);
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02002913 checkDrive(obj);
2914
2915 var path = (req.url).path;
2916 var pathOffset = 0;
Kevin Moore6d21e902021-01-15 06:41:08 -08002917 core.int index;
2918 core.String subPart;
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02002919 unittest.expect(
2920 path.substring(pathOffset, pathOffset + 1), unittest.equals("/"));
2921 pathOffset += 1;
2922 unittest.expect(path.substring(pathOffset, pathOffset + 9),
2923 unittest.equals("drive/v3/"));
2924 pathOffset += 9;
2925 unittest.expect(path.substring(pathOffset, pathOffset + 6),
2926 unittest.equals("drives"));
2927 pathOffset += 6;
2928
2929 var query = (req.url).query;
2930 var queryOffset = 0;
2931 var queryMap = <core.String, core.List<core.String>>{};
Kevin Moore6d21e902021-01-15 06:41:08 -08002932 void addQueryParam(n, v) => queryMap.putIfAbsent(n, () => []).add(v);
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02002933
Kevin Moore6d21e902021-01-15 06:41:08 -08002934 if (query.isNotEmpty) {
Kevin Moored0251702021-01-15 06:41:08 -08002935 for (var part in query.split('&')) {
2936 var keyValue = part.split('=');
Kevin Moore6d21e902021-01-15 06:41:08 -08002937 addQueryParam(
2938 core.Uri.decodeQueryComponent(keyValue[0]),
2939 core.Uri.decodeQueryComponent(keyValue[1]),
2940 );
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02002941 }
2942 }
2943 unittest.expect(
2944 queryMap["requestId"].first, unittest.equals(arg_requestId));
2945 unittest.expect(queryMap["fields"].first, unittest.equals(arg_$fields));
2946
2947 var h = {
Kevin Moored0251702021-01-15 06:41:08 -08002948 'content-type': 'application/json; charset=utf-8',
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02002949 };
2950 var resp = convert.json.encode(buildDrive());
Kevin Moore6d21e902021-01-15 06:41:08 -08002951 return async.Future.value(stringResponse(200, h, resp));
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02002952 }), true);
2953 res
2954 .create(arg_request, arg_requestId, $fields: arg_$fields)
2955 .then(unittest.expectAsync1(((response) {
2956 checkDrive(response);
2957 })));
2958 });
2959
Kevin Moored0251702021-01-15 06:41:08 -08002960 unittest.test('method--delete', () {
Kevin Moore6d21e902021-01-15 06:41:08 -08002961 var mock = HttpServerMock();
2962 api.DrivesResourceApi res = api.DriveApi(mock).drives;
Kevin Moored0251702021-01-15 06:41:08 -08002963 var arg_driveId = 'foo';
2964 var arg_$fields = 'foo';
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02002965 mock.register(unittest.expectAsync2((http.BaseRequest req, json) {
2966 var path = (req.url).path;
2967 var pathOffset = 0;
Kevin Moore6d21e902021-01-15 06:41:08 -08002968 core.int index;
2969 core.String subPart;
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02002970 unittest.expect(
2971 path.substring(pathOffset, pathOffset + 1), unittest.equals("/"));
2972 pathOffset += 1;
2973 unittest.expect(path.substring(pathOffset, pathOffset + 9),
2974 unittest.equals("drive/v3/"));
2975 pathOffset += 9;
2976 unittest.expect(path.substring(pathOffset, pathOffset + 7),
2977 unittest.equals("drives/"));
2978 pathOffset += 7;
2979 subPart = core.Uri.decodeQueryComponent(path.substring(pathOffset));
2980 pathOffset = path.length;
Kevin Moored0251702021-01-15 06:41:08 -08002981 unittest.expect(subPart, unittest.equals('$arg_driveId'));
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02002982
2983 var query = (req.url).query;
2984 var queryOffset = 0;
2985 var queryMap = <core.String, core.List<core.String>>{};
Kevin Moore6d21e902021-01-15 06:41:08 -08002986 void addQueryParam(n, v) => queryMap.putIfAbsent(n, () => []).add(v);
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02002987
Kevin Moore6d21e902021-01-15 06:41:08 -08002988 if (query.isNotEmpty) {
Kevin Moored0251702021-01-15 06:41:08 -08002989 for (var part in query.split('&')) {
2990 var keyValue = part.split('=');
Kevin Moore6d21e902021-01-15 06:41:08 -08002991 addQueryParam(
2992 core.Uri.decodeQueryComponent(keyValue[0]),
2993 core.Uri.decodeQueryComponent(keyValue[1]),
2994 );
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02002995 }
2996 }
2997 unittest.expect(queryMap["fields"].first, unittest.equals(arg_$fields));
2998
2999 var h = {
Kevin Moored0251702021-01-15 06:41:08 -08003000 'content-type': 'application/json; charset=utf-8',
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02003001 };
Kevin Moored0251702021-01-15 06:41:08 -08003002 var resp = '';
Kevin Moore6d21e902021-01-15 06:41:08 -08003003 return async.Future.value(stringResponse(200, h, resp));
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02003004 }), true);
3005 res
3006 .delete(arg_driveId, $fields: arg_$fields)
3007 .then(unittest.expectAsync1((_) {}));
3008 });
3009
Kevin Moored0251702021-01-15 06:41:08 -08003010 unittest.test('method--get', () {
Kevin Moore6d21e902021-01-15 06:41:08 -08003011 var mock = HttpServerMock();
3012 api.DrivesResourceApi res = api.DriveApi(mock).drives;
Kevin Moored0251702021-01-15 06:41:08 -08003013 var arg_driveId = 'foo';
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02003014 var arg_useDomainAdminAccess = true;
Kevin Moored0251702021-01-15 06:41:08 -08003015 var arg_$fields = 'foo';
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02003016 mock.register(unittest.expectAsync2((http.BaseRequest req, json) {
3017 var path = (req.url).path;
3018 var pathOffset = 0;
Kevin Moore6d21e902021-01-15 06:41:08 -08003019 core.int index;
3020 core.String subPart;
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02003021 unittest.expect(
3022 path.substring(pathOffset, pathOffset + 1), unittest.equals("/"));
3023 pathOffset += 1;
3024 unittest.expect(path.substring(pathOffset, pathOffset + 9),
3025 unittest.equals("drive/v3/"));
3026 pathOffset += 9;
3027 unittest.expect(path.substring(pathOffset, pathOffset + 7),
3028 unittest.equals("drives/"));
3029 pathOffset += 7;
3030 subPart = core.Uri.decodeQueryComponent(path.substring(pathOffset));
3031 pathOffset = path.length;
Kevin Moored0251702021-01-15 06:41:08 -08003032 unittest.expect(subPart, unittest.equals('$arg_driveId'));
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02003033
3034 var query = (req.url).query;
3035 var queryOffset = 0;
3036 var queryMap = <core.String, core.List<core.String>>{};
Kevin Moore6d21e902021-01-15 06:41:08 -08003037 void addQueryParam(n, v) => queryMap.putIfAbsent(n, () => []).add(v);
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02003038
Kevin Moore6d21e902021-01-15 06:41:08 -08003039 if (query.isNotEmpty) {
Kevin Moored0251702021-01-15 06:41:08 -08003040 for (var part in query.split('&')) {
3041 var keyValue = part.split('=');
Kevin Moore6d21e902021-01-15 06:41:08 -08003042 addQueryParam(
3043 core.Uri.decodeQueryComponent(keyValue[0]),
3044 core.Uri.decodeQueryComponent(keyValue[1]),
3045 );
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02003046 }
3047 }
3048 unittest.expect(queryMap["useDomainAdminAccess"].first,
3049 unittest.equals("$arg_useDomainAdminAccess"));
3050 unittest.expect(queryMap["fields"].first, unittest.equals(arg_$fields));
3051
3052 var h = {
Kevin Moored0251702021-01-15 06:41:08 -08003053 'content-type': 'application/json; charset=utf-8',
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02003054 };
3055 var resp = convert.json.encode(buildDrive());
Kevin Moore6d21e902021-01-15 06:41:08 -08003056 return async.Future.value(stringResponse(200, h, resp));
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02003057 }), true);
3058 res
3059 .get(arg_driveId,
3060 useDomainAdminAccess: arg_useDomainAdminAccess,
3061 $fields: arg_$fields)
3062 .then(unittest.expectAsync1(((response) {
3063 checkDrive(response);
3064 })));
3065 });
3066
Kevin Moored0251702021-01-15 06:41:08 -08003067 unittest.test('method--hide', () {
Kevin Moore6d21e902021-01-15 06:41:08 -08003068 var mock = HttpServerMock();
3069 api.DrivesResourceApi res = api.DriveApi(mock).drives;
Kevin Moored0251702021-01-15 06:41:08 -08003070 var arg_driveId = 'foo';
3071 var arg_$fields = 'foo';
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02003072 mock.register(unittest.expectAsync2((http.BaseRequest req, json) {
3073 var path = (req.url).path;
3074 var pathOffset = 0;
Kevin Moore6d21e902021-01-15 06:41:08 -08003075 core.int index;
3076 core.String subPart;
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02003077 unittest.expect(
3078 path.substring(pathOffset, pathOffset + 1), unittest.equals("/"));
3079 pathOffset += 1;
3080 unittest.expect(path.substring(pathOffset, pathOffset + 9),
3081 unittest.equals("drive/v3/"));
3082 pathOffset += 9;
3083 unittest.expect(path.substring(pathOffset, pathOffset + 7),
3084 unittest.equals("drives/"));
3085 pathOffset += 7;
Kevin Moored0251702021-01-15 06:41:08 -08003086 index = path.indexOf('/hide', pathOffset);
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02003087 unittest.expect(index >= 0, unittest.isTrue);
3088 subPart =
3089 core.Uri.decodeQueryComponent(path.substring(pathOffset, index));
3090 pathOffset = index;
Kevin Moored0251702021-01-15 06:41:08 -08003091 unittest.expect(subPart, unittest.equals('$arg_driveId'));
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02003092 unittest.expect(path.substring(pathOffset, pathOffset + 5),
3093 unittest.equals("/hide"));
3094 pathOffset += 5;
3095
3096 var query = (req.url).query;
3097 var queryOffset = 0;
3098 var queryMap = <core.String, core.List<core.String>>{};
Kevin Moore6d21e902021-01-15 06:41:08 -08003099 void addQueryParam(n, v) => queryMap.putIfAbsent(n, () => []).add(v);
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02003100
Kevin Moore6d21e902021-01-15 06:41:08 -08003101 if (query.isNotEmpty) {
Kevin Moored0251702021-01-15 06:41:08 -08003102 for (var part in query.split('&')) {
3103 var keyValue = part.split('=');
Kevin Moore6d21e902021-01-15 06:41:08 -08003104 addQueryParam(
3105 core.Uri.decodeQueryComponent(keyValue[0]),
3106 core.Uri.decodeQueryComponent(keyValue[1]),
3107 );
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02003108 }
3109 }
3110 unittest.expect(queryMap["fields"].first, unittest.equals(arg_$fields));
3111
3112 var h = {
Kevin Moored0251702021-01-15 06:41:08 -08003113 'content-type': 'application/json; charset=utf-8',
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02003114 };
3115 var resp = convert.json.encode(buildDrive());
Kevin Moore6d21e902021-01-15 06:41:08 -08003116 return async.Future.value(stringResponse(200, h, resp));
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02003117 }), true);
3118 res
3119 .hide(arg_driveId, $fields: arg_$fields)
3120 .then(unittest.expectAsync1(((response) {
3121 checkDrive(response);
3122 })));
3123 });
3124
Kevin Moored0251702021-01-15 06:41:08 -08003125 unittest.test('method--list', () {
Kevin Moore6d21e902021-01-15 06:41:08 -08003126 var mock = HttpServerMock();
3127 api.DrivesResourceApi res = api.DriveApi(mock).drives;
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02003128 var arg_pageSize = 42;
Kevin Moored0251702021-01-15 06:41:08 -08003129 var arg_pageToken = 'foo';
3130 var arg_q = 'foo';
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02003131 var arg_useDomainAdminAccess = true;
Kevin Moored0251702021-01-15 06:41:08 -08003132 var arg_$fields = 'foo';
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02003133 mock.register(unittest.expectAsync2((http.BaseRequest req, json) {
3134 var path = (req.url).path;
3135 var pathOffset = 0;
Kevin Moore6d21e902021-01-15 06:41:08 -08003136 core.int index;
3137 core.String subPart;
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02003138 unittest.expect(
3139 path.substring(pathOffset, pathOffset + 1), unittest.equals("/"));
3140 pathOffset += 1;
3141 unittest.expect(path.substring(pathOffset, pathOffset + 9),
3142 unittest.equals("drive/v3/"));
3143 pathOffset += 9;
3144 unittest.expect(path.substring(pathOffset, pathOffset + 6),
3145 unittest.equals("drives"));
3146 pathOffset += 6;
3147
3148 var query = (req.url).query;
3149 var queryOffset = 0;
3150 var queryMap = <core.String, core.List<core.String>>{};
Kevin Moore6d21e902021-01-15 06:41:08 -08003151 void addQueryParam(n, v) => queryMap.putIfAbsent(n, () => []).add(v);
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02003152
Kevin Moore6d21e902021-01-15 06:41:08 -08003153 if (query.isNotEmpty) {
Kevin Moored0251702021-01-15 06:41:08 -08003154 for (var part in query.split('&')) {
3155 var keyValue = part.split('=');
Kevin Moore6d21e902021-01-15 06:41:08 -08003156 addQueryParam(
3157 core.Uri.decodeQueryComponent(keyValue[0]),
3158 core.Uri.decodeQueryComponent(keyValue[1]),
3159 );
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02003160 }
3161 }
3162 unittest.expect(core.int.parse(queryMap["pageSize"].first),
3163 unittest.equals(arg_pageSize));
3164 unittest.expect(
3165 queryMap["pageToken"].first, unittest.equals(arg_pageToken));
3166 unittest.expect(queryMap["q"].first, unittest.equals(arg_q));
3167 unittest.expect(queryMap["useDomainAdminAccess"].first,
3168 unittest.equals("$arg_useDomainAdminAccess"));
3169 unittest.expect(queryMap["fields"].first, unittest.equals(arg_$fields));
3170
3171 var h = {
Kevin Moored0251702021-01-15 06:41:08 -08003172 'content-type': 'application/json; charset=utf-8',
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02003173 };
3174 var resp = convert.json.encode(buildDriveList());
Kevin Moore6d21e902021-01-15 06:41:08 -08003175 return async.Future.value(stringResponse(200, h, resp));
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02003176 }), true);
3177 res
3178 .list(
3179 pageSize: arg_pageSize,
3180 pageToken: arg_pageToken,
3181 q: arg_q,
3182 useDomainAdminAccess: arg_useDomainAdminAccess,
3183 $fields: arg_$fields)
3184 .then(unittest.expectAsync1(((response) {
3185 checkDriveList(response);
3186 })));
3187 });
3188
Kevin Moored0251702021-01-15 06:41:08 -08003189 unittest.test('method--unhide', () {
Kevin Moore6d21e902021-01-15 06:41:08 -08003190 var mock = HttpServerMock();
3191 api.DrivesResourceApi res = api.DriveApi(mock).drives;
Kevin Moored0251702021-01-15 06:41:08 -08003192 var arg_driveId = 'foo';
3193 var arg_$fields = 'foo';
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02003194 mock.register(unittest.expectAsync2((http.BaseRequest req, json) {
3195 var path = (req.url).path;
3196 var pathOffset = 0;
Kevin Moore6d21e902021-01-15 06:41:08 -08003197 core.int index;
3198 core.String subPart;
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02003199 unittest.expect(
3200 path.substring(pathOffset, pathOffset + 1), unittest.equals("/"));
3201 pathOffset += 1;
3202 unittest.expect(path.substring(pathOffset, pathOffset + 9),
3203 unittest.equals("drive/v3/"));
3204 pathOffset += 9;
3205 unittest.expect(path.substring(pathOffset, pathOffset + 7),
3206 unittest.equals("drives/"));
3207 pathOffset += 7;
Kevin Moored0251702021-01-15 06:41:08 -08003208 index = path.indexOf('/unhide', pathOffset);
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02003209 unittest.expect(index >= 0, unittest.isTrue);
3210 subPart =
3211 core.Uri.decodeQueryComponent(path.substring(pathOffset, index));
3212 pathOffset = index;
Kevin Moored0251702021-01-15 06:41:08 -08003213 unittest.expect(subPart, unittest.equals('$arg_driveId'));
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02003214 unittest.expect(path.substring(pathOffset, pathOffset + 7),
3215 unittest.equals("/unhide"));
3216 pathOffset += 7;
3217
3218 var query = (req.url).query;
3219 var queryOffset = 0;
3220 var queryMap = <core.String, core.List<core.String>>{};
Kevin Moore6d21e902021-01-15 06:41:08 -08003221 void addQueryParam(n, v) => queryMap.putIfAbsent(n, () => []).add(v);
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02003222
Kevin Moore6d21e902021-01-15 06:41:08 -08003223 if (query.isNotEmpty) {
Kevin Moored0251702021-01-15 06:41:08 -08003224 for (var part in query.split('&')) {
3225 var keyValue = part.split('=');
Kevin Moore6d21e902021-01-15 06:41:08 -08003226 addQueryParam(
3227 core.Uri.decodeQueryComponent(keyValue[0]),
3228 core.Uri.decodeQueryComponent(keyValue[1]),
3229 );
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02003230 }
3231 }
3232 unittest.expect(queryMap["fields"].first, unittest.equals(arg_$fields));
3233
3234 var h = {
Kevin Moored0251702021-01-15 06:41:08 -08003235 'content-type': 'application/json; charset=utf-8',
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02003236 };
3237 var resp = convert.json.encode(buildDrive());
Kevin Moore6d21e902021-01-15 06:41:08 -08003238 return async.Future.value(stringResponse(200, h, resp));
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02003239 }), true);
3240 res
3241 .unhide(arg_driveId, $fields: arg_$fields)
3242 .then(unittest.expectAsync1(((response) {
3243 checkDrive(response);
3244 })));
3245 });
3246
Kevin Moored0251702021-01-15 06:41:08 -08003247 unittest.test('method--update', () {
Kevin Moore6d21e902021-01-15 06:41:08 -08003248 var mock = HttpServerMock();
3249 api.DrivesResourceApi res = api.DriveApi(mock).drives;
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02003250 var arg_request = buildDrive();
Kevin Moored0251702021-01-15 06:41:08 -08003251 var arg_driveId = 'foo';
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02003252 var arg_useDomainAdminAccess = true;
Kevin Moored0251702021-01-15 06:41:08 -08003253 var arg_$fields = 'foo';
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02003254 mock.register(unittest.expectAsync2((http.BaseRequest req, json) {
Kevin Moore6d21e902021-01-15 06:41:08 -08003255 var obj = api.Drive.fromJson(json);
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02003256 checkDrive(obj);
3257
3258 var path = (req.url).path;
3259 var pathOffset = 0;
Kevin Moore6d21e902021-01-15 06:41:08 -08003260 core.int index;
3261 core.String subPart;
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02003262 unittest.expect(
3263 path.substring(pathOffset, pathOffset + 1), unittest.equals("/"));
3264 pathOffset += 1;
3265 unittest.expect(path.substring(pathOffset, pathOffset + 9),
3266 unittest.equals("drive/v3/"));
3267 pathOffset += 9;
3268 unittest.expect(path.substring(pathOffset, pathOffset + 7),
3269 unittest.equals("drives/"));
3270 pathOffset += 7;
3271 subPart = core.Uri.decodeQueryComponent(path.substring(pathOffset));
3272 pathOffset = path.length;
Kevin Moored0251702021-01-15 06:41:08 -08003273 unittest.expect(subPart, unittest.equals('$arg_driveId'));
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02003274
3275 var query = (req.url).query;
3276 var queryOffset = 0;
3277 var queryMap = <core.String, core.List<core.String>>{};
Kevin Moore6d21e902021-01-15 06:41:08 -08003278 void addQueryParam(n, v) => queryMap.putIfAbsent(n, () => []).add(v);
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02003279
Kevin Moore6d21e902021-01-15 06:41:08 -08003280 if (query.isNotEmpty) {
Kevin Moored0251702021-01-15 06:41:08 -08003281 for (var part in query.split('&')) {
3282 var keyValue = part.split('=');
Kevin Moore6d21e902021-01-15 06:41:08 -08003283 addQueryParam(
3284 core.Uri.decodeQueryComponent(keyValue[0]),
3285 core.Uri.decodeQueryComponent(keyValue[1]),
3286 );
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02003287 }
3288 }
3289 unittest.expect(queryMap["useDomainAdminAccess"].first,
3290 unittest.equals("$arg_useDomainAdminAccess"));
3291 unittest.expect(queryMap["fields"].first, unittest.equals(arg_$fields));
3292
3293 var h = {
Kevin Moored0251702021-01-15 06:41:08 -08003294 'content-type': 'application/json; charset=utf-8',
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02003295 };
3296 var resp = convert.json.encode(buildDrive());
Kevin Moore6d21e902021-01-15 06:41:08 -08003297 return async.Future.value(stringResponse(200, h, resp));
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02003298 }), true);
3299 res
3300 .update(arg_request, arg_driveId,
3301 useDomainAdminAccess: arg_useDomainAdminAccess,
3302 $fields: arg_$fields)
3303 .then(unittest.expectAsync1(((response) {
3304 checkDrive(response);
3305 })));
3306 });
3307 });
3308
Kevin Moored0251702021-01-15 06:41:08 -08003309 unittest.group('resource-FilesResourceApi', () {
3310 unittest.test('method--copy', () {
Kevin Moore6d21e902021-01-15 06:41:08 -08003311 var mock = HttpServerMock();
3312 api.FilesResourceApi res = api.DriveApi(mock).files;
Martin Kustermann26171812015-12-21 15:06:06 +01003313 var arg_request = buildFile();
Kevin Moored0251702021-01-15 06:41:08 -08003314 var arg_fileId = 'foo';
Jonas Finnemann Jensen94d5b4d2020-05-07 12:00:14 +02003315 var arg_enforceSingleParent = true;
Martin Kustermann26171812015-12-21 15:06:06 +01003316 var arg_ignoreDefaultVisibility = true;
Kevin Moored0251702021-01-15 06:41:08 -08003317 var arg_includePermissionsForView = 'foo';
Martin Kustermann26171812015-12-21 15:06:06 +01003318 var arg_keepRevisionForever = true;
Kevin Moored0251702021-01-15 06:41:08 -08003319 var arg_ocrLanguage = 'foo';
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02003320 var arg_supportsAllDrives = true;
Martin Kustermann77f42ff2017-03-06 13:56:35 +01003321 var arg_supportsTeamDrives = true;
Kevin Moored0251702021-01-15 06:41:08 -08003322 var arg_$fields = 'foo';
Martin Kustermann3953f0d2017-06-12 16:59:53 +02003323 mock.register(unittest.expectAsync2((http.BaseRequest req, json) {
Kevin Moore6d21e902021-01-15 06:41:08 -08003324 var obj = api.File.fromJson(json);
Martin Kustermann26171812015-12-21 15:06:06 +01003325 checkFile(obj);
3326
3327 var path = (req.url).path;
3328 var pathOffset = 0;
Kevin Moore6d21e902021-01-15 06:41:08 -08003329 core.int index;
3330 core.String subPart;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02003331 unittest.expect(
3332 path.substring(pathOffset, pathOffset + 1), unittest.equals("/"));
Martin Kustermann26171812015-12-21 15:06:06 +01003333 pathOffset += 1;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02003334 unittest.expect(path.substring(pathOffset, pathOffset + 9),
3335 unittest.equals("drive/v3/"));
Martin Kustermann26171812015-12-21 15:06:06 +01003336 pathOffset += 9;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02003337 unittest.expect(path.substring(pathOffset, pathOffset + 6),
3338 unittest.equals("files/"));
Martin Kustermann26171812015-12-21 15:06:06 +01003339 pathOffset += 6;
Kevin Moored0251702021-01-15 06:41:08 -08003340 index = path.indexOf('/copy', pathOffset);
Martin Kustermann26171812015-12-21 15:06:06 +01003341 unittest.expect(index >= 0, unittest.isTrue);
Martin Kustermann5eb85c12017-09-11 12:35:54 +02003342 subPart =
3343 core.Uri.decodeQueryComponent(path.substring(pathOffset, index));
Martin Kustermann26171812015-12-21 15:06:06 +01003344 pathOffset = index;
Kevin Moored0251702021-01-15 06:41:08 -08003345 unittest.expect(subPart, unittest.equals('$arg_fileId'));
Martin Kustermann5eb85c12017-09-11 12:35:54 +02003346 unittest.expect(path.substring(pathOffset, pathOffset + 5),
3347 unittest.equals("/copy"));
Martin Kustermann26171812015-12-21 15:06:06 +01003348 pathOffset += 5;
3349
3350 var query = (req.url).query;
3351 var queryOffset = 0;
Jakob Andersen52715df2018-05-01 13:58:48 +02003352 var queryMap = <core.String, core.List<core.String>>{};
Kevin Moore6d21e902021-01-15 06:41:08 -08003353 void addQueryParam(n, v) => queryMap.putIfAbsent(n, () => []).add(v);
Martin Kustermann5eb85c12017-09-11 12:35:54 +02003354
Kevin Moore6d21e902021-01-15 06:41:08 -08003355 if (query.isNotEmpty) {
Kevin Moored0251702021-01-15 06:41:08 -08003356 for (var part in query.split('&')) {
3357 var keyValue = part.split('=');
Kevin Moore6d21e902021-01-15 06:41:08 -08003358 addQueryParam(
3359 core.Uri.decodeQueryComponent(keyValue[0]),
3360 core.Uri.decodeQueryComponent(keyValue[1]),
3361 );
Martin Kustermann26171812015-12-21 15:06:06 +01003362 }
3363 }
Jonas Finnemann Jensen94d5b4d2020-05-07 12:00:14 +02003364 unittest.expect(queryMap["enforceSingleParent"].first,
3365 unittest.equals("$arg_enforceSingleParent"));
Martin Kustermann5eb85c12017-09-11 12:35:54 +02003366 unittest.expect(queryMap["ignoreDefaultVisibility"].first,
3367 unittest.equals("$arg_ignoreDefaultVisibility"));
Jonas Finnemann Jensenef0c8a32020-10-07 20:58:20 +02003368 unittest.expect(queryMap["includePermissionsForView"].first,
3369 unittest.equals(arg_includePermissionsForView));
Martin Kustermann5eb85c12017-09-11 12:35:54 +02003370 unittest.expect(queryMap["keepRevisionForever"].first,
3371 unittest.equals("$arg_keepRevisionForever"));
3372 unittest.expect(
3373 queryMap["ocrLanguage"].first, unittest.equals(arg_ocrLanguage));
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02003374 unittest.expect(queryMap["supportsAllDrives"].first,
3375 unittest.equals("$arg_supportsAllDrives"));
Martin Kustermann5eb85c12017-09-11 12:35:54 +02003376 unittest.expect(queryMap["supportsTeamDrives"].first,
3377 unittest.equals("$arg_supportsTeamDrives"));
Martin Kustermann7a3b5f52017-10-23 11:34:19 +02003378 unittest.expect(queryMap["fields"].first, unittest.equals(arg_$fields));
Martin Kustermann26171812015-12-21 15:06:06 +01003379
3380 var h = {
Kevin Moored0251702021-01-15 06:41:08 -08003381 'content-type': 'application/json; charset=utf-8',
Martin Kustermann26171812015-12-21 15:06:06 +01003382 };
Jakob Andersen52715df2018-05-01 13:58:48 +02003383 var resp = convert.json.encode(buildFile());
Kevin Moore6d21e902021-01-15 06:41:08 -08003384 return async.Future.value(stringResponse(200, h, resp));
Martin Kustermann26171812015-12-21 15:06:06 +01003385 }), true);
Martin Kustermann5eb85c12017-09-11 12:35:54 +02003386 res
3387 .copy(arg_request, arg_fileId,
Jonas Finnemann Jensen94d5b4d2020-05-07 12:00:14 +02003388 enforceSingleParent: arg_enforceSingleParent,
Martin Kustermann5eb85c12017-09-11 12:35:54 +02003389 ignoreDefaultVisibility: arg_ignoreDefaultVisibility,
Jonas Finnemann Jensenef0c8a32020-10-07 20:58:20 +02003390 includePermissionsForView: arg_includePermissionsForView,
Martin Kustermann5eb85c12017-09-11 12:35:54 +02003391 keepRevisionForever: arg_keepRevisionForever,
3392 ocrLanguage: arg_ocrLanguage,
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02003393 supportsAllDrives: arg_supportsAllDrives,
Martin Kustermann7a3b5f52017-10-23 11:34:19 +02003394 supportsTeamDrives: arg_supportsTeamDrives,
3395 $fields: arg_$fields)
Jakob Andersen4ce761d2018-04-19 11:19:11 +02003396 .then(unittest.expectAsync1(((response) {
Martin Kustermann26171812015-12-21 15:06:06 +01003397 checkFile(response);
3398 })));
3399 });
3400
Kevin Moored0251702021-01-15 06:41:08 -08003401 unittest.test('method--create', () {
Martin Kustermann26171812015-12-21 15:06:06 +01003402 // TODO: Implement tests for media upload;
3403 // TODO: Implement tests for media download;
3404
Kevin Moore6d21e902021-01-15 06:41:08 -08003405 var mock = HttpServerMock();
3406 api.FilesResourceApi res = api.DriveApi(mock).files;
Martin Kustermann26171812015-12-21 15:06:06 +01003407 var arg_request = buildFile();
Jonas Finnemann Jensen94d5b4d2020-05-07 12:00:14 +02003408 var arg_enforceSingleParent = true;
Martin Kustermann26171812015-12-21 15:06:06 +01003409 var arg_ignoreDefaultVisibility = true;
Kevin Moored0251702021-01-15 06:41:08 -08003410 var arg_includePermissionsForView = 'foo';
Martin Kustermann26171812015-12-21 15:06:06 +01003411 var arg_keepRevisionForever = true;
Kevin Moored0251702021-01-15 06:41:08 -08003412 var arg_ocrLanguage = 'foo';
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02003413 var arg_supportsAllDrives = true;
Martin Kustermann77f42ff2017-03-06 13:56:35 +01003414 var arg_supportsTeamDrives = true;
Martin Kustermann26171812015-12-21 15:06:06 +01003415 var arg_useContentAsIndexableText = true;
Kevin Moored0251702021-01-15 06:41:08 -08003416 var arg_$fields = 'foo';
Martin Kustermann3953f0d2017-06-12 16:59:53 +02003417 mock.register(unittest.expectAsync2((http.BaseRequest req, json) {
Kevin Moore6d21e902021-01-15 06:41:08 -08003418 var obj = api.File.fromJson(json);
Martin Kustermann26171812015-12-21 15:06:06 +01003419 checkFile(obj);
3420
3421 var path = (req.url).path;
3422 var pathOffset = 0;
Kevin Moore6d21e902021-01-15 06:41:08 -08003423 core.int index;
3424 core.String subPart;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02003425 unittest.expect(
3426 path.substring(pathOffset, pathOffset + 1), unittest.equals("/"));
Martin Kustermann26171812015-12-21 15:06:06 +01003427 pathOffset += 1;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02003428 unittest.expect(path.substring(pathOffset, pathOffset + 9),
3429 unittest.equals("drive/v3/"));
Martin Kustermann26171812015-12-21 15:06:06 +01003430 pathOffset += 9;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02003431 unittest.expect(path.substring(pathOffset, pathOffset + 5),
3432 unittest.equals("files"));
Martin Kustermann26171812015-12-21 15:06:06 +01003433 pathOffset += 5;
3434
3435 var query = (req.url).query;
3436 var queryOffset = 0;
Jakob Andersen52715df2018-05-01 13:58:48 +02003437 var queryMap = <core.String, core.List<core.String>>{};
Kevin Moore6d21e902021-01-15 06:41:08 -08003438 void addQueryParam(n, v) => queryMap.putIfAbsent(n, () => []).add(v);
Martin Kustermann5eb85c12017-09-11 12:35:54 +02003439
Kevin Moore6d21e902021-01-15 06:41:08 -08003440 if (query.isNotEmpty) {
Kevin Moored0251702021-01-15 06:41:08 -08003441 for (var part in query.split('&')) {
3442 var keyValue = part.split('=');
Kevin Moore6d21e902021-01-15 06:41:08 -08003443 addQueryParam(
3444 core.Uri.decodeQueryComponent(keyValue[0]),
3445 core.Uri.decodeQueryComponent(keyValue[1]),
3446 );
Martin Kustermann26171812015-12-21 15:06:06 +01003447 }
3448 }
Jonas Finnemann Jensen94d5b4d2020-05-07 12:00:14 +02003449 unittest.expect(queryMap["enforceSingleParent"].first,
3450 unittest.equals("$arg_enforceSingleParent"));
Martin Kustermann5eb85c12017-09-11 12:35:54 +02003451 unittest.expect(queryMap["ignoreDefaultVisibility"].first,
3452 unittest.equals("$arg_ignoreDefaultVisibility"));
Jonas Finnemann Jensenef0c8a32020-10-07 20:58:20 +02003453 unittest.expect(queryMap["includePermissionsForView"].first,
3454 unittest.equals(arg_includePermissionsForView));
Martin Kustermann5eb85c12017-09-11 12:35:54 +02003455 unittest.expect(queryMap["keepRevisionForever"].first,
3456 unittest.equals("$arg_keepRevisionForever"));
3457 unittest.expect(
3458 queryMap["ocrLanguage"].first, unittest.equals(arg_ocrLanguage));
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02003459 unittest.expect(queryMap["supportsAllDrives"].first,
3460 unittest.equals("$arg_supportsAllDrives"));
Martin Kustermann5eb85c12017-09-11 12:35:54 +02003461 unittest.expect(queryMap["supportsTeamDrives"].first,
3462 unittest.equals("$arg_supportsTeamDrives"));
3463 unittest.expect(queryMap["useContentAsIndexableText"].first,
3464 unittest.equals("$arg_useContentAsIndexableText"));
Martin Kustermann7a3b5f52017-10-23 11:34:19 +02003465 unittest.expect(queryMap["fields"].first, unittest.equals(arg_$fields));
Martin Kustermann26171812015-12-21 15:06:06 +01003466
3467 var h = {
Kevin Moored0251702021-01-15 06:41:08 -08003468 'content-type': 'application/json; charset=utf-8',
Martin Kustermann26171812015-12-21 15:06:06 +01003469 };
Jakob Andersen52715df2018-05-01 13:58:48 +02003470 var resp = convert.json.encode(buildFile());
Kevin Moore6d21e902021-01-15 06:41:08 -08003471 return async.Future.value(stringResponse(200, h, resp));
Martin Kustermann26171812015-12-21 15:06:06 +01003472 }), true);
Martin Kustermann5eb85c12017-09-11 12:35:54 +02003473 res
3474 .create(arg_request,
Jonas Finnemann Jensen94d5b4d2020-05-07 12:00:14 +02003475 enforceSingleParent: arg_enforceSingleParent,
Martin Kustermann5eb85c12017-09-11 12:35:54 +02003476 ignoreDefaultVisibility: arg_ignoreDefaultVisibility,
Jonas Finnemann Jensenef0c8a32020-10-07 20:58:20 +02003477 includePermissionsForView: arg_includePermissionsForView,
Martin Kustermann5eb85c12017-09-11 12:35:54 +02003478 keepRevisionForever: arg_keepRevisionForever,
3479 ocrLanguage: arg_ocrLanguage,
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02003480 supportsAllDrives: arg_supportsAllDrives,
Martin Kustermann5eb85c12017-09-11 12:35:54 +02003481 supportsTeamDrives: arg_supportsTeamDrives,
Martin Kustermann7a3b5f52017-10-23 11:34:19 +02003482 useContentAsIndexableText: arg_useContentAsIndexableText,
3483 $fields: arg_$fields)
Jakob Andersen4ce761d2018-04-19 11:19:11 +02003484 .then(unittest.expectAsync1(((response) {
Martin Kustermann26171812015-12-21 15:06:06 +01003485 checkFile(response);
3486 })));
3487 });
3488
Kevin Moored0251702021-01-15 06:41:08 -08003489 unittest.test('method--delete', () {
Kevin Moore6d21e902021-01-15 06:41:08 -08003490 var mock = HttpServerMock();
3491 api.FilesResourceApi res = api.DriveApi(mock).files;
Kevin Moored0251702021-01-15 06:41:08 -08003492 var arg_fileId = 'foo';
Jonas Finnemann Jensenef0c8a32020-10-07 20:58:20 +02003493 var arg_enforceSingleParent = true;
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02003494 var arg_supportsAllDrives = true;
Martin Kustermann77f42ff2017-03-06 13:56:35 +01003495 var arg_supportsTeamDrives = true;
Kevin Moored0251702021-01-15 06:41:08 -08003496 var arg_$fields = 'foo';
Martin Kustermann3953f0d2017-06-12 16:59:53 +02003497 mock.register(unittest.expectAsync2((http.BaseRequest req, json) {
Martin Kustermann26171812015-12-21 15:06:06 +01003498 var path = (req.url).path;
3499 var pathOffset = 0;
Kevin Moore6d21e902021-01-15 06:41:08 -08003500 core.int index;
3501 core.String subPart;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02003502 unittest.expect(
3503 path.substring(pathOffset, pathOffset + 1), unittest.equals("/"));
Martin Kustermann26171812015-12-21 15:06:06 +01003504 pathOffset += 1;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02003505 unittest.expect(path.substring(pathOffset, pathOffset + 9),
3506 unittest.equals("drive/v3/"));
Martin Kustermann26171812015-12-21 15:06:06 +01003507 pathOffset += 9;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02003508 unittest.expect(path.substring(pathOffset, pathOffset + 6),
3509 unittest.equals("files/"));
Martin Kustermann26171812015-12-21 15:06:06 +01003510 pathOffset += 6;
3511 subPart = core.Uri.decodeQueryComponent(path.substring(pathOffset));
3512 pathOffset = path.length;
Kevin Moored0251702021-01-15 06:41:08 -08003513 unittest.expect(subPart, unittest.equals('$arg_fileId'));
Martin Kustermann26171812015-12-21 15:06:06 +01003514
3515 var query = (req.url).query;
3516 var queryOffset = 0;
Jakob Andersen52715df2018-05-01 13:58:48 +02003517 var queryMap = <core.String, core.List<core.String>>{};
Kevin Moore6d21e902021-01-15 06:41:08 -08003518 void addQueryParam(n, v) => queryMap.putIfAbsent(n, () => []).add(v);
Martin Kustermann5eb85c12017-09-11 12:35:54 +02003519
Kevin Moore6d21e902021-01-15 06:41:08 -08003520 if (query.isNotEmpty) {
Kevin Moored0251702021-01-15 06:41:08 -08003521 for (var part in query.split('&')) {
3522 var keyValue = part.split('=');
Kevin Moore6d21e902021-01-15 06:41:08 -08003523 addQueryParam(
3524 core.Uri.decodeQueryComponent(keyValue[0]),
3525 core.Uri.decodeQueryComponent(keyValue[1]),
3526 );
Martin Kustermann26171812015-12-21 15:06:06 +01003527 }
3528 }
Jonas Finnemann Jensenef0c8a32020-10-07 20:58:20 +02003529 unittest.expect(queryMap["enforceSingleParent"].first,
3530 unittest.equals("$arg_enforceSingleParent"));
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02003531 unittest.expect(queryMap["supportsAllDrives"].first,
3532 unittest.equals("$arg_supportsAllDrives"));
Martin Kustermann5eb85c12017-09-11 12:35:54 +02003533 unittest.expect(queryMap["supportsTeamDrives"].first,
3534 unittest.equals("$arg_supportsTeamDrives"));
Martin Kustermann7a3b5f52017-10-23 11:34:19 +02003535 unittest.expect(queryMap["fields"].first, unittest.equals(arg_$fields));
Martin Kustermann26171812015-12-21 15:06:06 +01003536
3537 var h = {
Kevin Moored0251702021-01-15 06:41:08 -08003538 'content-type': 'application/json; charset=utf-8',
Martin Kustermann26171812015-12-21 15:06:06 +01003539 };
Kevin Moored0251702021-01-15 06:41:08 -08003540 var resp = '';
Kevin Moore6d21e902021-01-15 06:41:08 -08003541 return async.Future.value(stringResponse(200, h, resp));
Martin Kustermann26171812015-12-21 15:06:06 +01003542 }), true);
Martin Kustermann5eb85c12017-09-11 12:35:54 +02003543 res
Martin Kustermann7a3b5f52017-10-23 11:34:19 +02003544 .delete(arg_fileId,
Jonas Finnemann Jensenef0c8a32020-10-07 20:58:20 +02003545 enforceSingleParent: arg_enforceSingleParent,
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02003546 supportsAllDrives: arg_supportsAllDrives,
3547 supportsTeamDrives: arg_supportsTeamDrives,
3548 $fields: arg_$fields)
Martin Kustermann5eb85c12017-09-11 12:35:54 +02003549 .then(unittest.expectAsync1((_) {}));
Martin Kustermann26171812015-12-21 15:06:06 +01003550 });
3551
Kevin Moored0251702021-01-15 06:41:08 -08003552 unittest.test('method--emptyTrash', () {
Kevin Moore6d21e902021-01-15 06:41:08 -08003553 var mock = HttpServerMock();
3554 api.FilesResourceApi res = api.DriveApi(mock).files;
Jonas Finnemann Jensenef0c8a32020-10-07 20:58:20 +02003555 var arg_enforceSingleParent = true;
Kevin Moored0251702021-01-15 06:41:08 -08003556 var arg_$fields = 'foo';
Martin Kustermann3953f0d2017-06-12 16:59:53 +02003557 mock.register(unittest.expectAsync2((http.BaseRequest req, json) {
Martin Kustermann26171812015-12-21 15:06:06 +01003558 var path = (req.url).path;
3559 var pathOffset = 0;
Kevin Moore6d21e902021-01-15 06:41:08 -08003560 core.int index;
3561 core.String subPart;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02003562 unittest.expect(
3563 path.substring(pathOffset, pathOffset + 1), unittest.equals("/"));
Martin Kustermann26171812015-12-21 15:06:06 +01003564 pathOffset += 1;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02003565 unittest.expect(path.substring(pathOffset, pathOffset + 9),
3566 unittest.equals("drive/v3/"));
Martin Kustermann26171812015-12-21 15:06:06 +01003567 pathOffset += 9;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02003568 unittest.expect(path.substring(pathOffset, pathOffset + 11),
3569 unittest.equals("files/trash"));
Martin Kustermann26171812015-12-21 15:06:06 +01003570 pathOffset += 11;
3571
3572 var query = (req.url).query;
3573 var queryOffset = 0;
Jakob Andersen52715df2018-05-01 13:58:48 +02003574 var queryMap = <core.String, core.List<core.String>>{};
Kevin Moore6d21e902021-01-15 06:41:08 -08003575 void addQueryParam(n, v) => queryMap.putIfAbsent(n, () => []).add(v);
Martin Kustermann5eb85c12017-09-11 12:35:54 +02003576
Kevin Moore6d21e902021-01-15 06:41:08 -08003577 if (query.isNotEmpty) {
Kevin Moored0251702021-01-15 06:41:08 -08003578 for (var part in query.split('&')) {
3579 var keyValue = part.split('=');
Kevin Moore6d21e902021-01-15 06:41:08 -08003580 addQueryParam(
3581 core.Uri.decodeQueryComponent(keyValue[0]),
3582 core.Uri.decodeQueryComponent(keyValue[1]),
3583 );
Martin Kustermann26171812015-12-21 15:06:06 +01003584 }
3585 }
Jonas Finnemann Jensenef0c8a32020-10-07 20:58:20 +02003586 unittest.expect(queryMap["enforceSingleParent"].first,
3587 unittest.equals("$arg_enforceSingleParent"));
Martin Kustermann7a3b5f52017-10-23 11:34:19 +02003588 unittest.expect(queryMap["fields"].first, unittest.equals(arg_$fields));
Martin Kustermann26171812015-12-21 15:06:06 +01003589
Martin Kustermann26171812015-12-21 15:06:06 +01003590 var h = {
Kevin Moored0251702021-01-15 06:41:08 -08003591 'content-type': 'application/json; charset=utf-8',
Martin Kustermann26171812015-12-21 15:06:06 +01003592 };
Kevin Moored0251702021-01-15 06:41:08 -08003593 var resp = '';
Kevin Moore6d21e902021-01-15 06:41:08 -08003594 return async.Future.value(stringResponse(200, h, resp));
Martin Kustermann26171812015-12-21 15:06:06 +01003595 }), true);
Jonas Finnemann Jensenef0c8a32020-10-07 20:58:20 +02003596 res
3597 .emptyTrash(
3598 enforceSingleParent: arg_enforceSingleParent,
3599 $fields: arg_$fields)
3600 .then(unittest.expectAsync1((_) {}));
Martin Kustermann26171812015-12-21 15:06:06 +01003601 });
3602
Kevin Moored0251702021-01-15 06:41:08 -08003603 unittest.test('method--export', () {
Martin Kustermann26171812015-12-21 15:06:06 +01003604 // TODO: Implement tests for media upload;
3605 // TODO: Implement tests for media download;
3606
Kevin Moore6d21e902021-01-15 06:41:08 -08003607 var mock = HttpServerMock();
3608 api.FilesResourceApi res = api.DriveApi(mock).files;
Kevin Moored0251702021-01-15 06:41:08 -08003609 var arg_fileId = 'foo';
3610 var arg_mimeType = 'foo';
3611 var arg_$fields = 'foo';
Martin Kustermann3953f0d2017-06-12 16:59:53 +02003612 mock.register(unittest.expectAsync2((http.BaseRequest req, json) {
Martin Kustermann26171812015-12-21 15:06:06 +01003613 var path = (req.url).path;
3614 var pathOffset = 0;
Kevin Moore6d21e902021-01-15 06:41:08 -08003615 core.int index;
3616 core.String subPart;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02003617 unittest.expect(
3618 path.substring(pathOffset, pathOffset + 1), unittest.equals("/"));
Martin Kustermann26171812015-12-21 15:06:06 +01003619 pathOffset += 1;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02003620 unittest.expect(path.substring(pathOffset, pathOffset + 9),
3621 unittest.equals("drive/v3/"));
Martin Kustermann26171812015-12-21 15:06:06 +01003622 pathOffset += 9;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02003623 unittest.expect(path.substring(pathOffset, pathOffset + 6),
3624 unittest.equals("files/"));
Martin Kustermann26171812015-12-21 15:06:06 +01003625 pathOffset += 6;
Kevin Moored0251702021-01-15 06:41:08 -08003626 index = path.indexOf('/export', pathOffset);
Martin Kustermann26171812015-12-21 15:06:06 +01003627 unittest.expect(index >= 0, unittest.isTrue);
Martin Kustermann5eb85c12017-09-11 12:35:54 +02003628 subPart =
3629 core.Uri.decodeQueryComponent(path.substring(pathOffset, index));
Martin Kustermann26171812015-12-21 15:06:06 +01003630 pathOffset = index;
Kevin Moored0251702021-01-15 06:41:08 -08003631 unittest.expect(subPart, unittest.equals('$arg_fileId'));
Martin Kustermann5eb85c12017-09-11 12:35:54 +02003632 unittest.expect(path.substring(pathOffset, pathOffset + 7),
3633 unittest.equals("/export"));
Martin Kustermann26171812015-12-21 15:06:06 +01003634 pathOffset += 7;
3635
3636 var query = (req.url).query;
3637 var queryOffset = 0;
Jakob Andersen52715df2018-05-01 13:58:48 +02003638 var queryMap = <core.String, core.List<core.String>>{};
Kevin Moore6d21e902021-01-15 06:41:08 -08003639 void addQueryParam(n, v) => queryMap.putIfAbsent(n, () => []).add(v);
Martin Kustermann5eb85c12017-09-11 12:35:54 +02003640
Kevin Moore6d21e902021-01-15 06:41:08 -08003641 if (query.isNotEmpty) {
Kevin Moored0251702021-01-15 06:41:08 -08003642 for (var part in query.split('&')) {
3643 var keyValue = part.split('=');
Kevin Moore6d21e902021-01-15 06:41:08 -08003644 addQueryParam(
3645 core.Uri.decodeQueryComponent(keyValue[0]),
3646 core.Uri.decodeQueryComponent(keyValue[1]),
3647 );
Martin Kustermann26171812015-12-21 15:06:06 +01003648 }
3649 }
Martin Kustermann5eb85c12017-09-11 12:35:54 +02003650 unittest.expect(
3651 queryMap["mimeType"].first, unittest.equals(arg_mimeType));
Martin Kustermann7a3b5f52017-10-23 11:34:19 +02003652 unittest.expect(queryMap["fields"].first, unittest.equals(arg_$fields));
Martin Kustermann26171812015-12-21 15:06:06 +01003653
3654 var h = {
Kevin Moored0251702021-01-15 06:41:08 -08003655 'content-type': 'application/json; charset=utf-8',
Martin Kustermann26171812015-12-21 15:06:06 +01003656 };
Kevin Moored0251702021-01-15 06:41:08 -08003657 var resp = '';
Kevin Moore6d21e902021-01-15 06:41:08 -08003658 return async.Future.value(stringResponse(200, h, resp));
Martin Kustermann26171812015-12-21 15:06:06 +01003659 }), true);
Martin Kustermann7a3b5f52017-10-23 11:34:19 +02003660 res
3661 .export(arg_fileId, arg_mimeType, $fields: arg_$fields)
3662 .then(unittest.expectAsync1((_) {}));
Martin Kustermann26171812015-12-21 15:06:06 +01003663 });
3664
Kevin Moored0251702021-01-15 06:41:08 -08003665 unittest.test('method--generateIds', () {
Kevin Moore6d21e902021-01-15 06:41:08 -08003666 var mock = HttpServerMock();
3667 api.FilesResourceApi res = api.DriveApi(mock).files;
Martin Kustermann26171812015-12-21 15:06:06 +01003668 var arg_count = 42;
Kevin Moored0251702021-01-15 06:41:08 -08003669 var arg_space = 'foo';
3670 var arg_$fields = 'foo';
Martin Kustermann3953f0d2017-06-12 16:59:53 +02003671 mock.register(unittest.expectAsync2((http.BaseRequest req, json) {
Martin Kustermann26171812015-12-21 15:06:06 +01003672 var path = (req.url).path;
3673 var pathOffset = 0;
Kevin Moore6d21e902021-01-15 06:41:08 -08003674 core.int index;
3675 core.String subPart;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02003676 unittest.expect(
3677 path.substring(pathOffset, pathOffset + 1), unittest.equals("/"));
Martin Kustermann26171812015-12-21 15:06:06 +01003678 pathOffset += 1;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02003679 unittest.expect(path.substring(pathOffset, pathOffset + 9),
3680 unittest.equals("drive/v3/"));
Martin Kustermann26171812015-12-21 15:06:06 +01003681 pathOffset += 9;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02003682 unittest.expect(path.substring(pathOffset, pathOffset + 17),
3683 unittest.equals("files/generateIds"));
Martin Kustermann26171812015-12-21 15:06:06 +01003684 pathOffset += 17;
3685
3686 var query = (req.url).query;
3687 var queryOffset = 0;
Jakob Andersen52715df2018-05-01 13:58:48 +02003688 var queryMap = <core.String, core.List<core.String>>{};
Kevin Moore6d21e902021-01-15 06:41:08 -08003689 void addQueryParam(n, v) => queryMap.putIfAbsent(n, () => []).add(v);
Martin Kustermann5eb85c12017-09-11 12:35:54 +02003690
Kevin Moore6d21e902021-01-15 06:41:08 -08003691 if (query.isNotEmpty) {
Kevin Moored0251702021-01-15 06:41:08 -08003692 for (var part in query.split('&')) {
3693 var keyValue = part.split('=');
Kevin Moore6d21e902021-01-15 06:41:08 -08003694 addQueryParam(
3695 core.Uri.decodeQueryComponent(keyValue[0]),
3696 core.Uri.decodeQueryComponent(keyValue[1]),
3697 );
Martin Kustermann26171812015-12-21 15:06:06 +01003698 }
3699 }
Martin Kustermann5eb85c12017-09-11 12:35:54 +02003700 unittest.expect(core.int.parse(queryMap["count"].first),
3701 unittest.equals(arg_count));
Martin Kustermann26171812015-12-21 15:06:06 +01003702 unittest.expect(queryMap["space"].first, unittest.equals(arg_space));
Martin Kustermann7a3b5f52017-10-23 11:34:19 +02003703 unittest.expect(queryMap["fields"].first, unittest.equals(arg_$fields));
Martin Kustermann26171812015-12-21 15:06:06 +01003704
Martin Kustermann26171812015-12-21 15:06:06 +01003705 var h = {
Kevin Moored0251702021-01-15 06:41:08 -08003706 'content-type': 'application/json; charset=utf-8',
Martin Kustermann26171812015-12-21 15:06:06 +01003707 };
Jakob Andersen52715df2018-05-01 13:58:48 +02003708 var resp = convert.json.encode(buildGeneratedIds());
Kevin Moore6d21e902021-01-15 06:41:08 -08003709 return async.Future.value(stringResponse(200, h, resp));
Martin Kustermann26171812015-12-21 15:06:06 +01003710 }), true);
Martin Kustermann5eb85c12017-09-11 12:35:54 +02003711 res
Martin Kustermann7a3b5f52017-10-23 11:34:19 +02003712 .generateIds(count: arg_count, space: arg_space, $fields: arg_$fields)
Jakob Andersen4ce761d2018-04-19 11:19:11 +02003713 .then(unittest.expectAsync1(((response) {
Martin Kustermann26171812015-12-21 15:06:06 +01003714 checkGeneratedIds(response);
3715 })));
3716 });
3717
Kevin Moored0251702021-01-15 06:41:08 -08003718 unittest.test('method--get', () {
Martin Kustermann26171812015-12-21 15:06:06 +01003719 // TODO: Implement tests for media upload;
3720 // TODO: Implement tests for media download;
3721
Kevin Moore6d21e902021-01-15 06:41:08 -08003722 var mock = HttpServerMock();
3723 api.FilesResourceApi res = api.DriveApi(mock).files;
Kevin Moored0251702021-01-15 06:41:08 -08003724 var arg_fileId = 'foo';
Martin Kustermann26171812015-12-21 15:06:06 +01003725 var arg_acknowledgeAbuse = true;
Kevin Moored0251702021-01-15 06:41:08 -08003726 var arg_includePermissionsForView = 'foo';
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02003727 var arg_supportsAllDrives = true;
Martin Kustermann77f42ff2017-03-06 13:56:35 +01003728 var arg_supportsTeamDrives = true;
Kevin Moored0251702021-01-15 06:41:08 -08003729 var arg_$fields = 'foo';
Martin Kustermann3953f0d2017-06-12 16:59:53 +02003730 mock.register(unittest.expectAsync2((http.BaseRequest req, json) {
Martin Kustermann26171812015-12-21 15:06:06 +01003731 var path = (req.url).path;
3732 var pathOffset = 0;
Kevin Moore6d21e902021-01-15 06:41:08 -08003733 core.int index;
3734 core.String subPart;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02003735 unittest.expect(
3736 path.substring(pathOffset, pathOffset + 1), unittest.equals("/"));
Martin Kustermann26171812015-12-21 15:06:06 +01003737 pathOffset += 1;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02003738 unittest.expect(path.substring(pathOffset, pathOffset + 9),
3739 unittest.equals("drive/v3/"));
Martin Kustermann26171812015-12-21 15:06:06 +01003740 pathOffset += 9;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02003741 unittest.expect(path.substring(pathOffset, pathOffset + 6),
3742 unittest.equals("files/"));
Martin Kustermann26171812015-12-21 15:06:06 +01003743 pathOffset += 6;
3744 subPart = core.Uri.decodeQueryComponent(path.substring(pathOffset));
3745 pathOffset = path.length;
Kevin Moored0251702021-01-15 06:41:08 -08003746 unittest.expect(subPart, unittest.equals('$arg_fileId'));
Martin Kustermann26171812015-12-21 15:06:06 +01003747
3748 var query = (req.url).query;
3749 var queryOffset = 0;
Jakob Andersen52715df2018-05-01 13:58:48 +02003750 var queryMap = <core.String, core.List<core.String>>{};
Kevin Moore6d21e902021-01-15 06:41:08 -08003751 void addQueryParam(n, v) => queryMap.putIfAbsent(n, () => []).add(v);
Martin Kustermann5eb85c12017-09-11 12:35:54 +02003752
Kevin Moore6d21e902021-01-15 06:41:08 -08003753 if (query.isNotEmpty) {
Kevin Moored0251702021-01-15 06:41:08 -08003754 for (var part in query.split('&')) {
3755 var keyValue = part.split('=');
Kevin Moore6d21e902021-01-15 06:41:08 -08003756 addQueryParam(
3757 core.Uri.decodeQueryComponent(keyValue[0]),
3758 core.Uri.decodeQueryComponent(keyValue[1]),
3759 );
Martin Kustermann26171812015-12-21 15:06:06 +01003760 }
3761 }
Martin Kustermann5eb85c12017-09-11 12:35:54 +02003762 unittest.expect(queryMap["acknowledgeAbuse"].first,
3763 unittest.equals("$arg_acknowledgeAbuse"));
Jonas Finnemann Jensenef0c8a32020-10-07 20:58:20 +02003764 unittest.expect(queryMap["includePermissionsForView"].first,
3765 unittest.equals(arg_includePermissionsForView));
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02003766 unittest.expect(queryMap["supportsAllDrives"].first,
3767 unittest.equals("$arg_supportsAllDrives"));
Martin Kustermann5eb85c12017-09-11 12:35:54 +02003768 unittest.expect(queryMap["supportsTeamDrives"].first,
3769 unittest.equals("$arg_supportsTeamDrives"));
Martin Kustermann7a3b5f52017-10-23 11:34:19 +02003770 unittest.expect(queryMap["fields"].first, unittest.equals(arg_$fields));
Martin Kustermann26171812015-12-21 15:06:06 +01003771
3772 var h = {
Kevin Moored0251702021-01-15 06:41:08 -08003773 'content-type': 'application/json; charset=utf-8',
Martin Kustermann26171812015-12-21 15:06:06 +01003774 };
Jakob Andersen52715df2018-05-01 13:58:48 +02003775 var resp = convert.json.encode(buildFile());
Kevin Moore6d21e902021-01-15 06:41:08 -08003776 return async.Future.value(stringResponse(200, h, resp));
Martin Kustermann26171812015-12-21 15:06:06 +01003777 }), true);
Martin Kustermann5eb85c12017-09-11 12:35:54 +02003778 res
3779 .get(arg_fileId,
3780 acknowledgeAbuse: arg_acknowledgeAbuse,
Jonas Finnemann Jensenef0c8a32020-10-07 20:58:20 +02003781 includePermissionsForView: arg_includePermissionsForView,
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02003782 supportsAllDrives: arg_supportsAllDrives,
Martin Kustermann7a3b5f52017-10-23 11:34:19 +02003783 supportsTeamDrives: arg_supportsTeamDrives,
3784 $fields: arg_$fields)
Jakob Andersen4ce761d2018-04-19 11:19:11 +02003785 .then(unittest.expectAsync1(((response) {
Martin Kustermann26171812015-12-21 15:06:06 +01003786 checkFile(response);
3787 })));
3788 });
3789
Kevin Moored0251702021-01-15 06:41:08 -08003790 unittest.test('method--list', () {
Kevin Moore6d21e902021-01-15 06:41:08 -08003791 var mock = HttpServerMock();
3792 api.FilesResourceApi res = api.DriveApi(mock).files;
Kevin Moored0251702021-01-15 06:41:08 -08003793 var arg_corpora = 'foo';
3794 var arg_corpus = 'foo';
3795 var arg_driveId = 'foo';
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02003796 var arg_includeItemsFromAllDrives = true;
Kevin Moored0251702021-01-15 06:41:08 -08003797 var arg_includePermissionsForView = 'foo';
Martin Kustermann77f42ff2017-03-06 13:56:35 +01003798 var arg_includeTeamDriveItems = true;
Kevin Moored0251702021-01-15 06:41:08 -08003799 var arg_orderBy = 'foo';
Martin Kustermann26171812015-12-21 15:06:06 +01003800 var arg_pageSize = 42;
Kevin Moored0251702021-01-15 06:41:08 -08003801 var arg_pageToken = 'foo';
3802 var arg_q = 'foo';
3803 var arg_spaces = 'foo';
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02003804 var arg_supportsAllDrives = true;
Martin Kustermann77f42ff2017-03-06 13:56:35 +01003805 var arg_supportsTeamDrives = true;
Kevin Moored0251702021-01-15 06:41:08 -08003806 var arg_teamDriveId = 'foo';
3807 var arg_$fields = 'foo';
Martin Kustermann3953f0d2017-06-12 16:59:53 +02003808 mock.register(unittest.expectAsync2((http.BaseRequest req, json) {
Martin Kustermann26171812015-12-21 15:06:06 +01003809 var path = (req.url).path;
3810 var pathOffset = 0;
Kevin Moore6d21e902021-01-15 06:41:08 -08003811 core.int index;
3812 core.String subPart;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02003813 unittest.expect(
3814 path.substring(pathOffset, pathOffset + 1), unittest.equals("/"));
Martin Kustermann26171812015-12-21 15:06:06 +01003815 pathOffset += 1;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02003816 unittest.expect(path.substring(pathOffset, pathOffset + 9),
3817 unittest.equals("drive/v3/"));
Martin Kustermann26171812015-12-21 15:06:06 +01003818 pathOffset += 9;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02003819 unittest.expect(path.substring(pathOffset, pathOffset + 5),
3820 unittest.equals("files"));
Martin Kustermann26171812015-12-21 15:06:06 +01003821 pathOffset += 5;
3822
3823 var query = (req.url).query;
3824 var queryOffset = 0;
Jakob Andersen52715df2018-05-01 13:58:48 +02003825 var queryMap = <core.String, core.List<core.String>>{};
Kevin Moore6d21e902021-01-15 06:41:08 -08003826 void addQueryParam(n, v) => queryMap.putIfAbsent(n, () => []).add(v);
Martin Kustermann5eb85c12017-09-11 12:35:54 +02003827
Kevin Moore6d21e902021-01-15 06:41:08 -08003828 if (query.isNotEmpty) {
Kevin Moored0251702021-01-15 06:41:08 -08003829 for (var part in query.split('&')) {
3830 var keyValue = part.split('=');
Kevin Moore6d21e902021-01-15 06:41:08 -08003831 addQueryParam(
3832 core.Uri.decodeQueryComponent(keyValue[0]),
3833 core.Uri.decodeQueryComponent(keyValue[1]),
3834 );
Martin Kustermann26171812015-12-21 15:06:06 +01003835 }
3836 }
Martin Kustermann5eb85c12017-09-11 12:35:54 +02003837 unittest.expect(
3838 queryMap["corpora"].first, unittest.equals(arg_corpora));
Martin Kustermann26171812015-12-21 15:06:06 +01003839 unittest.expect(queryMap["corpus"].first, unittest.equals(arg_corpus));
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02003840 unittest.expect(
3841 queryMap["driveId"].first, unittest.equals(arg_driveId));
3842 unittest.expect(queryMap["includeItemsFromAllDrives"].first,
3843 unittest.equals("$arg_includeItemsFromAllDrives"));
Jonas Finnemann Jensenef0c8a32020-10-07 20:58:20 +02003844 unittest.expect(queryMap["includePermissionsForView"].first,
3845 unittest.equals(arg_includePermissionsForView));
Martin Kustermann5eb85c12017-09-11 12:35:54 +02003846 unittest.expect(queryMap["includeTeamDriveItems"].first,
3847 unittest.equals("$arg_includeTeamDriveItems"));
3848 unittest.expect(
3849 queryMap["orderBy"].first, unittest.equals(arg_orderBy));
3850 unittest.expect(core.int.parse(queryMap["pageSize"].first),
3851 unittest.equals(arg_pageSize));
3852 unittest.expect(
3853 queryMap["pageToken"].first, unittest.equals(arg_pageToken));
Martin Kustermann26171812015-12-21 15:06:06 +01003854 unittest.expect(queryMap["q"].first, unittest.equals(arg_q));
3855 unittest.expect(queryMap["spaces"].first, unittest.equals(arg_spaces));
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02003856 unittest.expect(queryMap["supportsAllDrives"].first,
3857 unittest.equals("$arg_supportsAllDrives"));
Martin Kustermann5eb85c12017-09-11 12:35:54 +02003858 unittest.expect(queryMap["supportsTeamDrives"].first,
3859 unittest.equals("$arg_supportsTeamDrives"));
3860 unittest.expect(
3861 queryMap["teamDriveId"].first, unittest.equals(arg_teamDriveId));
Martin Kustermann7a3b5f52017-10-23 11:34:19 +02003862 unittest.expect(queryMap["fields"].first, unittest.equals(arg_$fields));
Martin Kustermann26171812015-12-21 15:06:06 +01003863
3864 var h = {
Kevin Moored0251702021-01-15 06:41:08 -08003865 'content-type': 'application/json; charset=utf-8',
Martin Kustermann26171812015-12-21 15:06:06 +01003866 };
Jakob Andersen52715df2018-05-01 13:58:48 +02003867 var resp = convert.json.encode(buildFileList());
Kevin Moore6d21e902021-01-15 06:41:08 -08003868 return async.Future.value(stringResponse(200, h, resp));
Martin Kustermann26171812015-12-21 15:06:06 +01003869 }), true);
Martin Kustermann5eb85c12017-09-11 12:35:54 +02003870 res
3871 .list(
3872 corpora: arg_corpora,
3873 corpus: arg_corpus,
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02003874 driveId: arg_driveId,
3875 includeItemsFromAllDrives: arg_includeItemsFromAllDrives,
Jonas Finnemann Jensenef0c8a32020-10-07 20:58:20 +02003876 includePermissionsForView: arg_includePermissionsForView,
Martin Kustermann5eb85c12017-09-11 12:35:54 +02003877 includeTeamDriveItems: arg_includeTeamDriveItems,
3878 orderBy: arg_orderBy,
3879 pageSize: arg_pageSize,
3880 pageToken: arg_pageToken,
3881 q: arg_q,
3882 spaces: arg_spaces,
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02003883 supportsAllDrives: arg_supportsAllDrives,
Martin Kustermann5eb85c12017-09-11 12:35:54 +02003884 supportsTeamDrives: arg_supportsTeamDrives,
Martin Kustermann7a3b5f52017-10-23 11:34:19 +02003885 teamDriveId: arg_teamDriveId,
3886 $fields: arg_$fields)
Jakob Andersen4ce761d2018-04-19 11:19:11 +02003887 .then(unittest.expectAsync1(((response) {
Martin Kustermann26171812015-12-21 15:06:06 +01003888 checkFileList(response);
3889 })));
3890 });
3891
Kevin Moored0251702021-01-15 06:41:08 -08003892 unittest.test('method--update', () {
Martin Kustermann26171812015-12-21 15:06:06 +01003893 // TODO: Implement tests for media upload;
3894 // TODO: Implement tests for media download;
3895
Kevin Moore6d21e902021-01-15 06:41:08 -08003896 var mock = HttpServerMock();
3897 api.FilesResourceApi res = api.DriveApi(mock).files;
Martin Kustermann26171812015-12-21 15:06:06 +01003898 var arg_request = buildFile();
Kevin Moored0251702021-01-15 06:41:08 -08003899 var arg_fileId = 'foo';
3900 var arg_addParents = 'foo';
Jonas Finnemann Jensen94d5b4d2020-05-07 12:00:14 +02003901 var arg_enforceSingleParent = true;
Kevin Moored0251702021-01-15 06:41:08 -08003902 var arg_includePermissionsForView = 'foo';
Martin Kustermann26171812015-12-21 15:06:06 +01003903 var arg_keepRevisionForever = true;
Kevin Moored0251702021-01-15 06:41:08 -08003904 var arg_ocrLanguage = 'foo';
3905 var arg_removeParents = 'foo';
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02003906 var arg_supportsAllDrives = true;
Martin Kustermann77f42ff2017-03-06 13:56:35 +01003907 var arg_supportsTeamDrives = true;
Martin Kustermann26171812015-12-21 15:06:06 +01003908 var arg_useContentAsIndexableText = true;
Kevin Moored0251702021-01-15 06:41:08 -08003909 var arg_$fields = 'foo';
Martin Kustermann3953f0d2017-06-12 16:59:53 +02003910 mock.register(unittest.expectAsync2((http.BaseRequest req, json) {
Kevin Moore6d21e902021-01-15 06:41:08 -08003911 var obj = api.File.fromJson(json);
Martin Kustermann26171812015-12-21 15:06:06 +01003912 checkFile(obj);
3913
3914 var path = (req.url).path;
3915 var pathOffset = 0;
Kevin Moore6d21e902021-01-15 06:41:08 -08003916 core.int index;
3917 core.String subPart;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02003918 unittest.expect(
3919 path.substring(pathOffset, pathOffset + 1), unittest.equals("/"));
Martin Kustermann26171812015-12-21 15:06:06 +01003920 pathOffset += 1;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02003921 unittest.expect(path.substring(pathOffset, pathOffset + 9),
3922 unittest.equals("drive/v3/"));
Martin Kustermann26171812015-12-21 15:06:06 +01003923 pathOffset += 9;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02003924 unittest.expect(path.substring(pathOffset, pathOffset + 6),
3925 unittest.equals("files/"));
Martin Kustermann26171812015-12-21 15:06:06 +01003926 pathOffset += 6;
3927 subPart = core.Uri.decodeQueryComponent(path.substring(pathOffset));
3928 pathOffset = path.length;
Kevin Moored0251702021-01-15 06:41:08 -08003929 unittest.expect(subPart, unittest.equals('$arg_fileId'));
Martin Kustermann26171812015-12-21 15:06:06 +01003930
3931 var query = (req.url).query;
3932 var queryOffset = 0;
Jakob Andersen52715df2018-05-01 13:58:48 +02003933 var queryMap = <core.String, core.List<core.String>>{};
Kevin Moore6d21e902021-01-15 06:41:08 -08003934 void addQueryParam(n, v) => queryMap.putIfAbsent(n, () => []).add(v);
Martin Kustermann5eb85c12017-09-11 12:35:54 +02003935
Kevin Moore6d21e902021-01-15 06:41:08 -08003936 if (query.isNotEmpty) {
Kevin Moored0251702021-01-15 06:41:08 -08003937 for (var part in query.split('&')) {
3938 var keyValue = part.split('=');
Kevin Moore6d21e902021-01-15 06:41:08 -08003939 addQueryParam(
3940 core.Uri.decodeQueryComponent(keyValue[0]),
3941 core.Uri.decodeQueryComponent(keyValue[1]),
3942 );
Martin Kustermann26171812015-12-21 15:06:06 +01003943 }
3944 }
Martin Kustermann5eb85c12017-09-11 12:35:54 +02003945 unittest.expect(
3946 queryMap["addParents"].first, unittest.equals(arg_addParents));
Jonas Finnemann Jensen94d5b4d2020-05-07 12:00:14 +02003947 unittest.expect(queryMap["enforceSingleParent"].first,
3948 unittest.equals("$arg_enforceSingleParent"));
Jonas Finnemann Jensenef0c8a32020-10-07 20:58:20 +02003949 unittest.expect(queryMap["includePermissionsForView"].first,
3950 unittest.equals(arg_includePermissionsForView));
Martin Kustermann5eb85c12017-09-11 12:35:54 +02003951 unittest.expect(queryMap["keepRevisionForever"].first,
3952 unittest.equals("$arg_keepRevisionForever"));
3953 unittest.expect(
3954 queryMap["ocrLanguage"].first, unittest.equals(arg_ocrLanguage));
3955 unittest.expect(queryMap["removeParents"].first,
3956 unittest.equals(arg_removeParents));
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02003957 unittest.expect(queryMap["supportsAllDrives"].first,
3958 unittest.equals("$arg_supportsAllDrives"));
Martin Kustermann5eb85c12017-09-11 12:35:54 +02003959 unittest.expect(queryMap["supportsTeamDrives"].first,
3960 unittest.equals("$arg_supportsTeamDrives"));
3961 unittest.expect(queryMap["useContentAsIndexableText"].first,
3962 unittest.equals("$arg_useContentAsIndexableText"));
Martin Kustermann7a3b5f52017-10-23 11:34:19 +02003963 unittest.expect(queryMap["fields"].first, unittest.equals(arg_$fields));
Martin Kustermann26171812015-12-21 15:06:06 +01003964
3965 var h = {
Kevin Moored0251702021-01-15 06:41:08 -08003966 'content-type': 'application/json; charset=utf-8',
Martin Kustermann26171812015-12-21 15:06:06 +01003967 };
Jakob Andersen52715df2018-05-01 13:58:48 +02003968 var resp = convert.json.encode(buildFile());
Kevin Moore6d21e902021-01-15 06:41:08 -08003969 return async.Future.value(stringResponse(200, h, resp));
Martin Kustermann26171812015-12-21 15:06:06 +01003970 }), true);
Martin Kustermann5eb85c12017-09-11 12:35:54 +02003971 res
3972 .update(arg_request, arg_fileId,
3973 addParents: arg_addParents,
Jonas Finnemann Jensen94d5b4d2020-05-07 12:00:14 +02003974 enforceSingleParent: arg_enforceSingleParent,
Jonas Finnemann Jensenef0c8a32020-10-07 20:58:20 +02003975 includePermissionsForView: arg_includePermissionsForView,
Martin Kustermann5eb85c12017-09-11 12:35:54 +02003976 keepRevisionForever: arg_keepRevisionForever,
3977 ocrLanguage: arg_ocrLanguage,
3978 removeParents: arg_removeParents,
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02003979 supportsAllDrives: arg_supportsAllDrives,
Martin Kustermann5eb85c12017-09-11 12:35:54 +02003980 supportsTeamDrives: arg_supportsTeamDrives,
Martin Kustermann7a3b5f52017-10-23 11:34:19 +02003981 useContentAsIndexableText: arg_useContentAsIndexableText,
3982 $fields: arg_$fields)
Jakob Andersen4ce761d2018-04-19 11:19:11 +02003983 .then(unittest.expectAsync1(((response) {
Martin Kustermann26171812015-12-21 15:06:06 +01003984 checkFile(response);
3985 })));
3986 });
3987
Kevin Moored0251702021-01-15 06:41:08 -08003988 unittest.test('method--watch', () {
Martin Kustermann26171812015-12-21 15:06:06 +01003989 // TODO: Implement tests for media upload;
3990 // TODO: Implement tests for media download;
3991
Kevin Moore6d21e902021-01-15 06:41:08 -08003992 var mock = HttpServerMock();
3993 api.FilesResourceApi res = api.DriveApi(mock).files;
Martin Kustermann26171812015-12-21 15:06:06 +01003994 var arg_request = buildChannel();
Kevin Moored0251702021-01-15 06:41:08 -08003995 var arg_fileId = 'foo';
Martin Kustermann26171812015-12-21 15:06:06 +01003996 var arg_acknowledgeAbuse = true;
Kevin Moored0251702021-01-15 06:41:08 -08003997 var arg_includePermissionsForView = 'foo';
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02003998 var arg_supportsAllDrives = true;
Martin Kustermann77f42ff2017-03-06 13:56:35 +01003999 var arg_supportsTeamDrives = true;
Kevin Moored0251702021-01-15 06:41:08 -08004000 var arg_$fields = 'foo';
Martin Kustermann3953f0d2017-06-12 16:59:53 +02004001 mock.register(unittest.expectAsync2((http.BaseRequest req, json) {
Kevin Moore6d21e902021-01-15 06:41:08 -08004002 var obj = api.Channel.fromJson(json);
Martin Kustermann26171812015-12-21 15:06:06 +01004003 checkChannel(obj);
4004
4005 var path = (req.url).path;
4006 var pathOffset = 0;
Kevin Moore6d21e902021-01-15 06:41:08 -08004007 core.int index;
4008 core.String subPart;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004009 unittest.expect(
4010 path.substring(pathOffset, pathOffset + 1), unittest.equals("/"));
Martin Kustermann26171812015-12-21 15:06:06 +01004011 pathOffset += 1;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004012 unittest.expect(path.substring(pathOffset, pathOffset + 9),
4013 unittest.equals("drive/v3/"));
Martin Kustermann26171812015-12-21 15:06:06 +01004014 pathOffset += 9;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004015 unittest.expect(path.substring(pathOffset, pathOffset + 6),
4016 unittest.equals("files/"));
Martin Kustermann26171812015-12-21 15:06:06 +01004017 pathOffset += 6;
Kevin Moored0251702021-01-15 06:41:08 -08004018 index = path.indexOf('/watch', pathOffset);
Martin Kustermann26171812015-12-21 15:06:06 +01004019 unittest.expect(index >= 0, unittest.isTrue);
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004020 subPart =
4021 core.Uri.decodeQueryComponent(path.substring(pathOffset, index));
Martin Kustermann26171812015-12-21 15:06:06 +01004022 pathOffset = index;
Kevin Moored0251702021-01-15 06:41:08 -08004023 unittest.expect(subPart, unittest.equals('$arg_fileId'));
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004024 unittest.expect(path.substring(pathOffset, pathOffset + 6),
4025 unittest.equals("/watch"));
Martin Kustermann26171812015-12-21 15:06:06 +01004026 pathOffset += 6;
4027
4028 var query = (req.url).query;
4029 var queryOffset = 0;
Jakob Andersen52715df2018-05-01 13:58:48 +02004030 var queryMap = <core.String, core.List<core.String>>{};
Kevin Moore6d21e902021-01-15 06:41:08 -08004031 void addQueryParam(n, v) => queryMap.putIfAbsent(n, () => []).add(v);
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004032
Kevin Moore6d21e902021-01-15 06:41:08 -08004033 if (query.isNotEmpty) {
Kevin Moored0251702021-01-15 06:41:08 -08004034 for (var part in query.split('&')) {
4035 var keyValue = part.split('=');
Kevin Moore6d21e902021-01-15 06:41:08 -08004036 addQueryParam(
4037 core.Uri.decodeQueryComponent(keyValue[0]),
4038 core.Uri.decodeQueryComponent(keyValue[1]),
4039 );
Martin Kustermann26171812015-12-21 15:06:06 +01004040 }
4041 }
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004042 unittest.expect(queryMap["acknowledgeAbuse"].first,
4043 unittest.equals("$arg_acknowledgeAbuse"));
Jonas Finnemann Jensenef0c8a32020-10-07 20:58:20 +02004044 unittest.expect(queryMap["includePermissionsForView"].first,
4045 unittest.equals(arg_includePermissionsForView));
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02004046 unittest.expect(queryMap["supportsAllDrives"].first,
4047 unittest.equals("$arg_supportsAllDrives"));
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004048 unittest.expect(queryMap["supportsTeamDrives"].first,
4049 unittest.equals("$arg_supportsTeamDrives"));
Martin Kustermann7a3b5f52017-10-23 11:34:19 +02004050 unittest.expect(queryMap["fields"].first, unittest.equals(arg_$fields));
Martin Kustermann26171812015-12-21 15:06:06 +01004051
4052 var h = {
Kevin Moored0251702021-01-15 06:41:08 -08004053 'content-type': 'application/json; charset=utf-8',
Martin Kustermann26171812015-12-21 15:06:06 +01004054 };
Jakob Andersen52715df2018-05-01 13:58:48 +02004055 var resp = convert.json.encode(buildChannel());
Kevin Moore6d21e902021-01-15 06:41:08 -08004056 return async.Future.value(stringResponse(200, h, resp));
Martin Kustermann26171812015-12-21 15:06:06 +01004057 }), true);
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004058 res
4059 .watch(arg_request, arg_fileId,
4060 acknowledgeAbuse: arg_acknowledgeAbuse,
Jonas Finnemann Jensenef0c8a32020-10-07 20:58:20 +02004061 includePermissionsForView: arg_includePermissionsForView,
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02004062 supportsAllDrives: arg_supportsAllDrives,
Martin Kustermann7a3b5f52017-10-23 11:34:19 +02004063 supportsTeamDrives: arg_supportsTeamDrives,
4064 $fields: arg_$fields)
Jakob Andersen4ce761d2018-04-19 11:19:11 +02004065 .then(unittest.expectAsync1(((response) {
Martin Kustermann26171812015-12-21 15:06:06 +01004066 checkChannel(response);
4067 })));
4068 });
Martin Kustermann26171812015-12-21 15:06:06 +01004069 });
4070
Kevin Moored0251702021-01-15 06:41:08 -08004071 unittest.group('resource-PermissionsResourceApi', () {
4072 unittest.test('method--create', () {
Kevin Moore6d21e902021-01-15 06:41:08 -08004073 var mock = HttpServerMock();
4074 api.PermissionsResourceApi res = api.DriveApi(mock).permissions;
Martin Kustermann26171812015-12-21 15:06:06 +01004075 var arg_request = buildPermission();
Kevin Moored0251702021-01-15 06:41:08 -08004076 var arg_fileId = 'foo';
4077 var arg_emailMessage = 'foo';
Jonas Finnemann Jensen94d5b4d2020-05-07 12:00:14 +02004078 var arg_enforceSingleParent = true;
4079 var arg_moveToNewOwnersRoot = true;
Martin Kustermann26171812015-12-21 15:06:06 +01004080 var arg_sendNotificationEmail = true;
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02004081 var arg_supportsAllDrives = true;
Martin Kustermann77f42ff2017-03-06 13:56:35 +01004082 var arg_supportsTeamDrives = true;
Martin Kustermann26171812015-12-21 15:06:06 +01004083 var arg_transferOwnership = true;
Martin Kustermann2a131182017-11-13 13:50:07 +01004084 var arg_useDomainAdminAccess = true;
Kevin Moored0251702021-01-15 06:41:08 -08004085 var arg_$fields = 'foo';
Martin Kustermann3953f0d2017-06-12 16:59:53 +02004086 mock.register(unittest.expectAsync2((http.BaseRequest req, json) {
Kevin Moore6d21e902021-01-15 06:41:08 -08004087 var obj = api.Permission.fromJson(json);
Martin Kustermann26171812015-12-21 15:06:06 +01004088 checkPermission(obj);
4089
4090 var path = (req.url).path;
4091 var pathOffset = 0;
Kevin Moore6d21e902021-01-15 06:41:08 -08004092 core.int index;
4093 core.String subPart;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004094 unittest.expect(
4095 path.substring(pathOffset, pathOffset + 1), unittest.equals("/"));
Martin Kustermann26171812015-12-21 15:06:06 +01004096 pathOffset += 1;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004097 unittest.expect(path.substring(pathOffset, pathOffset + 9),
4098 unittest.equals("drive/v3/"));
Martin Kustermann26171812015-12-21 15:06:06 +01004099 pathOffset += 9;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004100 unittest.expect(path.substring(pathOffset, pathOffset + 6),
4101 unittest.equals("files/"));
Martin Kustermann26171812015-12-21 15:06:06 +01004102 pathOffset += 6;
Kevin Moored0251702021-01-15 06:41:08 -08004103 index = path.indexOf('/permissions', pathOffset);
Martin Kustermann26171812015-12-21 15:06:06 +01004104 unittest.expect(index >= 0, unittest.isTrue);
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004105 subPart =
4106 core.Uri.decodeQueryComponent(path.substring(pathOffset, index));
Martin Kustermann26171812015-12-21 15:06:06 +01004107 pathOffset = index;
Kevin Moored0251702021-01-15 06:41:08 -08004108 unittest.expect(subPart, unittest.equals('$arg_fileId'));
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004109 unittest.expect(path.substring(pathOffset, pathOffset + 12),
4110 unittest.equals("/permissions"));
Martin Kustermann26171812015-12-21 15:06:06 +01004111 pathOffset += 12;
4112
4113 var query = (req.url).query;
4114 var queryOffset = 0;
Jakob Andersen52715df2018-05-01 13:58:48 +02004115 var queryMap = <core.String, core.List<core.String>>{};
Kevin Moore6d21e902021-01-15 06:41:08 -08004116 void addQueryParam(n, v) => queryMap.putIfAbsent(n, () => []).add(v);
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004117
Kevin Moore6d21e902021-01-15 06:41:08 -08004118 if (query.isNotEmpty) {
Kevin Moored0251702021-01-15 06:41:08 -08004119 for (var part in query.split('&')) {
4120 var keyValue = part.split('=');
Kevin Moore6d21e902021-01-15 06:41:08 -08004121 addQueryParam(
4122 core.Uri.decodeQueryComponent(keyValue[0]),
4123 core.Uri.decodeQueryComponent(keyValue[1]),
4124 );
Martin Kustermann26171812015-12-21 15:06:06 +01004125 }
4126 }
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004127 unittest.expect(
4128 queryMap["emailMessage"].first, unittest.equals(arg_emailMessage));
Jonas Finnemann Jensen94d5b4d2020-05-07 12:00:14 +02004129 unittest.expect(queryMap["enforceSingleParent"].first,
4130 unittest.equals("$arg_enforceSingleParent"));
4131 unittest.expect(queryMap["moveToNewOwnersRoot"].first,
4132 unittest.equals("$arg_moveToNewOwnersRoot"));
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004133 unittest.expect(queryMap["sendNotificationEmail"].first,
4134 unittest.equals("$arg_sendNotificationEmail"));
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02004135 unittest.expect(queryMap["supportsAllDrives"].first,
4136 unittest.equals("$arg_supportsAllDrives"));
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004137 unittest.expect(queryMap["supportsTeamDrives"].first,
4138 unittest.equals("$arg_supportsTeamDrives"));
4139 unittest.expect(queryMap["transferOwnership"].first,
4140 unittest.equals("$arg_transferOwnership"));
Martin Kustermann2a131182017-11-13 13:50:07 +01004141 unittest.expect(queryMap["useDomainAdminAccess"].first,
4142 unittest.equals("$arg_useDomainAdminAccess"));
Martin Kustermann7a3b5f52017-10-23 11:34:19 +02004143 unittest.expect(queryMap["fields"].first, unittest.equals(arg_$fields));
Martin Kustermann26171812015-12-21 15:06:06 +01004144
4145 var h = {
Kevin Moored0251702021-01-15 06:41:08 -08004146 'content-type': 'application/json; charset=utf-8',
Martin Kustermann26171812015-12-21 15:06:06 +01004147 };
Jakob Andersen52715df2018-05-01 13:58:48 +02004148 var resp = convert.json.encode(buildPermission());
Kevin Moore6d21e902021-01-15 06:41:08 -08004149 return async.Future.value(stringResponse(200, h, resp));
Martin Kustermann26171812015-12-21 15:06:06 +01004150 }), true);
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004151 res
4152 .create(arg_request, arg_fileId,
4153 emailMessage: arg_emailMessage,
Jonas Finnemann Jensen94d5b4d2020-05-07 12:00:14 +02004154 enforceSingleParent: arg_enforceSingleParent,
4155 moveToNewOwnersRoot: arg_moveToNewOwnersRoot,
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004156 sendNotificationEmail: arg_sendNotificationEmail,
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02004157 supportsAllDrives: arg_supportsAllDrives,
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004158 supportsTeamDrives: arg_supportsTeamDrives,
Martin Kustermann7a3b5f52017-10-23 11:34:19 +02004159 transferOwnership: arg_transferOwnership,
Martin Kustermann2a131182017-11-13 13:50:07 +01004160 useDomainAdminAccess: arg_useDomainAdminAccess,
Martin Kustermann7a3b5f52017-10-23 11:34:19 +02004161 $fields: arg_$fields)
Jakob Andersen4ce761d2018-04-19 11:19:11 +02004162 .then(unittest.expectAsync1(((response) {
Martin Kustermann26171812015-12-21 15:06:06 +01004163 checkPermission(response);
4164 })));
4165 });
4166
Kevin Moored0251702021-01-15 06:41:08 -08004167 unittest.test('method--delete', () {
Kevin Moore6d21e902021-01-15 06:41:08 -08004168 var mock = HttpServerMock();
4169 api.PermissionsResourceApi res = api.DriveApi(mock).permissions;
Kevin Moored0251702021-01-15 06:41:08 -08004170 var arg_fileId = 'foo';
4171 var arg_permissionId = 'foo';
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02004172 var arg_supportsAllDrives = true;
Martin Kustermann77f42ff2017-03-06 13:56:35 +01004173 var arg_supportsTeamDrives = true;
Martin Kustermann2a131182017-11-13 13:50:07 +01004174 var arg_useDomainAdminAccess = true;
Kevin Moored0251702021-01-15 06:41:08 -08004175 var arg_$fields = 'foo';
Martin Kustermann3953f0d2017-06-12 16:59:53 +02004176 mock.register(unittest.expectAsync2((http.BaseRequest req, json) {
Martin Kustermann26171812015-12-21 15:06:06 +01004177 var path = (req.url).path;
4178 var pathOffset = 0;
Kevin Moore6d21e902021-01-15 06:41:08 -08004179 core.int index;
4180 core.String subPart;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004181 unittest.expect(
4182 path.substring(pathOffset, pathOffset + 1), unittest.equals("/"));
Martin Kustermann26171812015-12-21 15:06:06 +01004183 pathOffset += 1;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004184 unittest.expect(path.substring(pathOffset, pathOffset + 9),
4185 unittest.equals("drive/v3/"));
Martin Kustermann26171812015-12-21 15:06:06 +01004186 pathOffset += 9;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004187 unittest.expect(path.substring(pathOffset, pathOffset + 6),
4188 unittest.equals("files/"));
Martin Kustermann26171812015-12-21 15:06:06 +01004189 pathOffset += 6;
Kevin Moored0251702021-01-15 06:41:08 -08004190 index = path.indexOf('/permissions/', pathOffset);
Martin Kustermann26171812015-12-21 15:06:06 +01004191 unittest.expect(index >= 0, unittest.isTrue);
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004192 subPart =
4193 core.Uri.decodeQueryComponent(path.substring(pathOffset, index));
Martin Kustermann26171812015-12-21 15:06:06 +01004194 pathOffset = index;
Kevin Moored0251702021-01-15 06:41:08 -08004195 unittest.expect(subPart, unittest.equals('$arg_fileId'));
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004196 unittest.expect(path.substring(pathOffset, pathOffset + 13),
4197 unittest.equals("/permissions/"));
Martin Kustermann26171812015-12-21 15:06:06 +01004198 pathOffset += 13;
4199 subPart = core.Uri.decodeQueryComponent(path.substring(pathOffset));
4200 pathOffset = path.length;
Kevin Moored0251702021-01-15 06:41:08 -08004201 unittest.expect(subPart, unittest.equals('$arg_permissionId'));
Martin Kustermann26171812015-12-21 15:06:06 +01004202
4203 var query = (req.url).query;
4204 var queryOffset = 0;
Jakob Andersen52715df2018-05-01 13:58:48 +02004205 var queryMap = <core.String, core.List<core.String>>{};
Kevin Moore6d21e902021-01-15 06:41:08 -08004206 void addQueryParam(n, v) => queryMap.putIfAbsent(n, () => []).add(v);
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004207
Kevin Moore6d21e902021-01-15 06:41:08 -08004208 if (query.isNotEmpty) {
Kevin Moored0251702021-01-15 06:41:08 -08004209 for (var part in query.split('&')) {
4210 var keyValue = part.split('=');
Kevin Moore6d21e902021-01-15 06:41:08 -08004211 addQueryParam(
4212 core.Uri.decodeQueryComponent(keyValue[0]),
4213 core.Uri.decodeQueryComponent(keyValue[1]),
4214 );
Martin Kustermann26171812015-12-21 15:06:06 +01004215 }
4216 }
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02004217 unittest.expect(queryMap["supportsAllDrives"].first,
4218 unittest.equals("$arg_supportsAllDrives"));
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004219 unittest.expect(queryMap["supportsTeamDrives"].first,
4220 unittest.equals("$arg_supportsTeamDrives"));
Martin Kustermann2a131182017-11-13 13:50:07 +01004221 unittest.expect(queryMap["useDomainAdminAccess"].first,
4222 unittest.equals("$arg_useDomainAdminAccess"));
Martin Kustermann7a3b5f52017-10-23 11:34:19 +02004223 unittest.expect(queryMap["fields"].first, unittest.equals(arg_$fields));
Martin Kustermann26171812015-12-21 15:06:06 +01004224
4225 var h = {
Kevin Moored0251702021-01-15 06:41:08 -08004226 'content-type': 'application/json; charset=utf-8',
Martin Kustermann26171812015-12-21 15:06:06 +01004227 };
Kevin Moored0251702021-01-15 06:41:08 -08004228 var resp = '';
Kevin Moore6d21e902021-01-15 06:41:08 -08004229 return async.Future.value(stringResponse(200, h, resp));
Martin Kustermann26171812015-12-21 15:06:06 +01004230 }), true);
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004231 res
4232 .delete(arg_fileId, arg_permissionId,
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02004233 supportsAllDrives: arg_supportsAllDrives,
Martin Kustermann2a131182017-11-13 13:50:07 +01004234 supportsTeamDrives: arg_supportsTeamDrives,
4235 useDomainAdminAccess: arg_useDomainAdminAccess,
4236 $fields: arg_$fields)
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004237 .then(unittest.expectAsync1((_) {}));
Martin Kustermann26171812015-12-21 15:06:06 +01004238 });
4239
Kevin Moored0251702021-01-15 06:41:08 -08004240 unittest.test('method--get', () {
Kevin Moore6d21e902021-01-15 06:41:08 -08004241 var mock = HttpServerMock();
4242 api.PermissionsResourceApi res = api.DriveApi(mock).permissions;
Kevin Moored0251702021-01-15 06:41:08 -08004243 var arg_fileId = 'foo';
4244 var arg_permissionId = 'foo';
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02004245 var arg_supportsAllDrives = true;
Martin Kustermann77f42ff2017-03-06 13:56:35 +01004246 var arg_supportsTeamDrives = true;
Martin Kustermann2a131182017-11-13 13:50:07 +01004247 var arg_useDomainAdminAccess = true;
Kevin Moored0251702021-01-15 06:41:08 -08004248 var arg_$fields = 'foo';
Martin Kustermann3953f0d2017-06-12 16:59:53 +02004249 mock.register(unittest.expectAsync2((http.BaseRequest req, json) {
Martin Kustermann26171812015-12-21 15:06:06 +01004250 var path = (req.url).path;
4251 var pathOffset = 0;
Kevin Moore6d21e902021-01-15 06:41:08 -08004252 core.int index;
4253 core.String subPart;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004254 unittest.expect(
4255 path.substring(pathOffset, pathOffset + 1), unittest.equals("/"));
Martin Kustermann26171812015-12-21 15:06:06 +01004256 pathOffset += 1;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004257 unittest.expect(path.substring(pathOffset, pathOffset + 9),
4258 unittest.equals("drive/v3/"));
Martin Kustermann26171812015-12-21 15:06:06 +01004259 pathOffset += 9;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004260 unittest.expect(path.substring(pathOffset, pathOffset + 6),
4261 unittest.equals("files/"));
Martin Kustermann26171812015-12-21 15:06:06 +01004262 pathOffset += 6;
Kevin Moored0251702021-01-15 06:41:08 -08004263 index = path.indexOf('/permissions/', pathOffset);
Martin Kustermann26171812015-12-21 15:06:06 +01004264 unittest.expect(index >= 0, unittest.isTrue);
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004265 subPart =
4266 core.Uri.decodeQueryComponent(path.substring(pathOffset, index));
Martin Kustermann26171812015-12-21 15:06:06 +01004267 pathOffset = index;
Kevin Moored0251702021-01-15 06:41:08 -08004268 unittest.expect(subPart, unittest.equals('$arg_fileId'));
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004269 unittest.expect(path.substring(pathOffset, pathOffset + 13),
4270 unittest.equals("/permissions/"));
Martin Kustermann26171812015-12-21 15:06:06 +01004271 pathOffset += 13;
4272 subPart = core.Uri.decodeQueryComponent(path.substring(pathOffset));
4273 pathOffset = path.length;
Kevin Moored0251702021-01-15 06:41:08 -08004274 unittest.expect(subPart, unittest.equals('$arg_permissionId'));
Martin Kustermann26171812015-12-21 15:06:06 +01004275
4276 var query = (req.url).query;
4277 var queryOffset = 0;
Jakob Andersen52715df2018-05-01 13:58:48 +02004278 var queryMap = <core.String, core.List<core.String>>{};
Kevin Moore6d21e902021-01-15 06:41:08 -08004279 void addQueryParam(n, v) => queryMap.putIfAbsent(n, () => []).add(v);
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004280
Kevin Moore6d21e902021-01-15 06:41:08 -08004281 if (query.isNotEmpty) {
Kevin Moored0251702021-01-15 06:41:08 -08004282 for (var part in query.split('&')) {
4283 var keyValue = part.split('=');
Kevin Moore6d21e902021-01-15 06:41:08 -08004284 addQueryParam(
4285 core.Uri.decodeQueryComponent(keyValue[0]),
4286 core.Uri.decodeQueryComponent(keyValue[1]),
4287 );
Martin Kustermann26171812015-12-21 15:06:06 +01004288 }
4289 }
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02004290 unittest.expect(queryMap["supportsAllDrives"].first,
4291 unittest.equals("$arg_supportsAllDrives"));
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004292 unittest.expect(queryMap["supportsTeamDrives"].first,
4293 unittest.equals("$arg_supportsTeamDrives"));
Martin Kustermann2a131182017-11-13 13:50:07 +01004294 unittest.expect(queryMap["useDomainAdminAccess"].first,
4295 unittest.equals("$arg_useDomainAdminAccess"));
Martin Kustermann7a3b5f52017-10-23 11:34:19 +02004296 unittest.expect(queryMap["fields"].first, unittest.equals(arg_$fields));
Martin Kustermann26171812015-12-21 15:06:06 +01004297
4298 var h = {
Kevin Moored0251702021-01-15 06:41:08 -08004299 'content-type': 'application/json; charset=utf-8',
Martin Kustermann26171812015-12-21 15:06:06 +01004300 };
Jakob Andersen52715df2018-05-01 13:58:48 +02004301 var resp = convert.json.encode(buildPermission());
Kevin Moore6d21e902021-01-15 06:41:08 -08004302 return async.Future.value(stringResponse(200, h, resp));
Martin Kustermann26171812015-12-21 15:06:06 +01004303 }), true);
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004304 res
4305 .get(arg_fileId, arg_permissionId,
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02004306 supportsAllDrives: arg_supportsAllDrives,
Martin Kustermann2a131182017-11-13 13:50:07 +01004307 supportsTeamDrives: arg_supportsTeamDrives,
4308 useDomainAdminAccess: arg_useDomainAdminAccess,
4309 $fields: arg_$fields)
Jakob Andersen4ce761d2018-04-19 11:19:11 +02004310 .then(unittest.expectAsync1(((response) {
Martin Kustermann26171812015-12-21 15:06:06 +01004311 checkPermission(response);
4312 })));
4313 });
4314
Kevin Moored0251702021-01-15 06:41:08 -08004315 unittest.test('method--list', () {
Kevin Moore6d21e902021-01-15 06:41:08 -08004316 var mock = HttpServerMock();
4317 api.PermissionsResourceApi res = api.DriveApi(mock).permissions;
Kevin Moored0251702021-01-15 06:41:08 -08004318 var arg_fileId = 'foo';
4319 var arg_includePermissionsForView = 'foo';
Martin Kustermann77f42ff2017-03-06 13:56:35 +01004320 var arg_pageSize = 42;
Kevin Moored0251702021-01-15 06:41:08 -08004321 var arg_pageToken = 'foo';
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02004322 var arg_supportsAllDrives = true;
Martin Kustermann77f42ff2017-03-06 13:56:35 +01004323 var arg_supportsTeamDrives = true;
Martin Kustermann2a131182017-11-13 13:50:07 +01004324 var arg_useDomainAdminAccess = true;
Kevin Moored0251702021-01-15 06:41:08 -08004325 var arg_$fields = 'foo';
Martin Kustermann3953f0d2017-06-12 16:59:53 +02004326 mock.register(unittest.expectAsync2((http.BaseRequest req, json) {
Martin Kustermann26171812015-12-21 15:06:06 +01004327 var path = (req.url).path;
4328 var pathOffset = 0;
Kevin Moore6d21e902021-01-15 06:41:08 -08004329 core.int index;
4330 core.String subPart;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004331 unittest.expect(
4332 path.substring(pathOffset, pathOffset + 1), unittest.equals("/"));
Martin Kustermann26171812015-12-21 15:06:06 +01004333 pathOffset += 1;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004334 unittest.expect(path.substring(pathOffset, pathOffset + 9),
4335 unittest.equals("drive/v3/"));
Martin Kustermann26171812015-12-21 15:06:06 +01004336 pathOffset += 9;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004337 unittest.expect(path.substring(pathOffset, pathOffset + 6),
4338 unittest.equals("files/"));
Martin Kustermann26171812015-12-21 15:06:06 +01004339 pathOffset += 6;
Kevin Moored0251702021-01-15 06:41:08 -08004340 index = path.indexOf('/permissions', pathOffset);
Martin Kustermann26171812015-12-21 15:06:06 +01004341 unittest.expect(index >= 0, unittest.isTrue);
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004342 subPart =
4343 core.Uri.decodeQueryComponent(path.substring(pathOffset, index));
Martin Kustermann26171812015-12-21 15:06:06 +01004344 pathOffset = index;
Kevin Moored0251702021-01-15 06:41:08 -08004345 unittest.expect(subPart, unittest.equals('$arg_fileId'));
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004346 unittest.expect(path.substring(pathOffset, pathOffset + 12),
4347 unittest.equals("/permissions"));
Martin Kustermann26171812015-12-21 15:06:06 +01004348 pathOffset += 12;
4349
4350 var query = (req.url).query;
4351 var queryOffset = 0;
Jakob Andersen52715df2018-05-01 13:58:48 +02004352 var queryMap = <core.String, core.List<core.String>>{};
Kevin Moore6d21e902021-01-15 06:41:08 -08004353 void addQueryParam(n, v) => queryMap.putIfAbsent(n, () => []).add(v);
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004354
Kevin Moore6d21e902021-01-15 06:41:08 -08004355 if (query.isNotEmpty) {
Kevin Moored0251702021-01-15 06:41:08 -08004356 for (var part in query.split('&')) {
4357 var keyValue = part.split('=');
Kevin Moore6d21e902021-01-15 06:41:08 -08004358 addQueryParam(
4359 core.Uri.decodeQueryComponent(keyValue[0]),
4360 core.Uri.decodeQueryComponent(keyValue[1]),
4361 );
Martin Kustermann26171812015-12-21 15:06:06 +01004362 }
4363 }
Jonas Finnemann Jensenef0c8a32020-10-07 20:58:20 +02004364 unittest.expect(queryMap["includePermissionsForView"].first,
4365 unittest.equals(arg_includePermissionsForView));
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004366 unittest.expect(core.int.parse(queryMap["pageSize"].first),
4367 unittest.equals(arg_pageSize));
4368 unittest.expect(
4369 queryMap["pageToken"].first, unittest.equals(arg_pageToken));
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02004370 unittest.expect(queryMap["supportsAllDrives"].first,
4371 unittest.equals("$arg_supportsAllDrives"));
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004372 unittest.expect(queryMap["supportsTeamDrives"].first,
4373 unittest.equals("$arg_supportsTeamDrives"));
Martin Kustermann2a131182017-11-13 13:50:07 +01004374 unittest.expect(queryMap["useDomainAdminAccess"].first,
4375 unittest.equals("$arg_useDomainAdminAccess"));
Martin Kustermann7a3b5f52017-10-23 11:34:19 +02004376 unittest.expect(queryMap["fields"].first, unittest.equals(arg_$fields));
Martin Kustermann26171812015-12-21 15:06:06 +01004377
4378 var h = {
Kevin Moored0251702021-01-15 06:41:08 -08004379 'content-type': 'application/json; charset=utf-8',
Martin Kustermann26171812015-12-21 15:06:06 +01004380 };
Jakob Andersen52715df2018-05-01 13:58:48 +02004381 var resp = convert.json.encode(buildPermissionList());
Kevin Moore6d21e902021-01-15 06:41:08 -08004382 return async.Future.value(stringResponse(200, h, resp));
Martin Kustermann26171812015-12-21 15:06:06 +01004383 }), true);
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004384 res
4385 .list(arg_fileId,
Jonas Finnemann Jensenef0c8a32020-10-07 20:58:20 +02004386 includePermissionsForView: arg_includePermissionsForView,
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004387 pageSize: arg_pageSize,
4388 pageToken: arg_pageToken,
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02004389 supportsAllDrives: arg_supportsAllDrives,
Martin Kustermann7a3b5f52017-10-23 11:34:19 +02004390 supportsTeamDrives: arg_supportsTeamDrives,
Martin Kustermann2a131182017-11-13 13:50:07 +01004391 useDomainAdminAccess: arg_useDomainAdminAccess,
Martin Kustermann7a3b5f52017-10-23 11:34:19 +02004392 $fields: arg_$fields)
Jakob Andersen4ce761d2018-04-19 11:19:11 +02004393 .then(unittest.expectAsync1(((response) {
Martin Kustermann26171812015-12-21 15:06:06 +01004394 checkPermissionList(response);
4395 })));
4396 });
4397
Kevin Moored0251702021-01-15 06:41:08 -08004398 unittest.test('method--update', () {
Kevin Moore6d21e902021-01-15 06:41:08 -08004399 var mock = HttpServerMock();
4400 api.PermissionsResourceApi res = api.DriveApi(mock).permissions;
Martin Kustermann26171812015-12-21 15:06:06 +01004401 var arg_request = buildPermission();
Kevin Moored0251702021-01-15 06:41:08 -08004402 var arg_fileId = 'foo';
4403 var arg_permissionId = 'foo';
Martin Kustermanneabc5e12016-06-06 11:23:46 +02004404 var arg_removeExpiration = true;
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02004405 var arg_supportsAllDrives = true;
Martin Kustermann77f42ff2017-03-06 13:56:35 +01004406 var arg_supportsTeamDrives = true;
Martin Kustermann26171812015-12-21 15:06:06 +01004407 var arg_transferOwnership = true;
Martin Kustermann2a131182017-11-13 13:50:07 +01004408 var arg_useDomainAdminAccess = true;
Kevin Moored0251702021-01-15 06:41:08 -08004409 var arg_$fields = 'foo';
Martin Kustermann3953f0d2017-06-12 16:59:53 +02004410 mock.register(unittest.expectAsync2((http.BaseRequest req, json) {
Kevin Moore6d21e902021-01-15 06:41:08 -08004411 var obj = api.Permission.fromJson(json);
Martin Kustermann26171812015-12-21 15:06:06 +01004412 checkPermission(obj);
4413
4414 var path = (req.url).path;
4415 var pathOffset = 0;
Kevin Moore6d21e902021-01-15 06:41:08 -08004416 core.int index;
4417 core.String subPart;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004418 unittest.expect(
4419 path.substring(pathOffset, pathOffset + 1), unittest.equals("/"));
Martin Kustermann26171812015-12-21 15:06:06 +01004420 pathOffset += 1;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004421 unittest.expect(path.substring(pathOffset, pathOffset + 9),
4422 unittest.equals("drive/v3/"));
Martin Kustermann26171812015-12-21 15:06:06 +01004423 pathOffset += 9;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004424 unittest.expect(path.substring(pathOffset, pathOffset + 6),
4425 unittest.equals("files/"));
Martin Kustermann26171812015-12-21 15:06:06 +01004426 pathOffset += 6;
Kevin Moored0251702021-01-15 06:41:08 -08004427 index = path.indexOf('/permissions/', pathOffset);
Martin Kustermann26171812015-12-21 15:06:06 +01004428 unittest.expect(index >= 0, unittest.isTrue);
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004429 subPart =
4430 core.Uri.decodeQueryComponent(path.substring(pathOffset, index));
Martin Kustermann26171812015-12-21 15:06:06 +01004431 pathOffset = index;
Kevin Moored0251702021-01-15 06:41:08 -08004432 unittest.expect(subPart, unittest.equals('$arg_fileId'));
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004433 unittest.expect(path.substring(pathOffset, pathOffset + 13),
4434 unittest.equals("/permissions/"));
Martin Kustermann26171812015-12-21 15:06:06 +01004435 pathOffset += 13;
4436 subPart = core.Uri.decodeQueryComponent(path.substring(pathOffset));
4437 pathOffset = path.length;
Kevin Moored0251702021-01-15 06:41:08 -08004438 unittest.expect(subPart, unittest.equals('$arg_permissionId'));
Martin Kustermann26171812015-12-21 15:06:06 +01004439
4440 var query = (req.url).query;
4441 var queryOffset = 0;
Jakob Andersen52715df2018-05-01 13:58:48 +02004442 var queryMap = <core.String, core.List<core.String>>{};
Kevin Moore6d21e902021-01-15 06:41:08 -08004443 void addQueryParam(n, v) => queryMap.putIfAbsent(n, () => []).add(v);
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004444
Kevin Moore6d21e902021-01-15 06:41:08 -08004445 if (query.isNotEmpty) {
Kevin Moored0251702021-01-15 06:41:08 -08004446 for (var part in query.split('&')) {
4447 var keyValue = part.split('=');
Kevin Moore6d21e902021-01-15 06:41:08 -08004448 addQueryParam(
4449 core.Uri.decodeQueryComponent(keyValue[0]),
4450 core.Uri.decodeQueryComponent(keyValue[1]),
4451 );
Martin Kustermann26171812015-12-21 15:06:06 +01004452 }
4453 }
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004454 unittest.expect(queryMap["removeExpiration"].first,
4455 unittest.equals("$arg_removeExpiration"));
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02004456 unittest.expect(queryMap["supportsAllDrives"].first,
4457 unittest.equals("$arg_supportsAllDrives"));
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004458 unittest.expect(queryMap["supportsTeamDrives"].first,
4459 unittest.equals("$arg_supportsTeamDrives"));
4460 unittest.expect(queryMap["transferOwnership"].first,
4461 unittest.equals("$arg_transferOwnership"));
Martin Kustermann2a131182017-11-13 13:50:07 +01004462 unittest.expect(queryMap["useDomainAdminAccess"].first,
4463 unittest.equals("$arg_useDomainAdminAccess"));
Martin Kustermann7a3b5f52017-10-23 11:34:19 +02004464 unittest.expect(queryMap["fields"].first, unittest.equals(arg_$fields));
Martin Kustermann26171812015-12-21 15:06:06 +01004465
4466 var h = {
Kevin Moored0251702021-01-15 06:41:08 -08004467 'content-type': 'application/json; charset=utf-8',
Martin Kustermann26171812015-12-21 15:06:06 +01004468 };
Jakob Andersen52715df2018-05-01 13:58:48 +02004469 var resp = convert.json.encode(buildPermission());
Kevin Moore6d21e902021-01-15 06:41:08 -08004470 return async.Future.value(stringResponse(200, h, resp));
Martin Kustermann26171812015-12-21 15:06:06 +01004471 }), true);
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004472 res
4473 .update(arg_request, arg_fileId, arg_permissionId,
4474 removeExpiration: arg_removeExpiration,
Jonas Finnemann Jensenee696b12019-07-04 15:07:25 +02004475 supportsAllDrives: arg_supportsAllDrives,
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004476 supportsTeamDrives: arg_supportsTeamDrives,
Martin Kustermann7a3b5f52017-10-23 11:34:19 +02004477 transferOwnership: arg_transferOwnership,
Martin Kustermann2a131182017-11-13 13:50:07 +01004478 useDomainAdminAccess: arg_useDomainAdminAccess,
Martin Kustermann7a3b5f52017-10-23 11:34:19 +02004479 $fields: arg_$fields)
Jakob Andersen4ce761d2018-04-19 11:19:11 +02004480 .then(unittest.expectAsync1(((response) {
Martin Kustermann26171812015-12-21 15:06:06 +01004481 checkPermission(response);
4482 })));
4483 });
Martin Kustermann26171812015-12-21 15:06:06 +01004484 });
4485
Kevin Moored0251702021-01-15 06:41:08 -08004486 unittest.group('resource-RepliesResourceApi', () {
4487 unittest.test('method--create', () {
Kevin Moore6d21e902021-01-15 06:41:08 -08004488 var mock = HttpServerMock();
4489 api.RepliesResourceApi res = api.DriveApi(mock).replies;
Martin Kustermann26171812015-12-21 15:06:06 +01004490 var arg_request = buildReply();
Kevin Moored0251702021-01-15 06:41:08 -08004491 var arg_fileId = 'foo';
4492 var arg_commentId = 'foo';
4493 var arg_$fields = 'foo';
Martin Kustermann3953f0d2017-06-12 16:59:53 +02004494 mock.register(unittest.expectAsync2((http.BaseRequest req, json) {
Kevin Moore6d21e902021-01-15 06:41:08 -08004495 var obj = api.Reply.fromJson(json);
Martin Kustermann26171812015-12-21 15:06:06 +01004496 checkReply(obj);
4497
4498 var path = (req.url).path;
4499 var pathOffset = 0;
Kevin Moore6d21e902021-01-15 06:41:08 -08004500 core.int index;
4501 core.String subPart;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004502 unittest.expect(
4503 path.substring(pathOffset, pathOffset + 1), unittest.equals("/"));
Martin Kustermann26171812015-12-21 15:06:06 +01004504 pathOffset += 1;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004505 unittest.expect(path.substring(pathOffset, pathOffset + 9),
4506 unittest.equals("drive/v3/"));
Martin Kustermann26171812015-12-21 15:06:06 +01004507 pathOffset += 9;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004508 unittest.expect(path.substring(pathOffset, pathOffset + 6),
4509 unittest.equals("files/"));
Martin Kustermann26171812015-12-21 15:06:06 +01004510 pathOffset += 6;
Kevin Moored0251702021-01-15 06:41:08 -08004511 index = path.indexOf('/comments/', pathOffset);
Martin Kustermann26171812015-12-21 15:06:06 +01004512 unittest.expect(index >= 0, unittest.isTrue);
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004513 subPart =
4514 core.Uri.decodeQueryComponent(path.substring(pathOffset, index));
Martin Kustermann26171812015-12-21 15:06:06 +01004515 pathOffset = index;
Kevin Moored0251702021-01-15 06:41:08 -08004516 unittest.expect(subPart, unittest.equals('$arg_fileId'));
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004517 unittest.expect(path.substring(pathOffset, pathOffset + 10),
4518 unittest.equals("/comments/"));
Martin Kustermann26171812015-12-21 15:06:06 +01004519 pathOffset += 10;
Kevin Moored0251702021-01-15 06:41:08 -08004520 index = path.indexOf('/replies', pathOffset);
Martin Kustermann26171812015-12-21 15:06:06 +01004521 unittest.expect(index >= 0, unittest.isTrue);
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004522 subPart =
4523 core.Uri.decodeQueryComponent(path.substring(pathOffset, index));
Martin Kustermann26171812015-12-21 15:06:06 +01004524 pathOffset = index;
Kevin Moored0251702021-01-15 06:41:08 -08004525 unittest.expect(subPart, unittest.equals('$arg_commentId'));
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004526 unittest.expect(path.substring(pathOffset, pathOffset + 8),
4527 unittest.equals("/replies"));
Martin Kustermann26171812015-12-21 15:06:06 +01004528 pathOffset += 8;
4529
4530 var query = (req.url).query;
4531 var queryOffset = 0;
Jakob Andersen52715df2018-05-01 13:58:48 +02004532 var queryMap = <core.String, core.List<core.String>>{};
Kevin Moore6d21e902021-01-15 06:41:08 -08004533 void addQueryParam(n, v) => queryMap.putIfAbsent(n, () => []).add(v);
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004534
Kevin Moore6d21e902021-01-15 06:41:08 -08004535 if (query.isNotEmpty) {
Kevin Moored0251702021-01-15 06:41:08 -08004536 for (var part in query.split('&')) {
4537 var keyValue = part.split('=');
Kevin Moore6d21e902021-01-15 06:41:08 -08004538 addQueryParam(
4539 core.Uri.decodeQueryComponent(keyValue[0]),
4540 core.Uri.decodeQueryComponent(keyValue[1]),
4541 );
Martin Kustermann26171812015-12-21 15:06:06 +01004542 }
4543 }
Martin Kustermann7a3b5f52017-10-23 11:34:19 +02004544 unittest.expect(queryMap["fields"].first, unittest.equals(arg_$fields));
Martin Kustermann26171812015-12-21 15:06:06 +01004545
Martin Kustermann26171812015-12-21 15:06:06 +01004546 var h = {
Kevin Moored0251702021-01-15 06:41:08 -08004547 'content-type': 'application/json; charset=utf-8',
Martin Kustermann26171812015-12-21 15:06:06 +01004548 };
Jakob Andersen52715df2018-05-01 13:58:48 +02004549 var resp = convert.json.encode(buildReply());
Kevin Moore6d21e902021-01-15 06:41:08 -08004550 return async.Future.value(stringResponse(200, h, resp));
Martin Kustermann26171812015-12-21 15:06:06 +01004551 }), true);
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004552 res
Martin Kustermann7a3b5f52017-10-23 11:34:19 +02004553 .create(arg_request, arg_fileId, arg_commentId, $fields: arg_$fields)
Jakob Andersen4ce761d2018-04-19 11:19:11 +02004554 .then(unittest.expectAsync1(((response) {
Martin Kustermann26171812015-12-21 15:06:06 +01004555 checkReply(response);
4556 })));
4557 });
4558
Kevin Moored0251702021-01-15 06:41:08 -08004559 unittest.test('method--delete', () {
Kevin Moore6d21e902021-01-15 06:41:08 -08004560 var mock = HttpServerMock();
4561 api.RepliesResourceApi res = api.DriveApi(mock).replies;
Kevin Moored0251702021-01-15 06:41:08 -08004562 var arg_fileId = 'foo';
4563 var arg_commentId = 'foo';
4564 var arg_replyId = 'foo';
4565 var arg_$fields = 'foo';
Martin Kustermann3953f0d2017-06-12 16:59:53 +02004566 mock.register(unittest.expectAsync2((http.BaseRequest req, json) {
Martin Kustermann26171812015-12-21 15:06:06 +01004567 var path = (req.url).path;
4568 var pathOffset = 0;
Kevin Moore6d21e902021-01-15 06:41:08 -08004569 core.int index;
4570 core.String subPart;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004571 unittest.expect(
4572 path.substring(pathOffset, pathOffset + 1), unittest.equals("/"));
Martin Kustermann26171812015-12-21 15:06:06 +01004573 pathOffset += 1;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004574 unittest.expect(path.substring(pathOffset, pathOffset + 9),
4575 unittest.equals("drive/v3/"));
Martin Kustermann26171812015-12-21 15:06:06 +01004576 pathOffset += 9;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004577 unittest.expect(path.substring(pathOffset, pathOffset + 6),
4578 unittest.equals("files/"));
Martin Kustermann26171812015-12-21 15:06:06 +01004579 pathOffset += 6;
Kevin Moored0251702021-01-15 06:41:08 -08004580 index = path.indexOf('/comments/', pathOffset);
Martin Kustermann26171812015-12-21 15:06:06 +01004581 unittest.expect(index >= 0, unittest.isTrue);
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004582 subPart =
4583 core.Uri.decodeQueryComponent(path.substring(pathOffset, index));
Martin Kustermann26171812015-12-21 15:06:06 +01004584 pathOffset = index;
Kevin Moored0251702021-01-15 06:41:08 -08004585 unittest.expect(subPart, unittest.equals('$arg_fileId'));
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004586 unittest.expect(path.substring(pathOffset, pathOffset + 10),
4587 unittest.equals("/comments/"));
Martin Kustermann26171812015-12-21 15:06:06 +01004588 pathOffset += 10;
Kevin Moored0251702021-01-15 06:41:08 -08004589 index = path.indexOf('/replies/', pathOffset);
Martin Kustermann26171812015-12-21 15:06:06 +01004590 unittest.expect(index >= 0, unittest.isTrue);
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004591 subPart =
4592 core.Uri.decodeQueryComponent(path.substring(pathOffset, index));
Martin Kustermann26171812015-12-21 15:06:06 +01004593 pathOffset = index;
Kevin Moored0251702021-01-15 06:41:08 -08004594 unittest.expect(subPart, unittest.equals('$arg_commentId'));
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004595 unittest.expect(path.substring(pathOffset, pathOffset + 9),
4596 unittest.equals("/replies/"));
Martin Kustermann26171812015-12-21 15:06:06 +01004597 pathOffset += 9;
4598 subPart = core.Uri.decodeQueryComponent(path.substring(pathOffset));
4599 pathOffset = path.length;
Kevin Moored0251702021-01-15 06:41:08 -08004600 unittest.expect(subPart, unittest.equals('$arg_replyId'));
Martin Kustermann26171812015-12-21 15:06:06 +01004601
4602 var query = (req.url).query;
4603 var queryOffset = 0;
Jakob Andersen52715df2018-05-01 13:58:48 +02004604 var queryMap = <core.String, core.List<core.String>>{};
Kevin Moore6d21e902021-01-15 06:41:08 -08004605 void addQueryParam(n, v) => queryMap.putIfAbsent(n, () => []).add(v);
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004606
Kevin Moore6d21e902021-01-15 06:41:08 -08004607 if (query.isNotEmpty) {
Kevin Moored0251702021-01-15 06:41:08 -08004608 for (var part in query.split('&')) {
4609 var keyValue = part.split('=');
Kevin Moore6d21e902021-01-15 06:41:08 -08004610 addQueryParam(
4611 core.Uri.decodeQueryComponent(keyValue[0]),
4612 core.Uri.decodeQueryComponent(keyValue[1]),
4613 );
Martin Kustermann26171812015-12-21 15:06:06 +01004614 }
4615 }
Martin Kustermann7a3b5f52017-10-23 11:34:19 +02004616 unittest.expect(queryMap["fields"].first, unittest.equals(arg_$fields));
Martin Kustermann26171812015-12-21 15:06:06 +01004617
Martin Kustermann26171812015-12-21 15:06:06 +01004618 var h = {
Kevin Moored0251702021-01-15 06:41:08 -08004619 'content-type': 'application/json; charset=utf-8',
Martin Kustermann26171812015-12-21 15:06:06 +01004620 };
Kevin Moored0251702021-01-15 06:41:08 -08004621 var resp = '';
Kevin Moore6d21e902021-01-15 06:41:08 -08004622 return async.Future.value(stringResponse(200, h, resp));
Martin Kustermann26171812015-12-21 15:06:06 +01004623 }), true);
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004624 res
Martin Kustermann7a3b5f52017-10-23 11:34:19 +02004625 .delete(arg_fileId, arg_commentId, arg_replyId, $fields: arg_$fields)
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004626 .then(unittest.expectAsync1((_) {}));
Martin Kustermann26171812015-12-21 15:06:06 +01004627 });
4628
Kevin Moored0251702021-01-15 06:41:08 -08004629 unittest.test('method--get', () {
Kevin Moore6d21e902021-01-15 06:41:08 -08004630 var mock = HttpServerMock();
4631 api.RepliesResourceApi res = api.DriveApi(mock).replies;
Kevin Moored0251702021-01-15 06:41:08 -08004632 var arg_fileId = 'foo';
4633 var arg_commentId = 'foo';
4634 var arg_replyId = 'foo';
Martin Kustermann26171812015-12-21 15:06:06 +01004635 var arg_includeDeleted = true;
Kevin Moored0251702021-01-15 06:41:08 -08004636 var arg_$fields = 'foo';
Martin Kustermann3953f0d2017-06-12 16:59:53 +02004637 mock.register(unittest.expectAsync2((http.BaseRequest req, json) {
Martin Kustermann26171812015-12-21 15:06:06 +01004638 var path = (req.url).path;
4639 var pathOffset = 0;
Kevin Moore6d21e902021-01-15 06:41:08 -08004640 core.int index;
4641 core.String subPart;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004642 unittest.expect(
4643 path.substring(pathOffset, pathOffset + 1), unittest.equals("/"));
Martin Kustermann26171812015-12-21 15:06:06 +01004644 pathOffset += 1;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004645 unittest.expect(path.substring(pathOffset, pathOffset + 9),
4646 unittest.equals("drive/v3/"));
Martin Kustermann26171812015-12-21 15:06:06 +01004647 pathOffset += 9;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004648 unittest.expect(path.substring(pathOffset, pathOffset + 6),
4649 unittest.equals("files/"));
Martin Kustermann26171812015-12-21 15:06:06 +01004650 pathOffset += 6;
Kevin Moored0251702021-01-15 06:41:08 -08004651 index = path.indexOf('/comments/', pathOffset);
Martin Kustermann26171812015-12-21 15:06:06 +01004652 unittest.expect(index >= 0, unittest.isTrue);
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004653 subPart =
4654 core.Uri.decodeQueryComponent(path.substring(pathOffset, index));
Martin Kustermann26171812015-12-21 15:06:06 +01004655 pathOffset = index;
Kevin Moored0251702021-01-15 06:41:08 -08004656 unittest.expect(subPart, unittest.equals('$arg_fileId'));
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004657 unittest.expect(path.substring(pathOffset, pathOffset + 10),
4658 unittest.equals("/comments/"));
Martin Kustermann26171812015-12-21 15:06:06 +01004659 pathOffset += 10;
Kevin Moored0251702021-01-15 06:41:08 -08004660 index = path.indexOf('/replies/', pathOffset);
Martin Kustermann26171812015-12-21 15:06:06 +01004661 unittest.expect(index >= 0, unittest.isTrue);
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004662 subPart =
4663 core.Uri.decodeQueryComponent(path.substring(pathOffset, index));
Martin Kustermann26171812015-12-21 15:06:06 +01004664 pathOffset = index;
Kevin Moored0251702021-01-15 06:41:08 -08004665 unittest.expect(subPart, unittest.equals('$arg_commentId'));
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004666 unittest.expect(path.substring(pathOffset, pathOffset + 9),
4667 unittest.equals("/replies/"));
Martin Kustermann26171812015-12-21 15:06:06 +01004668 pathOffset += 9;
4669 subPart = core.Uri.decodeQueryComponent(path.substring(pathOffset));
4670 pathOffset = path.length;
Kevin Moored0251702021-01-15 06:41:08 -08004671 unittest.expect(subPart, unittest.equals('$arg_replyId'));
Martin Kustermann26171812015-12-21 15:06:06 +01004672
4673 var query = (req.url).query;
4674 var queryOffset = 0;
Jakob Andersen52715df2018-05-01 13:58:48 +02004675 var queryMap = <core.String, core.List<core.String>>{};
Kevin Moore6d21e902021-01-15 06:41:08 -08004676 void addQueryParam(n, v) => queryMap.putIfAbsent(n, () => []).add(v);
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004677
Kevin Moore6d21e902021-01-15 06:41:08 -08004678 if (query.isNotEmpty) {
Kevin Moored0251702021-01-15 06:41:08 -08004679 for (var part in query.split('&')) {
4680 var keyValue = part.split('=');
Kevin Moore6d21e902021-01-15 06:41:08 -08004681 addQueryParam(
4682 core.Uri.decodeQueryComponent(keyValue[0]),
4683 core.Uri.decodeQueryComponent(keyValue[1]),
4684 );
Martin Kustermann26171812015-12-21 15:06:06 +01004685 }
4686 }
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004687 unittest.expect(queryMap["includeDeleted"].first,
4688 unittest.equals("$arg_includeDeleted"));
Martin Kustermann7a3b5f52017-10-23 11:34:19 +02004689 unittest.expect(queryMap["fields"].first, unittest.equals(arg_$fields));
Martin Kustermann26171812015-12-21 15:06:06 +01004690
4691 var h = {
Kevin Moored0251702021-01-15 06:41:08 -08004692 'content-type': 'application/json; charset=utf-8',
Martin Kustermann26171812015-12-21 15:06:06 +01004693 };
Jakob Andersen52715df2018-05-01 13:58:48 +02004694 var resp = convert.json.encode(buildReply());
Kevin Moore6d21e902021-01-15 06:41:08 -08004695 return async.Future.value(stringResponse(200, h, resp));
Martin Kustermann26171812015-12-21 15:06:06 +01004696 }), true);
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004697 res
4698 .get(arg_fileId, arg_commentId, arg_replyId,
Martin Kustermann7a3b5f52017-10-23 11:34:19 +02004699 includeDeleted: arg_includeDeleted, $fields: arg_$fields)
Jakob Andersen4ce761d2018-04-19 11:19:11 +02004700 .then(unittest.expectAsync1(((response) {
Martin Kustermann26171812015-12-21 15:06:06 +01004701 checkReply(response);
4702 })));
4703 });
4704
Kevin Moored0251702021-01-15 06:41:08 -08004705 unittest.test('method--list', () {
Kevin Moore6d21e902021-01-15 06:41:08 -08004706 var mock = HttpServerMock();
4707 api.RepliesResourceApi res = api.DriveApi(mock).replies;
Kevin Moored0251702021-01-15 06:41:08 -08004708 var arg_fileId = 'foo';
4709 var arg_commentId = 'foo';
Martin Kustermann26171812015-12-21 15:06:06 +01004710 var arg_includeDeleted = true;
4711 var arg_pageSize = 42;
Kevin Moored0251702021-01-15 06:41:08 -08004712 var arg_pageToken = 'foo';
4713 var arg_$fields = 'foo';
Martin Kustermann3953f0d2017-06-12 16:59:53 +02004714 mock.register(unittest.expectAsync2((http.BaseRequest req, json) {
Martin Kustermann26171812015-12-21 15:06:06 +01004715 var path = (req.url).path;
4716 var pathOffset = 0;
Kevin Moore6d21e902021-01-15 06:41:08 -08004717 core.int index;
4718 core.String subPart;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004719 unittest.expect(
4720 path.substring(pathOffset, pathOffset + 1), unittest.equals("/"));
Martin Kustermann26171812015-12-21 15:06:06 +01004721 pathOffset += 1;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004722 unittest.expect(path.substring(pathOffset, pathOffset + 9),
4723 unittest.equals("drive/v3/"));
Martin Kustermann26171812015-12-21 15:06:06 +01004724 pathOffset += 9;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004725 unittest.expect(path.substring(pathOffset, pathOffset + 6),
4726 unittest.equals("files/"));
Martin Kustermann26171812015-12-21 15:06:06 +01004727 pathOffset += 6;
Kevin Moored0251702021-01-15 06:41:08 -08004728 index = path.indexOf('/comments/', pathOffset);
Martin Kustermann26171812015-12-21 15:06:06 +01004729 unittest.expect(index >= 0, unittest.isTrue);
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004730 subPart =
4731 core.Uri.decodeQueryComponent(path.substring(pathOffset, index));
Martin Kustermann26171812015-12-21 15:06:06 +01004732 pathOffset = index;
Kevin Moored0251702021-01-15 06:41:08 -08004733 unittest.expect(subPart, unittest.equals('$arg_fileId'));
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004734 unittest.expect(path.substring(pathOffset, pathOffset + 10),
4735 unittest.equals("/comments/"));
Martin Kustermann26171812015-12-21 15:06:06 +01004736 pathOffset += 10;
Kevin Moored0251702021-01-15 06:41:08 -08004737 index = path.indexOf('/replies', pathOffset);
Martin Kustermann26171812015-12-21 15:06:06 +01004738 unittest.expect(index >= 0, unittest.isTrue);
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004739 subPart =
4740 core.Uri.decodeQueryComponent(path.substring(pathOffset, index));
Martin Kustermann26171812015-12-21 15:06:06 +01004741 pathOffset = index;
Kevin Moored0251702021-01-15 06:41:08 -08004742 unittest.expect(subPart, unittest.equals('$arg_commentId'));
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004743 unittest.expect(path.substring(pathOffset, pathOffset + 8),
4744 unittest.equals("/replies"));
Martin Kustermann26171812015-12-21 15:06:06 +01004745 pathOffset += 8;
4746
4747 var query = (req.url).query;
4748 var queryOffset = 0;
Jakob Andersen52715df2018-05-01 13:58:48 +02004749 var queryMap = <core.String, core.List<core.String>>{};
Kevin Moore6d21e902021-01-15 06:41:08 -08004750 void addQueryParam(n, v) => queryMap.putIfAbsent(n, () => []).add(v);
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004751
Kevin Moore6d21e902021-01-15 06:41:08 -08004752 if (query.isNotEmpty) {
Kevin Moored0251702021-01-15 06:41:08 -08004753 for (var part in query.split('&')) {
4754 var keyValue = part.split('=');
Kevin Moore6d21e902021-01-15 06:41:08 -08004755 addQueryParam(
4756 core.Uri.decodeQueryComponent(keyValue[0]),
4757 core.Uri.decodeQueryComponent(keyValue[1]),
4758 );
Martin Kustermann26171812015-12-21 15:06:06 +01004759 }
4760 }
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004761 unittest.expect(queryMap["includeDeleted"].first,
4762 unittest.equals("$arg_includeDeleted"));
4763 unittest.expect(core.int.parse(queryMap["pageSize"].first),
4764 unittest.equals(arg_pageSize));
4765 unittest.expect(
4766 queryMap["pageToken"].first, unittest.equals(arg_pageToken));
Martin Kustermann7a3b5f52017-10-23 11:34:19 +02004767 unittest.expect(queryMap["fields"].first, unittest.equals(arg_$fields));
Martin Kustermann26171812015-12-21 15:06:06 +01004768
4769 var h = {
Kevin Moored0251702021-01-15 06:41:08 -08004770 'content-type': 'application/json; charset=utf-8',
Martin Kustermann26171812015-12-21 15:06:06 +01004771 };
Jakob Andersen52715df2018-05-01 13:58:48 +02004772 var resp = convert.json.encode(buildReplyList());
Kevin Moore6d21e902021-01-15 06:41:08 -08004773 return async.Future.value(stringResponse(200, h, resp));
Martin Kustermann26171812015-12-21 15:06:06 +01004774 }), true);
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004775 res
4776 .list(arg_fileId, arg_commentId,
4777 includeDeleted: arg_includeDeleted,
4778 pageSize: arg_pageSize,
Martin Kustermann7a3b5f52017-10-23 11:34:19 +02004779 pageToken: arg_pageToken,
4780 $fields: arg_$fields)
Jakob Andersen4ce761d2018-04-19 11:19:11 +02004781 .then(unittest.expectAsync1(((response) {
Martin Kustermann26171812015-12-21 15:06:06 +01004782 checkReplyList(response);
4783 })));
4784 });
4785
Kevin Moored0251702021-01-15 06:41:08 -08004786 unittest.test('method--update', () {
Kevin Moore6d21e902021-01-15 06:41:08 -08004787 var mock = HttpServerMock();
4788 api.RepliesResourceApi res = api.DriveApi(mock).replies;
Martin Kustermann26171812015-12-21 15:06:06 +01004789 var arg_request = buildReply();
Kevin Moored0251702021-01-15 06:41:08 -08004790 var arg_fileId = 'foo';
4791 var arg_commentId = 'foo';
4792 var arg_replyId = 'foo';
4793 var arg_$fields = 'foo';
Martin Kustermann3953f0d2017-06-12 16:59:53 +02004794 mock.register(unittest.expectAsync2((http.BaseRequest req, json) {
Kevin Moore6d21e902021-01-15 06:41:08 -08004795 var obj = api.Reply.fromJson(json);
Martin Kustermann26171812015-12-21 15:06:06 +01004796 checkReply(obj);
4797
4798 var path = (req.url).path;
4799 var pathOffset = 0;
Kevin Moore6d21e902021-01-15 06:41:08 -08004800 core.int index;
4801 core.String subPart;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004802 unittest.expect(
4803 path.substring(pathOffset, pathOffset + 1), unittest.equals("/"));
Martin Kustermann26171812015-12-21 15:06:06 +01004804 pathOffset += 1;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004805 unittest.expect(path.substring(pathOffset, pathOffset + 9),
4806 unittest.equals("drive/v3/"));
Martin Kustermann26171812015-12-21 15:06:06 +01004807 pathOffset += 9;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004808 unittest.expect(path.substring(pathOffset, pathOffset + 6),
4809 unittest.equals("files/"));
Martin Kustermann26171812015-12-21 15:06:06 +01004810 pathOffset += 6;
Kevin Moored0251702021-01-15 06:41:08 -08004811 index = path.indexOf('/comments/', pathOffset);
Martin Kustermann26171812015-12-21 15:06:06 +01004812 unittest.expect(index >= 0, unittest.isTrue);
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004813 subPart =
4814 core.Uri.decodeQueryComponent(path.substring(pathOffset, index));
Martin Kustermann26171812015-12-21 15:06:06 +01004815 pathOffset = index;
Kevin Moored0251702021-01-15 06:41:08 -08004816 unittest.expect(subPart, unittest.equals('$arg_fileId'));
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004817 unittest.expect(path.substring(pathOffset, pathOffset + 10),
4818 unittest.equals("/comments/"));
Martin Kustermann26171812015-12-21 15:06:06 +01004819 pathOffset += 10;
Kevin Moored0251702021-01-15 06:41:08 -08004820 index = path.indexOf('/replies/', pathOffset);
Martin Kustermann26171812015-12-21 15:06:06 +01004821 unittest.expect(index >= 0, unittest.isTrue);
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004822 subPart =
4823 core.Uri.decodeQueryComponent(path.substring(pathOffset, index));
Martin Kustermann26171812015-12-21 15:06:06 +01004824 pathOffset = index;
Kevin Moored0251702021-01-15 06:41:08 -08004825 unittest.expect(subPart, unittest.equals('$arg_commentId'));
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004826 unittest.expect(path.substring(pathOffset, pathOffset + 9),
4827 unittest.equals("/replies/"));
Martin Kustermann26171812015-12-21 15:06:06 +01004828 pathOffset += 9;
4829 subPart = core.Uri.decodeQueryComponent(path.substring(pathOffset));
4830 pathOffset = path.length;
Kevin Moored0251702021-01-15 06:41:08 -08004831 unittest.expect(subPart, unittest.equals('$arg_replyId'));
Martin Kustermann26171812015-12-21 15:06:06 +01004832
4833 var query = (req.url).query;
4834 var queryOffset = 0;
Jakob Andersen52715df2018-05-01 13:58:48 +02004835 var queryMap = <core.String, core.List<core.String>>{};
Kevin Moore6d21e902021-01-15 06:41:08 -08004836 void addQueryParam(n, v) => queryMap.putIfAbsent(n, () => []).add(v);
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004837
Kevin Moore6d21e902021-01-15 06:41:08 -08004838 if (query.isNotEmpty) {
Kevin Moored0251702021-01-15 06:41:08 -08004839 for (var part in query.split('&')) {
4840 var keyValue = part.split('=');
Kevin Moore6d21e902021-01-15 06:41:08 -08004841 addQueryParam(
4842 core.Uri.decodeQueryComponent(keyValue[0]),
4843 core.Uri.decodeQueryComponent(keyValue[1]),
4844 );
Martin Kustermann26171812015-12-21 15:06:06 +01004845 }
4846 }
Martin Kustermann7a3b5f52017-10-23 11:34:19 +02004847 unittest.expect(queryMap["fields"].first, unittest.equals(arg_$fields));
Martin Kustermann26171812015-12-21 15:06:06 +01004848
Martin Kustermann26171812015-12-21 15:06:06 +01004849 var h = {
Kevin Moored0251702021-01-15 06:41:08 -08004850 'content-type': 'application/json; charset=utf-8',
Martin Kustermann26171812015-12-21 15:06:06 +01004851 };
Jakob Andersen52715df2018-05-01 13:58:48 +02004852 var resp = convert.json.encode(buildReply());
Kevin Moore6d21e902021-01-15 06:41:08 -08004853 return async.Future.value(stringResponse(200, h, resp));
Martin Kustermann26171812015-12-21 15:06:06 +01004854 }), true);
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004855 res
Martin Kustermann7a3b5f52017-10-23 11:34:19 +02004856 .update(arg_request, arg_fileId, arg_commentId, arg_replyId,
4857 $fields: arg_$fields)
Jakob Andersen4ce761d2018-04-19 11:19:11 +02004858 .then(unittest.expectAsync1(((response) {
Martin Kustermann26171812015-12-21 15:06:06 +01004859 checkReply(response);
4860 })));
4861 });
Martin Kustermann26171812015-12-21 15:06:06 +01004862 });
4863
Kevin Moored0251702021-01-15 06:41:08 -08004864 unittest.group('resource-RevisionsResourceApi', () {
4865 unittest.test('method--delete', () {
Kevin Moore6d21e902021-01-15 06:41:08 -08004866 var mock = HttpServerMock();
4867 api.RevisionsResourceApi res = api.DriveApi(mock).revisions;
Kevin Moored0251702021-01-15 06:41:08 -08004868 var arg_fileId = 'foo';
4869 var arg_revisionId = 'foo';
4870 var arg_$fields = 'foo';
Martin Kustermann3953f0d2017-06-12 16:59:53 +02004871 mock.register(unittest.expectAsync2((http.BaseRequest req, json) {
Martin Kustermann26171812015-12-21 15:06:06 +01004872 var path = (req.url).path;
4873 var pathOffset = 0;
Kevin Moore6d21e902021-01-15 06:41:08 -08004874 core.int index;
4875 core.String subPart;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004876 unittest.expect(
4877 path.substring(pathOffset, pathOffset + 1), unittest.equals("/"));
Martin Kustermann26171812015-12-21 15:06:06 +01004878 pathOffset += 1;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004879 unittest.expect(path.substring(pathOffset, pathOffset + 9),
4880 unittest.equals("drive/v3/"));
Martin Kustermann26171812015-12-21 15:06:06 +01004881 pathOffset += 9;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004882 unittest.expect(path.substring(pathOffset, pathOffset + 6),
4883 unittest.equals("files/"));
Martin Kustermann26171812015-12-21 15:06:06 +01004884 pathOffset += 6;
Kevin Moored0251702021-01-15 06:41:08 -08004885 index = path.indexOf('/revisions/', pathOffset);
Martin Kustermann26171812015-12-21 15:06:06 +01004886 unittest.expect(index >= 0, unittest.isTrue);
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004887 subPart =
4888 core.Uri.decodeQueryComponent(path.substring(pathOffset, index));
Martin Kustermann26171812015-12-21 15:06:06 +01004889 pathOffset = index;
Kevin Moored0251702021-01-15 06:41:08 -08004890 unittest.expect(subPart, unittest.equals('$arg_fileId'));
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004891 unittest.expect(path.substring(pathOffset, pathOffset + 11),
4892 unittest.equals("/revisions/"));
Martin Kustermann26171812015-12-21 15:06:06 +01004893 pathOffset += 11;
4894 subPart = core.Uri.decodeQueryComponent(path.substring(pathOffset));
4895 pathOffset = path.length;
Kevin Moored0251702021-01-15 06:41:08 -08004896 unittest.expect(subPart, unittest.equals('$arg_revisionId'));
Martin Kustermann26171812015-12-21 15:06:06 +01004897
4898 var query = (req.url).query;
4899 var queryOffset = 0;
Jakob Andersen52715df2018-05-01 13:58:48 +02004900 var queryMap = <core.String, core.List<core.String>>{};
Kevin Moore6d21e902021-01-15 06:41:08 -08004901 void addQueryParam(n, v) => queryMap.putIfAbsent(n, () => []).add(v);
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004902
Kevin Moore6d21e902021-01-15 06:41:08 -08004903 if (query.isNotEmpty) {
Kevin Moored0251702021-01-15 06:41:08 -08004904 for (var part in query.split('&')) {
4905 var keyValue = part.split('=');
Kevin Moore6d21e902021-01-15 06:41:08 -08004906 addQueryParam(
4907 core.Uri.decodeQueryComponent(keyValue[0]),
4908 core.Uri.decodeQueryComponent(keyValue[1]),
4909 );
Martin Kustermann26171812015-12-21 15:06:06 +01004910 }
4911 }
Martin Kustermann7a3b5f52017-10-23 11:34:19 +02004912 unittest.expect(queryMap["fields"].first, unittest.equals(arg_$fields));
Martin Kustermann26171812015-12-21 15:06:06 +01004913
Martin Kustermann26171812015-12-21 15:06:06 +01004914 var h = {
Kevin Moored0251702021-01-15 06:41:08 -08004915 'content-type': 'application/json; charset=utf-8',
Martin Kustermann26171812015-12-21 15:06:06 +01004916 };
Kevin Moored0251702021-01-15 06:41:08 -08004917 var resp = '';
Kevin Moore6d21e902021-01-15 06:41:08 -08004918 return async.Future.value(stringResponse(200, h, resp));
Martin Kustermann26171812015-12-21 15:06:06 +01004919 }), true);
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004920 res
Martin Kustermann7a3b5f52017-10-23 11:34:19 +02004921 .delete(arg_fileId, arg_revisionId, $fields: arg_$fields)
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004922 .then(unittest.expectAsync1((_) {}));
Martin Kustermann26171812015-12-21 15:06:06 +01004923 });
4924
Kevin Moored0251702021-01-15 06:41:08 -08004925 unittest.test('method--get', () {
Martin Kustermann26171812015-12-21 15:06:06 +01004926 // TODO: Implement tests for media upload;
4927 // TODO: Implement tests for media download;
4928
Kevin Moore6d21e902021-01-15 06:41:08 -08004929 var mock = HttpServerMock();
4930 api.RevisionsResourceApi res = api.DriveApi(mock).revisions;
Kevin Moored0251702021-01-15 06:41:08 -08004931 var arg_fileId = 'foo';
4932 var arg_revisionId = 'foo';
Martin Kustermann26171812015-12-21 15:06:06 +01004933 var arg_acknowledgeAbuse = true;
Kevin Moored0251702021-01-15 06:41:08 -08004934 var arg_$fields = 'foo';
Martin Kustermann3953f0d2017-06-12 16:59:53 +02004935 mock.register(unittest.expectAsync2((http.BaseRequest req, json) {
Martin Kustermann26171812015-12-21 15:06:06 +01004936 var path = (req.url).path;
4937 var pathOffset = 0;
Kevin Moore6d21e902021-01-15 06:41:08 -08004938 core.int index;
4939 core.String subPart;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004940 unittest.expect(
4941 path.substring(pathOffset, pathOffset + 1), unittest.equals("/"));
Martin Kustermann26171812015-12-21 15:06:06 +01004942 pathOffset += 1;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004943 unittest.expect(path.substring(pathOffset, pathOffset + 9),
4944 unittest.equals("drive/v3/"));
Martin Kustermann26171812015-12-21 15:06:06 +01004945 pathOffset += 9;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004946 unittest.expect(path.substring(pathOffset, pathOffset + 6),
4947 unittest.equals("files/"));
Martin Kustermann26171812015-12-21 15:06:06 +01004948 pathOffset += 6;
Kevin Moored0251702021-01-15 06:41:08 -08004949 index = path.indexOf('/revisions/', pathOffset);
Martin Kustermann26171812015-12-21 15:06:06 +01004950 unittest.expect(index >= 0, unittest.isTrue);
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004951 subPart =
4952 core.Uri.decodeQueryComponent(path.substring(pathOffset, index));
Martin Kustermann26171812015-12-21 15:06:06 +01004953 pathOffset = index;
Kevin Moored0251702021-01-15 06:41:08 -08004954 unittest.expect(subPart, unittest.equals('$arg_fileId'));
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004955 unittest.expect(path.substring(pathOffset, pathOffset + 11),
4956 unittest.equals("/revisions/"));
Martin Kustermann26171812015-12-21 15:06:06 +01004957 pathOffset += 11;
4958 subPart = core.Uri.decodeQueryComponent(path.substring(pathOffset));
4959 pathOffset = path.length;
Kevin Moored0251702021-01-15 06:41:08 -08004960 unittest.expect(subPart, unittest.equals('$arg_revisionId'));
Martin Kustermann26171812015-12-21 15:06:06 +01004961
4962 var query = (req.url).query;
4963 var queryOffset = 0;
Jakob Andersen52715df2018-05-01 13:58:48 +02004964 var queryMap = <core.String, core.List<core.String>>{};
Kevin Moore6d21e902021-01-15 06:41:08 -08004965 void addQueryParam(n, v) => queryMap.putIfAbsent(n, () => []).add(v);
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004966
Kevin Moore6d21e902021-01-15 06:41:08 -08004967 if (query.isNotEmpty) {
Kevin Moored0251702021-01-15 06:41:08 -08004968 for (var part in query.split('&')) {
4969 var keyValue = part.split('=');
Kevin Moore6d21e902021-01-15 06:41:08 -08004970 addQueryParam(
4971 core.Uri.decodeQueryComponent(keyValue[0]),
4972 core.Uri.decodeQueryComponent(keyValue[1]),
4973 );
Martin Kustermann26171812015-12-21 15:06:06 +01004974 }
4975 }
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004976 unittest.expect(queryMap["acknowledgeAbuse"].first,
4977 unittest.equals("$arg_acknowledgeAbuse"));
Martin Kustermann7a3b5f52017-10-23 11:34:19 +02004978 unittest.expect(queryMap["fields"].first, unittest.equals(arg_$fields));
Martin Kustermann26171812015-12-21 15:06:06 +01004979
4980 var h = {
Kevin Moored0251702021-01-15 06:41:08 -08004981 'content-type': 'application/json; charset=utf-8',
Martin Kustermann26171812015-12-21 15:06:06 +01004982 };
Jakob Andersen52715df2018-05-01 13:58:48 +02004983 var resp = convert.json.encode(buildRevision());
Kevin Moore6d21e902021-01-15 06:41:08 -08004984 return async.Future.value(stringResponse(200, h, resp));
Martin Kustermann26171812015-12-21 15:06:06 +01004985 }), true);
Martin Kustermann5eb85c12017-09-11 12:35:54 +02004986 res
4987 .get(arg_fileId, arg_revisionId,
Martin Kustermann7a3b5f52017-10-23 11:34:19 +02004988 acknowledgeAbuse: arg_acknowledgeAbuse, $fields: arg_$fields)
Jakob Andersen4ce761d2018-04-19 11:19:11 +02004989 .then(unittest.expectAsync1(((response) {
Martin Kustermann26171812015-12-21 15:06:06 +01004990 checkRevision(response);
4991 })));
4992 });
4993
Kevin Moored0251702021-01-15 06:41:08 -08004994 unittest.test('method--list', () {
Kevin Moore6d21e902021-01-15 06:41:08 -08004995 var mock = HttpServerMock();
4996 api.RevisionsResourceApi res = api.DriveApi(mock).revisions;
Kevin Moored0251702021-01-15 06:41:08 -08004997 var arg_fileId = 'foo';
Martin Kustermann4ff71db2016-11-09 10:46:40 +01004998 var arg_pageSize = 42;
Kevin Moored0251702021-01-15 06:41:08 -08004999 var arg_pageToken = 'foo';
5000 var arg_$fields = 'foo';
Martin Kustermann3953f0d2017-06-12 16:59:53 +02005001 mock.register(unittest.expectAsync2((http.BaseRequest req, json) {
Martin Kustermann26171812015-12-21 15:06:06 +01005002 var path = (req.url).path;
5003 var pathOffset = 0;
Kevin Moore6d21e902021-01-15 06:41:08 -08005004 core.int index;
5005 core.String subPart;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02005006 unittest.expect(
5007 path.substring(pathOffset, pathOffset + 1), unittest.equals("/"));
Martin Kustermann26171812015-12-21 15:06:06 +01005008 pathOffset += 1;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02005009 unittest.expect(path.substring(pathOffset, pathOffset + 9),
5010 unittest.equals("drive/v3/"));
Martin Kustermann26171812015-12-21 15:06:06 +01005011 pathOffset += 9;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02005012 unittest.expect(path.substring(pathOffset, pathOffset + 6),
5013 unittest.equals("files/"));
Martin Kustermann26171812015-12-21 15:06:06 +01005014 pathOffset += 6;
Kevin Moored0251702021-01-15 06:41:08 -08005015 index = path.indexOf('/revisions', pathOffset);
Martin Kustermann26171812015-12-21 15:06:06 +01005016 unittest.expect(index >= 0, unittest.isTrue);
Martin Kustermann5eb85c12017-09-11 12:35:54 +02005017 subPart =
5018 core.Uri.decodeQueryComponent(path.substring(pathOffset, index));
Martin Kustermann26171812015-12-21 15:06:06 +01005019 pathOffset = index;
Kevin Moored0251702021-01-15 06:41:08 -08005020 unittest.expect(subPart, unittest.equals('$arg_fileId'));
Martin Kustermann5eb85c12017-09-11 12:35:54 +02005021 unittest.expect(path.substring(pathOffset, pathOffset + 10),
5022 unittest.equals("/revisions"));
Martin Kustermann26171812015-12-21 15:06:06 +01005023 pathOffset += 10;
5024
5025 var query = (req.url).query;
5026 var queryOffset = 0;
Jakob Andersen52715df2018-05-01 13:58:48 +02005027 var queryMap = <core.String, core.List<core.String>>{};
Kevin Moore6d21e902021-01-15 06:41:08 -08005028 void addQueryParam(n, v) => queryMap.putIfAbsent(n, () => []).add(v);
Martin Kustermann5eb85c12017-09-11 12:35:54 +02005029
Kevin Moore6d21e902021-01-15 06:41:08 -08005030 if (query.isNotEmpty) {
Kevin Moored0251702021-01-15 06:41:08 -08005031 for (var part in query.split('&')) {
5032 var keyValue = part.split('=');
Kevin Moore6d21e902021-01-15 06:41:08 -08005033 addQueryParam(
5034 core.Uri.decodeQueryComponent(keyValue[0]),
5035 core.Uri.decodeQueryComponent(keyValue[1]),
5036 );
Martin Kustermann26171812015-12-21 15:06:06 +01005037 }
5038 }
Martin Kustermann5eb85c12017-09-11 12:35:54 +02005039 unittest.expect(core.int.parse(queryMap["pageSize"].first),
5040 unittest.equals(arg_pageSize));
5041 unittest.expect(
5042 queryMap["pageToken"].first, unittest.equals(arg_pageToken));
Martin Kustermann7a3b5f52017-10-23 11:34:19 +02005043 unittest.expect(queryMap["fields"].first, unittest.equals(arg_$fields));
Martin Kustermann26171812015-12-21 15:06:06 +01005044
5045 var h = {
Kevin Moored0251702021-01-15 06:41:08 -08005046 'content-type': 'application/json; charset=utf-8',
Martin Kustermann26171812015-12-21 15:06:06 +01005047 };
Jakob Andersen52715df2018-05-01 13:58:48 +02005048 var resp = convert.json.encode(buildRevisionList());
Kevin Moore6d21e902021-01-15 06:41:08 -08005049 return async.Future.value(stringResponse(200, h, resp));
Martin Kustermann26171812015-12-21 15:06:06 +01005050 }), true);
Martin Kustermann5eb85c12017-09-11 12:35:54 +02005051 res
Martin Kustermann7a3b5f52017-10-23 11:34:19 +02005052 .list(arg_fileId,
5053 pageSize: arg_pageSize,
5054 pageToken: arg_pageToken,
5055 $fields: arg_$fields)
Jakob Andersen4ce761d2018-04-19 11:19:11 +02005056 .then(unittest.expectAsync1(((response) {
Martin Kustermann26171812015-12-21 15:06:06 +01005057 checkRevisionList(response);
5058 })));
5059 });
5060
Kevin Moored0251702021-01-15 06:41:08 -08005061 unittest.test('method--update', () {
Kevin Moore6d21e902021-01-15 06:41:08 -08005062 var mock = HttpServerMock();
5063 api.RevisionsResourceApi res = api.DriveApi(mock).revisions;
Martin Kustermann26171812015-12-21 15:06:06 +01005064 var arg_request = buildRevision();
Kevin Moored0251702021-01-15 06:41:08 -08005065 var arg_fileId = 'foo';
5066 var arg_revisionId = 'foo';
5067 var arg_$fields = 'foo';
Martin Kustermann3953f0d2017-06-12 16:59:53 +02005068 mock.register(unittest.expectAsync2((http.BaseRequest req, json) {
Kevin Moore6d21e902021-01-15 06:41:08 -08005069 var obj = api.Revision.fromJson(json);
Martin Kustermann26171812015-12-21 15:06:06 +01005070 checkRevision(obj);
5071
5072 var path = (req.url).path;
5073 var pathOffset = 0;
Kevin Moore6d21e902021-01-15 06:41:08 -08005074 core.int index;
5075 core.String subPart;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02005076 unittest.expect(
5077 path.substring(pathOffset, pathOffset + 1), unittest.equals("/"));
Martin Kustermann26171812015-12-21 15:06:06 +01005078 pathOffset += 1;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02005079 unittest.expect(path.substring(pathOffset, pathOffset + 9),
5080 unittest.equals("drive/v3/"));
Martin Kustermann26171812015-12-21 15:06:06 +01005081 pathOffset += 9;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02005082 unittest.expect(path.substring(pathOffset, pathOffset + 6),
5083 unittest.equals("files/"));
Martin Kustermann26171812015-12-21 15:06:06 +01005084 pathOffset += 6;
Kevin Moored0251702021-01-15 06:41:08 -08005085 index = path.indexOf('/revisions/', pathOffset);
Martin Kustermann26171812015-12-21 15:06:06 +01005086 unittest.expect(index >= 0, unittest.isTrue);
Martin Kustermann5eb85c12017-09-11 12:35:54 +02005087 subPart =
5088 core.Uri.decodeQueryComponent(path.substring(pathOffset, index));
Martin Kustermann26171812015-12-21 15:06:06 +01005089 pathOffset = index;
Kevin Moored0251702021-01-15 06:41:08 -08005090 unittest.expect(subPart, unittest.equals('$arg_fileId'));
Martin Kustermann5eb85c12017-09-11 12:35:54 +02005091 unittest.expect(path.substring(pathOffset, pathOffset + 11),
5092 unittest.equals("/revisions/"));
Martin Kustermann26171812015-12-21 15:06:06 +01005093 pathOffset += 11;
5094 subPart = core.Uri.decodeQueryComponent(path.substring(pathOffset));
5095 pathOffset = path.length;
Kevin Moored0251702021-01-15 06:41:08 -08005096 unittest.expect(subPart, unittest.equals('$arg_revisionId'));
Martin Kustermann26171812015-12-21 15:06:06 +01005097
5098 var query = (req.url).query;
5099 var queryOffset = 0;
Jakob Andersen52715df2018-05-01 13:58:48 +02005100 var queryMap = <core.String, core.List<core.String>>{};
Kevin Moore6d21e902021-01-15 06:41:08 -08005101 void addQueryParam(n, v) => queryMap.putIfAbsent(n, () => []).add(v);
Martin Kustermann5eb85c12017-09-11 12:35:54 +02005102
Kevin Moore6d21e902021-01-15 06:41:08 -08005103 if (query.isNotEmpty) {
Kevin Moored0251702021-01-15 06:41:08 -08005104 for (var part in query.split('&')) {
5105 var keyValue = part.split('=');
Kevin Moore6d21e902021-01-15 06:41:08 -08005106 addQueryParam(
5107 core.Uri.decodeQueryComponent(keyValue[0]),
5108 core.Uri.decodeQueryComponent(keyValue[1]),
5109 );
Martin Kustermann26171812015-12-21 15:06:06 +01005110 }
5111 }
Martin Kustermann7a3b5f52017-10-23 11:34:19 +02005112 unittest.expect(queryMap["fields"].first, unittest.equals(arg_$fields));
Martin Kustermann26171812015-12-21 15:06:06 +01005113
Martin Kustermann26171812015-12-21 15:06:06 +01005114 var h = {
Kevin Moored0251702021-01-15 06:41:08 -08005115 'content-type': 'application/json; charset=utf-8',
Martin Kustermann26171812015-12-21 15:06:06 +01005116 };
Jakob Andersen52715df2018-05-01 13:58:48 +02005117 var resp = convert.json.encode(buildRevision());
Kevin Moore6d21e902021-01-15 06:41:08 -08005118 return async.Future.value(stringResponse(200, h, resp));
Martin Kustermann26171812015-12-21 15:06:06 +01005119 }), true);
Martin Kustermann5eb85c12017-09-11 12:35:54 +02005120 res
Martin Kustermann7a3b5f52017-10-23 11:34:19 +02005121 .update(arg_request, arg_fileId, arg_revisionId, $fields: arg_$fields)
Jakob Andersen4ce761d2018-04-19 11:19:11 +02005122 .then(unittest.expectAsync1(((response) {
Martin Kustermann26171812015-12-21 15:06:06 +01005123 checkRevision(response);
5124 })));
5125 });
Martin Kustermann26171812015-12-21 15:06:06 +01005126 });
5127
Kevin Moored0251702021-01-15 06:41:08 -08005128 unittest.group('resource-TeamdrivesResourceApi', () {
5129 unittest.test('method--create', () {
Kevin Moore6d21e902021-01-15 06:41:08 -08005130 var mock = HttpServerMock();
5131 api.TeamdrivesResourceApi res = api.DriveApi(mock).teamdrives;
Martin Kustermann77f42ff2017-03-06 13:56:35 +01005132 var arg_request = buildTeamDrive();
Kevin Moored0251702021-01-15 06:41:08 -08005133 var arg_requestId = 'foo';
5134 var arg_$fields = 'foo';
Martin Kustermann3953f0d2017-06-12 16:59:53 +02005135 mock.register(unittest.expectAsync2((http.BaseRequest req, json) {
Kevin Moore6d21e902021-01-15 06:41:08 -08005136 var obj = api.TeamDrive.fromJson(json);
Martin Kustermann77f42ff2017-03-06 13:56:35 +01005137 checkTeamDrive(obj);
5138
5139 var path = (req.url).path;
5140 var pathOffset = 0;
Kevin Moore6d21e902021-01-15 06:41:08 -08005141 core.int index;
5142 core.String subPart;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02005143 unittest.expect(
5144 path.substring(pathOffset, pathOffset + 1), unittest.equals("/"));
Martin Kustermann77f42ff2017-03-06 13:56:35 +01005145 pathOffset += 1;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02005146 unittest.expect(path.substring(pathOffset, pathOffset + 9),
5147 unittest.equals("drive/v3/"));
Martin Kustermann77f42ff2017-03-06 13:56:35 +01005148 pathOffset += 9;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02005149 unittest.expect(path.substring(pathOffset, pathOffset + 10),
5150 unittest.equals("teamdrives"));
Martin Kustermann77f42ff2017-03-06 13:56:35 +01005151 pathOffset += 10;
5152
5153 var query = (req.url).query;
5154 var queryOffset = 0;
Jakob Andersen52715df2018-05-01 13:58:48 +02005155 var queryMap = <core.String, core.List<core.String>>{};
Kevin Moore6d21e902021-01-15 06:41:08 -08005156 void addQueryParam(n, v) => queryMap.putIfAbsent(n, () => []).add(v);
Martin Kustermann5eb85c12017-09-11 12:35:54 +02005157
Kevin Moore6d21e902021-01-15 06:41:08 -08005158 if (query.isNotEmpty) {
Kevin Moored0251702021-01-15 06:41:08 -08005159 for (var part in query.split('&')) {
5160 var keyValue = part.split('=');
Kevin Moore6d21e902021-01-15 06:41:08 -08005161 addQueryParam(
5162 core.Uri.decodeQueryComponent(keyValue[0]),
5163 core.Uri.decodeQueryComponent(keyValue[1]),
5164 );
Martin Kustermann77f42ff2017-03-06 13:56:35 +01005165 }
5166 }
Martin Kustermann5eb85c12017-09-11 12:35:54 +02005167 unittest.expect(
5168 queryMap["requestId"].first, unittest.equals(arg_requestId));
Martin Kustermann7a3b5f52017-10-23 11:34:19 +02005169 unittest.expect(queryMap["fields"].first, unittest.equals(arg_$fields));
Martin Kustermann77f42ff2017-03-06 13:56:35 +01005170
5171 var h = {
Kevin Moored0251702021-01-15 06:41:08 -08005172 'content-type': 'application/json; charset=utf-8',
Martin Kustermann77f42ff2017-03-06 13:56:35 +01005173 };
Jakob Andersen52715df2018-05-01 13:58:48 +02005174 var resp = convert.json.encode(buildTeamDrive());
Kevin Moore6d21e902021-01-15 06:41:08 -08005175 return async.Future.value(stringResponse(200, h, resp));
Martin Kustermann77f42ff2017-03-06 13:56:35 +01005176 }), true);
Martin Kustermann5eb85c12017-09-11 12:35:54 +02005177 res
Martin Kustermann7a3b5f52017-10-23 11:34:19 +02005178 .create(arg_request, arg_requestId, $fields: arg_$fields)
Jakob Andersen4ce761d2018-04-19 11:19:11 +02005179 .then(unittest.expectAsync1(((response) {
Martin Kustermann77f42ff2017-03-06 13:56:35 +01005180 checkTeamDrive(response);
5181 })));
5182 });
5183
Kevin Moored0251702021-01-15 06:41:08 -08005184 unittest.test('method--delete', () {
Kevin Moore6d21e902021-01-15 06:41:08 -08005185 var mock = HttpServerMock();
5186 api.TeamdrivesResourceApi res = api.DriveApi(mock).teamdrives;
Kevin Moored0251702021-01-15 06:41:08 -08005187 var arg_teamDriveId = 'foo';
5188 var arg_$fields = 'foo';
Martin Kustermann3953f0d2017-06-12 16:59:53 +02005189 mock.register(unittest.expectAsync2((http.BaseRequest req, json) {
Martin Kustermann77f42ff2017-03-06 13:56:35 +01005190 var path = (req.url).path;
5191 var pathOffset = 0;
Kevin Moore6d21e902021-01-15 06:41:08 -08005192 core.int index;
5193 core.String subPart;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02005194 unittest.expect(
5195 path.substring(pathOffset, pathOffset + 1), unittest.equals("/"));
Martin Kustermann77f42ff2017-03-06 13:56:35 +01005196 pathOffset += 1;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02005197 unittest.expect(path.substring(pathOffset, pathOffset + 9),
5198 unittest.equals("drive/v3/"));
Martin Kustermann77f42ff2017-03-06 13:56:35 +01005199 pathOffset += 9;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02005200 unittest.expect(path.substring(pathOffset, pathOffset + 11),
5201 unittest.equals("teamdrives/"));
Martin Kustermann77f42ff2017-03-06 13:56:35 +01005202 pathOffset += 11;
5203 subPart = core.Uri.decodeQueryComponent(path.substring(pathOffset));
5204 pathOffset = path.length;
Kevin Moored0251702021-01-15 06:41:08 -08005205 unittest.expect(subPart, unittest.equals('$arg_teamDriveId'));
Martin Kustermann77f42ff2017-03-06 13:56:35 +01005206
5207 var query = (req.url).query;
5208 var queryOffset = 0;
Jakob Andersen52715df2018-05-01 13:58:48 +02005209 var queryMap = <core.String, core.List<core.String>>{};
Kevin Moore6d21e902021-01-15 06:41:08 -08005210 void addQueryParam(n, v) => queryMap.putIfAbsent(n, () => []).add(v);
Martin Kustermann5eb85c12017-09-11 12:35:54 +02005211
Kevin Moore6d21e902021-01-15 06:41:08 -08005212 if (query.isNotEmpty) {
Kevin Moored0251702021-01-15 06:41:08 -08005213 for (var part in query.split('&')) {
5214 var keyValue = part.split('=');
Kevin Moore6d21e902021-01-15 06:41:08 -08005215 addQueryParam(
5216 core.Uri.decodeQueryComponent(keyValue[0]),
5217 core.Uri.decodeQueryComponent(keyValue[1]),
5218 );
Martin Kustermann77f42ff2017-03-06 13:56:35 +01005219 }
5220 }
Martin Kustermann7a3b5f52017-10-23 11:34:19 +02005221 unittest.expect(queryMap["fields"].first, unittest.equals(arg_$fields));
Martin Kustermann77f42ff2017-03-06 13:56:35 +01005222
Martin Kustermann77f42ff2017-03-06 13:56:35 +01005223 var h = {
Kevin Moored0251702021-01-15 06:41:08 -08005224 'content-type': 'application/json; charset=utf-8',
Martin Kustermann77f42ff2017-03-06 13:56:35 +01005225 };
Kevin Moored0251702021-01-15 06:41:08 -08005226 var resp = '';
Kevin Moore6d21e902021-01-15 06:41:08 -08005227 return async.Future.value(stringResponse(200, h, resp));
Martin Kustermann77f42ff2017-03-06 13:56:35 +01005228 }), true);
Martin Kustermann7a3b5f52017-10-23 11:34:19 +02005229 res
5230 .delete(arg_teamDriveId, $fields: arg_$fields)
5231 .then(unittest.expectAsync1((_) {}));
Martin Kustermann77f42ff2017-03-06 13:56:35 +01005232 });
5233
Kevin Moored0251702021-01-15 06:41:08 -08005234 unittest.test('method--get', () {
Kevin Moore6d21e902021-01-15 06:41:08 -08005235 var mock = HttpServerMock();
5236 api.TeamdrivesResourceApi res = api.DriveApi(mock).teamdrives;
Kevin Moored0251702021-01-15 06:41:08 -08005237 var arg_teamDriveId = 'foo';
Martin Kustermann2a131182017-11-13 13:50:07 +01005238 var arg_useDomainAdminAccess = true;
Kevin Moored0251702021-01-15 06:41:08 -08005239 var arg_$fields = 'foo';
Martin Kustermann3953f0d2017-06-12 16:59:53 +02005240 mock.register(unittest.expectAsync2((http.BaseRequest req, json) {
Martin Kustermann77f42ff2017-03-06 13:56:35 +01005241 var path = (req.url).path;
5242 var pathOffset = 0;
Kevin Moore6d21e902021-01-15 06:41:08 -08005243 core.int index;
5244 core.String subPart;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02005245 unittest.expect(
5246 path.substring(pathOffset, pathOffset + 1), unittest.equals("/"));
Martin Kustermann77f42ff2017-03-06 13:56:35 +01005247 pathOffset += 1;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02005248 unittest.expect(path.substring(pathOffset, pathOffset + 9),
5249 unittest.equals("drive/v3/"));
Martin Kustermann77f42ff2017-03-06 13:56:35 +01005250 pathOffset += 9;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02005251 unittest.expect(path.substring(pathOffset, pathOffset + 11),
5252 unittest.equals("teamdrives/"));
Martin Kustermann77f42ff2017-03-06 13:56:35 +01005253 pathOffset += 11;
5254 subPart = core.Uri.decodeQueryComponent(path.substring(pathOffset));
5255 pathOffset = path.length;
Kevin Moored0251702021-01-15 06:41:08 -08005256 unittest.expect(subPart, unittest.equals('$arg_teamDriveId'));
Martin Kustermann77f42ff2017-03-06 13:56:35 +01005257
5258 var query = (req.url).query;
5259 var queryOffset = 0;
Jakob Andersen52715df2018-05-01 13:58:48 +02005260 var queryMap = <core.String, core.List<core.String>>{};
Kevin Moore6d21e902021-01-15 06:41:08 -08005261 void addQueryParam(n, v) => queryMap.putIfAbsent(n, () => []).add(v);
Martin Kustermann5eb85c12017-09-11 12:35:54 +02005262
Kevin Moore6d21e902021-01-15 06:41:08 -08005263 if (query.isNotEmpty) {
Kevin Moored0251702021-01-15 06:41:08 -08005264 for (var part in query.split('&')) {
5265 var keyValue = part.split('=');
Kevin Moore6d21e902021-01-15 06:41:08 -08005266 addQueryParam(
5267 core.Uri.decodeQueryComponent(keyValue[0]),
5268 core.Uri.decodeQueryComponent(keyValue[1]),
5269 );
Martin Kustermann77f42ff2017-03-06 13:56:35 +01005270 }
5271 }
Martin Kustermann2a131182017-11-13 13:50:07 +01005272 unittest.expect(queryMap["useDomainAdminAccess"].first,
5273 unittest.equals("$arg_useDomainAdminAccess"));
Martin Kustermann7a3b5f52017-10-23 11:34:19 +02005274 unittest.expect(queryMap["fields"].first, unittest.equals(arg_$fields));
Martin Kustermann77f42ff2017-03-06 13:56:35 +01005275
Martin Kustermann77f42ff2017-03-06 13:56:35 +01005276 var h = {
Kevin Moored0251702021-01-15 06:41:08 -08005277 'content-type': 'application/json; charset=utf-8',
Martin Kustermann77f42ff2017-03-06 13:56:35 +01005278 };
Jakob Andersen52715df2018-05-01 13:58:48 +02005279 var resp = convert.json.encode(buildTeamDrive());
Kevin Moore6d21e902021-01-15 06:41:08 -08005280 return async.Future.value(stringResponse(200, h, resp));
Martin Kustermann77f42ff2017-03-06 13:56:35 +01005281 }), true);
Martin Kustermann5eb85c12017-09-11 12:35:54 +02005282 res
Martin Kustermann2a131182017-11-13 13:50:07 +01005283 .get(arg_teamDriveId,
5284 useDomainAdminAccess: arg_useDomainAdminAccess,
5285 $fields: arg_$fields)
Jakob Andersen4ce761d2018-04-19 11:19:11 +02005286 .then(unittest.expectAsync1(((response) {
Martin Kustermann77f42ff2017-03-06 13:56:35 +01005287 checkTeamDrive(response);
5288 })));
5289 });
5290
Kevin Moored0251702021-01-15 06:41:08 -08005291 unittest.test('method--list', () {
Kevin Moore6d21e902021-01-15 06:41:08 -08005292 var mock = HttpServerMock();
5293 api.TeamdrivesResourceApi res = api.DriveApi(mock).teamdrives;
Martin Kustermann77f42ff2017-03-06 13:56:35 +01005294 var arg_pageSize = 42;
Kevin Moored0251702021-01-15 06:41:08 -08005295 var arg_pageToken = 'foo';
5296 var arg_q = 'foo';
Martin Kustermann2a131182017-11-13 13:50:07 +01005297 var arg_useDomainAdminAccess = true;
Kevin Moored0251702021-01-15 06:41:08 -08005298 var arg_$fields = 'foo';
Martin Kustermann3953f0d2017-06-12 16:59:53 +02005299 mock.register(unittest.expectAsync2((http.BaseRequest req, json) {
Martin Kustermann77f42ff2017-03-06 13:56:35 +01005300 var path = (req.url).path;
5301 var pathOffset = 0;
Kevin Moore6d21e902021-01-15 06:41:08 -08005302 core.int index;
5303 core.String subPart;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02005304 unittest.expect(
5305 path.substring(pathOffset, pathOffset + 1), unittest.equals("/"));
Martin Kustermann77f42ff2017-03-06 13:56:35 +01005306 pathOffset += 1;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02005307 unittest.expect(path.substring(pathOffset, pathOffset + 9),
5308 unittest.equals("drive/v3/"));
Martin Kustermann77f42ff2017-03-06 13:56:35 +01005309 pathOffset += 9;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02005310 unittest.expect(path.substring(pathOffset, pathOffset + 10),
5311 unittest.equals("teamdrives"));
Martin Kustermann77f42ff2017-03-06 13:56:35 +01005312 pathOffset += 10;
5313
5314 var query = (req.url).query;
5315 var queryOffset = 0;
Jakob Andersen52715df2018-05-01 13:58:48 +02005316 var queryMap = <core.String, core.List<core.String>>{};
Kevin Moore6d21e902021-01-15 06:41:08 -08005317 void addQueryParam(n, v) => queryMap.putIfAbsent(n, () => []).add(v);
Martin Kustermann5eb85c12017-09-11 12:35:54 +02005318
Kevin Moore6d21e902021-01-15 06:41:08 -08005319 if (query.isNotEmpty) {
Kevin Moored0251702021-01-15 06:41:08 -08005320 for (var part in query.split('&')) {
5321 var keyValue = part.split('=');
Kevin Moore6d21e902021-01-15 06:41:08 -08005322 addQueryParam(
5323 core.Uri.decodeQueryComponent(keyValue[0]),
5324 core.Uri.decodeQueryComponent(keyValue[1]),
5325 );
Martin Kustermann77f42ff2017-03-06 13:56:35 +01005326 }
5327 }
Martin Kustermann5eb85c12017-09-11 12:35:54 +02005328 unittest.expect(core.int.parse(queryMap["pageSize"].first),
5329 unittest.equals(arg_pageSize));
5330 unittest.expect(
5331 queryMap["pageToken"].first, unittest.equals(arg_pageToken));
Martin Kustermann2a131182017-11-13 13:50:07 +01005332 unittest.expect(queryMap["q"].first, unittest.equals(arg_q));
5333 unittest.expect(queryMap["useDomainAdminAccess"].first,
5334 unittest.equals("$arg_useDomainAdminAccess"));
Martin Kustermann7a3b5f52017-10-23 11:34:19 +02005335 unittest.expect(queryMap["fields"].first, unittest.equals(arg_$fields));
Martin Kustermann77f42ff2017-03-06 13:56:35 +01005336
5337 var h = {
Kevin Moored0251702021-01-15 06:41:08 -08005338 'content-type': 'application/json; charset=utf-8',
Martin Kustermann77f42ff2017-03-06 13:56:35 +01005339 };
Jakob Andersen52715df2018-05-01 13:58:48 +02005340 var resp = convert.json.encode(buildTeamDriveList());
Kevin Moore6d21e902021-01-15 06:41:08 -08005341 return async.Future.value(stringResponse(200, h, resp));
Martin Kustermann77f42ff2017-03-06 13:56:35 +01005342 }), true);
Martin Kustermann5eb85c12017-09-11 12:35:54 +02005343 res
Martin Kustermann7a3b5f52017-10-23 11:34:19 +02005344 .list(
5345 pageSize: arg_pageSize,
5346 pageToken: arg_pageToken,
Martin Kustermann2a131182017-11-13 13:50:07 +01005347 q: arg_q,
5348 useDomainAdminAccess: arg_useDomainAdminAccess,
Martin Kustermann7a3b5f52017-10-23 11:34:19 +02005349 $fields: arg_$fields)
Jakob Andersen4ce761d2018-04-19 11:19:11 +02005350 .then(unittest.expectAsync1(((response) {
Martin Kustermann77f42ff2017-03-06 13:56:35 +01005351 checkTeamDriveList(response);
5352 })));
5353 });
5354
Kevin Moored0251702021-01-15 06:41:08 -08005355 unittest.test('method--update', () {
Kevin Moore6d21e902021-01-15 06:41:08 -08005356 var mock = HttpServerMock();
5357 api.TeamdrivesResourceApi res = api.DriveApi(mock).teamdrives;
Martin Kustermann77f42ff2017-03-06 13:56:35 +01005358 var arg_request = buildTeamDrive();
Kevin Moored0251702021-01-15 06:41:08 -08005359 var arg_teamDriveId = 'foo';
Martin Kustermann12cdd522018-08-27 10:46:50 +02005360 var arg_useDomainAdminAccess = true;
Kevin Moored0251702021-01-15 06:41:08 -08005361 var arg_$fields = 'foo';
Martin Kustermann3953f0d2017-06-12 16:59:53 +02005362 mock.register(unittest.expectAsync2((http.BaseRequest req, json) {
Kevin Moore6d21e902021-01-15 06:41:08 -08005363 var obj = api.TeamDrive.fromJson(json);
Martin Kustermann77f42ff2017-03-06 13:56:35 +01005364 checkTeamDrive(obj);
5365
5366 var path = (req.url).path;
5367 var pathOffset = 0;
Kevin Moore6d21e902021-01-15 06:41:08 -08005368 core.int index;
5369 core.String subPart;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02005370 unittest.expect(
5371 path.substring(pathOffset, pathOffset + 1), unittest.equals("/"));
Martin Kustermann77f42ff2017-03-06 13:56:35 +01005372 pathOffset += 1;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02005373 unittest.expect(path.substring(pathOffset, pathOffset + 9),
5374 unittest.equals("drive/v3/"));
Martin Kustermann77f42ff2017-03-06 13:56:35 +01005375 pathOffset += 9;
Martin Kustermann5eb85c12017-09-11 12:35:54 +02005376 unittest.expect(path.substring(pathOffset, pathOffset + 11),
5377 unittest.equals("teamdrives/"));
Martin Kustermann77f42ff2017-03-06 13:56:35 +01005378 pathOffset += 11;
5379 subPart = core.Uri.decodeQueryComponent(path.substring(pathOffset));
5380 pathOffset = path.length;
Kevin Moored0251702021-01-15 06:41:08 -08005381 unittest.expect(subPart, unittest.equals('$arg_teamDriveId'));
Martin Kustermann77f42ff2017-03-06 13:56:35 +01005382
5383 var query = (req.url).query;
5384 var queryOffset = 0;
Jakob Andersen52715df2018-05-01 13:58:48 +02005385 var queryMap = <core.String, core.List<core.String>>{};
Kevin Moore6d21e902021-01-15 06:41:08 -08005386 void addQueryParam(n, v) => queryMap.putIfAbsent(n, () => []).add(v);
Martin Kustermann5eb85c12017-09-11 12:35:54 +02005387
Kevin Moore6d21e902021-01-15 06:41:08 -08005388 if (query.isNotEmpty) {
Kevin Moored0251702021-01-15 06:41:08 -08005389 for (var part in query.split('&')) {
5390 var keyValue = part.split('=');
Kevin Moore6d21e902021-01-15 06:41:08 -08005391 addQueryParam(
5392 core.Uri.decodeQueryComponent(keyValue[0]),
5393 core.Uri.decodeQueryComponent(keyValue[1]),
5394 );
Martin Kustermann77f42ff2017-03-06 13:56:35 +01005395 }
5396 }
Martin Kustermann12cdd522018-08-27 10:46:50 +02005397 unittest.expect(queryMap["useDomainAdminAccess"].first,
5398 unittest.equals("$arg_useDomainAdminAccess"));
Martin Kustermann7a3b5f52017-10-23 11:34:19 +02005399 unittest.expect(queryMap["fields"].first, unittest.equals(arg_$fields));
Martin Kustermann77f42ff2017-03-06 13:56:35 +01005400
Martin Kustermann77f42ff2017-03-06 13:56:35 +01005401 var h = {
Kevin Moored0251702021-01-15 06:41:08 -08005402 'content-type': 'application/json; charset=utf-8',
Martin Kustermann77f42ff2017-03-06 13:56:35 +01005403 };
Jakob Andersen52715df2018-05-01 13:58:48 +02005404 var resp = convert.json.encode(buildTeamDrive());
Kevin Moore6d21e902021-01-15 06:41:08 -08005405 return async.Future.value(stringResponse(200, h, resp));
Martin Kustermann77f42ff2017-03-06 13:56:35 +01005406 }), true);
Martin Kustermann5eb85c12017-09-11 12:35:54 +02005407 res
Martin Kustermann12cdd522018-08-27 10:46:50 +02005408 .update(arg_request, arg_teamDriveId,
5409 useDomainAdminAccess: arg_useDomainAdminAccess,
5410 $fields: arg_$fields)
Jakob Andersen4ce761d2018-04-19 11:19:11 +02005411 .then(unittest.expectAsync1(((response) {
Martin Kustermann77f42ff2017-03-06 13:56:35 +01005412 checkTeamDrive(response);
5413 })));
5414 });
Martin Kustermann77f42ff2017-03-06 13:56:35 +01005415 });
Martin Kustermann26171812015-12-21 15:06:06 +01005416}