#include "chrome/browser/enterprise/connectors/device_trust/signals/decorators/browser/browser_signals_decorator.h"
#include <memory>
#include <optional>
#include <utility>
#include "base/functional/callback.h"
#include "base/memory/raw_ptr.h"
#include "base/run_loop.h"
#include "base/test/metrics/histogram_tester.h"
#include "base/test/task_environment.h"
#include "base/values.h"
#include "chrome/browser/enterprise/core/mock_dependency_factory.h"
#include "chrome/browser/enterprise/signals/device_info_fetcher.h"
#include "components/device_signals/core/browser/mock_signals_aggregator.h"
#include "components/device_signals/core/browser/signals_aggregator.h"
#include "components/device_signals/core/browser/signals_types.h"
#include "components/device_signals/core/common/common_types.h"
#include "components/device_signals/core/common/signals_constants.h"
#include "components/enterprise/browser/controller/fake_browser_dm_token_storage.h"
#include "components/enterprise/core/dependency_factory.h"
#include "components/policy/core/common/cloud/mock_cloud_policy_manager.h"
#include "components/policy/core/common/cloud/mock_cloud_policy_store.h"
#include "components/policy/proto/device_management_backend.pb.h"
#include "testing/gtest/include/gtest/gtest.h"
_;
Invoke;
Return;
StrictMock;
namespace enterprise_connectors {
namespace {
constexpr char kFakeBrowserEnrollmentDomain[] = …;
constexpr char kFakeUserEnrollmentDomain[] = …;
constexpr char kLatencyHistogram[] = …;
constexpr char kFakeAgentId[] = …;
constexpr char kFakeCustomerId[] = …;
constexpr int32_t kDisabledSetting = …;
constexpr int32_t kEnabledSetting = …;
base::Value::List GetExpectedMacAddresses() { … }
device_signals::SignalsAggregationRequest CreateExpectedRequest() { … }
device_signals::SignalsAggregationResponse CreateFilledResponse() { … }
void ValidateStaticSignals(const base::Value::Dict& signals) { … }
void ValidateCrowdStrikeSignals(const base::Value::Dict& signals) { … }
}
class BrowserSignalsDecoratorTest : public testing::Test { … };
TEST_F(BrowserSignalsDecoratorTest, Decorate_AllSignals) { … }
TEST_F(BrowserSignalsDecoratorTest, Decorate_NullAggregator) { … }
TEST_F(BrowserSignalsDecoratorTest, Decorate_WithoutBrowserPolicyData) { … }
TEST_F(BrowserSignalsDecoratorTest, Decorate_NullBrowserPolicyStore) { … }
TEST_F(BrowserSignalsDecoratorTest, Decorate_WithoutUserPolicyData) { … }
TEST_F(BrowserSignalsDecoratorTest, Decorate_NullUserPolicyStore) { … }
TEST_F(BrowserSignalsDecoratorTest, Decorate_NoAgentSignals) { … }
}