You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@usergrid.apache.org by to...@apache.org on 2014/11/21 21:35:15 UTC

[4/7] incubator-usergrid git commit: Added refreshIndex method to context so we no longer need to specify which org and apps we want for default context. Refactored test to make test intentions more clear and help with future tests. Added comment on quer

Added refreshIndex method to context so we no longer need to specify which org and apps we want for default context.
Refactored test to make test intentions more clear and help with future tests.
Added comment on query method in the ValueResource.


Project: http://git-wip-us.apache.org/repos/asf/incubator-usergrid/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-usergrid/commit/6e9db18d
Tree: http://git-wip-us.apache.org/repos/asf/incubator-usergrid/tree/6e9db18d
Diff: http://git-wip-us.apache.org/repos/asf/incubator-usergrid/diff/6e9db18d

Branch: refs/heads/USERGRID-250-buffer-size-fix
Commit: 6e9db18d6be898891bbe20c556f17ff396405a40
Parents: 884bd01
Author: grey <gr...@apigee.com>
Authored: Thu Nov 20 16:33:43 2014 -0800
Committer: grey <gr...@apigee.com>
Committed: Thu Nov 20 16:33:43 2014 -0800

----------------------------------------------------------------------
 .../apache/usergrid/rest/AbstractRestIT.java    |  2 +-
 .../applications/queries/GeoPagingTest.java     | 85 ++++++++++++--------
 .../rest/test/resource/TestContext.java         | 20 +++++
 .../rest/test/resource/ValueResource.java       |  3 +-
 4 files changed, 75 insertions(+), 35 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/6e9db18d/stack/rest/src/test/java/org/apache/usergrid/rest/AbstractRestIT.java
----------------------------------------------------------------------
diff --git a/stack/rest/src/test/java/org/apache/usergrid/rest/AbstractRestIT.java b/stack/rest/src/test/java/org/apache/usergrid/rest/AbstractRestIT.java
index 4665bc6..1a18568 100644
--- a/stack/rest/src/test/java/org/apache/usergrid/rest/AbstractRestIT.java
+++ b/stack/rest/src/test/java/org/apache/usergrid/rest/AbstractRestIT.java
@@ -411,7 +411,7 @@ public abstract class AbstractRestIT extends JerseyTest {
     }
 
 
