Commit 1aa94916 authored by Amr Aboelkher's avatar Amr Aboelkher Committed by Commit Bot

PSM: Access PSM UMA histograms and PrivateSetMembershipStatus from

policy namespace

Accessing the PSM UMA constants will be useful to be used
in its corresponding testing file, instead of using a literal strings.

As PrivateSetMembershipStatus is being used twice, once as the expected
status of the request in AutoEnrollmentClientImpl, and another usage to
indicate whether PSM is enabled or not in the test file. Thus, the one
inside the test file has been renamed.

BUG=chromium:1150248

Change-Id: I31944094c63e505592197400d3a8d63a3db3e852
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2545387
Commit-Queue: Amr Aboelkher <amraboelkher@google.com>
Auto-Submit: Amr Aboelkher <amraboelkher@google.com>
Reviewed-by: default avatarPavol Marko <pmarko@chromium.org>
Reviewed-by: default avatarMaksim Ivanov <emaxx@chromium.org>
Reviewed-by: default avatarRoland Bock <rbock@google.com>
Cr-Commit-Position: refs/heads/master@{#829264}
parent 75cf196e
......@@ -23,6 +23,7 @@
#include "components/policy/core/common/cloud/device_management_service.h"
#include "components/policy/core/common/cloud/dm_auth.h"
#include "components/policy/core/common/cloud/dmserver_job_configurations.h"
#include "components/policy/core/common/cloud/enterprise_metrics.h"
#include "components/policy/proto/device_management_backend.pb.h"
#include "components/prefs/pref_registry_simple.h"
#include "components/prefs/pref_service.h"
......@@ -50,15 +51,9 @@ using EnrollmentCheckType =
constexpr base::TimeDelta kPrivateSetMembershipTimeout =
base::TimeDelta::FromSeconds(15);
// UMA histogram names.
// Hash dance success time UMA histogram.
constexpr char kUMAHashDanceSuccessTime[] =
"Enterprise.AutoEnrollmentHashDanceSuccessTime";
constexpr char kUMAPrivateSetMembershipHashDanceComparison[] =
"Enterprise.AutoEnrollmentPrivateSetMembershipHashDanceComparison";
constexpr char kUMAPrivateSetMembershipSuccessTime[] =
"Enterprise.AutoEnrollmentPrivateSetMembershipSuccessTime";
constexpr char kUMAPrivateSetMembershipRequestStatus[] =
"Enterprise.AutoEnrollmentPrivateSetMembershipRequestStatus";
// The following histogram names where added before private set membership
// existed. They are only recorded for hash dance.
......
......@@ -103,7 +103,7 @@ bool ParseProtoFromFile(const base::FilePath& file_path,
enum class AutoEnrollmentProtocol { kFRE = 0, kInitialEnrollment = 1 };
enum class PrivateSetMembershipStatus { kEnabled = 0, kDisabled = 1 };
enum class PrivateSetMembershipState { kEnabled = 0, kDisabled = 1 };
// Holds the state of the AutoEnrollmentClientImplTest and its subclass i.e.
// PrivateSetMembershipHelperTest. It will be used to run their tests with
......@@ -111,12 +111,12 @@ enum class PrivateSetMembershipStatus { kEnabled = 0, kDisabled = 1 };
struct AutoEnrollmentClientImplTestState final {
AutoEnrollmentClientImplTestState(
AutoEnrollmentProtocol auto_enrollment_protocol,
PrivateSetMembershipStatus private_set_membership_status)
PrivateSetMembershipState private_set_membership_state)
: auto_enrollment_protocol(auto_enrollment_protocol),
private_set_membership_status(private_set_membership_status) {}
private_set_membership_state(private_set_membership_state) {}
AutoEnrollmentProtocol auto_enrollment_protocol;
PrivateSetMembershipStatus private_set_membership_status;
PrivateSetMembershipState private_set_membership_state;
};
// The integer parameter represents the index of private set membership test
......@@ -146,8 +146,8 @@ class AutoEnrollmentClientImplTest
return std::get<0>(GetParam()).auto_enrollment_protocol;
}
PrivateSetMembershipStatus GetPrivateSetMembershipStatus() {
return std::get<0>(GetParam()).private_set_membership_status;
PrivateSetMembershipState GetPrivateSetMembershipState() {
return std::get<0>(GetParam()).private_set_membership_state;
}
int GetPrivateSetMembershipTestCaseIndex() { return std::get<1>(GetParam()); }
......@@ -1139,7 +1139,7 @@ INSTANTIATE_TEST_SUITE_P(
testing::Combine(
testing::Values(AutoEnrollmentClientImplTestState(
AutoEnrollmentProtocol::kFRE,
PrivateSetMembershipStatus::kDisabled)),
PrivateSetMembershipState::kDisabled)),
testing::Values(kInvalidPrivateSetMembershipTestCaseIndex)));
// Private set membership is disabed to test only initial enrollment case
......@@ -1151,7 +1151,7 @@ INSTANTIATE_TEST_SUITE_P(
testing::Combine(
testing::Values(AutoEnrollmentClientImplTestState(
AutoEnrollmentProtocol::kInitialEnrollment,
PrivateSetMembershipStatus::kDisabled)),
PrivateSetMembershipState::kDisabled)),
testing::Values(kInvalidPrivateSetMembershipTestCaseIndex)));
using AutoEnrollmentClientImplFREToInitialEnrollmentTest =
......@@ -1258,11 +1258,11 @@ INSTANTIATE_TEST_SUITE_P(
testing::Combine(
testing::Values(AutoEnrollmentClientImplTestState(
AutoEnrollmentProtocol::kFRE,
PrivateSetMembershipStatus::kDisabled)),
PrivateSetMembershipState::kDisabled)),
testing::Values(kInvalidPrivateSetMembershipTestCaseIndex)));
// This class is used to test any private set membership related test cases
// only. Therefore, the PrivateSetMembershipStatus param has to be kEnabled.
// only. Therefore, the PrivateSetMembershipState param has to be kEnabled.
class PrivateSetMembershipHelperTest : public AutoEnrollmentClientImplTest {
protected:
// Indicates the state of the private set membership protocol.
......@@ -1284,11 +1284,11 @@ class PrivateSetMembershipHelperTest : public AutoEnrollmentClientImplTest {
}
void SetUp() override {
// Verify that PrivateSetMembershipStatus has value kEnabled, then enable
// Verify that PrivateSetMembershipState has value kEnabled, then enable
// private set membership switch
// prefs::kEnterpriseEnablePrivateSetMembership.
ASSERT_EQ(GetPrivateSetMembershipStatus(),
PrivateSetMembershipStatus::kEnabled);
ASSERT_EQ(GetPrivateSetMembershipState(),
PrivateSetMembershipState::kEnabled);
base::CommandLine::ForCurrentProcess()->AppendSwitchASCII(
chromeos::switches::kEnterpriseEnablePrivateSetMembership, "always");
......@@ -1642,7 +1642,7 @@ INSTANTIATE_TEST_SUITE_P(
PrivateSetMembershipHelperTest,
testing::Combine(testing::Values(AutoEnrollmentClientImplTestState(
AutoEnrollmentProtocol::kInitialEnrollment,
PrivateSetMembershipStatus::kEnabled)),
PrivateSetMembershipState::kEnabled)),
::testing::Range(0,
kNumberOfPrivateSetMembershipTestCases)));
......@@ -1937,7 +1937,7 @@ INSTANTIATE_TEST_SUITE_P(
PrivateSetMembershipHelperAndHashDanceTest,
testing::Combine(testing::Values(AutoEnrollmentClientImplTestState(
AutoEnrollmentProtocol::kInitialEnrollment,
PrivateSetMembershipStatus::kEnabled)),
PrivateSetMembershipState::kEnabled)),
::testing::Range(0,
kNumberOfPrivateSetMembershipTestCases)));
} // namespace
......
......@@ -186,4 +186,11 @@ const char kMetricCBCMRemoteCommandExecutedTemplate[] =
const char kMetricCBCMUnsignedRemoteCommandExecutedTemplate[] =
"Enterprise.CBCMRemoteCommand.Executed.Unsigned.%s";
const char kUMAPrivateSetMembershipHashDanceComparison[] =
"Enterprise.AutoEnrollmentPrivateSetMembershipHashDanceComparison";
const char kUMAPrivateSetMembershipSuccessTime[] =
"Enterprise.AutoEnrollmentPrivateSetMembershipSuccessTime";
const char kUMAPrivateSetMembershipRequestStatus[] =
"Enterprise.AutoEnrollmentPrivateSetMembershipRequestStatus";
} // namespace policy
......@@ -283,6 +283,11 @@ POLICY_EXPORT extern const char kMetricCBCMRemoteCommandExecutedTemplate[];
POLICY_EXPORT extern const char
kMetricCBCMUnsignedRemoteCommandExecutedTemplate[];
// Private set membership UMA histogram names.
POLICY_EXPORT extern const char kUMAPrivateSetMembershipHashDanceComparison[];
POLICY_EXPORT extern const char kUMAPrivateSetMembershipSuccessTime[];
POLICY_EXPORT extern const char kUMAPrivateSetMembershipRequestStatus[];
} // namespace policy
#endif // COMPONENTS_POLICY_CORE_COMMON_CLOUD_ENTERPRISE_METRICS_H_
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment