You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by ja...@apache.org on 2014/09/08 15:57:51 UTC

[14/21] git commit: Get some more tests working

Get some more tests working


Project: http://git-wip-us.apache.org/repos/asf/camel/repo
Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/1acfe6e7
Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/1acfe6e7
Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/1acfe6e7

Branch: refs/heads/master
Commit: 1acfe6e75143fa66320db1fd2159f7a4fd008b94
Parents: af61f09
Author: Jonathan Anstey <ja...@gmail.com>
Authored: Fri Sep 5 00:20:04 2014 -0230
Committer: Jonathan Anstey <ja...@gmail.com>
Committed: Mon Sep 8 09:06:10 2014 -0230

----------------------------------------------------------------------
 .../google/drive/GoogleDriveEndpoint.java       |   2 +-
 .../drive/AbstractGoogleDriveTestSupport.java   |  22 +++
 .../google/drive/DriveAppsIntegrationTest.java  |   1 +
 .../drive/DriveChangesIntegrationTest.java      |  37 ++---
 .../drive/DriveCommentsIntegrationTest.java     | 144 ++++++-----------
 .../google/drive/DriveFilesIntegrationTest.java |  30 +---
 .../drive/DrivePermissionsIntegrationTest.java  | 117 ++------------
 .../drive/DrivePropertiesIntegrationTest.java   | 104 ++-----------
 .../drive/DriveRepliesIntegrationTest.java      | 156 +++++++------------
 .../drive/DriveRevisionsIntegrationTest.java    |  87 ++---------
 10 files changed, 180 insertions(+), 520 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/camel/blob/1acfe6e7/components/camel-google-drive/src/main/java/org/apache/camel/component/google/drive/GoogleDriveEndpoint.java
----------------------------------------------------------------------
diff --git a/components/camel-google-drive/src/main/java/org/apache/camel/component/google/drive/GoogleDriveEndpoint.java b/components/camel-google-drive/src/main/java/org/apache/camel/component/google/drive/GoogleDriveEndpoint.java
index e2b5dfa..0d22219 100644
--- a/components/camel-google-drive/src/main/java/org/apache/camel/component/google/drive/GoogleDriveEndpoint.java
+++ b/components/camel-google-drive/src/main/java/org/apache/camel/component/google/drive/GoogleDriveEndpoint.java
@@ -114,7 +114,7 @@ public class GoogleDriveEndpoint extends AbstractApiEndpoint<GoogleDriveApiName,
     
     private Drive getClient() {
         if (client == null) {
-            getClientFactory().makeClient(configuration.getClientId(), configuration.getClientSecret(), DEFAULT_SCOPES);
+            client = getClientFactory().makeClient(configuration.getClientId(), configuration.getClientSecret(), DEFAULT_SCOPES);
         }
         return client;
     }

http://git-wip-us.apache.org/repos/asf/camel/blob/1acfe6e7/components/camel-google-drive/src/test/java/org/apache/camel/component/google/drive/AbstractGoogleDriveTestSupport.java
----------------------------------------------------------------------
diff --git a/components/camel-google-drive/src/test/java/org/apache/camel/component/google/drive/AbstractGoogleDriveTestSupport.java b/components/camel-google-drive/src/test/java/org/apache/camel/component/google/drive/AbstractGoogleDriveTestSupport.java
index 1626e99..17b8ee1 100644
--- a/components/camel-google-drive/src/test/java/org/apache/camel/component/google/drive/AbstractGoogleDriveTestSupport.java
+++ b/components/camel-google-drive/src/test/java/org/apache/camel/component/google/drive/AbstractGoogleDriveTestSupport.java
@@ -31,6 +31,9 @@ import org.apache.camel.test.junit4.CamelTestSupport;
 import org.apache.camel.util.IntrospectionSupport;
 import org.junit.AfterClass;
 
