cryptohome: Add FakePlatform::CreateSparseFile

Adds CreateSparseFile to fake platform and redirect calls from
MockPlatform to the fake platform.

BUG=b:172344853
TEST=unittests

Change-Id: I867f41c9d453ab049cc0f48852a92b5b2a4aebf6
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform2/+/2595670
Tested-by: Sarthak Kukreti <sarthakkukreti@chromium.org>
Commit-Queue: Sarthak Kukreti <sarthakkukreti@chromium.org>
Reviewed-by: Daniil Lunev <dlunev@chromium.org>
Reviewed-by: Leo Lai <cylai@google.com>
diff --git a/cryptohome/fake_platform.cc b/cryptohome/fake_platform.cc
index ca27195..17508b6 100644
--- a/cryptohome/fake_platform.cc
+++ b/cryptohome/fake_platform.cc
@@ -121,6 +121,10 @@
   return real_platform_.CreateDirectory(TestFilePath(path));
 }
 
+bool FakePlatform::CreateSparseFile(const base::FilePath& path, int64_t size) {
+  return real_platform_.CreateSparseFile(TestFilePath(path), size);
+}
+
 bool FakePlatform::ReadFile(const base::FilePath& path, brillo::Blob* blob) {
   return real_platform_.ReadFile(TestFilePath(path), blob);
 }
diff --git a/cryptohome/fake_platform.h b/cryptohome/fake_platform.h
index 5253259..f09a636 100644
--- a/cryptohome/fake_platform.h
+++ b/cryptohome/fake_platform.h
@@ -71,6 +71,7 @@
   bool FileExists(const base::FilePath& path) override;
   bool DirectoryExists(const base::FilePath& path) override;
   bool CreateDirectory(const base::FilePath& path) override;
+  bool CreateSparseFile(const base::FilePath& path, int64_t size) override;
 
   bool ReadFile(const base::FilePath& path, brillo::Blob* blob) override;
   bool ReadFileToString(const base::FilePath& path, std::string* str) override;
diff --git a/cryptohome/mock_platform.cc b/cryptohome/mock_platform.cc
index 534a243..371aa99 100644
--- a/cryptohome/mock_platform.cc
+++ b/cryptohome/mock_platform.cc
@@ -49,6 +49,9 @@
   ON_CALL(*this, CreateDirectory(_))
       .WillByDefault(
           Invoke(fake_platform_.get(), &FakePlatform::CreateDirectory));
+  ON_CALL(*this, CreateSparseFile(_, _))
+      .WillByDefault(
+          Invoke(fake_platform_.get(), &FakePlatform::CreateSparseFile));
 
   ON_CALL(*this, ReadFile(_, _))
       .WillByDefault(Invoke(fake_platform_.get(), &FakePlatform::ReadFile));