You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@jclouds.apache.org by GitBox <gi...@apache.org> on 2020/09/16 11:51:53 UTC

[GitHub] [jclouds] cstamas commented on a change in pull request #82: JCLOUDS-1552: Do not attempt to parse empty payload

cstamas commented on a change in pull request #82:
URL: https://github.com/apache/jclouds/pull/82#discussion_r489376596



##########
File path: apis/sts/src/test/java/org/jclouds/aws/util/AWSUtilsTest.java
##########
@@ -88,6 +95,20 @@ public void testNoExceptionParsingTextPlain() {
       assertNull(utils.parseAWSErrorFromContent(command.getCurrentRequest(), response));
    }
 
+   /**
+    * Do not attempt to parse empty payload.
+    */
+   @Test
+   public void testNoExceptionEmptyPayload() {
+      utils.logger = mock(Logger.class);
+      utils.logger.warn(anyObject(Throwable.class), anyString());
+      expectLastCall().andThrow(new IllegalStateException("log spam"));
+      replay(utils.logger);
+      HttpResponse response = HttpResponse.builder().statusCode(NOT_FOUND.getStatusCode()).payload(new StringPayload("")).build();
+      response.getPayload().getContentMetadata().setContentType("application/unknown");
+      assertNull(utils.parseAWSErrorFromContent(command.getCurrentRequest(), response));
+   }

Review comment:
       Hey, sorry for late response. Well yes, that could be made as well, but...
   
   I really wanted to make sure that execution does not end up in `catch` branch, and there logger is the only thing I could get hold of :) I mean, in future the code may change (for example to reuse the `parseAWSErrorFromContent` byte[]), and then the mocked test would may become "false negative". This way, am sure my goal is achieve: there is no WARN log spam :smile: 
   
   But in general, am open to both changes.




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org