Commit 99bbb90d authored by Andrei-Laurențiu Olteanu's avatar Andrei-Laurențiu Olteanu Committed by Commit Bot

[Telemetry SWX] Convert string from mojo handle

Convert string from mojo handle.

Create build target for mojo_utils.

Change tests.

Bug: b:162051831
Change-Id: I60017604fde2c55ca34165af3c5d10e16760ee8d
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2352908Reviewed-by: default avatarScott Violet <sky@chromium.org>
Reviewed-by: default avatarMahmoud Gawad <mgawad@google.com>
Reviewed-by: default avatarOleh Lamzin <lamzin@google.com>
Reviewed-by: default avatarTom Sepez <tsepez@chromium.org>
Commit-Queue: Laurențiu Olteanu <lolteanu@google.com>
Cr-Commit-Position: refs/heads/master@{#799638}
parent 448b9f33
......@@ -79,6 +79,7 @@ source_set("chromeos") {
"//chrome/browser/apps/platform_apps/api",
"//chrome/browser/chromeos/child_accounts/time_limits/web_time_limit_error_page",
"//chrome/browser/chromeos/power/ml/smart_dim",
"//chrome/browser/chromeos/wilco_dtc_supportd:mojo_utils",
"//chrome/browser/devtools",
"//chrome/browser/extensions",
"//chrome/browser/image_decoder",
......@@ -2660,8 +2661,6 @@ source_set("chromeos") {
"web_applications/terminal_source.h",
"wilco_dtc_supportd/fake_wilco_dtc_supportd_client.cc",
"wilco_dtc_supportd/fake_wilco_dtc_supportd_client.h",
"wilco_dtc_supportd/mojo_utils.cc",
"wilco_dtc_supportd/mojo_utils.h",
"wilco_dtc_supportd/wilco_dtc_supportd_bridge.cc",
"wilco_dtc_supportd/wilco_dtc_supportd_bridge.h",
"wilco_dtc_supportd/wilco_dtc_supportd_client.cc",
......
# Copyright 2020 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.
source_set("mojo_utils") {
sources = [
"mojo_utils.cc",
"mojo_utils.h",
]
deps = [
"//base",
"//mojo/public/c/system:headers",
"//mojo/public/cpp/system:system",
]
}
include_rules = [
"+mojo/public",
]
\ No newline at end of file
......@@ -26,6 +26,7 @@ source_set("telemetry_extension_ui") {
deps = [
"//base",
"//chrome/browser/chromeos/wilco_dtc_supportd:mojo_utils",
"//chromeos/components/telemetry_extension_ui/mojom",
"//chromeos/constants",
"//chromeos/resources:telemetry_extension_resources",
......@@ -48,6 +49,7 @@ source_set("unit_tests") {
":telemetry_extension_ui",
"//base",
"//base/test:test_support",
"//chrome/browser/chromeos/wilco_dtc_supportd:mojo_utils",
"//chromeos/components/telemetry_extension_ui/mojom",
"//chromeos/dbus/cros_healthd",
"//chromeos/services/cros_healthd/public/mojom",
......
include_rules = [
# Do not add chrome here (use a delegate instead).
"+chrome/browser/chromeos/wilco_dtc_supportd/mojo_utils.h",
"+chromeos/grit/chromeos_telemetry_extension_resources.h",
"+content/public/browser",
"+content/public/common",
......
......@@ -6,6 +6,7 @@
#include "base/notreached.h"
#include "base/optional.h"
#include "chrome/browser/chromeos/wilco_dtc_supportd/mojo_utils.h"
#include "chromeos/components/telemetry_extension_ui/mojom/diagnostics_service.mojom.h"
#include "chromeos/services/cros_healthd/public/mojom/cros_healthd_diagnostics.mojom.h"
......@@ -127,8 +128,10 @@ base::Optional<health::mojom::DiagnosticRoutineEnum> Convert(
}
std::string Convert(mojo::ScopedHandle handle) {
// TODO (b:162051831): Read from handle and put contents in a string
return std::string();
base::ReadOnlySharedMemoryMapping shared_memory;
return MojoUtils::GetStringPieceFromMojoHandle(std::move(handle),
&shared_memory)
.as_string();
}
cros_healthd::mojom::DiagnosticRoutineCommandEnum Convert(
......
......@@ -31,6 +31,7 @@ source_set("browser_test_support") {
deps = [
"../:telemetry_extension_ui",
"//chrome/browser/chromeos/wilco_dtc_supportd:mojo_utils",
"//chrome/test:test_support_ui",
"//chromeos/components/web_applications/test:test_support",
"//chromeos/constants",
......
......@@ -7,6 +7,7 @@
#include "base/base_paths.h"
#include "base/files/file_path.h"
#include "base/path_service.h"
#include "chrome/browser/chromeos/wilco_dtc_supportd/mojo_utils.h"
#include "chromeos/components/telemetry_extension_ui/url_constants.h"
#include "chromeos/components/web_applications/test/sandboxed_web_ui_test_base.h"
#include "chromeos/constants/chromeos_switches.h"
......@@ -76,6 +77,8 @@ void TelemetryExtensionUiBrowserTest::
std::move(interactiveRoutineUpdate));
input->progress_percent = 0;
input->output = chromeos::MojoUtils::CreateReadOnlySharedMemoryMojoHandle(
"This routine is running!");
input->routine_update_union = std::move(routineUpdateUnion);
chromeos::cros_healthd::FakeCrosHealthdClient::Get()
......
......@@ -168,7 +168,7 @@ UNTRUSTED_TEST(
987654321, 'remove', true);
assertDeepEquals(response, {
progressPercent: 0,
output: '',
output: 'This routine is running!',
routineUpdateUnion:
{interactiveUpdate: {userMessage: 'unplug-ac-power'}}
});
......
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