OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include <string> | 5 #include <string> |
6 #include <vector> | 6 #include <vector> |
7 | 7 |
8 #include "base/bind.h" | 8 #include "base/bind.h" |
9 #include "base/callback.h" | 9 #include "base/callback.h" |
10 #include "base/files/file.h" | 10 #include "base/files/file.h" |
(...skipping 139 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
150 explicit Event(int request_id) : request_id_(request_id) {} | 150 explicit Event(int request_id) : request_id_(request_id) {} |
151 virtual ~Event() {} | 151 virtual ~Event() {} |
152 int request_id() const { return request_id_; } | 152 int request_id() const { return request_id_; } |
153 | 153 |
154 private: | 154 private: |
155 int request_id_; | 155 int request_id_; |
156 }; | 156 }; |
157 | 157 |
158 class CreatedEvent : public Event { | 158 class CreatedEvent : public Event { |
159 public: | 159 public: |
160 CreatedEvent(int request_id, RequestManager::RequestType type) | 160 CreatedEvent(int request_id, RequestType type) |
161 : Event(request_id), type_(type) {} | 161 : Event(request_id), type_(type) {} |
162 virtual ~CreatedEvent() {} | 162 virtual ~CreatedEvent() {} |
163 | 163 |
164 RequestManager::RequestType type() const { return type_; } | 164 RequestType type() const { return type_; } |
165 | 165 |
166 private: | 166 private: |
167 RequestManager::RequestType type_; | 167 RequestType type_; |
168 }; | 168 }; |
169 | 169 |
170 class FulfilledEvent : public Event { | 170 class FulfilledEvent : public Event { |
171 public: | 171 public: |
172 FulfilledEvent(int request_id, bool has_more) | 172 FulfilledEvent(int request_id, bool has_more) |
173 : Event(request_id), has_more_(has_more) {} | 173 : Event(request_id), has_more_(has_more) {} |
174 virtual ~FulfilledEvent() {} | 174 virtual ~FulfilledEvent() {} |
175 | 175 |
176 bool has_more() const { return has_more_; } | 176 bool has_more() const { return has_more_; } |
177 | 177 |
(...skipping 10 matching lines...) Expand all Loading... |
188 base::File::Error error() const { return error_; } | 188 base::File::Error error() const { return error_; } |
189 | 189 |
190 private: | 190 private: |
191 base::File::Error error_; | 191 base::File::Error error_; |
192 }; | 192 }; |
193 | 193 |
194 RequestObserver() {} | 194 RequestObserver() {} |
195 virtual ~RequestObserver() {} | 195 virtual ~RequestObserver() {} |
196 | 196 |
197 // RequestManager::Observer overrides. | 197 // RequestManager::Observer overrides. |
198 virtual void OnRequestCreated(int request_id, | 198 virtual void OnRequestCreated(int request_id, RequestType type) OVERRIDE { |
199 RequestManager::RequestType type) OVERRIDE { | |
200 created_.push_back(CreatedEvent(request_id, type)); | 199 created_.push_back(CreatedEvent(request_id, type)); |
201 } | 200 } |
202 | 201 |
203 // RequestManager::Observer overrides. | 202 // RequestManager::Observer overrides. |
204 virtual void OnRequestDestroyed(int request_id) OVERRIDE { | 203 virtual void OnRequestDestroyed(int request_id) OVERRIDE { |
205 destroyed_.push_back(Event(request_id)); | 204 destroyed_.push_back(Event(request_id)); |
206 } | 205 } |
207 | 206 |
208 // RequestManager::Observer overrides. | 207 // RequestManager::Observer overrides. |
209 virtual void OnRequestExecuted(int request_id) OVERRIDE { | 208 virtual void OnRequestExecuted(int request_id) OVERRIDE { |
(...skipping 48 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
258 content::TestBrowserThreadBundle thread_bundle_; | 257 content::TestBrowserThreadBundle thread_bundle_; |
259 scoped_ptr<RequestManager> request_manager_; | 258 scoped_ptr<RequestManager> request_manager_; |
260 }; | 259 }; |
261 | 260 |
262 TEST_F(FileSystemProviderRequestManagerTest, CreateFailure) { | 261 TEST_F(FileSystemProviderRequestManagerTest, CreateFailure) { |
263 EventLogger logger; | 262 EventLogger logger; |
264 RequestObserver observer; | 263 RequestObserver observer; |
265 request_manager_->AddObserver(&observer); | 264 request_manager_->AddObserver(&observer); |
266 | 265 |
267 const int request_id = request_manager_->CreateRequest( | 266 const int request_id = request_manager_->CreateRequest( |
268 RequestManager::TESTING, | 267 TESTING, |
269 make_scoped_ptr<RequestManager::HandlerInterface>( | 268 make_scoped_ptr<RequestManager::HandlerInterface>( |
270 new FakeHandler(logger.GetWeakPtr(), false /* execute_reply */))); | 269 new FakeHandler(logger.GetWeakPtr(), false /* execute_reply */))); |
271 | 270 |
272 EXPECT_EQ(0, request_id); | 271 EXPECT_EQ(0, request_id); |
273 EXPECT_EQ(0u, logger.success_events().size()); | 272 EXPECT_EQ(0u, logger.success_events().size()); |
274 EXPECT_EQ(0u, logger.error_events().size()); | 273 EXPECT_EQ(0u, logger.error_events().size()); |
275 | 274 |
276 EXPECT_EQ(1u, observer.created().size()); | 275 EXPECT_EQ(1u, observer.created().size()); |
277 EXPECT_EQ(RequestManager::TESTING, observer.created()[0].type()); | 276 EXPECT_EQ(TESTING, observer.created()[0].type()); |
278 EXPECT_EQ(1u, observer.destroyed().size()); | 277 EXPECT_EQ(1u, observer.destroyed().size()); |
279 EXPECT_EQ(0u, observer.executed().size()); | 278 EXPECT_EQ(0u, observer.executed().size()); |
280 | 279 |
281 request_manager_->RemoveObserver(&observer); | 280 request_manager_->RemoveObserver(&observer); |
282 } | 281 } |
283 | 282 |
284 TEST_F(FileSystemProviderRequestManagerTest, CreateAndFulFill) { | 283 TEST_F(FileSystemProviderRequestManagerTest, CreateAndFulFill) { |
285 EventLogger logger; | 284 EventLogger logger; |
286 RequestObserver observer; | 285 RequestObserver observer; |
287 request_manager_->AddObserver(&observer); | 286 request_manager_->AddObserver(&observer); |
288 | 287 |
289 const int request_id = request_manager_->CreateRequest( | 288 const int request_id = request_manager_->CreateRequest( |
290 RequestManager::TESTING, | 289 TESTING, |
291 make_scoped_ptr<RequestManager::HandlerInterface>( | 290 make_scoped_ptr<RequestManager::HandlerInterface>( |
292 new FakeHandler(logger.GetWeakPtr(), true /* execute_reply */))); | 291 new FakeHandler(logger.GetWeakPtr(), true /* execute_reply */))); |
293 | 292 |
294 EXPECT_EQ(1, request_id); | 293 EXPECT_EQ(1, request_id); |
295 EXPECT_EQ(0u, logger.success_events().size()); | 294 EXPECT_EQ(0u, logger.success_events().size()); |
296 EXPECT_EQ(0u, logger.error_events().size()); | 295 EXPECT_EQ(0u, logger.error_events().size()); |
297 | 296 |
298 ASSERT_EQ(1u, observer.created().size()); | 297 ASSERT_EQ(1u, observer.created().size()); |
299 EXPECT_EQ(request_id, observer.created()[0].request_id()); | 298 EXPECT_EQ(request_id, observer.created()[0].request_id()); |
300 EXPECT_EQ(RequestManager::TESTING, observer.created()[0].type()); | 299 EXPECT_EQ(TESTING, observer.created()[0].type()); |
301 | 300 |
302 ASSERT_EQ(1u, observer.executed().size()); | 301 ASSERT_EQ(1u, observer.executed().size()); |
303 EXPECT_EQ(request_id, observer.executed()[0].request_id()); | 302 EXPECT_EQ(request_id, observer.executed()[0].request_id()); |
304 | 303 |
305 scoped_ptr<RequestValue> response( | 304 scoped_ptr<RequestValue> response( |
306 RequestValue::CreateForTesting("i-like-vanilla")); | 305 RequestValue::CreateForTesting("i-like-vanilla")); |
307 const bool has_more = false; | 306 const bool has_more = false; |
308 | 307 |
309 bool result = | 308 bool result = |
310 request_manager_->FulfillRequest(request_id, response.Pass(), has_more); | 309 request_manager_->FulfillRequest(request_id, response.Pass(), has_more); |
(...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
348 | 347 |
349 request_manager_->RemoveObserver(&observer); | 348 request_manager_->RemoveObserver(&observer); |
350 } | 349 } |
351 | 350 |
352 TEST_F(FileSystemProviderRequestManagerTest, CreateAndFulFill_WithHasNext) { | 351 TEST_F(FileSystemProviderRequestManagerTest, CreateAndFulFill_WithHasNext) { |
353 EventLogger logger; | 352 EventLogger logger; |
354 RequestObserver observer; | 353 RequestObserver observer; |
355 request_manager_->AddObserver(&observer); | 354 request_manager_->AddObserver(&observer); |
356 | 355 |
357 const int request_id = request_manager_->CreateRequest( | 356 const int request_id = request_manager_->CreateRequest( |
358 RequestManager::TESTING, | 357 TESTING, |
359 make_scoped_ptr<RequestManager::HandlerInterface>( | 358 make_scoped_ptr<RequestManager::HandlerInterface>( |
360 new FakeHandler(logger.GetWeakPtr(), true /* execute_reply */))); | 359 new FakeHandler(logger.GetWeakPtr(), true /* execute_reply */))); |
361 | 360 |
362 EXPECT_EQ(1, request_id); | 361 EXPECT_EQ(1, request_id); |
363 EXPECT_EQ(0u, logger.success_events().size()); | 362 EXPECT_EQ(0u, logger.success_events().size()); |
364 EXPECT_EQ(0u, logger.error_events().size()); | 363 EXPECT_EQ(0u, logger.error_events().size()); |
365 | 364 |
366 ASSERT_EQ(1u, observer.created().size()); | 365 ASSERT_EQ(1u, observer.created().size()); |
367 EXPECT_EQ(request_id, observer.created()[0].request_id()); | 366 EXPECT_EQ(request_id, observer.created()[0].request_id()); |
368 EXPECT_EQ(RequestManager::TESTING, observer.created()[0].type()); | 367 EXPECT_EQ(TESTING, observer.created()[0].type()); |
369 | 368 |
370 ASSERT_EQ(1u, observer.executed().size()); | 369 ASSERT_EQ(1u, observer.executed().size()); |
371 EXPECT_EQ(request_id, observer.executed()[0].request_id()); | 370 EXPECT_EQ(request_id, observer.executed()[0].request_id()); |
372 | 371 |
373 scoped_ptr<RequestValue> response; | 372 scoped_ptr<RequestValue> response; |
374 const bool has_more = true; | 373 const bool has_more = true; |
375 | 374 |
376 bool result = | 375 bool result = |
377 request_manager_->FulfillRequest(request_id, response.Pass(), has_more); | 376 request_manager_->FulfillRequest(request_id, response.Pass(), has_more); |
378 EXPECT_TRUE(result); | 377 EXPECT_TRUE(result); |
(...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
417 | 416 |
418 request_manager_->RemoveObserver(&observer); | 417 request_manager_->RemoveObserver(&observer); |
419 } | 418 } |
420 | 419 |
421 TEST_F(FileSystemProviderRequestManagerTest, CreateAndReject) { | 420 TEST_F(FileSystemProviderRequestManagerTest, CreateAndReject) { |
422 EventLogger logger; | 421 EventLogger logger; |
423 RequestObserver observer; | 422 RequestObserver observer; |
424 request_manager_->AddObserver(&observer); | 423 request_manager_->AddObserver(&observer); |
425 | 424 |
426 const int request_id = request_manager_->CreateRequest( | 425 const int request_id = request_manager_->CreateRequest( |
427 RequestManager::TESTING, | 426 TESTING, |
428 make_scoped_ptr<RequestManager::HandlerInterface>( | 427 make_scoped_ptr<RequestManager::HandlerInterface>( |
429 new FakeHandler(logger.GetWeakPtr(), true /* execute_reply */))); | 428 new FakeHandler(logger.GetWeakPtr(), true /* execute_reply */))); |
430 | 429 |
431 EXPECT_EQ(1, request_id); | 430 EXPECT_EQ(1, request_id); |
432 EXPECT_EQ(0u, logger.success_events().size()); | 431 EXPECT_EQ(0u, logger.success_events().size()); |
433 EXPECT_EQ(0u, logger.error_events().size()); | 432 EXPECT_EQ(0u, logger.error_events().size()); |
434 | 433 |
435 ASSERT_EQ(1u, observer.created().size()); | 434 ASSERT_EQ(1u, observer.created().size()); |
436 EXPECT_EQ(request_id, observer.created()[0].request_id()); | 435 EXPECT_EQ(request_id, observer.created()[0].request_id()); |
437 EXPECT_EQ(RequestManager::TESTING, observer.created()[0].type()); | 436 EXPECT_EQ(TESTING, observer.created()[0].type()); |
438 | 437 |
439 ASSERT_EQ(1u, observer.executed().size()); | 438 ASSERT_EQ(1u, observer.executed().size()); |
440 EXPECT_EQ(request_id, observer.executed()[0].request_id()); | 439 EXPECT_EQ(request_id, observer.executed()[0].request_id()); |
441 | 440 |
442 base::File::Error error = base::File::FILE_ERROR_NO_MEMORY; | 441 base::File::Error error = base::File::FILE_ERROR_NO_MEMORY; |
443 bool result = request_manager_->RejectRequest(request_id, error); | 442 bool result = request_manager_->RejectRequest(request_id, error); |
444 EXPECT_TRUE(result); | 443 EXPECT_TRUE(result); |
445 | 444 |
446 // Validate if the callback has correct arguments. | 445 // Validate if the callback has correct arguments. |
447 ASSERT_EQ(1u, logger.error_events().size()); | 446 ASSERT_EQ(1u, logger.error_events().size()); |
(...skipping 30 matching lines...) Expand all Loading... |
478 request_manager_->RemoveObserver(&observer); | 477 request_manager_->RemoveObserver(&observer); |
479 } | 478 } |
480 | 479 |
481 TEST_F(FileSystemProviderRequestManagerTest, | 480 TEST_F(FileSystemProviderRequestManagerTest, |
482 CreateAndFulfillWithWrongRequestId) { | 481 CreateAndFulfillWithWrongRequestId) { |
483 EventLogger logger; | 482 EventLogger logger; |
484 RequestObserver observer; | 483 RequestObserver observer; |
485 request_manager_->AddObserver(&observer); | 484 request_manager_->AddObserver(&observer); |
486 | 485 |
487 const int request_id = request_manager_->CreateRequest( | 486 const int request_id = request_manager_->CreateRequest( |
488 RequestManager::TESTING, | 487 TESTING, |
489 make_scoped_ptr<RequestManager::HandlerInterface>( | 488 make_scoped_ptr<RequestManager::HandlerInterface>( |
490 new FakeHandler(logger.GetWeakPtr(), true /* execute_reply */))); | 489 new FakeHandler(logger.GetWeakPtr(), true /* execute_reply */))); |
491 | 490 |
492 EXPECT_EQ(1, request_id); | 491 EXPECT_EQ(1, request_id); |
493 EXPECT_EQ(0u, logger.success_events().size()); | 492 EXPECT_EQ(0u, logger.success_events().size()); |
494 EXPECT_EQ(0u, logger.error_events().size()); | 493 EXPECT_EQ(0u, logger.error_events().size()); |
495 | 494 |
496 ASSERT_EQ(1u, observer.created().size()); | 495 ASSERT_EQ(1u, observer.created().size()); |
497 EXPECT_EQ(request_id, observer.created()[0].request_id()); | 496 EXPECT_EQ(request_id, observer.created()[0].request_id()); |
498 EXPECT_EQ(RequestManager::TESTING, observer.created()[0].type()); | 497 EXPECT_EQ(TESTING, observer.created()[0].type()); |
499 | 498 |
500 ASSERT_EQ(1u, observer.executed().size()); | 499 ASSERT_EQ(1u, observer.executed().size()); |
501 EXPECT_EQ(request_id, observer.executed()[0].request_id()); | 500 EXPECT_EQ(request_id, observer.executed()[0].request_id()); |
502 | 501 |
503 scoped_ptr<RequestValue> response; | 502 scoped_ptr<RequestValue> response; |
504 const bool has_more = true; | 503 const bool has_more = true; |
505 | 504 |
506 const bool result = request_manager_->FulfillRequest( | 505 const bool result = request_manager_->FulfillRequest( |
507 request_id + 1, response.Pass(), has_more); | 506 request_id + 1, response.Pass(), has_more); |
508 EXPECT_FALSE(result); | 507 EXPECT_FALSE(result); |
(...skipping 16 matching lines...) Expand all Loading... |
525 request_manager_->RemoveObserver(&observer); | 524 request_manager_->RemoveObserver(&observer); |
526 } | 525 } |
527 | 526 |
528 TEST_F(FileSystemProviderRequestManagerTest, | 527 TEST_F(FileSystemProviderRequestManagerTest, |
529 CreateAndRejectWithWrongRequestId) { | 528 CreateAndRejectWithWrongRequestId) { |
530 EventLogger logger; | 529 EventLogger logger; |
531 RequestObserver observer; | 530 RequestObserver observer; |
532 request_manager_->AddObserver(&observer); | 531 request_manager_->AddObserver(&observer); |
533 | 532 |
534 const int request_id = request_manager_->CreateRequest( | 533 const int request_id = request_manager_->CreateRequest( |
535 RequestManager::TESTING, | 534 TESTING, |
536 make_scoped_ptr<RequestManager::HandlerInterface>( | 535 make_scoped_ptr<RequestManager::HandlerInterface>( |
537 new FakeHandler(logger.GetWeakPtr(), true /* execute_reply */))); | 536 new FakeHandler(logger.GetWeakPtr(), true /* execute_reply */))); |
538 | 537 |
539 EXPECT_EQ(1, request_id); | 538 EXPECT_EQ(1, request_id); |
540 EXPECT_EQ(0u, logger.success_events().size()); | 539 EXPECT_EQ(0u, logger.success_events().size()); |
541 EXPECT_EQ(0u, logger.error_events().size()); | 540 EXPECT_EQ(0u, logger.error_events().size()); |
542 | 541 |
543 ASSERT_EQ(1u, observer.created().size()); | 542 ASSERT_EQ(1u, observer.created().size()); |
544 EXPECT_EQ(request_id, observer.created()[0].request_id()); | 543 EXPECT_EQ(request_id, observer.created()[0].request_id()); |
545 EXPECT_EQ(RequestManager::TESTING, observer.created()[0].type()); | 544 EXPECT_EQ(TESTING, observer.created()[0].type()); |
546 | 545 |
547 ASSERT_EQ(1u, observer.executed().size()); | 546 ASSERT_EQ(1u, observer.executed().size()); |
548 EXPECT_EQ(request_id, observer.executed()[0].request_id()); | 547 EXPECT_EQ(request_id, observer.executed()[0].request_id()); |
549 | 548 |
550 base::File::Error error = base::File::FILE_ERROR_NO_MEMORY; | 549 base::File::Error error = base::File::FILE_ERROR_NO_MEMORY; |
551 bool result = request_manager_->RejectRequest(request_id + 1, error); | 550 bool result = request_manager_->RejectRequest(request_id + 1, error); |
552 EXPECT_FALSE(result); | 551 EXPECT_FALSE(result); |
553 | 552 |
554 // Callbacks should not be called. | 553 // Callbacks should not be called. |
555 EXPECT_EQ(0u, logger.error_events().size()); | 554 EXPECT_EQ(0u, logger.error_events().size()); |
556 EXPECT_EQ(0u, logger.success_events().size()); | 555 EXPECT_EQ(0u, logger.success_events().size()); |
557 | 556 |
558 EXPECT_EQ(0u, observer.rejected().size()); | 557 EXPECT_EQ(0u, observer.rejected().size()); |
559 | 558 |
560 // Confirm, that the request hasn't been removed, by rejecting it correctly. | 559 // Confirm, that the request hasn't been removed, by rejecting it correctly. |
561 { | 560 { |
562 bool retry = request_manager_->RejectRequest(request_id, error); | 561 bool retry = request_manager_->RejectRequest(request_id, error); |
563 EXPECT_TRUE(retry); | 562 EXPECT_TRUE(retry); |
564 EXPECT_EQ(1u, observer.rejected().size()); | 563 EXPECT_EQ(1u, observer.rejected().size()); |
565 } | 564 } |
566 | 565 |
567 request_manager_->RemoveObserver(&observer); | 566 request_manager_->RemoveObserver(&observer); |
568 } | 567 } |
569 | 568 |
570 TEST_F(FileSystemProviderRequestManagerTest, UniqueIds) { | 569 TEST_F(FileSystemProviderRequestManagerTest, UniqueIds) { |
571 EventLogger logger; | 570 EventLogger logger; |
572 | 571 |
573 const int first_request_id = request_manager_->CreateRequest( | 572 const int first_request_id = request_manager_->CreateRequest( |
574 RequestManager::TESTING, | 573 TESTING, |
575 make_scoped_ptr<RequestManager::HandlerInterface>( | 574 make_scoped_ptr<RequestManager::HandlerInterface>( |
576 new FakeHandler(logger.GetWeakPtr(), true /* execute_reply */))); | 575 new FakeHandler(logger.GetWeakPtr(), true /* execute_reply */))); |
577 | 576 |
578 const int second_request_id = request_manager_->CreateRequest( | 577 const int second_request_id = request_manager_->CreateRequest( |
579 RequestManager::TESTING, | 578 TESTING, |
580 make_scoped_ptr<RequestManager::HandlerInterface>( | 579 make_scoped_ptr<RequestManager::HandlerInterface>( |
581 new FakeHandler(logger.GetWeakPtr(), true /* execute_reply */))); | 580 new FakeHandler(logger.GetWeakPtr(), true /* execute_reply */))); |
582 | 581 |
583 EXPECT_EQ(1, first_request_id); | 582 EXPECT_EQ(1, first_request_id); |
584 EXPECT_EQ(2, second_request_id); | 583 EXPECT_EQ(2, second_request_id); |
585 } | 584 } |
586 | 585 |
587 TEST_F(FileSystemProviderRequestManagerTest, AbortOnDestroy) { | 586 TEST_F(FileSystemProviderRequestManagerTest, AbortOnDestroy) { |
588 EventLogger logger; | 587 EventLogger logger; |
589 RequestObserver observer; | 588 RequestObserver observer; |
590 int request_id; | 589 int request_id; |
591 | 590 |
592 { | 591 { |
593 RequestManager request_manager; | 592 RequestManager request_manager; |
594 request_manager.AddObserver(&observer); | 593 request_manager.AddObserver(&observer); |
595 | 594 |
596 request_id = request_manager.CreateRequest( | 595 request_id = request_manager.CreateRequest( |
597 RequestManager::TESTING, | 596 TESTING, |
598 make_scoped_ptr<RequestManager::HandlerInterface>( | 597 make_scoped_ptr<RequestManager::HandlerInterface>( |
599 new FakeHandler(logger.GetWeakPtr(), true /* execute_reply */))); | 598 new FakeHandler(logger.GetWeakPtr(), true /* execute_reply */))); |
600 | 599 |
601 EXPECT_EQ(1, request_id); | 600 EXPECT_EQ(1, request_id); |
602 EXPECT_EQ(0u, logger.success_events().size()); | 601 EXPECT_EQ(0u, logger.success_events().size()); |
603 EXPECT_EQ(0u, logger.error_events().size()); | 602 EXPECT_EQ(0u, logger.error_events().size()); |
604 | 603 |
605 ASSERT_EQ(1u, observer.created().size()); | 604 ASSERT_EQ(1u, observer.created().size()); |
606 EXPECT_EQ(request_id, observer.created()[0].request_id()); | 605 EXPECT_EQ(request_id, observer.created()[0].request_id()); |
607 EXPECT_EQ(RequestManager::TESTING, observer.created()[0].type()); | 606 EXPECT_EQ(TESTING, observer.created()[0].type()); |
608 | 607 |
609 ASSERT_EQ(1u, observer.executed().size()); | 608 ASSERT_EQ(1u, observer.executed().size()); |
610 EXPECT_EQ(request_id, observer.executed()[0].request_id()); | 609 EXPECT_EQ(request_id, observer.executed()[0].request_id()); |
611 | 610 |
612 EXPECT_EQ(0u, observer.fulfilled().size()); | 611 EXPECT_EQ(0u, observer.fulfilled().size()); |
613 EXPECT_EQ(0u, observer.rejected().size()); | 612 EXPECT_EQ(0u, observer.rejected().size()); |
614 EXPECT_EQ(0u, observer.destroyed().size()); | 613 EXPECT_EQ(0u, observer.destroyed().size()); |
615 EXPECT_EQ(0u, observer.timeouted().size()); | 614 EXPECT_EQ(0u, observer.timeouted().size()); |
616 | 615 |
617 // Do not remove the observer, to catch events while destructing. | 616 // Do not remove the observer, to catch events while destructing. |
(...skipping 14 matching lines...) Expand all Loading... |
632 ASSERT_EQ(1u, observer.destroyed().size()); | 631 ASSERT_EQ(1u, observer.destroyed().size()); |
633 } | 632 } |
634 | 633 |
635 TEST_F(FileSystemProviderRequestManagerTest, AbortOnTimeout) { | 634 TEST_F(FileSystemProviderRequestManagerTest, AbortOnTimeout) { |
636 EventLogger logger; | 635 EventLogger logger; |
637 RequestObserver observer; | 636 RequestObserver observer; |
638 request_manager_->AddObserver(&observer); | 637 request_manager_->AddObserver(&observer); |
639 | 638 |
640 request_manager_->SetTimeoutForTests(base::TimeDelta::FromSeconds(0)); | 639 request_manager_->SetTimeoutForTests(base::TimeDelta::FromSeconds(0)); |
641 const int request_id = request_manager_->CreateRequest( | 640 const int request_id = request_manager_->CreateRequest( |
642 RequestManager::TESTING, | 641 TESTING, |
643 make_scoped_ptr<RequestManager::HandlerInterface>( | 642 make_scoped_ptr<RequestManager::HandlerInterface>( |
644 new FakeHandler(logger.GetWeakPtr(), true /* execute_reply */))); | 643 new FakeHandler(logger.GetWeakPtr(), true /* execute_reply */))); |
645 EXPECT_EQ(1, request_id); | 644 EXPECT_EQ(1, request_id); |
646 EXPECT_EQ(0u, logger.success_events().size()); | 645 EXPECT_EQ(0u, logger.success_events().size()); |
647 EXPECT_EQ(0u, logger.error_events().size()); | 646 EXPECT_EQ(0u, logger.error_events().size()); |
648 | 647 |
649 ASSERT_EQ(1u, observer.created().size()); | 648 ASSERT_EQ(1u, observer.created().size()); |
650 EXPECT_EQ(request_id, observer.created()[0].request_id()); | 649 EXPECT_EQ(request_id, observer.created()[0].request_id()); |
651 EXPECT_EQ(RequestManager::TESTING, observer.created()[0].type()); | 650 EXPECT_EQ(TESTING, observer.created()[0].type()); |
652 | 651 |
653 ASSERT_EQ(1u, observer.executed().size()); | 652 ASSERT_EQ(1u, observer.executed().size()); |
654 EXPECT_EQ(request_id, observer.executed()[0].request_id()); | 653 EXPECT_EQ(request_id, observer.executed()[0].request_id()); |
655 | 654 |
656 // Wait until the request is timeouted. | 655 // Wait until the request is timeouted. |
657 base::RunLoop().RunUntilIdle(); | 656 base::RunLoop().RunUntilIdle(); |
658 | 657 |
659 ASSERT_EQ(1u, logger.error_events().size()); | 658 ASSERT_EQ(1u, logger.error_events().size()); |
660 EventLogger::ErrorEvent* event = logger.error_events()[0]; | 659 EventLogger::ErrorEvent* event = logger.error_events()[0]; |
661 EXPECT_EQ(base::File::FILE_ERROR_ABORT, event->error()); | 660 EXPECT_EQ(base::File::FILE_ERROR_ABORT, event->error()); |
662 | 661 |
663 ASSERT_EQ(1u, observer.rejected().size()); | 662 ASSERT_EQ(1u, observer.rejected().size()); |
664 EXPECT_EQ(request_id, observer.rejected()[0].request_id()); | 663 EXPECT_EQ(request_id, observer.rejected()[0].request_id()); |
665 EXPECT_EQ(base::File::FILE_ERROR_ABORT, observer.rejected()[0].error()); | 664 EXPECT_EQ(base::File::FILE_ERROR_ABORT, observer.rejected()[0].error()); |
666 ASSERT_EQ(1u, observer.timeouted().size()); | 665 ASSERT_EQ(1u, observer.timeouted().size()); |
667 EXPECT_EQ(request_id, observer.timeouted()[0].request_id()); | 666 EXPECT_EQ(request_id, observer.timeouted()[0].request_id()); |
668 ASSERT_EQ(1u, observer.destroyed().size()); | 667 ASSERT_EQ(1u, observer.destroyed().size()); |
669 EXPECT_EQ(request_id, observer.destroyed()[0].request_id()); | 668 EXPECT_EQ(request_id, observer.destroyed()[0].request_id()); |
670 | 669 |
671 request_manager_->RemoveObserver(&observer); | 670 request_manager_->RemoveObserver(&observer); |
672 } | 671 } |
673 | 672 |
674 } // namespace file_system_provider | 673 } // namespace file_system_provider |
675 } // namespace chromeos | 674 } // namespace chromeos |
OLD | NEW |