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

Side by Side Diff: components/offline_pages/request_header/offline_page_header_unittest.cc

Issue 2337363002: Load live version when reloading an offline page on connected network (Closed)
Patch Set: Rebase again Created 4 years, 3 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
(Empty)
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
3 // found in the LICENSE file.
4
5 #include "components/offline_pages/request_header/offline_page_header.h"
6
7 #include "testing/gtest/include/gtest/gtest.h"
8
9 namespace offline_pages {
10
11 class OfflinePageHeaderTest : public testing::Test {
12 public:
13 OfflinePageHeaderTest() {}
14 ~OfflinePageHeaderTest() override {}
15 };
16
17 TEST_F(OfflinePageHeaderTest, Parse) {
18 OfflinePageHeader header;
19
20 EXPECT_FALSE(header.ParseFromHeaderValue(""));
21 EXPECT_FALSE(header.ParseFromHeaderValue(" "));
22 EXPECT_FALSE(header.ParseFromHeaderValue(" , "));
23 EXPECT_FALSE(header.ParseFromHeaderValue("reason"));
24 EXPECT_FALSE(header.ParseFromHeaderValue("hello world"));
25
26 header.Clear();
27 EXPECT_FALSE(header.ParseFromHeaderValue("persist=aa"));
28
29 header.Clear();
30 EXPECT_TRUE(header.ParseFromHeaderValue("persist=1"));
31 EXPECT_TRUE(header.need_to_persist);
32
33 header.Clear();
34 EXPECT_TRUE(header.ParseFromHeaderValue("persist=0"));
35 EXPECT_FALSE(header.need_to_persist);
36 EXPECT_EQ(OfflinePageHeader::Reason::NONE, header.reason);
37 EXPECT_EQ("", header.id);
38
39 header.Clear();
40 EXPECT_FALSE(header.ParseFromHeaderValue("reason=foo"));
41
42 header.Clear();
43 EXPECT_TRUE(header.ParseFromHeaderValue("reason=error"));
44 EXPECT_FALSE(header.need_to_persist);
45 EXPECT_EQ(OfflinePageHeader::Reason::NET_ERROR, header.reason);
46 EXPECT_EQ("", header.id);
47
48 header.Clear();
49 EXPECT_TRUE(header.ParseFromHeaderValue("id=a1b2"));
50 EXPECT_FALSE(header.need_to_persist);
51 EXPECT_EQ(OfflinePageHeader::Reason::NONE, header.reason);
52 EXPECT_EQ("a1b2", header.id);
53
54 header.Clear();
55 EXPECT_TRUE(header.ParseFromHeaderValue("persist=1 reason=download id=a1b2"));
56 EXPECT_TRUE(header.need_to_persist);
57 EXPECT_EQ(OfflinePageHeader::Reason::DOWNLOAD, header.reason);
58 EXPECT_EQ("a1b2", header.id);
59 }
60
61 TEST_F(OfflinePageHeaderTest, ToString) {
62 OfflinePageHeader header;
63 header.need_to_persist = true;
64 header.reason = OfflinePageHeader::Reason::DOWNLOAD;
65 header.id = "a1b2";
66 EXPECT_EQ("X-Chrome-offline: persist=1 reason=download id=a1b2",
67 header.GetCompleteHeaderString());
68 }
69
70 } // namespace offline_pages
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698