Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(189)

Side by Side Diff: components/offline_pages/background/save_page_request_unittest.cc

Issue 2218403002: Change database scheme - add state and start tracking (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Delete old database if any Created 4 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2016 The Chromium Authors. All rights reserved. 1 // Copyright 2016 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 "components/offline_pages/background/save_page_request.h" 5 #include "components/offline_pages/background/save_page_request.h"
6 6
7 #include "testing/gtest/include/gtest/gtest.h" 7 #include "testing/gtest/include/gtest/gtest.h"
8 8
9 namespace offline_pages { 9 namespace offline_pages {
10 10
(...skipping 14 matching lines...) Expand all
25 TEST_F(SavePageRequestTest, CreatePendingReqeust) { 25 TEST_F(SavePageRequestTest, CreatePendingReqeust) {
26 base::Time creation_time = base::Time::Now(); 26 base::Time creation_time = base::Time::Now();
27 SavePageRequest request( 27 SavePageRequest request(
28 kRequestId, kUrl, kClientId, creation_time, kUserRequested); 28 kRequestId, kUrl, kClientId, creation_time, kUserRequested);
29 ASSERT_EQ(kRequestId, request.request_id()); 29 ASSERT_EQ(kRequestId, request.request_id());
30 ASSERT_EQ(kUrl, request.url()); 30 ASSERT_EQ(kUrl, request.url());
31 ASSERT_EQ(kClientId, request.client_id()); 31 ASSERT_EQ(kClientId, request.client_id());
32 ASSERT_EQ(creation_time, request.creation_time()); 32 ASSERT_EQ(creation_time, request.creation_time());
33 ASSERT_EQ(creation_time, request.activation_time()); 33 ASSERT_EQ(creation_time, request.activation_time());
34 ASSERT_EQ(base::Time(), request.last_attempt_time()); 34 ASSERT_EQ(base::Time(), request.last_attempt_time());
35 ASSERT_EQ(0, request.attempt_count()); 35 ASSERT_EQ(0, request.completed_attempt_count());
fgorski 2016/08/08 17:48:05 check for state and started count here as well, pl
Pete Williamson 2016/08/08 18:44:29 Done.
36 } 36 }
37 37
38 TEST_F(SavePageRequestTest, StartAndCompleteRequest) { 38 TEST_F(SavePageRequestTest, StartAndCompleteRequest) {
39 base::Time creation_time = base::Time::Now(); 39 base::Time creation_time = base::Time::Now();
40 base::Time activation_time = creation_time + base::TimeDelta::FromHours(6); 40 base::Time activation_time = creation_time + base::TimeDelta::FromHours(6);
41 SavePageRequest request(kRequestId, kUrl, kClientId, creation_time, 41 SavePageRequest request(kRequestId, kUrl, kClientId, creation_time,
42 activation_time, kUserRequested); 42 activation_time, kUserRequested);
43 43
44 base::Time start_time = activation_time + base::TimeDelta::FromHours(3); 44 base::Time start_time = activation_time + base::TimeDelta::FromHours(3);
45 request.MarkAttemptStarted(start_time); 45 request.MarkAttemptStarted(start_time);
46 46
47 // Most things don't change about the request. 47 // Most things don't change about the request.
48 ASSERT_EQ(kRequestId, request.request_id()); 48 ASSERT_EQ(kRequestId, request.request_id());
49 ASSERT_EQ(kUrl, request.url()); 49 ASSERT_EQ(kUrl, request.url());
50 ASSERT_EQ(kClientId, request.client_id()); 50 ASSERT_EQ(kClientId, request.client_id());
51 ASSERT_EQ(creation_time, request.creation_time()); 51 ASSERT_EQ(creation_time, request.creation_time());
52 ASSERT_EQ(activation_time, request.activation_time()); 52 ASSERT_EQ(activation_time, request.activation_time());
53 53
54 // Attempt time, attempt count and status will though. 54 // Attempt time, attempt count and status will though.
55 ASSERT_EQ(start_time, request.last_attempt_time()); 55 ASSERT_EQ(start_time, request.last_attempt_time());
56 ASSERT_EQ(1, request.attempt_count()); 56 ASSERT_EQ(1, request.started_attempt_count());
57 ASSERT_EQ(SavePageRequest::RequestState::PRERENDERING,
58 request.request_state());
57 59
58 request.MarkAttemptCompleted(); 60 request.MarkAttemptCompleted();
59 61
60 // Again, most things don't change about the request. 62 // Again, most things don't change about the request.
61 ASSERT_EQ(kRequestId, request.request_id()); 63 ASSERT_EQ(kRequestId, request.request_id());
62 ASSERT_EQ(kUrl, request.url()); 64 ASSERT_EQ(kUrl, request.url());
63 ASSERT_EQ(kClientId, request.client_id()); 65 ASSERT_EQ(kClientId, request.client_id());
64 ASSERT_EQ(creation_time, request.creation_time()); 66 ASSERT_EQ(creation_time, request.creation_time());
65 ASSERT_EQ(activation_time, request.activation_time()); 67 ASSERT_EQ(activation_time, request.activation_time());
66 68
67 // Last attempt time and status are updated. 69 // Last attempt time and status are updated.
68 ASSERT_EQ(base::Time(), request.last_attempt_time()); 70 ASSERT_EQ(base::Time(), request.last_attempt_time()); // TODO: flaky?
fgorski 2016/08/08 17:48:06 what is happening? Could you explain it?
Pete Williamson 2016/08/08 18:44:29 Sure - Sorry, I meant to investigate this before u
Pete Williamson 2016/08/08 18:53:12 Ah, I see it is comparing to base::Time(), not bas
69 ASSERT_EQ(1, request.attempt_count()); 71 ASSERT_EQ(1, request.completed_attempt_count());
72 ASSERT_EQ(SavePageRequest::RequestState::AVAILABLE, request.request_state());
70 } 73 }
71 74
72 TEST_F(SavePageRequestTest, StartAndAbortRequest) { 75 TEST_F(SavePageRequestTest, StartAndAbortRequest) {
73 base::Time creation_time = base::Time::Now(); 76 base::Time creation_time = base::Time::Now();
74 SavePageRequest request(kRequestId, kUrl, kClientId, creation_time, 77 SavePageRequest request(kRequestId, kUrl, kClientId, creation_time,
75 kUserRequested); 78 kUserRequested);
76 int start_attempt_count = 2;
77 request.set_attempt_count(start_attempt_count);
78 79
79 base::Time start_time = creation_time + base::TimeDelta::FromHours(3); 80 base::Time start_time = creation_time + base::TimeDelta::FromHours(3);
80 request.MarkAttemptStarted(start_time); 81 request.MarkAttemptStarted(start_time);
81 82
82 // Most things don't change about the request. 83 // Most things don't change about the request.
83 ASSERT_EQ(kRequestId, request.request_id()); 84 ASSERT_EQ(kRequestId, request.request_id());
84 ASSERT_EQ(kUrl, request.url()); 85 ASSERT_EQ(kUrl, request.url());
85 ASSERT_EQ(kClientId, request.client_id()); 86 ASSERT_EQ(kClientId, request.client_id());
86 ASSERT_EQ(creation_time, request.creation_time()); 87 ASSERT_EQ(creation_time, request.creation_time());
87 88
88 // Attempt time and attempt count will though. 89 // Attempt time and attempt count will though.
89 ASSERT_EQ(start_time, request.last_attempt_time()); 90 ASSERT_EQ(start_time, request.last_attempt_time());
90 ASSERT_EQ(start_attempt_count + 1, request.attempt_count()); 91 ASSERT_EQ(1, request.started_attempt_count());
92 ASSERT_EQ(SavePageRequest::RequestState::PRERENDERING,
93 request.request_state());
91 94
92 request.MarkAttemptAborted(); 95 request.MarkAttemptAborted();
93 96
94 // Again, most things don't change about the request. 97 // Again, most things don't change about the request.
95 ASSERT_EQ(kRequestId, request.request_id()); 98 ASSERT_EQ(kRequestId, request.request_id());
96 ASSERT_EQ(kUrl, request.url()); 99 ASSERT_EQ(kUrl, request.url());
97 ASSERT_EQ(kClientId, request.client_id()); 100 ASSERT_EQ(kClientId, request.client_id());
98 ASSERT_EQ(creation_time, request.creation_time()); 101 ASSERT_EQ(creation_time, request.creation_time());
99 102
100 // Last attempt time is updated and attempt count decremented. 103 // Last attempt time is updated and completed attempt count did not rise.
101 ASSERT_EQ(base::Time(), request.last_attempt_time()); 104 ASSERT_EQ(base::Time(), request.last_attempt_time());
102 ASSERT_EQ(start_attempt_count, request.attempt_count()); 105 ASSERT_EQ(0, request.completed_attempt_count());
106 ASSERT_EQ(SavePageRequest::RequestState::AVAILABLE, request.request_state());
fgorski 2016/08/08 17:48:06 This is unrelated to this line, but affects this f
Pete Williamson 2016/08/08 18:44:29 Tests for the state changes are coming in next cha
fgorski 2016/08/08 22:35:33 Acknowledged.
103 } 107 }
104 108
105 } // namespace offline_pages 109 } // namespace offline_pages
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698