You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by ac...@apache.org on 2019/04/26 09:11:46 UTC

[camel] branch master updated: [CAMEL-13434] Camel-box, investigate and fix integration test failures

This is an automated email from the ASF dual-hosted git repository.

acosentino pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/camel.git


The following commit(s) were added to refs/heads/master by this push:
     new d89b2f1  [CAMEL-13434] Camel-box, investigate and fix integration test failures
d89b2f1 is described below

commit d89b2f17ac64e700d295899fdf8c77dfaf177c1b
Author: JiriOndrusek <jo...@redhat.com>
AuthorDate: Thu Apr 18 16:41:15 2019 +0200

    [CAMEL-13434] Camel-box, investigate and fix integration test failures
---
 .../BoxCollaborationsManagerIntegrationTest.java   |  2 +
 .../box/BoxFilesManagerIntegrationTest.java        |  6 ++-
 .../box/BoxGroupsManagerIntegrationTest.java       |  5 ++-
 .../box/BoxSearchManagerIntegrationTest.java       | 45 ++++++----------------
 .../box/BoxTasksManagerIntegrationTest.java        | 12 ++++++
 .../box/BoxUsersManagerIntegrationTest.java        |  4 ++
 6 files changed, 38 insertions(+), 36 deletions(-)

diff --git a/components/camel-box/camel-box-component/src/test/java/org/apache/camel/component/box/BoxCollaborationsManagerIntegrationTest.java b/components/camel-box/camel-box-component/src/test/java/org/apache/camel/component/box/BoxCollaborationsManagerIntegrationTest.java
index 9437258..eb21b72 100644
--- a/components/camel-box/camel-box-component/src/test/java/org/apache/camel/component/box/BoxCollaborationsManagerIntegrationTest.java
+++ b/components/camel-box/camel-box-component/src/test/java/org/apache/camel/component/box/BoxCollaborationsManagerIntegrationTest.java
@@ -33,6 +33,7 @@ import org.apache.camel.component.box.internal.BoxApiCollection;
 import org.apache.camel.component.box.internal.BoxCollaborationsManagerApiMethod;
 import org.junit.After;
 import org.junit.Before;
+import org.junit.Ignore;
 import org.junit.Test;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
@@ -72,6 +73,7 @@ public class BoxCollaborationsManagerIntegrationTest extends AbstractBoxTestSupp
         LOG.debug("addFolderCollaboration: " + result);
     }
 
