X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=src%2Ftest%2Fjava%2Fnet%2Fpterodactylus%2Ffcp%2Fquelaton%2FDefaultFcpClientTest.java;fp=src%2Ftest%2Fjava%2Fnet%2Fpterodactylus%2Ffcp%2Fquelaton%2FDefaultFcpClientTest.java;h=771cd25ddfc5ebfb6addb21cf0443da992bb6c5f;hb=872b858bdb4fd4bfadf50491567d0dd5207851b4;hp=0adb977de1be91c45027493c40ced58056e810f5;hpb=8ff9728f5a6fd4dd1f541c0a8caa7f8fc7401b76;p=jFCPlib.git diff --git a/src/test/java/net/pterodactylus/fcp/quelaton/DefaultFcpClientTest.java b/src/test/java/net/pterodactylus/fcp/quelaton/DefaultFcpClientTest.java index 0adb977..771cd25 100644 --- a/src/test/java/net/pterodactylus/fcp/quelaton/DefaultFcpClientTest.java +++ b/src/test/java/net/pterodactylus/fcp/quelaton/DefaultFcpClientTest.java @@ -1642,14 +1642,26 @@ public class DefaultFcpClientTest { @Test public void commandIsSentCorrectly() throws InterruptedException, ExecutionException, IOException { Future> key = fcpClient.clientPutDiskDir().fromDirectory(folder.getRoot()).uri("CHK@").execute(); - connectAndAssert(() -> matchesFcpMessage( + connectAndAssert(this::matchesClientPutDiskDir); + fcpServer.writeLine("PutSuccessful", "Identifier=" + identifier, "URI=CHK@abc", "EndMessage"); + assertThat(key.get().get().getKey(), is("CHK@abc")); + } + + @Test + public void protocolErrorAbortsCommand() throws InterruptedException, ExecutionException, IOException { + Future> key = fcpClient.clientPutDiskDir().fromDirectory(folder.getRoot()).uri("CHK@").execute(); + connectAndAssert(this::matchesClientPutDiskDir); + replyWithProtocolError(); + assertThat(key.get().isPresent(), is(false)); + } + + private Matcher> matchesClientPutDiskDir() { + return matchesFcpMessage( "ClientPutDiskDir", "Identifier=" + identifier, "URI=CHK@", "Filename=" + folder.getRoot().getPath() - )); - fcpServer.writeLine("PutSuccessful", "Identifier=" + identifier, "URI=CHK@abc", "EndMessage"); - assertThat(key.get().get().getKey(), is("CHK@abc")); + ); } }