mirror of
https://github.com/NativeScript/NativeScript.git
synced 2025-11-05 13:26:48 +08:00
Merge pull request #2037 from NativeScript/folder-clear
Fixed: Folder.clear fails to remove empty subfolders on Android
This commit is contained in:
@@ -461,6 +461,7 @@ export var testFolderClear = function () {
|
||||
// >> (hide)
|
||||
folder.getFile("Test1.txt");
|
||||
folder.getFile("Test2.txt");
|
||||
var subfolder = folder.getFolder("subfolder");
|
||||
var emptied;
|
||||
// << (hide)
|
||||
folder.clear()
|
||||
@@ -478,7 +479,7 @@ export var testFolderClear = function () {
|
||||
// >> (hide)
|
||||
folder.getEntities()
|
||||
.then(function (entities) {
|
||||
TKUnit.assert(entities.length === 0, "Failed to clear a Folder");
|
||||
TKUnit.assertEqual(entities.length, 0, `${entities.length} entities left after clearing a folder.`);
|
||||
folder.remove();
|
||||
});
|
||||
// << (hide)
|
||||
@@ -545,4 +546,18 @@ export function test_CreateParentOnNewFile(done) {
|
||||
return fs.knownFolders.documents().getFolder("folder1").remove();
|
||||
}).then(() => done())
|
||||
.catch(done);
|
||||
}
|
||||
|
||||
export function test_FolderClear_RemovesEmptySubfolders(done) {
|
||||
let documents = fs.knownFolders.documents();
|
||||
let rootFolder = documents.getFolder("rootFolder");
|
||||
let emptySubfolder = rootFolder.getFolder("emptySubfolder");
|
||||
TKUnit.assertTrue(fs.Folder.exists(emptySubfolder.path), "emptySubfolder should exist before parent folder is cleared.");
|
||||
rootFolder.clear().then(
|
||||
() => {
|
||||
TKUnit.assertFalse(fs.File.exists(emptySubfolder.path), "emptySubfolder should not exist after parent folder was cleared.");
|
||||
rootFolder.remove();
|
||||
done();
|
||||
})
|
||||
.catch(done);
|
||||
}
|
||||
@@ -300,6 +300,9 @@ export class FileSystemAccess {
|
||||
|
||||
private deleteFolderContent(file: java.io.File): boolean {
|
||||
var filesList = file.listFiles();
|
||||
if (filesList.length === 0) {
|
||||
return true;// Nothing to delete, so success!
|
||||
}
|
||||
|
||||
var i,
|
||||
childFile: java.io.File,
|
||||
|
||||
Reference in New Issue
Block a user