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

Side by Side Diff: components/sync_sessions/task_tracker_unittest.cc

Issue 2776633003: Add taskid for navigation, created in session sync (Closed)
Patch Set: Created 3 years, 9 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 2017 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/sync_sessions/task_tracker.h"
6
7 #include "testing/gmock/include/gmock/gmock.h"
8 #include "testing/gtest/include/gtest/gtest.h"
9
10 using testing::ElementsAre;
11
12 namespace sync_sessions {
13
14 namespace {
15 const int kTab1 = 15;
16 const int kTab2 = 25;
17 }
18
19 TEST(TaskTrackerTest, GetTabTasks) {
20 TaskTracker task_tracker;
21 TabTasks* tab_tasks = task_tracker.GetTabTasks(kTab1);
22 ASSERT_NE(tab_tasks, nullptr);
23 ASSERT_EQ(task_tracker.GetTabTasks(kTab1), tab_tasks);
24 ASSERT_NE(task_tracker.GetTabTasks(kTab2), tab_tasks);
25 }
26
27 TEST(TaskTrackerTest, UpdateTasksWithinTab) {
28 TaskTracker task_tracker;
29 TabTasks* tab_tasks = task_tracker.GetTabTasks(kTab1);
30 tab_tasks->UpdateTask(0, ui::PageTransition::PAGE_TRANSITION_KEYWORD, 1);
31 ASSERT_THAT(tab_tasks->GetTaskIdAtNav(0), ElementsAre(1));
32
33 // ignoring this update
34 tab_tasks->UpdateTask(0, ui::PageTransition::PAGE_TRANSITION_RELOAD, 2);
35 ASSERT_THAT(tab_tasks->GetTaskIdAtNav(0), ElementsAre(1));
36
37 // adding two tasks from two clicks
38 tab_tasks->UpdateTask(1, ui::PageTransition::PAGE_TRANSITION_LINK, 3);
39 ASSERT_THAT(tab_tasks->GetTaskIdAtNav(0), ElementsAre(1));
40 ASSERT_THAT(tab_tasks->GetTaskIdAtNav(1), ElementsAre(1, 3));
41 tab_tasks->UpdateTask(2, ui::PageTransition::PAGE_TRANSITION_LINK, 4);
42 ASSERT_THAT(tab_tasks->GetTaskIdAtNav(0), ElementsAre(1));
43 ASSERT_THAT(tab_tasks->GetTaskIdAtNav(1), ElementsAre(1, 3));
44 ASSERT_THAT(tab_tasks->GetTaskIdAtNav(2), ElementsAre(1, 3, 4));
45
46 // back to task 1
47 tab_tasks->UpdateTask(0, ui::PageTransition::PAGE_TRANSITION_FORWARD_BACK, 5);
48 ASSERT_THAT(tab_tasks->GetTaskIdAtNav(0), ElementsAre(1));
49 ASSERT_THAT(tab_tasks->GetTaskIdAtNav(1), ElementsAre(1, 3));
50 ASSERT_THAT(tab_tasks->GetTaskIdAtNav(2), ElementsAre(1, 3, 4));
51
52 // forward to task 4
53 tab_tasks->UpdateTask(2, ui::PageTransition::PAGE_TRANSITION_FORWARD_BACK, 6);
54 ASSERT_THAT(tab_tasks->GetTaskIdAtNav(0), ElementsAre(1));
55 ASSERT_THAT(tab_tasks->GetTaskIdAtNav(1), ElementsAre(1, 3));
56 ASSERT_THAT(tab_tasks->GetTaskIdAtNav(2), ElementsAre(1, 3, 4));
57
58 // back to task 1 and have a new task by clicking
59 tab_tasks->UpdateTask(0, ui::PageTransition::PAGE_TRANSITION_FORWARD_BACK, 7);
60 tab_tasks->UpdateTask(1, ui::PageTransition::PAGE_TRANSITION_LINK, 8);
61 ASSERT_THAT(tab_tasks->GetTaskIdAtNav(0), ElementsAre(1));
62 ASSERT_THAT(tab_tasks->GetTaskIdAtNav(0), ElementsAre(1));
63 ASSERT_THAT(tab_tasks->GetTaskIdAtNav(1), ElementsAre(1, 8));
64 ASSERT_EQ(tab_tasks->GetNavigationsNum(), 2);
65 }
66
67 } // namespace sync_sessions
OLDNEW
« components/sync_sessions/task_tracker.cc ('K') | « components/sync_sessions/task_tracker.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698