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

Side by Side Diff: base/test/user_action_tester_unittest.cc

Issue 1124763003: Update from https://crrev.com/327068 (Closed) Base URL: git@github.com:domokit/mojo.git@master
Patch Set: update nacl, buildtools, fix display_change_notifier_unittest Created 5 years, 7 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 2015 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 "base/test/user_action_tester.h"
6
7 #include "base/metrics/user_metrics.h"
8 #include "base/metrics/user_metrics_action.h"
9 #include "testing/gtest/include/gtest/gtest.h"
10
11 namespace base {
12
13 namespace {
14
15 const char kUserAction1[] = "user.action.1";
16 const char kUserAction2[] = "user.action.2";
17 const char kUserAction3[] = "user.action.3";
18
19 // Record an action and cause all ActionCallback observers to be notified.
20 void RecordAction(const char user_action[]) {
21 base::RecordAction(base::UserMetricsAction(user_action));
22 }
23
24 } // namespace
25
26 // Verify user action counts are zero initially.
27 TEST(UserActionTesterTest, GetActionCountWhenNoActionsHaveBeenRecorded) {
28 UserActionTester user_action_tester;
29 EXPECT_EQ(0, user_action_tester.GetActionCount(kUserAction1));
30 }
31
32 // Verify user action counts are tracked properly.
33 TEST(UserActionTesterTest, GetActionCountWhenActionsHaveBeenRecorded) {
34 UserActionTester user_action_tester;
35
36 RecordAction(kUserAction1);
37 RecordAction(kUserAction2);
38 RecordAction(kUserAction2);
39
40 EXPECT_EQ(1, user_action_tester.GetActionCount(kUserAction1));
41 EXPECT_EQ(2, user_action_tester.GetActionCount(kUserAction2));
42 EXPECT_EQ(0, user_action_tester.GetActionCount(kUserAction3));
43 }
44
45 // Verify no seg faults occur when resetting action counts when none have been
46 // recorded.
47 TEST(UserActionTesterTest, ResetCountsWhenNoActionsHaveBeenRecorded) {
48 UserActionTester user_action_tester;
49 user_action_tester.ResetCounts();
50 }
51
52 // Verify user action counts are set to zero on a ResetCounts.
53 TEST(UserActionTesterTest, ResetCountsWhenActionsHaveBeenRecorded) {
54 UserActionTester user_action_tester;
55
56 RecordAction(kUserAction1);
57 RecordAction(kUserAction1);
58 RecordAction(kUserAction2);
59 user_action_tester.ResetCounts();
60
61 EXPECT_EQ(0, user_action_tester.GetActionCount(kUserAction1));
62 EXPECT_EQ(0, user_action_tester.GetActionCount(kUserAction2));
63 EXPECT_EQ(0, user_action_tester.GetActionCount(kUserAction3));
64 }
65
66 // Verify the UserActionsTester is notified when base::RecordAction is called.
67 TEST(UserActionTesterTest, VerifyUserActionTesterListensForUserActions) {
68 UserActionTester user_action_tester;
69
70 base::RecordAction(base::UserMetricsAction(kUserAction1));
71
72 EXPECT_EQ(1, user_action_tester.GetActionCount(kUserAction1));
73 }
74
75 // Verify the UserActionsTester is notified when base::RecordComputedAction is
76 // called.
77 TEST(UserActionTesterTest,
78 VerifyUserActionTesterListensForComputedUserActions) {
79 UserActionTester user_action_tester;
80
81 base::RecordComputedAction(kUserAction1);
82
83 EXPECT_EQ(1, user_action_tester.GetActionCount(kUserAction1));
84 }
85
86 } // namespace base
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698