* Running: CopyFileSimple
PASS Succeeded: "/a/b".copyTo("/a", "c")
PASS Verified entry: ENTRY {path:/a name:a type:DIRECTORY}
PASS Verified entry: ENTRY {path:/a/b name:b type:FILE}
PASS Verified entry: ENTRY {path:/a/c name:c type:FILE}
* Running: CopyDirectorySimple
PASS Succeeded: "/a/b".copyTo("/a", "c")
PASS Verified entry: ENTRY {path:/a name:a type:DIRECTORY}
PASS Verified entry: ENTRY {path:/a/b name:b type:DIRECTORY}
PASS Verified entry: ENTRY {path:/a/c name:c type:DIRECTORY}
* Running: CopyFileToDifferentDirectory
PASS Succeeded: "/a/b".copyTo("/c", "d")
PASS Verified entry: ENTRY {path:/a name:a type:DIRECTORY}
PASS Verified entry: ENTRY {path:/a/b name:b type:FILE}
PASS Verified entry: ENTRY {path:/c/d name:d type:FILE}
* Running: CopyFileWithEmptyName
PASS Succeeded: "/a/b".copyTo("/c", "null")
PASS Verified entry: ENTRY {path:/a name:a type:DIRECTORY}
PASS Verified entry: ENTRY {path:/a/b name:b type:FILE}
PASS Verified entry: ENTRY {path:/c/b name:b type:FILE}
* Running: CopyFileWithEmptyNameToSameDirectory
PASS this.expectedError + "" is "InvalidModificationError"
PASS Verified entry: ENTRY {path:/a name:a type:DIRECTORY}
PASS Verified entry: ENTRY {path:/a/b name:b type:FILE}
* Running: CopyFileWithSameName
PASS this.expectedError + "" is "InvalidModificationError"
PASS Verified entry: ENTRY {path:/a name:a type:DIRECTORY}
PASS Verified entry: ENTRY {path:/a/b name:b type:FILE}
* Running: CopyForNonExistentEntry
PASS Succeeded: "/a/b".remove()
PASS this.expectedError + "" is "NotFoundError"
PASS Verified entry: ENTRY {path:/a name:a type:DIRECTORY}
PASS Verified entry: ENTRY {path:/c name:c type:DIRECTORY}
* Running: CopyEntryToNonExistentDirectory
PASS Succeeded: "/c".remove()
PASS this.expectedError + "" is "NotFoundError"
PASS Verified entry: ENTRY {path:/a name:a type:DIRECTORY}
PASS Verified entry: ENTRY {path:/a/b name:b type:FILE}
* Running: CopyEntryToItsChild
PASS this.expectedError + "" is "InvalidModificationError"
PASS this.expectedError + "" is "InvalidModificationError"
PASS Verified entry: ENTRY {path:/a name:a type:DIRECTORY}
PASS Verified entry: ENTRY {path:/a/b name:b type:DIRECTORY}
PASS Verified entry: ENTRY {path:/a/b/c name:c type:DIRECTORY}
* Running: CopyRecursive
PASS Succeeded: "/a".copyTo("/b", "a")
PASS Verified entry: ENTRY {path:/a name:a type:DIRECTORY}
PASS Verified entry: ENTRY {path:/a/b name:b type:DIRECTORY}
PASS Verified entry: ENTRY {path:/a/b/c name:c type:FILE}
PASS Verified entry: ENTRY {path:/a/b/d name:d type:FILE}
PASS Verified entry: ENTRY {path:/b/a name:a type:DIRECTORY}
PASS Verified entry: ENTRY {path:/b/a/b name:b type:DIRECTORY}
PASS Verified entry: ENTRY {path:/b/a/b/c name:c type:FILE}
PASS Verified entry: ENTRY {path:/b/a/b/d name:d type:FILE}
* Running: OverwritingCopyFileToFile
PASS Succeeded: "/a".copyTo("/", "b")
PASS Verified entry: ENTRY {path:/a name:a type:FILE}
PASS Verified entry: ENTRY {path:/b name:b type:FILE}
* Running: OverwritingCopyDirectoryToEmptyDirectory
PASS Succeeded: "/a".copyTo("/", "c")
PASS Verified entry: ENTRY {path:/a name:a type:DIRECTORY}
PASS Verified entry: ENTRY {path:/a/b name:b type:FILE}
PASS Verified entry: ENTRY {path:/c name:c type:DIRECTORY}
PASS Verified entry: ENTRY {path:/c/b name:b type:FILE}
* Running: OverwritingCopyFileToDirectory
PASS this.expectedError + "" is "InvalidModificationError"
PASS Verified entry: ENTRY {path:/a name:a type:FILE}
PASS Verified entry: ENTRY {path:/b name:b type:DIRECTORY}
* Running: OverwritingCopyDirectoryToFile
PASS this.expectedError + "" is "InvalidModificationError"
PASS Verified entry: ENTRY {path:/a name:a type:DIRECTORY}
PASS Verified entry: ENTRY {path:/b name:b type:FILE}
* Running: OverwritingCopyFileToNonemptyDirectory
PASS this.expectedError + "" is "InvalidModificationError"
PASS Verified entry: ENTRY {path:/a name:a type:FILE}
PASS Verified entry: ENTRY {path:/b name:b type:DIRECTORY}
PASS Verified entry: ENTRY {path:/b/c name:c type:FILE}
* Running: OverwritingCopyDirectoryToNonemptyDirectory
PASS this.expectedError + "" is "InvalidModificationError"
PASS Verified entry: ENTRY {path:/a name:a type:DIRECTORY}
PASS Verified entry: ENTRY {path:/a/b name:b type:FILE}
PASS Verified entry: ENTRY {path:/c name:c type:DIRECTORY}
PASS Verified entry: ENTRY {path:/c/d name:d type:FILE}
Finished running tests.
PASS successfullyParsed is true
TEST COMPLETE