+import com.google.api.client.http.FileContent;
+import com.google.api.services.drive.model.File;
+
 public abstract class AbstractGoogleDriveTestSupport extends CamelTestSupport {
 
     protected static final String CAMEL_TEST_TAG = "camel_was_here";
@@ -46,6 +49,25 @@ public abstract class AbstractGoogleDriveTestSupport extends CamelTestSupport {
     protected static String testFolderId;
     protected static String testFileId;
 
+    protected static final String TEST_UPLOAD_FILE = "src/test/resources/log4j.properties";
+    protected static final String TEST_UPLOAD_IMG = "src/test/resources/camel-box-small.png";
+    protected static final java.io.File UPLOAD_FILE = new java.io.File(TEST_UPLOAD_FILE);
+    
+    protected File uploadTestFile() {
+        File fileMetadata = new File();
+        fileMetadata.setTitle(UPLOAD_FILE.getName());
+        FileContent mediaContent = new FileContent(null, UPLOAD_FILE);
+        
+        final Map<String, Object> headers = new HashMap<String, Object>();
+        // parameter type is com.google.api.services.drive.model.File
+        headers.put("CamelGoogleDrive.content", fileMetadata);
+        // parameter type is com.google.api.client.http.AbstractInputStreamContent
+        headers.put("CamelGoogleDrive.mediaContent", mediaContent);
+
+        File result = requestBodyAndHeaders("direct://INSERT_1", null, headers);
+        return result;
+    }
+    
     @Override
     protected CamelContext createCamelContext() throws Exception {
 

http://git-wip-us.apache.org/repos/asf/camel/blob/1acfe6e7/components/camel-google-drive/src/test/java/org/apache/camel/component/google/drive/DriveAppsIntegrationTest.java
----------------------------------------------------------------------
diff --git a/components/camel-google-drive/src/test/java/org/apache/camel/component/google/drive/DriveAppsIntegrationTest.java b/components/camel-google-drive/src/test/java/org/apache/camel/component/google/drive/DriveAppsIntegrationTest.java
index a1afd8a..015dc79 100644
--- a/components/camel-google-drive/src/test/java/org/apache/camel/component/google/drive/DriveAppsIntegrationTest.java
+++ b/components/camel-google-drive/src/test/java/org/apache/camel/component/google/drive/DriveAppsIntegrationTest.java
@@ -45,6 +45,7 @@ public class DriveAppsIntegrationTest extends AbstractGoogleDriveTestSupport {
     }
 
     // TODO getting permission errors for this one
+    @Ignore    
     @Test
     public void testList() throws Exception {
         final com.google.api.services.drive.model.App result = requestBody("direct://LIST", null);

http://git-wip-us.apache.org/repos/asf/camel/blob/1acfe6e7/components/camel-google-drive/src/test/java/org/apache/camel/component/google/drive/DriveChangesIntegrationTest.java
----------------------------------------------------------------------
diff --git a/components/camel-google-drive/src/test/java/org/apache/camel/component/google/drive/DriveChangesIntegrationTest.java b/components/camel-google-drive/src/test/java/org/apache/camel/component/google/drive/DriveChangesIntegrationTest.java
index c41b84f..befa14c 100644
--- a/components/camel-google-drive/src/test/java/org/apache/camel/component/google/drive/DriveChangesIntegrationTest.java
+++ b/components/camel-google-drive/src/test/java/org/apache/camel/component/google/drive/DriveChangesIntegrationTest.java
@@ -16,18 +16,17 @@
  */
 package org.apache.camel.component.google.drive;
 
-import java.util.HashMap;
-import java.util.Map;
+import java.util.List;
 
 import org.apache.camel.builder.RouteBuilder;
-import org.junit.Ignore;
 import org.junit.Test;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
-
 import org.apache.camel.component.google.drive.internal.GoogleDriveApiCollection;
 import org.apache.camel.component.google.drive.internal.DriveChangesApiMethod;
 
+import com.google.api.services.drive.model.Change;
+
 /**
  * Test class for com.google.api.services.drive.Drive$Changes APIs.
  */
@@ -36,15 +35,20 @@ public class DriveChangesIntegrationTest extends AbstractGoogleDriveTestSupport
     private static final Logger LOG = LoggerFactory.getLogger(DriveChangesIntegrationTest.class);
     private static final String PATH_PREFIX = GoogleDriveApiCollection.getCollection().getApiName(DriveChangesApiMethod.class).getName();
 
-    // TODO provide parameter values for get
-    @Ignore
     @Test
     public void testGet() throws Exception {
-        // using String message body for single parameter "changeId"
-        final com.google.api.services.drive.Drive.Changes.Get result = requestBody("direct://GET", null);
-
-        assertNotNull("get result", result);
-        LOG.debug("get: " + result);
+        final com.google.api.services.drive.model.ChangeList list = requestBody("direct://LIST", null);
+        List<Change> items = list.getItems();
+        if (!items.isEmpty()) {
+            Change change = items.get(0);
+            Long id = change.getId();
+    
+            // using String message body for single parameter "changeId"
+            final com.google.api.services.drive.model.Change result = requestBody("direct://GET", id);
+    
+            assertNotNull("get result", result);
+            LOG.debug("get: " + result);
+        }
     }
 
     @Test
@@ -55,17 +59,6 @@ public class DriveChangesIntegrationTest extends AbstractGoogleDriveTestSupport
         LOG.debug("list: " + result);
     }
 
-    // TODO provide parameter values for watch
-    @Ignore
-    @Test
-    public void testWatch() throws Exception {
-        // using com.google.api.services.drive.model.Channel message body for single parameter "contentChannel"
-        final com.google.api.services.drive.Drive.Changes.Watch result = requestBody("direct://WATCH", null);
-
-        assertNotNull("watch result", result);
-        LOG.debug("watch: " + result);
-    }
-
     @Override
     protected RouteBuilder createRouteBuilder() throws Exception {
         return new RouteBuilder() {

http://git-wip-us.apache.org/repos/asf/camel/blob/1acfe6e7/components/camel-google-drive/src/test/java/org/apache/camel/component/google/drive/DriveCommentsIntegrationTest.java
----------------------------------------------------------------------
diff --git a/components/camel-google-drive/src/test/java/org/apache/camel/component/google/drive/DriveCommentsIntegrationTest.java b/components/camel-google-drive/src/test/java/org/apache/camel/component/google/drive/DriveCommentsIntegrationTest.java
index 0ebd0f8..f2b0c34 100644
--- a/components/camel-google-drive/src/test/java/org/apache/camel/component/google/drive/DriveCommentsIntegrationTest.java
+++ b/components/camel-google-drive/src/test/java/org/apache/camel/component/google/drive/DriveCommentsIntegrationTest.java
@@ -20,7 +20,6 @@ import java.util.HashMap;
 import java.util.Map;
 
 import org.apache.camel.builder.RouteBuilder;
-import org.junit.Ignore;
 import org.junit.Test;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
@@ -28,131 +27,78 @@ import org.apache.camel.component.google.drive.internal.DriveFilesApiMethod;
 import org.apache.camel.component.google.drive.internal.GoogleDriveApiCollection;
 import org.apache.camel.component.google.drive.internal.DriveCommentsApiMethod;
 
-import com.google.api.client.http.FileContent;
+import com.google.api.services.drive.model.Comment;
 import com.google.api.services.drive.model.File;
 
 /**
  * Test class for com.google.api.services.drive.Drive$Comments APIs.
- * TODO Move the file to src/test/java, populate parameter values, and remove @Ignore annotations.
- * The class source won't be generated again if the generator MOJO finds it under src/test/java.
  */
 public class DriveCommentsIntegrationTest extends AbstractGoogleDriveTestSupport {
 
     private static final Logger LOG = LoggerFactory.getLogger(DriveCommentsIntegrationTest.class);
     private static final String PATH_PREFIX = GoogleDriveApiCollection.getCollection().getApiName(DriveCommentsApiMethod.class).getName();
-    private static final String TEST_UPLOAD_FILE = "src/test/resources/log4j.properties";
-    private static final String TEST_UPLOAD_IMG = "src/test/resources/camel-box-small.png";
-    private static final java.io.File UPLOAD_FILE = new java.io.File(TEST_UPLOAD_FILE);
     
-    // TODO provide parameter values for delete
-    @Ignore
     @Test
-    public void testDelete() throws Exception {
-        final Map<String, Object> headers = new HashMap<String, Object>();
-        // parameter type is String
-        headers.put("CamelGoogleDrive.fileId", null);
+    public void testComment() throws Exception {
+        // 1. create test file
+        File testFile = uploadTestFile();
+        String fileId = testFile.getId();
+        
+        // 2. comment on that file
+        Map<String, Object> headers = new HashMap<String, Object>();
         // parameter type is String
-        headers.put("CamelGoogleDrive.commentId", null);
+        headers.put("CamelGoogleDrive.fileId", fileId);
+        // parameter type is com.google.api.services.drive.model.Comment
+        com.google.api.services.drive.model.Comment comment = new com.google.api.services.drive.model.Comment();
+        comment.setContent("Camel rocks!");
+        headers.put("CamelGoogleDrive.content", comment);
 
-        final com.google.api.services.drive.Drive.Comments.Delete result = requestBodyAndHeaders("direct://DELETE", null, headers);
+        requestBodyAndHeaders("direct://INSERT", null, headers);
 
-        assertNotNull("delete result", result);
-        LOG.debug("delete: " + result);
-    }
+        // 3. get a list of comments on the file
+        // using String message body for single parameter "fileId"
+        com.google.api.services.drive.model.CommentList result1 = requestBody("direct://LIST", fileId);
 
-    // TODO provide parameter values for get
-    @Ignore
-    @Test
-    public void testGet() throws Exception {
-        final Map<String, Object> headers = new HashMap<String, Object>();
-        // parameter type is String
-        headers.put("CamelGoogleDrive.fileId", null);
+        assertNotNull(result1.get("items"));
+        LOG.debug("list: " + result1);
+        
+        Comment comment2 = result1.getItems().get(0);
+        
+        // 4. now try and get that comment 
+        headers = new HashMap<String, Object>();
         // parameter type is String
-        headers.put("CamelGoogleDrive.commentId", null);
-
-        final com.google.api.services.drive.Drive.Comments.Get result = requestBodyAndHeaders("direct://GET", null, headers);
-
-        assertNotNull("get result", result);
-        LOG.debug("get: " + result);
-    }
-
-    // TODO provide parameter values for insert
-    @Ignore
-    @Test
-    public void testInsert() throws Exception {
-        final Map<String, Object> headers = new HashMap<String, Object>();
+        headers.put("CamelGoogleDrive.fileId", fileId);
         // parameter type is String
-        headers.put("CamelGoogleDrive.fileId", null);
-        // parameter type is com.google.api.services.drive.model.Comment
-        headers.put("CamelGoogleDrive.content", null);
+        headers.put("CamelGoogleDrive.commentId", comment2.getCommentId());
 
-        final com.google.api.services.drive.Drive.Comments.Insert result = requestBodyAndHeaders("direct://INSERT", null, headers);
-
-        assertNotNull("insert result", result);
-        LOG.debug("insert: " + result);
-    }
+        final com.google.api.services.drive.model.Comment result3 = requestBodyAndHeaders("direct://GET", null, headers);
 
-    private File uploadTestFile() {
-        File fileMetadata = new File();
-        fileMetadata.setTitle(UPLOAD_FILE.getName());
-        FileContent mediaContent = new FileContent(null, UPLOAD_FILE);
+        assertNotNull("get result", result3);
         
-        final Map<String, Object> headers = new HashMap<String, Object>();
-        // parameter type is com.google.api.services.drive.model.File
-        headers.put("CamelGoogleDrive.content", fileMetadata);
-        // parameter type is com.google.api.client.http.AbstractInputStreamContent
-        headers.put("CamelGoogleDrive.mediaContent", mediaContent);
-
-        File result = requestBodyAndHeaders("direct://INSERT_1", null, headers);
-        return result;
-    }
-    
-    @Test
-    public void testList() throws Exception {
-        File testFile = uploadTestFile();
-        String fileId = testFile.getId();
+        // 5. delete the comment
         
-        // using String message body for single parameter "fileId"
-        final com.google.api.services.drive.model.CommentList result = requestBody("direct://LIST", fileId);
-
-        assertNotNull("list result", result);
-        LOG.debug("list: " + result);
-    }
-
-    // TODO provide parameter values for patch
-    @Ignore
-    @Test
-    public void testPatch() throws Exception {
-        final Map<String, Object> headers = new HashMap<String, Object>();
+        headers = new HashMap<String, Object>();
         // parameter type is String
-        headers.put("CamelGoogleDrive.fileId", null);
+        headers.put("CamelGoogleDrive.fileId", fileId);
         // parameter type is String
-        headers.put("CamelGoogleDrive.commentId", null);
-        // parameter type is com.google.api.services.drive.model.Comment
-        headers.put("CamelGoogleDrive.content", null);
+        headers.put("CamelGoogleDrive.commentId", comment2.getCommentId());
 
-        final com.google.api.services.drive.Drive.Comments.Patch result = requestBodyAndHeaders("direct://PATCH", null, headers);
+        requestBodyAndHeaders("direct://DELETE", null, headers);
 
-        assertNotNull("patch result", result);
-        LOG.debug("patch: " + result);
-    }
-
-    // TODO provide parameter values for update
-    @Ignore
-    @Test
-    public void testUpdate() throws Exception {
-        final Map<String, Object> headers = new HashMap<String, Object>();
+        // 6. ensure the comment is gone
+        
+        headers = new HashMap<String, Object>();
         // parameter type is String
-        headers.put("CamelGoogleDrive.fileId", null);
+        headers.put("CamelGoogleDrive.fileId", fileId);
         // parameter type is String
-        headers.put("CamelGoogleDrive.commentId", null);
-        // parameter type is com.google.api.services.drive.model.Comment
-        headers.put("CamelGoogleDrive.content", null);
-
-        final com.google.api.services.drive.Drive.Comments.Update result = requestBodyAndHeaders("direct://UPDATE", null, headers);
-
-        assertNotNull("update result", result);
-        LOG.debug("update: " + result);
+        headers.put("CamelGoogleDrive.commentId", comment2.getCommentId());
+
+        try {
+            final com.google.api.services.drive.model.Comment result4 = requestBodyAndHeaders("direct://GET", null, headers);
+            assertTrue("Should have thrown an exception.", false);
+        } catch (Exception e) {
+            e.printStackTrace();
+        }
     }
 
     @Override

http://git-wip-us.apache.org/repos/asf/camel/blob/1acfe6e7/components/camel-google-drive/src/test/java/org/apache/camel/component/google/drive/DriveFilesIntegrationTest.java
----------------------------------------------------------------------
diff --git a/components/camel-google-drive/src/test/java/org/apache/camel/component/google/drive/DriveFilesIntegrationTest.java b/components/camel-google-drive/src/test/java/org/apache/camel/component/google/drive/DriveFilesIntegrationTest.java
index 039ea64..bf5c216 100644
--- a/components/camel-google-drive/src/test/java/org/apache/camel/component/google/drive/DriveFilesIntegrationTest.java
+++ b/components/camel-google-drive/src/test/java/org/apache/camel/component/google/drive/DriveFilesIntegrationTest.java
@@ -39,9 +39,6 @@ public class DriveFilesIntegrationTest extends AbstractGoogleDriveTestSupport {
 
     private static final Logger LOG = LoggerFactory.getLogger(DriveFilesIntegrationTest.class);
     private static final String PATH_PREFIX = GoogleDriveApiCollection.getCollection().getApiName(DriveFilesApiMethod.class).getName();
-    private static final String TEST_UPLOAD_FILE = "src/test/resources/log4j.properties";
-    private static final String TEST_UPLOAD_IMG = "src/test/resources/camel-box-small.png";
-    private static final java.io.File UPLOAD_FILE = new java.io.File(TEST_UPLOAD_FILE);
     
     @Test
     public void testCopy() throws Exception {
@@ -64,7 +61,7 @@ public class DriveFilesIntegrationTest extends AbstractGoogleDriveTestSupport {
         LOG.debug("copy: " + result);
     }
 
-    @Test
+    @Test    
     public void testDelete() throws Exception {
         File testFile = uploadTestFile();
         String fileId = testFile.getId();
@@ -72,9 +69,13 @@ public class DriveFilesIntegrationTest extends AbstractGoogleDriveTestSupport {
         // using String message body for single parameter "fileId"
         sendBody("direct://DELETE", fileId);
 
-        // the file should be gone now
-        final File result = requestBody("direct://GET", fileId);
-        assertNull("get result", result);
+        try {
+            // the file should be gone now
+            final File result = requestBody("direct://GET", fileId);
+            assertTrue("Should have not found deleted file.", false);
+        } catch (Exception e) {               
+            e.printStackTrace();
+        }        
     }
 
     @Test
@@ -99,21 +100,6 @@ public class DriveFilesIntegrationTest extends AbstractGoogleDriveTestSupport {
         LOG.debug("insert: " + result);
     }
 
-    private File uploadTestFile() {
-        File fileMetadata = new File();
-        fileMetadata.setTitle(UPLOAD_FILE.getName());
-        FileContent mediaContent = new FileContent(null, UPLOAD_FILE);
-        
-        final Map<String, Object> headers = new HashMap<String, Object>();
-        // parameter type is com.google.api.services.drive.model.File
-        headers.put("CamelGoogleDrive.content", fileMetadata);
-        // parameter type is com.google.api.client.http.AbstractInputStreamContent
-        headers.put("CamelGoogleDrive.mediaContent", mediaContent);
-
-        File result = requestBodyAndHeaders("direct://INSERT_1", null, headers);
-        return result;
-    }
-
     @Test
     public void testInsert_1() throws Exception {        
         File result = uploadTestFile();

http://git-wip-us.apache.org/repos/asf/camel/blob/1acfe6e7/components/camel-google-drive/src/test/java/org/apache/camel/component/google/drive/DrivePermissionsIntegrationTest.java
----------------------------------------------------------------------
diff --git a/components/camel-google-drive/src/test/java/org/apache/camel/component/google/drive/DrivePermissionsIntegrationTest.java b/components/camel-google-drive/src/test/java/org/apache/camel/component/google/drive/DrivePermissionsIntegrationTest.java
index cc1068d..0d08ace 100644
--- a/components/camel-google-drive/src/test/java/org/apache/camel/component/google/drive/DrivePermissionsIntegrationTest.java
+++ b/components/camel-google-drive/src/test/java/org/apache/camel/component/google/drive/DrivePermissionsIntegrationTest.java
@@ -16,134 +16,35 @@
  */
 package org.apache.camel.component.google.drive;
 
-import java.util.HashMap;
-import java.util.Map;
-
 import org.apache.camel.builder.RouteBuilder;
-import org.junit.Ignore;
 import org.junit.Test;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
-
 import org.apache.camel.component.google.drive.internal.GoogleDriveApiCollection;
 import org.apache.camel.component.google.drive.internal.DrivePermissionsApiMethod;
 
+import com.google.api.services.drive.model.File;
+
 /**
  * Test class for com.google.api.services.drive.Drive$Permissions APIs.
- * TODO Move the file to src/test/java, populate parameter values, and remove @Ignore annotations.
- * The class source won't be generated again if the generator MOJO finds it under src/test/java.
  */
 public class DrivePermissionsIntegrationTest extends AbstractGoogleDriveTestSupport {
 
     private static final Logger LOG = LoggerFactory.getLogger(DrivePermissionsIntegrationTest.class);
     private static final String PATH_PREFIX = GoogleDriveApiCollection.getCollection().getApiName(DrivePermissionsApiMethod.class).getName();
-
-    // TODO provide parameter values for delete
-    @Ignore
-    @Test
-    public void testDelete() throws Exception {
-        final Map<String, Object> headers = new HashMap<String, Object>();
-        // parameter type is String
-        headers.put("CamelGoogleDrive.fileId", null);
-        // parameter type is String
-        headers.put("CamelGoogleDrive.permissionId", null);
-
-        final com.google.api.services.drive.Drive.Permissions.Delete result = requestBodyAndHeaders("direct://DELETE", null, headers);
-
-        assertNotNull("delete result", result);
-        LOG.debug("delete: " + result);
-    }
-
-    // TODO provide parameter values for get
-    @Ignore
-    @Test
-    public void testGet() throws Exception {
-        final Map<String, Object> headers = new HashMap<String, Object>();
-        // parameter type is String
-        headers.put("CamelGoogleDrive.fileId", null);
-        // parameter type is String
-        headers.put("CamelGoogleDrive.permissionId", null);
-
-        final com.google.api.services.drive.Drive.Permissions.Get result = requestBodyAndHeaders("direct://GET", null, headers);
-
-        assertNotNull("get result", result);
-        LOG.debug("get: " + result);
-    }
-
-    // TODO provide parameter values for getIdForEmail
-    @Ignore
-    @Test
-    public void testGetIdForEmail() throws Exception {
-        // using String message body for single parameter "email"
-        final com.google.api.services.drive.Drive.Permissions.GetIdForEmail result = requestBody("direct://GETIDFOREMAIL", null);
-
-        assertNotNull("getIdForEmail result", result);
-        LOG.debug("getIdForEmail: " + result);
-    }
-
-    // TODO provide parameter values for insert
-    @Ignore
-    @Test
-    public void testInsert() throws Exception {
-        final Map<String, Object> headers = new HashMap<String, Object>();
-        // parameter type is String
-        headers.put("CamelGoogleDrive.fileId", null);
-        // parameter type is com.google.api.services.drive.model.Permission
-        headers.put("CamelGoogleDrive.content", null);
-
-        final com.google.api.services.drive.Drive.Permissions.Insert result = requestBodyAndHeaders("direct://INSERT", null, headers);
-
-        assertNotNull("insert result", result);
-        LOG.debug("insert: " + result);
-    }
-
-    // TODO provide parameter values for list
-    @Ignore
+    
     @Test
     public void testList() throws Exception {
+        File testFile = uploadTestFile();
+        String fileId = testFile.getId();
+        
         // using String message body for single parameter "fileId"
-        final com.google.api.services.drive.Drive.Permissions.List result = requestBody("direct://LIST", null);
+        final com.google.api.services.drive.model.PermissionList result = requestBody("direct://LIST", fileId);
 
         assertNotNull("list result", result);
         LOG.debug("list: " + result);
     }
 
-    // TODO provide parameter values for patch
-    @Ignore
-    @Test
-    public void testPatch() throws Exception {
-        final Map<String, Object> headers = new HashMap<String, Object>();
-        // parameter type is String
-        headers.put("CamelGoogleDrive.fileId", null);
-        // parameter type is String
-        headers.put("CamelGoogleDrive.permissionId", null);
-        // parameter type is com.google.api.services.drive.model.Permission
-        headers.put("CamelGoogleDrive.content", null);
-
-        final com.google.api.services.drive.Drive.Permissions.Patch result = requestBodyAndHeaders("direct://PATCH", null, headers);
-
-        assertNotNull("patch result", result);
-        LOG.debug("patch: " + result);
-    }
-
-    // TODO provide parameter values for update
-    @Ignore
-    @Test
-    public void testUpdate() throws Exception {
-        final Map<String, Object> headers = new HashMap<String, Object>();
-        // parameter type is String
-        headers.put("CamelGoogleDrive.fileId", null);
-        // parameter type is String
-        headers.put("CamelGoogleDrive.permissionId", null);
-        // parameter type is com.google.api.services.drive.model.Permission
-        headers.put("CamelGoogleDrive.content", null);
-
-        final com.google.api.services.drive.Drive.Permissions.Update result = requestBodyAndHeaders("direct://UPDATE", null, headers);
-
-        assertNotNull("update result", result);
-        LOG.debug("update: " + result);
-    }
-
     @Override
     protected RouteBuilder createRouteBuilder() throws Exception {
         return new RouteBuilder() {
@@ -175,6 +76,10 @@ public class DrivePermissionsIntegrationTest extends AbstractGoogleDriveTestSupp
                 // test route for update
                 from("direct://UPDATE")
                   .to("google-drive://" + PATH_PREFIX + "/update");
+                
+                // just used to upload file for test
+                from("direct://INSERT_1")
+                  .to("google-drive://drive-files/insert");
 
             }
         };

http://git-wip-us.apache.org/repos/asf/camel/blob/1acfe6e7/components/camel-google-drive/src/test/java/org/apache/camel/component/google/drive/DrivePropertiesIntegrationTest.java
----------------------------------------------------------------------
diff --git a/components/camel-google-drive/src/test/java/org/apache/camel/component/google/drive/DrivePropertiesIntegrationTest.java b/components/camel-google-drive/src/test/java/org/apache/camel/component/google/drive/DrivePropertiesIntegrationTest.java
index 63e9cc6..a1e066c 100644
--- a/components/camel-google-drive/src/test/java/org/apache/camel/component/google/drive/DrivePropertiesIntegrationTest.java
+++ b/components/camel-google-drive/src/test/java/org/apache/camel/component/google/drive/DrivePropertiesIntegrationTest.java
@@ -16,122 +16,35 @@
  */
 package org.apache.camel.component.google.drive;
 
-import java.util.HashMap;
-import java.util.Map;
-
 import org.apache.camel.builder.RouteBuilder;
-import org.junit.Ignore;
 import org.junit.Test;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
-
 import org.apache.camel.component.google.drive.internal.GoogleDriveApiCollection;
 import org.apache.camel.component.google.drive.internal.DrivePropertiesApiMethod;
 
+import com.google.api.services.drive.model.File;
+
 /**
  * Test class for com.google.api.services.drive.Drive$Properties APIs.
- * TODO Move the file to src/test/java, populate parameter values, and remove @Ignore annotations.
- * The class source won't be generated again if the generator MOJO finds it under src/test/java.
  */
 public class DrivePropertiesIntegrationTest extends AbstractGoogleDriveTestSupport {
 
     private static final Logger LOG = LoggerFactory.getLogger(DrivePropertiesIntegrationTest.class);
     private static final String PATH_PREFIX = GoogleDriveApiCollection.getCollection().getApiName(DrivePropertiesApiMethod.class).getName();
 
-    // TODO provide parameter values for delete
-    @Ignore
-    @Test
-    public void testDelete() throws Exception {
-        final Map<String, Object> headers = new HashMap<String, Object>();
-        // parameter type is String
-        headers.put("CamelGoogleDrive.fileId", null);
-        // parameter type is String
-        headers.put("CamelGoogleDrive.propertyKey", null);
-
-        final com.google.api.services.drive.Drive.Properties.Delete result = requestBodyAndHeaders("direct://DELETE", null, headers);
-
-        assertNotNull("delete result", result);
-        LOG.debug("delete: " + result);
-    }
-
-    // TODO provide parameter values for get
-    @Ignore
-    @Test
-    public void testGet() throws Exception {
-        final Map<String, Object> headers = new HashMap<String, Object>();
-        // parameter type is String
-        headers.put("CamelGoogleDrive.fileId", null);
-        // parameter type is String
-        headers.put("CamelGoogleDrive.propertyKey", null);
-
-        final com.google.api.services.drive.Drive.Properties.Get result = requestBodyAndHeaders("direct://GET", null, headers);
-
-        assertNotNull("get result", result);
-        LOG.debug("get: " + result);
-    }
-
-    // TODO provide parameter values for insert
-    @Ignore
-    @Test
-    public void testInsert() throws Exception {
-        final Map<String, Object> headers = new HashMap<String, Object>();
-        // parameter type is String
-        headers.put("CamelGoogleDrive.fileId", null);
-        // parameter type is com.google.api.services.drive.model.Property
-        headers.put("CamelGoogleDrive.content", null);
-
-        final com.google.api.services.drive.Drive.Properties.Insert result = requestBodyAndHeaders("direct://INSERT", null, headers);
-
-        assertNotNull("insert result", result);
-        LOG.debug("insert: " + result);
-    }
-
-    // TODO provide parameter values for list
-    @Ignore
     @Test
     public void testList() throws Exception {
+        File testFile = uploadTestFile();
+        String fileId = testFile.getId();  
+        
         // using String message body for single parameter "fileId"
-        final com.google.api.services.drive.Drive.Properties.List result = requestBody("direct://LIST", null);
+        final com.google.api.services.drive.model.PropertyList result = requestBody("direct://LIST", fileId);
 
         assertNotNull("list result", result);
         LOG.debug("list: " + result);
     }
 
-    // TODO provide parameter values for patch
-    @Ignore
-    @Test
-    public void testPatch() throws Exception {
-        final Map<String, Object> headers = new HashMap<String, Object>();
-        // parameter type is String
-        headers.put("CamelGoogleDrive.fileId", null);
-        // parameter type is String
-        headers.put("CamelGoogleDrive.propertyKey", null);
-        // parameter type is com.google.api.services.drive.model.Property
-        headers.put("CamelGoogleDrive.content", null);
-
-        final com.google.api.services.drive.Drive.Properties.Patch result = requestBodyAndHeaders("direct://PATCH", null, headers);
-
-        assertNotNull("patch result", result);
-        LOG.debug("patch: " + result);
-    }
-
-    // TODO provide parameter values for update
-    @Ignore
-    @Test
-    public void testUpdate() throws Exception {
-        final Map<String, Object> headers = new HashMap<String, Object>();
-        // parameter type is String
-        headers.put("CamelGoogleDrive.fileId", null);
-        // parameter type is String
-        headers.put("CamelGoogleDrive.propertyKey", null);
-        // parameter type is com.google.api.services.drive.model.Property
-        headers.put("CamelGoogleDrive.content", null);
-
-        final com.google.api.services.drive.Drive.Properties.Update result = requestBodyAndHeaders("direct://UPDATE", null, headers);
-
-        assertNotNull("update result", result);
-        LOG.debug("update: " + result);
-    }
 
     @Override
     protected RouteBuilder createRouteBuilder() throws Exception {
@@ -160,7 +73,10 @@ public class DrivePropertiesIntegrationTest extends AbstractGoogleDriveTestSuppo
                 // test route for update
                 from("direct://UPDATE")
                   .to("google-drive://" + PATH_PREFIX + "/update");
-
+                
+                // just used to upload file for test
+                from("direct://INSERT_1")
+                  .to("google-drive://drive-files/insert");
             }
         };
     }

http://git-wip-us.apache.org/repos/asf/camel/blob/1acfe6e7/components/camel-google-drive/src/test/java/org/apache/camel/component/google/drive/DriveRepliesIntegrationTest.java
----------------------------------------------------------------------
diff --git a/components/camel-google-drive/src/test/java/org/apache/camel/component/google/drive/DriveRepliesIntegrationTest.java b/components/camel-google-drive/src/test/java/org/apache/camel/component/google/drive/DriveRepliesIntegrationTest.java
index acee830..26c526f 100644
--- a/components/camel-google-drive/src/test/java/org/apache/camel/component/google/drive/DriveRepliesIntegrationTest.java
+++ b/components/camel-google-drive/src/test/java/org/apache/camel/component/google/drive/DriveRepliesIntegrationTest.java
@@ -24,10 +24,13 @@ import org.junit.Ignore;
 import org.junit.Test;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
-
+import org.apache.camel.component.google.drive.internal.DriveFilesApiMethod;
 import org.apache.camel.component.google.drive.internal.GoogleDriveApiCollection;
 import org.apache.camel.component.google.drive.internal.DriveRepliesApiMethod;
 
+import com.google.api.services.drive.model.Comment;
+import com.google.api.services.drive.model.File;
+
 /**
  * Test class for com.google.api.services.drive.Drive$Replies APIs.
  * TODO Move the file to src/test/java, populate parameter values, and remove @Ignore annotations.
@@ -38,114 +41,59 @@ public class DriveRepliesIntegrationTest extends AbstractGoogleDriveTestSupport
     private static final Logger LOG = LoggerFactory.getLogger(DriveRepliesIntegrationTest.class);
     private static final String PATH_PREFIX = GoogleDriveApiCollection.getCollection().getApiName(DriveRepliesApiMethod.class).getName();
 
-    // TODO provide parameter values for delete
-    @Ignore
-    @Test
-    public void testDelete() throws Exception {
-        final Map<String, Object> headers = new HashMap<String, Object>();
-        // parameter type is String
-        headers.put("CamelGoogleDrive.fileId", null);
-        // parameter type is String
-        headers.put("CamelGoogleDrive.commentId", null);
-        // parameter type is String
-        headers.put("CamelGoogleDrive.replyId", null);
-
-        final com.google.api.services.drive.Drive.Replies.Delete result = requestBodyAndHeaders("direct://DELETE", null, headers);
-
-        assertNotNull("delete result", result);
-        LOG.debug("delete: " + result);
-    }
-
-    // TODO provide parameter values for get
-    @Ignore
-    @Test
-    public void testGet() throws Exception {
-        final Map<String, Object> headers = new HashMap<String, Object>();
-        // parameter type is String
-        headers.put("CamelGoogleDrive.fileId", null);
-        // parameter type is String
-        headers.put("CamelGoogleDrive.commentId", null);
-        // parameter type is String
-        headers.put("CamelGoogleDrive.replyId", null);
-
-        final com.google.api.services.drive.Drive.Replies.Get result = requestBodyAndHeaders("direct://GET", null, headers);
-
-        assertNotNull("get result", result);
-        LOG.debug("get: " + result);
-    }
-
-    // TODO provide parameter values for insert
-    @Ignore
     @Test
-    public void testInsert() throws Exception {
-        final Map<String, Object> headers = new HashMap<String, Object>();
-        // parameter type is String
-        headers.put("CamelGoogleDrive.fileId", null);
-        // parameter type is String
-        headers.put("CamelGoogleDrive.commentId", null);
+    public void testReplyToComment() throws Exception {
+        // 1. create test file
+        File testFile = uploadTestFile();
+        String fileId = testFile.getId();
+        
+        // 2. comment on that file
+        Map<String, Object> headers = new HashMap<String, Object>();
+        // parameter type is String
+        headers.put("CamelGoogleDrive.fileId", fileId);
+        // parameter type is com.google.api.services.drive.model.Comment
+        com.google.api.services.drive.model.Comment comment = new com.google.api.services.drive.model.Comment();
+        comment.setContent("Camel rocks!");
+        headers.put("CamelGoogleDrive.content", comment);
+
+        requestBodyAndHeaders("direct://INSERT_COMMENT", null, headers);
+
+        // 3. get a list of comments on the file
+        // using String message body for single parameter "fileId"
+        com.google.api.services.drive.model.CommentList result1 = requestBody("direct://LIST_COMMENTS", fileId);
+
+        assertNotNull(result1.get("items"));
+        LOG.debug("list: " + result1);
+        
+        Comment comment2 = result1.getItems().get(0);
+        String commentId = comment2.getCommentId();
+        
+        // 4. add reply
+        headers = new HashMap<String, Object>();
+        // parameter type is String
+        headers.put("CamelGoogleDrive.fileId", fileId);
+        // parameter type is String
+        headers.put("CamelGoogleDrive.commentId", commentId);
         // parameter type is com.google.api.services.drive.model.CommentReply
-        headers.put("CamelGoogleDrive.content", null);
+        com.google.api.services.drive.model.CommentReply reply = new com.google.api.services.drive.model.CommentReply();
+        reply.setContent("I know :-)");
+        headers.put("CamelGoogleDrive.content", reply);
 
-        final com.google.api.services.drive.Drive.Replies.Insert result = requestBodyAndHeaders("direct://INSERT", null, headers);
-
-        assertNotNull("insert result", result);
-        LOG.debug("insert: " + result);
-    }
+        requestBodyAndHeaders("direct://INSERT", null, headers);
 
-    // TODO provide parameter values for list
-    @Ignore
-    @Test
-    public void testList() throws Exception {
-        final Map<String, Object> headers = new HashMap<String, Object>();
+        // 5. list replies on comment to file
+        
+        headers = new HashMap<String, Object>();
         // parameter type is String
-        headers.put("CamelGoogleDrive.fileId", null);
+        headers.put("CamelGoogleDrive.fileId", fileId);
         // parameter type is String
-        headers.put("CamelGoogleDrive.commentId", null);
+        headers.put("CamelGoogleDrive.commentId", commentId);
 
-        final com.google.api.services.drive.Drive.Replies.List result = requestBodyAndHeaders("direct://LIST", null, headers);
+        final com.google.api.services.drive.model.CommentReplyList result = requestBodyAndHeaders("direct://LIST", null, headers);
 
         assertNotNull("list result", result);
         LOG.debug("list: " + result);
-    }
 
-    // TODO provide parameter values for patch
-    @Ignore
-    @Test
-    public void testPatch() throws Exception {
-        final Map<String, Object> headers = new HashMap<String, Object>();
-        // parameter type is String
-        headers.put("CamelGoogleDrive.fileId", null);
-        // parameter type is String
-        headers.put("CamelGoogleDrive.commentId", null);
-        // parameter type is String
-        headers.put("CamelGoogleDrive.replyId", null);
-        // parameter type is com.google.api.services.drive.model.CommentReply
-        headers.put("CamelGoogleDrive.content", null);
-
-        final com.google.api.services.drive.Drive.Replies.Patch result = requestBodyAndHeaders("direct://PATCH", null, headers);
-
-        assertNotNull("patch result", result);
-        LOG.debug("patch: " + result);
-    }
-
-    // TODO provide parameter values for update
-    @Ignore
-    @Test
-    public void testUpdate() throws Exception {
-        final Map<String, Object> headers = new HashMap<String, Object>();
-        // parameter type is String
-        headers.put("CamelGoogleDrive.fileId", null);
-        // parameter type is String
-        headers.put("CamelGoogleDrive.commentId", null);
-        // parameter type is String
-        headers.put("CamelGoogleDrive.replyId", null);
-        // parameter type is com.google.api.services.drive.model.CommentReply
-        headers.put("CamelGoogleDrive.content", null);
-
-        final com.google.api.services.drive.Drive.Replies.Update result = requestBodyAndHeaders("direct://UPDATE", null, headers);
-
-        assertNotNull("update result", result);
-        LOG.debug("update: " + result);
     }
 
     @Override
@@ -175,6 +123,18 @@ public class DriveRepliesIntegrationTest extends AbstractGoogleDriveTestSupport
                 // test route for update
                 from("direct://UPDATE")
                   .to("google-drive://" + PATH_PREFIX + "/update");
+                
+                // just used to upload file for test
+                from("direct://INSERT_1")
+                  .to("google-drive://" + GoogleDriveApiCollection.getCollection().getApiName(DriveFilesApiMethod.class).getName() + "/insert");
+                
+                // test route for insert
+                from("direct://INSERT_COMMENT")
+                  .to("google-drive://drive-comments/insert");
+
+                // test route for list
+                from("direct://LIST_COMMENTS")
+                  .to("google-drive://drive-comments/list?inBody=fileId");
 
             }
         };

http://git-wip-us.apache.org/repos/asf/camel/blob/1acfe6e7/components/camel-google-drive/src/test/java/org/apache/camel/component/google/drive/DriveRevisionsIntegrationTest.java
----------------------------------------------------------------------
diff --git a/components/camel-google-drive/src/test/java/org/apache/camel/component/google/drive/DriveRevisionsIntegrationTest.java b/components/camel-google-drive/src/test/java/org/apache/camel/component/google/drive/DriveRevisionsIntegrationTest.java
index 5a41004..22ab865 100644
--- a/components/camel-google-drive/src/test/java/org/apache/camel/component/google/drive/DriveRevisionsIntegrationTest.java
+++ b/components/camel-google-drive/src/test/java/org/apache/camel/component/google/drive/DriveRevisionsIntegrationTest.java
@@ -16,107 +16,35 @@
  */
 package org.apache.camel.component.google.drive;
 
-import java.util.HashMap;
-import java.util.Map;
-
 import org.apache.camel.builder.RouteBuilder;
-import org.junit.Ignore;
 import org.junit.Test;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
-
 import org.apache.camel.component.google.drive.internal.GoogleDriveApiCollection;
 import org.apache.camel.component.google.drive.internal.DriveRevisionsApiMethod;
 
+import com.google.api.services.drive.model.File;
+
 /**
  * Test class for com.google.api.services.drive.Drive$Revisions APIs.
- * TODO Move the file to src/test/java, populate parameter values, and remove @Ignore annotations.
- * The class source won't be generated again if the generator MOJO finds it under src/test/java.
  */
 public class DriveRevisionsIntegrationTest extends AbstractGoogleDriveTestSupport {
 
     private static final Logger LOG = LoggerFactory.getLogger(DriveRevisionsIntegrationTest.class);
     private static final String PATH_PREFIX = GoogleDriveApiCollection.getCollection().getApiName(DriveRevisionsApiMethod.class).getName();
 
-    // TODO provide parameter values for delete
-    @Ignore
-    @Test
-    public void testDelete() throws Exception {
-        final Map<String, Object> headers = new HashMap<String, Object>();
-        // parameter type is String
-        headers.put("CamelGoogleDrive.fileId", null);
-        // parameter type is String
-        headers.put("CamelGoogleDrive.revisionId", null);
-
-        final com.google.api.services.drive.Drive.Revisions.Delete result = requestBodyAndHeaders("direct://DELETE", null, headers);
-
-        assertNotNull("delete result", result);
-        LOG.debug("delete: " + result);
-    }
-
-    // TODO provide parameter values for get
-    @Ignore
-    @Test
-    public void testGet() throws Exception {
-        final Map<String, Object> headers = new HashMap<String, Object>();
-        // parameter type is String
-        headers.put("CamelGoogleDrive.fileId", null);
-        // parameter type is String
-        headers.put("CamelGoogleDrive.revisionId", null);
-
-        final com.google.api.services.drive.Drive.Revisions.Get result = requestBodyAndHeaders("direct://GET", null, headers);
-
-        assertNotNull("get result", result);
-        LOG.debug("get: " + result);
-    }
-
-    // TODO provide parameter values for list
-    @Ignore
     @Test
     public void testList() throws Exception {
+        File testFile = uploadTestFile();
+        String fileId = testFile.getId();
+        
         // using String message body for single parameter "fileId"
-        final com.google.api.services.drive.Drive.Revisions.List result = requestBody("direct://LIST", null);
+        final com.google.api.services.drive.model.RevisionList result = requestBody("direct://LIST", fileId);
 
         assertNotNull("list result", result);
         LOG.debug("list: " + result);
     }
 
-    // TODO provide parameter values for patch
-    @Ignore
-    @Test
-    public void testPatch() throws Exception {
-        final Map<String, Object> headers = new HashMap<String, Object>();
-        // parameter type is String
-        headers.put("CamelGoogleDrive.fileId", null);
-        // parameter type is String
-        headers.put("CamelGoogleDrive.revisionId", null);
-        // parameter type is com.google.api.services.drive.model.Revision
-        headers.put("CamelGoogleDrive.content", null);
-
-        final com.google.api.services.drive.Drive.Revisions.Patch result = requestBodyAndHeaders("direct://PATCH", null, headers);
-
-        assertNotNull("patch result", result);
-        LOG.debug("patch: " + result);
-    }
-
-    // TODO provide parameter values for update
-    @Ignore
-    @Test
-    public void testUpdate() throws Exception {
-        final Map<String, Object> headers = new HashMap<String, Object>();
-        // parameter type is String
-        headers.put("CamelGoogleDrive.fileId", null);
-        // parameter type is String
-        headers.put("CamelGoogleDrive.revisionId", null);
-        // parameter type is com.google.api.services.drive.model.Revision
-        headers.put("CamelGoogleDrive.content", null);
-
-        final com.google.api.services.drive.Drive.Revisions.Update result = requestBodyAndHeaders("direct://UPDATE", null, headers);
-
-        assertNotNull("update result", result);
-        LOG.debug("update: " + result);
-    }
-
     @Override
     protected RouteBuilder createRouteBuilder() throws Exception {
         return new RouteBuilder() {
@@ -141,6 +69,9 @@ public class DriveRevisionsIntegrationTest extends AbstractGoogleDriveTestSuppor
                 from("direct://UPDATE")
                   .to("google-drive://" + PATH_PREFIX + "/update");
 
+                // just used to upload file for test
+                from("direct://INSERT_1")
+                  .to("google-drive://drive-files/insert");
             }
         };
     }