+    @Ignore //creation of app users could be used only with JWT authentication, which is not possible in this time
     @Test
     public void testAddFolderCollaboration() throws Exception {
         // delete collaborator created by setupTest
diff --git a/components/camel-box/camel-box-component/src/test/java/org/apache/camel/component/box/BoxFilesManagerIntegrationTest.java b/components/camel-box/camel-box-component/src/test/java/org/apache/camel/component/box/BoxFilesManagerIntegrationTest.java
index ea8c547..f371fb0 100644
--- a/components/camel-box/camel-box-component/src/test/java/org/apache/camel/component/box/BoxFilesManagerIntegrationTest.java
+++ b/components/camel-box/camel-box-component/src/test/java/org/apache/camel/component/box/BoxFilesManagerIntegrationTest.java
@@ -382,7 +382,6 @@ public class BoxFilesManagerIntegrationTest extends AbstractBoxTestSupport {
     @Test
     public void testUpdateFileMetadata() throws Exception {
         Metadata metadata = new Metadata();
-        // metadata.add("/foo", "bar");
         metadata = testFile.createMetadata(metadata);
 
         final Map<String, Object> headers = new HashMap<>();
@@ -391,9 +390,14 @@ public class BoxFilesManagerIntegrationTest extends AbstractBoxTestSupport {
         // parameter type is com.box.sdk.Metadata
         headers.put("CamelBox.metadata", metadata);
 
+        //metada has to contain some value, otherwise response result will be error code 400
+        metadata.add("/foo", "bar");
+
         final com.box.sdk.Metadata result = requestBodyAndHeaders("direct://UPDATEFILEMETADATA", null, headers);
 
         assertNotNull("updateFileMetadata result", result);
+        assertNotNull("updateFileMetadata property foo", result.get("/foo"));
+        assertEquals("bar", metadata.get("/foo"));
         LOG.debug("updateFileMetadata: " + result);
     }
 
diff --git a/components/camel-box/camel-box-component/src/test/java/org/apache/camel/component/box/BoxGroupsManagerIntegrationTest.java b/components/camel-box/camel-box-component/src/test/java/org/apache/camel/component/box/BoxGroupsManagerIntegrationTest.java
index 4e0932e..5bd2851 100644
--- a/components/camel-box/camel-box-component/src/test/java/org/apache/camel/component/box/BoxGroupsManagerIntegrationTest.java
+++ b/components/camel-box/camel-box-component/src/test/java/org/apache/camel/component/box/BoxGroupsManagerIntegrationTest.java
@@ -177,7 +177,7 @@ public class BoxGroupsManagerIntegrationTest extends AbstractBoxTestSupport {
 
         final Map<String, Object> headers = new HashMap<>();
         // parameter type is String
-        headers.put("CamelBox.groupMemebershipId", info.getID());
+        headers.put("CamelBox.groupMembershipId", info.getID());
         // parameter type is com.box.sdk.BoxGroupMembership.Info
         headers.put("CamelBox.info", info);
 
@@ -219,6 +219,9 @@ public class BoxGroupsManagerIntegrationTest extends AbstractBoxTestSupport {
                 from("direct://GETGROUPMEMBERSHIPS")
                     .to("box://" + PATH_PREFIX + "/getGroupMemberships?inBody=groupId");
 
+                // test route for updateGroupInfo
+                from("direct://UPDATEGROUPINFO").to("box://" + PATH_PREFIX + "/updateGroupInfo");
+
                 // test route for updateGroupMembershipInfo
                 from("direct://UPDATEGROUPMEMBERSHIPINFO").to("box://" + PATH_PREFIX + "/updateGroupMembershipInfo");
 
diff --git a/components/camel-box/camel-box-component/src/test/java/org/apache/camel/component/box/BoxSearchManagerIntegrationTest.java b/components/camel-box/camel-box-component/src/test/java/org/apache/camel/component/box/BoxSearchManagerIntegrationTest.java
index 73857eb..b249cd8 100644
--- a/components/camel-box/camel-box-component/src/test/java/org/apache/camel/component/box/BoxSearchManagerIntegrationTest.java
+++ b/components/camel-box/camel-box-component/src/test/java/org/apache/camel/component/box/BoxSearchManagerIntegrationTest.java
@@ -16,20 +16,13 @@
  */
 package org.apache.camel.component.box;
 
-import java.io.FileNotFoundException;
-import java.io.InputStream;
 import java.util.HashMap;
 import java.util.Map;
 
-import com.box.sdk.BoxAPIConnection;
-import com.box.sdk.BoxFolder;
-
 import org.apache.camel.builder.RouteBuilder;
 import org.apache.camel.component.box.api.BoxSearchManager;
 import org.apache.camel.component.box.internal.BoxApiCollection;
 import org.apache.camel.component.box.internal.BoxSearchManagerApiMethod;
-import org.junit.After;
-import org.junit.Before;
 import org.junit.Test;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
@@ -43,22 +36,27 @@ public class BoxSearchManagerIntegrationTest extends AbstractBoxTestSupport {
     private static final Logger LOG = LoggerFactory.getLogger(BoxSearchManagerIntegrationTest.class);
     private static final String PATH_PREFIX = BoxApiCollection.getCollection()
             .getApiName(BoxSearchManagerApiMethod.class).getName();
-    private static final String CAMEL_TEST_FILE = "/CamelTestFile.txt";
-    private static final String CAMEL_TEST_FILE_NAME = "CamelTestFile.txt";
 
-    @Test
-    public void testSearchFolder() throws Exception {
+    /**
+     * There is a delay 5-10 mins between upload of file and being searchable (probably to update some search indexes,
+     * see https://community.box.com/t5/Platform-and-Development-Forum/Box-Search-Delay/td-p/40072).
+     * With this delay search for an actual item, created in the beginning of the test, doesn't make sense.
+     * Test only verifies, that search results works (and does not end with an exception).
+     *
+     * To test search of real data, change query string from '*' to real name of file.
+     */
+    @Test(expected = Test.None.class /* no exception expected */)
+    public void testSearchFolder() {
         final Map<String, Object> headers = new HashMap<>();
         // parameter type is String
         headers.put("CamelBox.folderId", "0");
         // parameter type is String
-        headers.put("CamelBox.query", CAMEL_TEST_FILE_NAME);
+        headers.put("CamelBox.query", "*");
 
         @SuppressWarnings("rawtypes")
         final java.util.Collection result = requestBodyAndHeaders("direct://SEARCHFOLDER", null, headers);
 
         assertNotNull("searchFolder result", result);
-        assertEquals("searchFolder file found", 1, result.size());
         LOG.debug("searchFolder: " + result);
     }
 
@@ -68,29 +66,8 @@ public class BoxSearchManagerIntegrationTest extends AbstractBoxTestSupport {
             public void configure() {
                 // test route for searchFolder
                 from("direct://SEARCHFOLDER").to("box://" + PATH_PREFIX + "/searchFolder");
-
             }
         };
     }
 
-    @Before
-    public void setupTest() throws Exception {
-        createTestFile();
-    }
-
-    @After
-    public void teardownTest() {
-        deleteTestFile();
-    }
-
-    public BoxAPIConnection getConnection() {
-        BoxEndpoint endpoint = (BoxEndpoint) context().getEndpoint("box://" + PATH_PREFIX + "/searchFolder");
-        return endpoint.getBoxConnection();
-    }
-
-    private void createTestFile() throws FileNotFoundException {
-        BoxFolder rootFolder = BoxFolder.getRootFolder(getConnection());
-        InputStream stream = getClass().getResourceAsStream(CAMEL_TEST_FILE);
-        testFile = rootFolder.uploadFile(stream, CAMEL_TEST_FILE_NAME).getResource();
-    }
 }
diff --git a/components/camel-box/camel-box-component/src/test/java/org/apache/camel/component/box/BoxTasksManagerIntegrationTest.java b/components/camel-box/camel-box-component/src/test/java/org/apache/camel/component/box/BoxTasksManagerIntegrationTest.java
index 4372dc1..61026ac 100644
--- a/components/camel-box/camel-box-component/src/test/java/org/apache/camel/component/box/BoxTasksManagerIntegrationTest.java
+++ b/components/camel-box/camel-box-component/src/test/java/org/apache/camel/component/box/BoxTasksManagerIntegrationTest.java
@@ -57,6 +57,7 @@ public class BoxTasksManagerIntegrationTest extends AbstractBoxTestSupport {
 
     private BoxTask testTask;
 
+    @Ignore //needs https://community.box.com/t5/custom/page/page-id/BoxViewTicketDetail?ticket_id=1895413 to be solved
     @Test
     public void testAddAssignmentToTask() throws Exception {
         com.box.sdk.BoxTask result = null;
@@ -159,9 +160,20 @@ public class BoxTasksManagerIntegrationTest extends AbstractBoxTestSupport {
         }
     }
 
+    @Ignore //needs https://community.box.com/t5/custom/page/page-id/BoxViewTicketDetail?ticket_id=1895413 to be solved
     @Test
     public void testGetTaskAssignments() throws Exception {
         // using String message body for single parameter "taskId"
+
+        //add assignment to task -> to be able to search for assignments
+        final Map<String, Object> headers = new HashMap<>();
+        // parameter type is String
+        headers.put("CamelBox.taskId", testTask.getID());
+        // parameter type is com.box.sdk.BoxUser
+        headers.put("CamelBox.assignTo", getCurrentUser());
+
+        requestBodyAndHeaders("direct://ADDASSIGNMENTTOTASK", null, headers);
+
         @SuppressWarnings("rawtypes")
         final java.util.List result = requestBody("direct://GETTASKASSIGNMENTS", testTask.getID());
 
diff --git a/components/camel-box/camel-box-component/src/test/java/org/apache/camel/component/box/BoxUsersManagerIntegrationTest.java b/components/camel-box/camel-box-component/src/test/java/org/apache/camel/component/box/BoxUsersManagerIntegrationTest.java
index e381aed..0e13b0c 100644
--- a/components/camel-box/camel-box-component/src/test/java/org/apache/camel/component/box/BoxUsersManagerIntegrationTest.java
+++ b/components/camel-box/camel-box-component/src/test/java/org/apache/camel/component/box/BoxUsersManagerIntegrationTest.java
@@ -79,6 +79,7 @@ public class BoxUsersManagerIntegrationTest extends AbstractBoxTestSupport {
         }
     }
 
+    @Ignore //creation of app users could be used only with JWT authentication, which is not possible in this time
     @Test
     public void testCreateAppUser() throws Exception {
         com.box.sdk.BoxUser result = null;
@@ -107,6 +108,7 @@ public class BoxUsersManagerIntegrationTest extends AbstractBoxTestSupport {
         }
     }
 
+    @Ignore //newly created user has to have unique and existing email address to be created. In manual execution, test could be un-ignored, but value for the "CamelBox.login" has to be changed.
     @Test
     public void testCreateEnterpriseUser() throws Exception {
         com.box.sdk.BoxUser result = null;
@@ -137,6 +139,7 @@ public class BoxUsersManagerIntegrationTest extends AbstractBoxTestSupport {
         }
     }
 
+    @Ignore //creation of app users could be used only with JWT authentication, which is not possible in this time
     @Test
     public void testDeleteUser() throws Exception {
         BoxUser.Info info = BoxUser.createAppUser(getConnection(), CAMEL_TEST_CREATE_APP_USER_NAME);
@@ -242,6 +245,7 @@ public class BoxUsersManagerIntegrationTest extends AbstractBoxTestSupport {
         }
     }
 
+    @Ignore //newly created user has to have unique and existing email address to be created. In manual execution, test could be un-ignored, but values for emails have to be changed.
     @Test
     public void testmMoveFolderToUser() throws Exception {
         BoxUser.Info user1 = BoxUser.createEnterpriseUser(getConnection(),