From f6f3f99024317abc9b8e8ff58be86e6c923f43a8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jean-No=C3=ABl=20Rouvignac?= Date: Mon, 1 Mar 2021 11:49:24 +0100 Subject: [PATCH] Avoid using the guice injector int ests which triggers an NPE --- .../s3/binders/BindACLToXMLPayloadTest.java | 54 +++++++++++++++++++ .../BindBucketLoggingToXmlPayloadTest.java | 8 +-- apis/s3/src/test/resources/acl_to_xml.xml | 1 + 3 files changed, 57 insertions(+), 6 deletions(-) create mode 100644 apis/s3/src/test/java/org/jclouds/s3/binders/BindACLToXMLPayloadTest.java create mode 100644 apis/s3/src/test/resources/acl_to_xml.xml diff --git a/apis/s3/src/test/java/org/jclouds/s3/binders/BindACLToXMLPayloadTest.java b/apis/s3/src/test/java/org/jclouds/s3/binders/BindACLToXMLPayloadTest.java new file mode 100644 index 0000000000..f61e77bd98 --- /dev/null +++ b/apis/s3/src/test/java/org/jclouds/s3/binders/BindACLToXMLPayloadTest.java @@ -0,0 +1,54 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.jclouds.s3.binders; + +import static org.testng.Assert.assertEquals; + +import java.io.IOException; + +import org.jclouds.http.HttpRequest; +import org.jclouds.http.functions.BaseHandlerTest; +import org.jclouds.s3.domain.AccessControlList; +import org.jclouds.s3.domain.AccessControlList.EmailAddressGrantee; +import org.jclouds.s3.domain.AccessControlList.Permission; +import org.jclouds.s3.domain.CanonicalUser; +import org.jclouds.util.Strings2; +import org.testng.annotations.Test; + +/** + * Tests behavior of {@link #BindACLToXMLPayload} + */ +//NOTE:without testName, this will not call @Before* and fail w/NPE during surefire +@Test(groups = "unit", testName = "BindBucketLoggingToXmlPayloadTest") +public class BindACLToXMLPayloadTest extends BaseHandlerTest { + public void testBindToRequest() throws IOException { + AccessControlList acl = new AccessControlList(); + acl.setOwner(new CanonicalUser("jnrouvignac", "Jean-Noël Rouvignac")); + acl.addPermission(new EmailAddressGrantee("adrian@jclouds.org"), + Permission.FULL_CONTROL); + + String expected = Strings2.toStringAndClose(getClass().getResourceAsStream( + "/acl_to_xml.xml")); + + HttpRequest request = HttpRequest.builder().method("GET").endpoint("http://test").build(); + BindACLToXMLPayload binder = new BindACLToXMLPayload(); + + binder.bindToRequest(request, acl); + assertEquals(request.getPayload().getContentMetadata().getContentType(), "text/xml"); + assertEquals(request.getPayload().getRawContent(), expected); + } +} diff --git a/apis/s3/src/test/java/org/jclouds/s3/binders/BindBucketLoggingToXmlPayloadTest.java b/apis/s3/src/test/java/org/jclouds/s3/binders/BindBucketLoggingToXmlPayloadTest.java index d036b5f254..4e5ee9aa32 100644 --- a/apis/s3/src/test/java/org/jclouds/s3/binders/BindBucketLoggingToXmlPayloadTest.java +++ b/apis/s3/src/test/java/org/jclouds/s3/binders/BindBucketLoggingToXmlPayloadTest.java @@ -32,14 +32,12 @@ import org.testng.annotations.Test; import com.google.common.collect.ImmutableSet; /** - * Tests behavior of {@code BindBucketLoggingToXmlPayload} + * Tests behavior of {@link #BindBucketLoggingToXmlPayload} */ //NOTE:without testName, this will not call @Before* and fail w/NPE during surefire @Test(groups = "unit", testName = "BindBucketLoggingToXmlPayloadTest") public class BindBucketLoggingToXmlPayloadTest extends BaseHandlerTest { - public void testApplyInputStream() throws IOException { - BucketLogging bucketLogging = new BucketLogging("mylogs", "access_log-", ImmutableSet . of(new Grant(new EmailAddressGrantee("adrian@jclouds.org"), Permission.FULL_CONTROL))); @@ -48,12 +46,10 @@ public class BindBucketLoggingToXmlPayloadTest extends BaseHandlerTest { "/bucket_logging.xml")); HttpRequest request = HttpRequest.builder().method("GET").endpoint("http://test").build(); - BindBucketLoggingToXmlPayload binder = injector - .getInstance(BindBucketLoggingToXmlPayload.class); + BindBucketLoggingToXmlPayload binder = new BindBucketLoggingToXmlPayload(); binder.bindToRequest(request, bucketLogging); assertEquals(request.getPayload().getContentMetadata().getContentType(), "text/xml"); assertEquals(request.getPayload().getRawContent(), expected); - } } diff --git a/apis/s3/src/test/resources/acl_to_xml.xml b/apis/s3/src/test/resources/acl_to_xml.xml new file mode 100644 index 0000000000..94a66fb26e --- /dev/null +++ b/apis/s3/src/test/resources/acl_to_xml.xml @@ -0,0 +1 @@ +jnrouvignacJean-Noël Rouvignacadrian@jclouds.orgFULL_CONTROL \ No newline at end of file