diff --git a/main/filesystem-api/src/main/java/org/cryptomator/filesystem/delegating/DelegatingFolder.java b/main/filesystem-api/src/main/java/org/cryptomator/filesystem/delegating/DelegatingFolder.java index f7e8a87f6..4842e7e82 100644 --- a/main/filesystem-api/src/main/java/org/cryptomator/filesystem/delegating/DelegatingFolder.java +++ b/main/filesystem-api/src/main/java/org/cryptomator/filesystem/delegating/DelegatingFolder.java @@ -83,7 +83,7 @@ public abstract class DelegatingFolder, F exten final Folder delegateDest = ((DelegatingFolder) destination).delegate; delegate.copyTo(delegateDest); } else { - Folder.super.copyTo(destination); + throw new IllegalArgumentException("Can only copy DelegatingFolder to other DelegatingFolder."); } } diff --git a/main/filesystem-api/src/test/java/org/cryptomator/filesystem/delegating/DelegatingFolderTest.java b/main/filesystem-api/src/test/java/org/cryptomator/filesystem/delegating/DelegatingFolderTest.java index 09345464a..c50069c97 100644 --- a/main/filesystem-api/src/test/java/org/cryptomator/filesystem/delegating/DelegatingFolderTest.java +++ b/main/filesystem-api/src/test/java/org/cryptomator/filesystem/delegating/DelegatingFolderTest.java @@ -133,14 +133,13 @@ public class DelegatingFolderTest { Mockito.verify(mockFolder1).copyTo(mockFolder2); } - @Test + @Test(expected = IllegalArgumentException.class) public void testCopyToDestinationFromDifferentLayer() { Folder mockFolder1 = Mockito.mock(Folder.class); Folder mockFolder2 = Mockito.mock(Folder.class); DelegatingFolder delegatingFolder1 = new TestDelegatingFolder(null, mockFolder1); delegatingFolder1.copyTo(mockFolder2); - Mockito.verify(mockFolder1).copyTo(mockFolder2); } @Test