Refactor chromeos::PipeReader.
Before this change, PipeReader cannot report an error.
With this change, it can.
Also, simplify the cancel flow. Now, as a common pattern
used across chrome repository, just deleting the instance
will cancel the inflight operation.
Also, PipeReaderForString was the only subclass. So merged
PipeReader.
Added unittests.
BUG=776310
TEST=Ran bots.
Change-Id: I6cda997b36db1703f79f9fe5e682f95af923ff3d
Reviewed-on: https://chromium-review.googlesource.com/727445
Reviewed-by: Steven Bennetts <[email protected]>
Reviewed-by: Simon Que <[email protected]>
Commit-Queue: Hidehiko Abe <[email protected]>
Cr-Commit-Position: refs/heads/master@{#512607}
diff --git a/chromeos/BUILD.gn b/chromeos/BUILD.gn
index 3331a79..bb4221d 100644
--- a/chromeos/BUILD.gn
+++ b/chromeos/BUILD.gn
@@ -662,6 +662,7 @@
"dbus/fake_power_manager_client_unittest.cc",
"dbus/gsm_sms_client_unittest.cc",
"dbus/modem_messaging_client_unittest.cc",
+ "dbus/pipe_reader_unittest.cc",
"dbus/power_manager_client_unittest.cc",
"dbus/power_policy_controller_unittest.cc",
"dbus/services/cros_dbus_service_unittest.cc",