-    public void refreshIndex( UUID appId ) {
+    protected void refreshIndex( UUID appId ) {
 
         LOG.debug("Refreshing index for appId {}", appId );
 

http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/6e9db18d/stack/rest/src/test/java/org/apache/usergrid/rest/applications/queries/GeoPagingTest.java
----------------------------------------------------------------------
diff --git a/stack/rest/src/test/java/org/apache/usergrid/rest/applications/queries/GeoPagingTest.java b/stack/rest/src/test/java/org/apache/usergrid/rest/applications/queries/GeoPagingTest.java
index bb5b934..e9229ec 100644
--- a/stack/rest/src/test/java/org/apache/usergrid/rest/applications/queries/GeoPagingTest.java
+++ b/stack/rest/src/test/java/org/apache/usergrid/rest/applications/queries/GeoPagingTest.java
@@ -27,6 +27,8 @@ import java.io.IOException;
 import org.apache.usergrid.persistence.Entity;
 import org.apache.usergrid.persistence.EntityManager;
 import org.apache.usergrid.persistence.Results;
+
+import org.jclouds.json.Json;
 import org.junit.Rule;
 import org.junit.Test;
 
@@ -150,42 +152,26 @@ public class GeoPagingTest extends AbstractRestIT {
 
         JsonNode node = null;
         String collectionName = "testFarAwayLocation";
-        Map store1 = entityMapLocationCreator( -33.746369 ,150.952183 );
-        store1.put( "name", "usergrid" );
-        Map store2 = entityMapLocationCreator( -33.889058, 151.124024 );
-        store2.put( "name", "usergrid" );
         Point center = new Point( 37.776753, -122.407846 );
-        //TODO: make query builder for this
-        Query queryClose = locationQuery( 10000 ,center );
-        Query queryFar = locationQuery( 40000000, center );
 
+        String queryClose = locationQuery( 10000 ,center );
+        String queryFar = locationQuery( 40000000, center );
+
+        //TODO: move test setup out of the test.
         /*Create */
-        try {
-            node = context.collection( collectionName ).post( store1);
-        }
-        catch ( UniformInterfaceException e ) {
-            JsonNode nodeError = mapper.readTree( e.getResponse().getEntity( String.class ) );
-            fail( node.get( "error" ).textValue() );
-        }
-        assertNotNull( node );
-        assertEquals( "usergrid", node.get( "name" ).asText() );
-//TODO: check to see if context.application.collection is broken?
-        try {
-            node = context.collection( collectionName ).post( store2 );
-        }
-        catch ( UniformInterfaceException e ) {
-            JsonNode nodeError = mapper.readTree( e.getResponse().getEntity( String.class ) );
-            fail( node.get( "error" ).textValue() );
-        }
+        createGeoUser( "usergrid", collectionName, -33.746369, 150.952183 );
 
-        refreshIndex( context.getOrgName(),context.getAppName() );
+        createGeoUser( "usergrid2", collectionName, -33.889058, 151.124024 );
 
         /* run queries */
-        //context.collection( collectionName ).query(  )
 
+        node = queryCollection( collectionName,queryClose );
 
+        assertEquals("Results from nearby, should return nothing" ,0, node.get( "entities" ).size() );
 
-        // assertEquals(node.get(  ))
+        node = queryCollection( collectionName,queryFar );
+
+        assertEquals("Results from center point to ridiculously far", 2, node.get( "entities" ).size() );
     }
 
 
@@ -238,10 +224,10 @@ public class GeoPagingTest extends AbstractRestIT {
         for(Point p=pointIterator.next();pointIterator.hasNext();p=pointIterator.next()){
 
             Point center = new Point( p.getLat(),  p.getLon() );
-            Query query = locationQuery( 10000 ,center );
+            String query = locationQuery( 10000 ,center );
 
             try {
-               // node = context.users( ).get(  ).withQuery( query );
+                //node = context.users( ).withQuery(query).get( );
             }
             catch ( UniformInterfaceException e ) {
                 JsonNode nodeError = mapper.readTree( e.getResponse().getEntity( String.class ) );
@@ -265,10 +251,43 @@ public class GeoPagingTest extends AbstractRestIT {
         }
     }
 
+    private JsonNode queryCollection(String collectionName,String query) throws IOException {
+        JsonNode node = null;
+        try {
+            node = context.collection( collectionName ).withQuery( query ).get();
+        }
+        catch ( UniformInterfaceException e ) {
+            JsonNode nodeError = mapper.readTree( e.getResponse().getEntity( String.class ) );
+            fail( node.get( "error" ).textValue() );
+        }
+
+        assertNotNull( node );
+        return node;
+    }
+
+    private void createGeoUser(String username,String collectionName,Double lat, Double lon ) throws IOException {
+
+        JsonNode node = null;
+
 
+        Map<String,Object> user = entityMapLocationCreator( lat, lon);
+        user.put( "name", username );
 
+        try {
+            node = context.collection( collectionName ).post( user );
+        }
+        catch ( UniformInterfaceException e ) {
+            JsonNode nodeError = mapper.readTree( e.getResponse().getEntity( String.class ) );
+            fail( node.get( "error" ).textValue() );
+        }
+
+        assertNotNull( node );
+        assertEquals( username, node.get( "name" ).asText() );
+
+        context.refreshIndex();
+    }
 
-    private Map entityMapLocationCreator(Double lat, Double lon){
+    private Map<String, Object> entityMapLocationCreator(Double lat, Double lon){
         Map<String, Double> latLon = hashMap( "latitude", lat );
         latLon.put( "longitude", lon );
         Map<String, Object> entityData = new HashMap<String, Object>();
@@ -277,9 +296,9 @@ public class GeoPagingTest extends AbstractRestIT {
         return entityData;
     }
 
-    private Query locationQuery(int  metersAway, Point startingPoint){
-        return Query.fromQL( "select * where location within " + String.valueOf( metersAway ) + " of "
-                + startingPoint.getLat() + "," + startingPoint.getLon());
+    private String locationQuery(int  metersAway, Point startingPoint){
+        return  "select * where location within " + String.valueOf( metersAway ) + " of "
+                + startingPoint.getLat() + "," + startingPoint.getLon();
     }
 
 

http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/6e9db18d/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource/TestContext.java
----------------------------------------------------------------------
diff --git a/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource/TestContext.java b/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource/TestContext.java
index f1608b2..24a05e7 100644
--- a/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource/TestContext.java
+++ b/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource/TestContext.java
@@ -213,6 +213,26 @@ public class TestContext {
         return createNewOrgAndUser().loginUser().createAppForOrg();
     }
 
+    public void refreshIndex() {
+
+        logger.debug("Refreshing index for app {}/{}", testOrganization.getOrgName(), appName );
+
+        try {
+
+            root().resource().path( "/refreshindex" )
+                  .queryParam( "org_name", testOrganization.getOrgName() )
+                  .queryParam( "app_name", appName )
+                  .accept( MediaType.APPLICATION_JSON )
+                  .post();
+
+        } catch ( Exception e) {
+            logger.debug("Error refreshing index", e);
+            return;
+        }
+
+        logger.debug("Refreshed index for app {}/{}", testOrganization.getOrgName(), appName );
+    }
+
     private void refreshIndex(String orgName, String appName) {
 
         logger.debug("Refreshing index for app {}/{}", orgName, appName );

http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/6e9db18d/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource/ValueResource.java
----------------------------------------------------------------------
diff --git a/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource/ValueResource.java b/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource/ValueResource.java
index 3a9181a..8649bed 100644
--- a/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource/ValueResource.java
+++ b/stack/rest/src/test/java/org/apache/usergrid/rest/test/resource/ValueResource.java
@@ -94,7 +94,7 @@ public abstract class ValueResource extends NamedResource {
 
 
     /** post to the entity set */
-    //TODO: fix error reporting 
+    //TODO: fix error reporting
     protected JsonNode postInternal( Map<String, ?> entity ) throws IOException {
 
         return mapper.readTree( jsonMedia( withParams( withToken( resource() ) ) ).post( String.class, entity ));
@@ -219,6 +219,7 @@ public abstract class ValueResource extends NamedResource {
     }
 
 
+    //TODO: make query a chaining command, not just an immediate get.
     public JsonNode query( String query, String addition, String numAddition ) throws IOException {
         return getInternal( query, addition, numAddition );
     }