diff options
Diffstat (limited to 'chromium/components/arc/arc_util_unittest.cc')
-rw-r--r-- | chromium/components/arc/arc_util_unittest.cc | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/chromium/components/arc/arc_util_unittest.cc b/chromium/components/arc/arc_util_unittest.cc index 1dd651d631c..165f40d04b6 100644 --- a/chromium/components/arc/arc_util_unittest.cc +++ b/chromium/components/arc/arc_util_unittest.cc @@ -10,6 +10,8 @@ #include "ash/public/cpp/app_types.h" #include "base/base_switches.h" #include "base/command_line.h" +#include "base/files/file_util.h" +#include "base/files/scoped_temp_dir.h" #include "base/macros.h" #include "base/memory/ptr_util.h" #include "base/test/scoped_feature_list.h" @@ -275,5 +277,32 @@ TEST_F(ArcUtilTest, ScaleFactorToDensity) { EXPECT_EQ(240, GetLcdDensityForDeviceScaleFactor(2.0)); } +TEST_F(ArcUtilTest, GenerateFirstStageFstab) { + constexpr const char kFakeCombinedBuildPropPath[] = "/path/to/build.prop"; + constexpr const char kAnotherFakeCombinedBuildPropPath[] = + "/foo/bar/baz.prop"; + + auto* command_line = base::CommandLine::ForCurrentProcess(); + command_line->InitFromArgv({"", "--enable-arcvm"}); + + std::string content; + base::ScopedTempDir dir; + ASSERT_TRUE(dir.CreateUniqueTempDir()); + const base::FilePath fstab(dir.GetPath().Append("fstab")); + + // Generate the fstab and verify the content. + EXPECT_TRUE(GenerateFirstStageFstab( + base::FilePath(kFakeCombinedBuildPropPath), fstab)); + EXPECT_TRUE(base::ReadFileToString(fstab, &content)); + EXPECT_NE(std::string::npos, content.find(kFakeCombinedBuildPropPath)); + + // Generate the fstab again with the other prop file and verify the content. + EXPECT_TRUE(GenerateFirstStageFstab( + base::FilePath(kAnotherFakeCombinedBuildPropPath), fstab)); + EXPECT_TRUE(base::ReadFileToString(fstab, &content)); + EXPECT_EQ(std::string::npos, content.find(kFakeCombinedBuildPropPath)); + EXPECT_NE(std::string::npos, content.find(kAnotherFakeCombinedBuildPropPath)); +} + } // namespace } // namespace arc |