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

Unified Diff: services/resource_coordinator/coordination_unit/mock_coordination_unit_graphs.cc

Issue 2964103002: [GRC] Decouple Render Process CPU Measurement from CU Graph (Closed)
Patch Set: Rebase Created 3 years, 6 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: services/resource_coordinator/coordination_unit/mock_coordination_unit_graphs.cc
diff --git a/services/resource_coordinator/coordination_unit/mock_coordination_unit_graphs.cc b/services/resource_coordinator/coordination_unit/mock_coordination_unit_graphs.cc
new file mode 100644
index 0000000000000000000000000000000000000000..dd8ca800ff994500be58fb328be265c7953b141d
--- /dev/null
+++ b/services/resource_coordinator/coordination_unit/mock_coordination_unit_graphs.cc
@@ -0,0 +1,79 @@
+// Copyright 2017 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#include "services/resource_coordinator/coordination_unit/mock_coordination_unit_graphs.h"
+
+#include <string>
+
+#include "services/resource_coordinator/coordination_unit/coordination_unit_factory.h"
+#include "services/resource_coordinator/public/cpp/coordination_unit_id.h"
+#include "services/resource_coordinator/public/cpp/coordination_unit_types.h"
+
+namespace service_manager {
+class ServiceContextRef;
+}
+
+namespace resource_coordinator {
+
+namespace {
+
+std::unique_ptr<CoordinationUnitImpl> CreateCoordinationUnit(
+ CoordinationUnitType type) {
+ CoordinationUnitID cu_id(type, std::string());
+ return coordination_unit_factory::CreateCoordinationUnit(
+ cu_id, std::unique_ptr<service_manager::ServiceContextRef>(nullptr));
+} // namespace
+
+} // namespace
+
+MockSingleTabInSingleProcessCoordinationUnitGraph::
+ MockSingleTabInSingleProcessCoordinationUnitGraph() {
+ frame = CreateCoordinationUnit(CoordinationUnitType::kFrame);
+ process = CreateCoordinationUnit(CoordinationUnitType::kProcess);
+ tab = CreateCoordinationUnit(CoordinationUnitType::kWebContents);
+
+ tab->AddChild(frame->id());
+ process->AddChild(frame->id());
+}
+
+MockSingleTabInSingleProcessCoordinationUnitGraph::
+ ~MockSingleTabInSingleProcessCoordinationUnitGraph() = default;
+
+MockMultipleTabsInSingleProcessCoordinationUnitGraph::
+ MockMultipleTabsInSingleProcessCoordinationUnitGraph() {
+ other_frame = CreateCoordinationUnit(CoordinationUnitType::kFrame);
+ other_tab = CreateCoordinationUnit(CoordinationUnitType::kWebContents);
+
+ other_tab->AddChild(other_frame->id());
+ process->AddChild(other_frame->id());
+}
+
+MockMultipleTabsInSingleProcessCoordinationUnitGraph::
+ ~MockMultipleTabsInSingleProcessCoordinationUnitGraph() = default;
+
+MockSingleTabWithMultipleProcessesCoordinationUnitGraph::
+ MockSingleTabWithMultipleProcessesCoordinationUnitGraph() {
+ child_frame = CreateCoordinationUnit(CoordinationUnitType::kFrame);
+ other_process = CreateCoordinationUnit(CoordinationUnitType::kProcess);
+
+ frame->AddChild(child_frame->id());
+ other_process->AddChild(child_frame->id());
+}
+
+MockSingleTabWithMultipleProcessesCoordinationUnitGraph::
+ ~MockSingleTabWithMultipleProcessesCoordinationUnitGraph() = default;
+
+MockMultipleTabsWithMultipleProcessesCoordinationUnitGraph::
+ MockMultipleTabsWithMultipleProcessesCoordinationUnitGraph() {
+ child_frame = CreateCoordinationUnit(CoordinationUnitType::kFrame);
+ other_process = CreateCoordinationUnit(CoordinationUnitType::kProcess);
+
+ other_frame->AddChild(child_frame->id());
+ other_process->AddChild(child_frame->id());
+}
+
+MockMultipleTabsWithMultipleProcessesCoordinationUnitGraph::
+ ~MockMultipleTabsWithMultipleProcessesCoordinationUnitGraph() = default;
+
+} // namespace resource_coordinator

Powered by Google App Engine
This is Rietveld 408576698