| // Copyright 2021 The Fuchsia Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| #ifndef SRC_STORAGE_FS_TEST_FXFS_H_ |
| #define SRC_STORAGE_FS_TEST_FXFS_H_ |
| |
| #include "src/storage/fs_test/fs_test.h" |
| |
| namespace fs_test { |
| |
| class FxfsFilesystem : public FilesystemImplWithDefaultMake<FxfsFilesystem> { |
| public: |
| const Traits& GetTraits() const override { |
| static Traits traits{ |
| .name = "fxfs", |
| .can_unmount = true, |
| .timestamp_granularity = zx::nsec(1), |
| .supports_hard_links = false, |
| .supports_mmap = false, |
| .supports_resize = true, |
| .max_file_size = std::numeric_limits<uint64_t>::max(), |
| .in_memory = false, |
| .is_case_sensitive = true, |
| .supports_sparse_files = true, |
| .supports_fsck_after_every_transaction = false, |
| }; |
| return traits; |
| } |
| |
| std::unique_ptr<FilesystemInstance> Create(RamDevice device, |
| std::string device_path) const override; |
| |
| zx::status<std::unique_ptr<FilesystemInstance>> Open( |
| const TestFilesystemOptions& options) const override; |
| }; |
| |
| TestFilesystemOptions DefaultFxfsTestOptions(); |
| |
| } // namespace fs_test |
| |
| #endif // SRC_STORAGE_FS_TEST_FXFS_H_ |