Chromium Code Reviews| Index: components/sessions/core/tab_restore_service_unittest.cc |
| diff --git a/components/sessions/core/tab_restore_service_unittest.cc b/components/sessions/core/tab_restore_service_unittest.cc |
| new file mode 100644 |
| index 0000000000000000000000000000000000000000..8e40136f4a9b381cee62d9de2c2c72b8fb981111 |
| --- /dev/null |
| +++ b/components/sessions/core/tab_restore_service_unittest.cc |
| @@ -0,0 +1,63 @@ |
| +// Copyright 2016 The Chromium Authors. All rights reserved. |
| +// Use of this source code is governed by a BSD-style license that can be |
| +// found in the LICENSE file. |
| + |
| +#include "components/sessions/core/tab_restore_service.h" |
| + |
| +#include "testing/gtest/include/gtest/gtest.h" |
| + |
| +namespace sessions { |
| + |
| +namespace { |
| + |
| +void PopulateTab(TabRestoreService::Tab* tab) { |
| + tab->timestamp = base::Time::FromDoubleT(100.0); |
| + tab->from_last_session = true; |
| + tab->current_navigation_index = 42; |
| + tab->browser_id = 1; |
| + tab->tabstrip_index = 5; |
| + tab->pinned = true; |
| + tab->extension_app_id = "dummy"; |
| + tab->user_agent_override = "override"; |
| +} |
| + |
| +void TestEntryEquality(TabRestoreService::Entry* reference, |
|
sky
2016/07/19 17:42:40
nit: how about naming the parameters here and on 3
blundell
2016/07/20 08:18:12
Done.
|
| + TabRestoreService::Entry* test) { |
| + EXPECT_EQ(reference->id, test->id); |
| + EXPECT_EQ(reference->type, test->type); |
| + EXPECT_EQ(reference->timestamp, test->timestamp); |
| + EXPECT_EQ(reference->from_last_session, test->from_last_session); |
| +} |
| + |
| +void TestTabEquality(TabRestoreService::Tab* reference, |
| + TabRestoreService::Tab* test) { |
| + TestEntryEquality(reference, test); |
| + EXPECT_EQ(reference->current_navigation_index, |
| + test->current_navigation_index); |
| + EXPECT_EQ(reference->browser_id, test->browser_id); |
| + EXPECT_EQ(reference->tabstrip_index, test->tabstrip_index); |
| + EXPECT_EQ(reference->pinned, test->pinned); |
| + EXPECT_EQ(reference->extension_app_id, test->extension_app_id); |
| + EXPECT_EQ(reference->user_agent_override, test->user_agent_override); |
| +} |
| + |
| +TEST(Tab, CopyConstructor) { |
| + TabRestoreService::Tab tab_to_copy; |
| + PopulateTab(&tab_to_copy); |
| + |
| + TabRestoreService::Tab copied_tab(tab_to_copy); |
| + TestTabEquality(&tab_to_copy, &copied_tab); |
| +} |
| + |
| +TEST(Tab, AssignmentOperator) { |
| + TabRestoreService::Tab tab_to_assign; |
| + PopulateTab(&tab_to_assign); |
| + |
| + TabRestoreService::Tab assigned_tab; |
| + assigned_tab = tab_to_assign; |
| + TestTabEquality(&tab_to_assign, &assigned_tab); |
| +} |
| + |
| +} // namespace |
| + |
| +} // namespace sessions |