| OLD | NEW |
| 1 // Copyright 2012 The Chromium Authors. All rights reserved. | 1 // Copyright 2012 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/sessions/core/session_types.h" | 5 #include "components/sessions/core/session_types.h" |
| 6 | 6 |
| 7 #include <cstddef> | 7 #include <cstddef> |
| 8 #include <string> | 8 #include <string> |
| 9 | 9 |
| 10 #include "base/strings/string_number_conversions.h" | 10 #include "base/strings/string_number_conversions.h" |
| (...skipping 19 matching lines...) Expand all Loading... |
| 30 sync_data.set_current_navigation_index(3); | 30 sync_data.set_current_navigation_index(3); |
| 31 sync_data.set_pinned(true); | 31 sync_data.set_pinned(true); |
| 32 sync_data.set_extension_app_id("app_id"); | 32 sync_data.set_extension_app_id("app_id"); |
| 33 for (int i = 0; i < 5; ++i) { | 33 for (int i = 0; i < 5; ++i) { |
| 34 sync_pb::TabNavigation* navigation = sync_data.add_navigation(); | 34 sync_pb::TabNavigation* navigation = sync_data.add_navigation(); |
| 35 navigation->set_virtual_url("http://foo/" + base::IntToString(i)); | 35 navigation->set_virtual_url("http://foo/" + base::IntToString(i)); |
| 36 navigation->set_referrer("referrer"); | 36 navigation->set_referrer("referrer"); |
| 37 navigation->set_title("title"); | 37 navigation->set_title("title"); |
| 38 navigation->set_page_transition(sync_pb::SyncEnums_PageTransition_TYPED); | 38 navigation->set_page_transition(sync_pb::SyncEnums_PageTransition_TYPED); |
| 39 } | 39 } |
| 40 sync_data.add_variation_id(3312238); | |
| 41 sync_data.add_variation_id(3312242); | |
| 42 | 40 |
| 43 sessions::SessionTab tab; | 41 sessions::SessionTab tab; |
| 44 tab.window_id.set_id(100); | 42 tab.window_id.set_id(100); |
| 45 tab.tab_id.set_id(100); | 43 tab.tab_id.set_id(100); |
| 46 tab.tab_visual_index = 100; | 44 tab.tab_visual_index = 100; |
| 47 tab.current_navigation_index = 1000; | 45 tab.current_navigation_index = 1000; |
| 48 tab.pinned = false; | 46 tab.pinned = false; |
| 49 tab.extension_app_id = "fake"; | 47 tab.extension_app_id = "fake"; |
| 50 tab.user_agent_override = "fake"; | 48 tab.user_agent_override = "fake"; |
| 51 tab.timestamp = base::Time::FromInternalValue(100); | 49 tab.timestamp = base::Time::FromInternalValue(100); |
| (...skipping 12 matching lines...) Expand all Loading... |
| 64 ASSERT_EQ(5u, tab.navigations.size()); | 62 ASSERT_EQ(5u, tab.navigations.size()); |
| 65 for (int i = 0; i < 5; ++i) { | 63 for (int i = 0; i < 5; ++i) { |
| 66 EXPECT_EQ(i, tab.navigations[i].index()); | 64 EXPECT_EQ(i, tab.navigations[i].index()); |
| 67 EXPECT_EQ(GURL("referrer"), tab.navigations[i].referrer_url()); | 65 EXPECT_EQ(GURL("referrer"), tab.navigations[i].referrer_url()); |
| 68 EXPECT_EQ(base::ASCIIToUTF16("title"),tab.navigations[i].title()); | 66 EXPECT_EQ(base::ASCIIToUTF16("title"),tab.navigations[i].title()); |
| 69 EXPECT_TRUE(ui::PageTransitionTypeIncludingQualifiersIs( | 67 EXPECT_TRUE(ui::PageTransitionTypeIncludingQualifiersIs( |
| 70 tab.navigations[i].transition_type(), ui::PAGE_TRANSITION_TYPED)); | 68 tab.navigations[i].transition_type(), ui::PAGE_TRANSITION_TYPED)); |
| 71 EXPECT_EQ(GURL("http://foo/" + base::IntToString(i)), | 69 EXPECT_EQ(GURL("http://foo/" + base::IntToString(i)), |
| 72 tab.navigations[i].virtual_url()); | 70 tab.navigations[i].virtual_url()); |
| 73 } | 71 } |
| 74 ASSERT_EQ(2u, tab.variation_ids.size()); | |
| 75 EXPECT_EQ(3312238, tab.variation_ids[0]); | |
| 76 EXPECT_EQ(3312242, tab.variation_ids[1]); | |
| 77 EXPECT_TRUE(tab.session_storage_persistent_id.empty()); | 72 EXPECT_TRUE(tab.session_storage_persistent_id.empty()); |
| 78 } | 73 } |
| 79 | 74 |
| 80 TEST(SessionTab, ToSyncData) { | 75 TEST(SessionTab, ToSyncData) { |
| 81 sessions::SessionTab tab; | 76 sessions::SessionTab tab; |
| 82 tab.window_id.set_id(10); | 77 tab.window_id.set_id(10); |
| 83 tab.tab_id.set_id(5); | 78 tab.tab_id.set_id(5); |
| 84 tab.tab_visual_index = 13; | 79 tab.tab_visual_index = 13; |
| 85 tab.current_navigation_index = 3; | 80 tab.current_navigation_index = 3; |
| 86 tab.pinned = true; | 81 tab.pinned = true; |
| 87 tab.extension_app_id = "app_id"; | 82 tab.extension_app_id = "app_id"; |
| 88 tab.user_agent_override = "fake"; | 83 tab.user_agent_override = "fake"; |
| 89 tab.timestamp = base::Time::FromInternalValue(100); | 84 tab.timestamp = base::Time::FromInternalValue(100); |
| 90 for (int i = 0; i < 5; ++i) { | 85 for (int i = 0; i < 5; ++i) { |
| 91 tab.navigations.push_back( | 86 tab.navigations.push_back( |
| 92 sessions::SerializedNavigationEntryTestHelper::CreateNavigation( | 87 sessions::SerializedNavigationEntryTestHelper::CreateNavigation( |
| 93 "http://foo/" + base::IntToString(i), "title")); | 88 "http://foo/" + base::IntToString(i), "title")); |
| 94 } | 89 } |
| 95 tab.session_storage_persistent_id = "fake"; | 90 tab.session_storage_persistent_id = "fake"; |
| 96 tab.variation_ids.push_back(3312238); | |
| 97 tab.variation_ids.push_back(3312242); | |
| 98 | 91 |
| 99 const sync_pb::SessionTab& sync_data = tab.ToSyncData(); | 92 const sync_pb::SessionTab& sync_data = tab.ToSyncData(); |
| 100 EXPECT_EQ(5, sync_data.tab_id()); | 93 EXPECT_EQ(5, sync_data.tab_id()); |
| 101 EXPECT_EQ(10, sync_data.window_id()); | 94 EXPECT_EQ(10, sync_data.window_id()); |
| 102 EXPECT_EQ(13, sync_data.tab_visual_index()); | 95 EXPECT_EQ(13, sync_data.tab_visual_index()); |
| 103 EXPECT_EQ(3, sync_data.current_navigation_index()); | 96 EXPECT_EQ(3, sync_data.current_navigation_index()); |
| 104 EXPECT_TRUE(sync_data.pinned()); | 97 EXPECT_TRUE(sync_data.pinned()); |
| 105 EXPECT_EQ("app_id", sync_data.extension_app_id()); | 98 EXPECT_EQ("app_id", sync_data.extension_app_id()); |
| 106 ASSERT_EQ(5, sync_data.navigation_size()); | 99 ASSERT_EQ(5, sync_data.navigation_size()); |
| 107 for (int i = 0; i < 5; ++i) { | 100 for (int i = 0; i < 5; ++i) { |
| 108 EXPECT_EQ(tab.navigations[i].virtual_url().spec(), | 101 EXPECT_EQ(tab.navigations[i].virtual_url().spec(), |
| 109 sync_data.navigation(i).virtual_url()); | 102 sync_data.navigation(i).virtual_url()); |
| 110 EXPECT_EQ(base::UTF16ToUTF8(tab.navigations[i].title()), | 103 EXPECT_EQ(base::UTF16ToUTF8(tab.navigations[i].title()), |
| 111 sync_data.navigation(i).title()); | 104 sync_data.navigation(i).title()); |
| 112 } | 105 } |
| 113 EXPECT_FALSE(sync_data.has_favicon()); | 106 EXPECT_FALSE(sync_data.has_favicon()); |
| 114 EXPECT_FALSE(sync_data.has_favicon_type()); | 107 EXPECT_FALSE(sync_data.has_favicon_type()); |
| 115 EXPECT_FALSE(sync_data.has_favicon_source()); | 108 EXPECT_FALSE(sync_data.has_favicon_source()); |
| 116 | |
| 117 ASSERT_EQ(2, sync_data.variation_id_size()); | |
| 118 EXPECT_EQ(3312238u, sync_data.variation_id(0)); | |
| 119 EXPECT_EQ(3312242u, sync_data.variation_id(1)); | |
| 120 } | 109 } |
| 121 | 110 |
| 122 } // namespace | 111 } // namespace |
| OLD | NEW |