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

Unified Diff: components/feature_engagement_tracker/internal/feature_engagement_tracker_impl_unittest.cc

Issue 2911123003: Metrics for feature engagement tracker. (Closed)
Patch Set: Created 3 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 side-by-side diff with in-line comments
Download patch
Index: components/feature_engagement_tracker/internal/feature_engagement_tracker_impl_unittest.cc
diff --git a/components/feature_engagement_tracker/internal/feature_engagement_tracker_impl_unittest.cc b/components/feature_engagement_tracker/internal/feature_engagement_tracker_impl_unittest.cc
index 605cf98c344f9d46375855a5dc46eed88b119039..0a01cb440a1b2dacd782970c4979e784b573420d 100644
--- a/components/feature_engagement_tracker/internal/feature_engagement_tracker_impl_unittest.cc
+++ b/components/feature_engagement_tracker/internal/feature_engagement_tracker_impl_unittest.cc
@@ -13,6 +13,7 @@
#include "base/run_loop.h"
#include "base/sequenced_task_runner.h"
#include "base/single_thread_task_runner.h"
+#include "base/test/user_action_tester.h"
#include "base/threading/thread_task_runner_handle.h"
#include "components/feature_engagement_tracker/internal/availability_model_impl.h"
#include "components/feature_engagement_tracker/internal/editable_configuration.h"
@@ -21,6 +22,7 @@
#include "components/feature_engagement_tracker/internal/never_availability_model.h"
#include "components/feature_engagement_tracker/internal/never_storage_validator.h"
#include "components/feature_engagement_tracker/internal/once_condition_validator.h"
+#include "components/feature_engagement_tracker/internal/stats.h"
#include "components/feature_engagement_tracker/internal/time_provider.h"
#include "testing/gtest/include/gtest/gtest.h"
@@ -439,10 +441,24 @@ TEST_F(FeatureEngagementTrackerImplTest, TestNotifyEvent) {
tracker_->AddOnInitializedCallback(base::Bind(
&StoringInitializedCallback::OnInitialized, base::Unretained(&callback)));
base::RunLoop().RunUntilIdle();
+ base::UserActionTester user_action_tester;
tracker_->NotifyEvent("foo");
tracker_->NotifyEvent("foo");
tracker_->NotifyEvent("bar");
+ tracker_->NotifyEvent(kTestFeatureFoo.name + std::string("_used"));
+ tracker_->NotifyEvent(kTestFeatureFoo.name + std::string("_trigger"));
+
+ // Used event will record both NotifyEvent and NotifyUsedEvent. Explicitly
+ // specify the whole user action string here.
+ EXPECT_EQ(1, user_action_tester.GetActionCount(
+ "InProductHelp.NotifyUsedEvent.test_foo"));
+ EXPECT_EQ(2, user_action_tester.GetActionCount(
+ "InProductHelp.NotifyEvent.test_foo"));
+ EXPECT_EQ(0, user_action_tester.GetActionCount(
+ "InProductHelp.NotifyUsedEvent.test_bar"));
+ EXPECT_EQ(0, user_action_tester.GetActionCount(
+ "InProductHelp.NotifyEvent.test_bar"));
Event foo_event = store_->GetEvent("foo");
ASSERT_EQ(1, foo_event.events_size());

Powered by Google App Engine
This is Rietveld 408576698