#include "components/performance_manager/resource_attribution/query_scheduler.h"
#include <memory>
#include <set>
#include <utility>
#include <vector>
#include "base/containers/enum_set.h"
#include "base/dcheck_is_on.h"
#include "base/location.h"
#include "base/process/process.h"
#include "base/run_loop.h"
#include "base/task/sequenced_task_runner.h"
#include "base/test/bind.h"
#include "base/test/scoped_feature_list.h"
#include "base/test/task_environment.h"
#include "base/time/time.h"
#include "components/performance_manager/embedder/graph_features.h"
#include "components/performance_manager/graph/frame_node_impl.h"
#include "components/performance_manager/graph/page_node_impl.h"
#include "components/performance_manager/graph/process_node_impl.h"
#include "components/performance_manager/graph/worker_node_impl.h"
#include "components/performance_manager/public/features.h"
#include "components/performance_manager/public/graph/graph.h"
#include "components/performance_manager/public/performance_manager.h"
#include "components/performance_manager/public/resource_attribution/cpu_measurement_delegate.h"
#include "components/performance_manager/public/resource_attribution/queries.h"
#include "components/performance_manager/public/resource_attribution/query_results.h"
#include "components/performance_manager/public/resource_attribution/resource_contexts.h"
#include "components/performance_manager/public/resource_attribution/resource_types.h"
#include "components/performance_manager/resource_attribution/context_collection.h"
#include "components/performance_manager/resource_attribution/cpu_measurement_monitor.h"
#include "components/performance_manager/resource_attribution/performance_manager_aliases.h"
#include "components/performance_manager/resource_attribution/query_params.h"
#include "components/performance_manager/test_support/graph_test_harness.h"
#include "components/performance_manager/test_support/mock_graphs.h"
#include "components/performance_manager/test_support/performance_manager_test_harness.h"
#include "components/performance_manager/test_support/resource_attribution/gtest_util.h"
#include "components/performance_manager/test_support/resource_attribution/measurement_delegates.h"
#include "components/performance_manager/test_support/run_in_graph.h"
#include "content/public/browser/browsing_instance_id.h"
#include "testing/gmock/include/gmock/gmock.h"
#include "testing/gtest/include/gtest/gtest.h"
#include "url/gurl.h"
#include "url/origin.h"
namespace resource_attribution::internal {
namespace …
class ResourceAttrQuerySchedulerTest
: public performance_manager::GraphTestHarness,
public WithParamInterface<bool> { … };
INSTANTIATE_TEST_SUITE_P(…);
class ResourceAttrQuerySchedulerPMTest
: public performance_manager::PerformanceManagerTestHarness,
public WithParamInterface<bool> { … };
INSTANTIATE_TEST_SUITE_P(…);
TEST_P(ResourceAttrQuerySchedulerTest, AddRemoveQueries) { … }
TEST_P(ResourceAttrQuerySchedulerTest, AddRemoveNodes) { … }
TEST_P(ResourceAttrQuerySchedulerPMTest, CallWithScheduler) { … }
TEST_P(ResourceAttrQuerySchedulerTest, CallWithScheduler) { … }
}