Chromium Code Reviews| Index: chrome/test/data/extensions/api_test/file_system_provider/move_entry/test.js |
| diff --git a/chrome/test/data/extensions/api_test/file_system_provider/copy_entry/test.js b/chrome/test/data/extensions/api_test/file_system_provider/move_entry/test.js |
| similarity index 67% |
| copy from chrome/test/data/extensions/api_test/file_system_provider/copy_entry/test.js |
| copy to chrome/test/data/extensions/api_test/file_system_provider/move_entry/test.js |
| index 6ff163696858e75335abaf6e7bd9716040497316..c72230c1f9cde9fa67aba8784f722c82f59b995b 100644 |
| --- a/chrome/test/data/extensions/api_test/file_system_provider/copy_entry/test.js |
| +++ b/chrome/test/data/extensions/api_test/file_system_provider/move_entry/test.js |
| @@ -16,19 +16,30 @@ var TESTING_FILE = Object.freeze({ |
| }); |
| /** |
| + * @type {Object} |
| + * @const |
| + */ |
| +var TESTING_ANOTHER_FILE = Object.freeze({ |
| + isDirectory: false, |
| + name: 'bunny', |
| + size: 2048, |
| + modificationTime: new Date(2014, 4, 28, 9, 38, 14) |
| +}); |
| + |
| +/** |
| * @type {string} |
| * @const |
| */ |
| var TESTING_NEW_FILE_NAME = 'puppy.txt'; |
| /** |
| - * Copies an entry within the same file system. |
| + * Movies an entry within the same file system. |
|
kinaba
2014/07/15 07:12:54
Moves
mtomasz
2014/07/16 07:36:12
Done.
|
| * |
| - * @param {CopyEntryRequestedOptions} options Options. |
| + * @param {MoveEntryRequestedOptions} options Options. |
| * @param {function(Object)} onSuccess Success callback |
| * @param {function(string)} onError Error callback with an error code. |
| */ |
| -function onCopyEntryRequested(options, onSuccess, onError) { |
| +function onMoveEntryRequested(options, onSuccess, onError) { |
| if (options.fileSystemId != test_util.FILE_SYSTEM_ID) { |
| onError('SECURITY'); // enum ProviderError. |
| return; |
| @@ -49,12 +60,15 @@ function onCopyEntryRequested(options, onSuccess, onError) { |
| return; |
| } |
| - // Copy the metadata, but change the 'name' field. |
| + // Move the metadata with changing the 'name' field. |
| var newMetadata = |
| JSON.parse(JSON.stringify(test_util.defaultMetadata[options.sourcePath])); |
| newMetadata.name = options.targetPath.split('/').pop(); |
| test_util.defaultMetadata[options.targetPath] = newMetadata; |
| + // Remove the source file. |
| + delete test_util.defaultMetadata[options.sourcePath]; |
| + |
| onSuccess(); // enum ProviderError. |
| } |
| @@ -69,9 +83,11 @@ function setUp(callback) { |
| test_util.onGetMetadataRequestedDefault); |
| test_util.defaultMetadata['/' + TESTING_FILE.name] = TESTING_FILE; |
| + test_util.defaultMetadata['/' + TESTING_ANOTHER_FILE.name] = |
| + TESTING_ANOTHER_FILE; |
| - chrome.fileSystemProvider.onCopyEntryRequested.addListener( |
| - onCopyEntryRequested); |
| + chrome.fileSystemProvider.onMoveEntryRequested.addListener( |
| + onMoveEntryRequested); |
| test_util.mountFileSystem(callback); |
| } |
| @@ -81,21 +97,30 @@ function setUp(callback) { |
| */ |
| function runTests() { |
| chrome.test.runTests([ |
| - // Copy an existing file to a non-existing destination. Should succeed. |
| - function copyEntrySuccess() { |
| + // Move an existing file to a non-existing destination. Should succeed. |
| + function moveEntrySuccess() { |
| var onSuccess = chrome.test.callbackPass(); |
| test_util.fileSystem.root.getFile( |
| TESTING_FILE.name, {create: false}, |
| function(sourceEntry) { |
| chrome.test.assertEq(TESTING_FILE.name, sourceEntry.name); |
| chrome.test.assertFalse(sourceEntry.isDirectory); |
| - sourceEntry.copyTo( |
| + sourceEntry.moveTo( |
| test_util.fileSystem.root, |
| TESTING_NEW_FILE_NAME, |
| function(targetEntry) { |
| chrome.test.assertEq(TESTING_NEW_FILE_NAME, targetEntry.name); |
| chrome.test.assertFalse(targetEntry.isDirectory); |
| - onSuccess(); |
| + // The source file should be deleted. |
| + test_util.fileSystem.root.getFile( |
| + TESTING_FILE.name, {create: false}, |
| + function(newSourceEntry) { |
| + chrome.test.fail('Source file not deleted.'); |
| + }, |
| + function(error) { |
| + chrome.test.assertEq('NotFoundError', error.name); |
| + onSuccess(); |
| + }); |
| }, function(error) { |
| chrome.test.fail(error.name); |
| }); |
| @@ -103,16 +128,17 @@ function runTests() { |
| chrome.test.fail(error.name); |
| }); |
| }, |
| - // Copy an existing file to a location which already holds a file. |
| + |
| + // Move an existing file to a location which already holds a file. |
| // Should fail. |
| - function copyEntryExistsError() { |
| + function moveEntryExistsError() { |
| var onSuccess = chrome.test.callbackPass(); |
| test_util.fileSystem.root.getFile( |
| - TESTING_FILE.name, {create: false}, |
| + TESTING_ANOTHER_FILE.name, {create: false}, |
| function(sourceEntry) { |
| - chrome.test.assertEq(TESTING_FILE.name, sourceEntry.name); |
| + chrome.test.assertEq(TESTING_ANOTHER_FILE.name, sourceEntry.name); |
| chrome.test.assertFalse(sourceEntry.isDirectory); |
| - sourceEntry.copyTo( |
| + sourceEntry.moveTo( |
| test_util.fileSystem.root, |
| TESTING_NEW_FILE_NAME, |
| function(targetEntry) { |