#include "components/enterprise/browser/reporting/real_time_report_controller.h"
#include <memory>
#include <vector>
#include "build/build_config.h"
#include "chrome/browser/enterprise/reporting/legacy_tech/legacy_tech_report_generator.h"
#include "chrome/test/base/testing_browser_process.h"
#include "chrome/test/base/testing_profile_manager.h"
#include "components/enterprise/browser/reporting/real_time_report_type.h"
#include "components/enterprise/browser/reporting/real_time_uploader.h"
#include "components/enterprise/common/proto/legacy_tech_events.pb.h"
#include "components/policy/core/common/cloud/dm_token.h"
#include "content/public/test/browser_task_environment.h"
#include "testing/gmock/include/gmock/gmock.h"
#include "testing/gtest/include/gtest/gtest.h"
#if BUILDFLAG(IS_ANDROID)
#include "chrome/browser/enterprise/reporting/real_time_report_controller_android.h"
#include "chrome/browser/enterprise/reporting/reporting_delegate_factory_android.h"
#else
#include "chrome/browser/enterprise/reporting/extension_request/extension_request_report_generator.h"
#include "chrome/browser/enterprise/reporting/real_time_report_controller_desktop.h"
#include "chrome/browser/enterprise/reporting/reporting_delegate_factory_desktop.h"
#include "components/enterprise/common/proto/extensions_workflow_events.pb.h"
#endif
_;
ByMove;
DoAll;
Invoke;
Return;
WithArgs;
namespace enterprise_reporting {
#if BUILDFLAG(IS_ANDROID)
using ReportingDelegateFactoryDelegate = ReportingDelegateFactoryAndroid;
using RealTimeReportControllerDelegate = RealTimeReportControllerAndroid;
#else
ReportingDelegateFactoryDelegate;
RealTimeReportControllerDelegate;
#endif
namespace {
class MockRealTimeReportGenerator : public RealTimeReportGenerator { … };
class MockRealTimeUploader : public RealTimeUploader { … };
constexpr char kLegacyTechType[] = …;
}
class RealTimeReportControllerTest : public ::testing::Test { … };
#if !BUILDFLAG(IS_ANDROID)
TEST_F(RealTimeReportControllerTest, ExtensionRequest) { … }
#endif
TEST_F(RealTimeReportControllerTest, LegacyTech) { … }
}