1// Copyright 2014 The Chromium Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
5#ifndef CONTENT_TEST_FILEAPI_TEST_FILE_SET_H_
6#define CONTENT_TEST_FILEAPI_TEST_FILE_SET_H_
7
8#include <set>
9
10#include "base/files/file_path.h"
11
12// Common test data structures and test cases.
13
14namespace storage {
15class FileSystemFileUtil;
16}
17
18namespace content {
19
20struct FileSystemTestCaseRecord {
21  bool is_directory;
22  const base::FilePath::CharType path[64];
23  int64 data_file_size;
24};
25
26extern const FileSystemTestCaseRecord kRegularFileSystemTestCases[];
27extern const size_t kRegularFileSystemTestCaseSize;
28
29size_t GetRegularFileSystemTestCaseSize();
30
31// Creates one file or directory specified by |record|.
32void SetUpOneFileSystemTestCase(const base::FilePath& root_path,
33                                const FileSystemTestCaseRecord& record);
34
35// Creates the files and directories specified in kRegularTestCases.
36void SetUpRegularFileSystemTestCases(const base::FilePath& root_path);
37
38}  // namespace content
39
40#endif  // CONTENT_TEST_TEST_FILEAPI_FILE_SET_H_
41