Mock a /postinstall dir at test time
Bug: 172696594
Test: treehugger
Change-Id: Ib6264569d090dc61fc9ded5f833e3841ec16a8dd
diff --git a/payload_consumer/postinstall_runner_action.cc b/payload_consumer/postinstall_runner_action.cc
index d452a64..6a6d687 100644
--- a/payload_consumer/postinstall_runner_action.cc
+++ b/payload_consumer/postinstall_runner_action.cc
@@ -53,6 +53,18 @@
using std::string;
using std::vector;
+PostinstallRunnerAction::PostinstallRunnerAction(
+ BootControlInterface* boot_control, HardwareInterface* hardware)
+ : boot_control_(boot_control), hardware_(hardware) {
+#ifdef __ANDROID__
+ fs_mount_dir_ = "/postinstall";
+#else // __ANDROID__
+ base::FilePath temp_dir;
+ TEST_AND_RETURN(base::CreateNewTempDirectory("au_postint_mount", &temp_dir));
+ fs_mount_dir_ = temp_dir.value();
+#endif // __ANDROID__
+}
+
void PostinstallRunnerAction::PerformAction() {
CHECK(HasInputObject());
CHECK(boot_control_);
@@ -135,13 +147,6 @@
// Perform post-install for the current_partition_ partition. At this point we
// need to call CompletePartitionPostinstall to complete the operation and
// cleanup.
-#ifdef __ANDROID__
- fs_mount_dir_ = "/postinstall";
-#else // __ANDROID__
- base::FilePath temp_dir;
- TEST_AND_RETURN(base::CreateNewTempDirectory("au_postint_mount", &temp_dir));
- fs_mount_dir_ = temp_dir.value();
-#endif // __ANDROID__
if (!utils::FileExists(fs_mount_dir_.c_str())) {
LOG(ERROR) << "Mount point " << fs_mount_dir_