1 // Copyright 2019 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_BROWSER_NATIVE_FILE_SYSTEM_MOCK_NATIVE_FILE_SYSTEM_PERMISSION_CONTEXT_H_ 6 #define CONTENT_BROWSER_NATIVE_FILE_SYSTEM_MOCK_NATIVE_FILE_SYSTEM_PERMISSION_CONTEXT_H_ 7 8 #include "content/public/browser/native_file_system_permission_context.h" 9 #include "testing/gmock/include/gmock/gmock.h" 10 11 namespace content { 12 // Mock NativeFileSystemPermissionContext implementation. 13 class MockNativeFileSystemPermissionContext 14 : public NativeFileSystemPermissionContext { 15 public: 16 MockNativeFileSystemPermissionContext(); 17 ~MockNativeFileSystemPermissionContext(); 18 19 MOCK_METHOD6(GetReadPermissionGrant, 20 scoped_refptr<NativeFileSystemPermissionGrant>( 21 const url::Origin& origin, 22 const base::FilePath& path, 23 bool is_directory, 24 int process_id, 25 int frame_id, 26 NativeFileSystemPermissionContext::UserAction user_action)); 27 28 MOCK_METHOD6(GetWritePermissionGrant, 29 scoped_refptr<NativeFileSystemPermissionGrant>( 30 const url::Origin& origin, 31 const base::FilePath& path, 32 bool is_directory, 33 int process_id, 34 int frame_id, 35 NativeFileSystemPermissionContext::UserAction user_action)); 36 37 void ConfirmDirectoryReadAccess( 38 const url::Origin& origin, 39 const base::FilePath& path, 40 int process_id, 41 int frame_id, 42 base::OnceCallback<void(PermissionStatus)> callback) override; 43 MOCK_METHOD5(ConfirmDirectoryReadAccess_, 44 void(const url::Origin& origin, 45 const base::FilePath& path, 46 int process_id, 47 int frame_id, 48 base::OnceCallback<void(PermissionStatus)>& callback)); 49 50 void ConfirmSensitiveDirectoryAccess( 51 const url::Origin& origin, 52 const std::vector<base::FilePath>& paths, 53 bool is_directory, 54 int process_id, 55 int frame_id, 56 base::OnceCallback<void(SensitiveDirectoryResult)> callback) override; 57 MOCK_METHOD6( 58 ConfirmSensitiveDirectoryAccess_, 59 void(const url::Origin& origin, 60 const std::vector<base::FilePath>& paths, 61 bool is_directory, 62 int process_id, 63 int frame_id, 64 base::OnceCallback<void(SensitiveDirectoryResult)>& callback)); 65 66 void PerformAfterWriteChecks( 67 std::unique_ptr<NativeFileSystemWriteItem> item, 68 int process_id, 69 int frame_id, 70 base::OnceCallback<void(AfterWriteCheckResult)> callback) override; 71 MOCK_METHOD4(PerformAfterWriteChecks_, 72 void(NativeFileSystemWriteItem* item, 73 int process_id, 74 int frame_id, 75 base::OnceCallback<void(AfterWriteCheckResult)>& callback)); 76 77 MOCK_METHOD1(CanObtainWritePermission, bool(const url::Origin& origin)); 78 }; 79 80 } // namespace content 81 82 #endif // CONTENT_BROWSER_NATIVE_FILE_SYSTEM_MOCK_NATIVE_FILE_SYSTEM_PERMISSION_CONTEXT_H_ 83