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/12/11 00:14:32 UTC

[1/2] incubator-usergrid git commit: Fixes Creator test to use unique strings

Repository: incubator-usergrid
Updated Branches:
  refs/heads/USERGRID-273 7ffe1ac7a -> ef3ddb247


Fixes Creator test to use unique strings


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

Branch: refs/heads/USERGRID-273
Commit: f0a9870c85728fbda611376ec7475d0f2fc8e44b
Parents: 7ffe1ac
Author: Todd Nine <tn...@apigee.com>
Authored: Wed Dec 10 14:54:55 2014 -0700
Committer: Todd Nine <tn...@apigee.com>
Committed: Wed Dec 10 14:54:55 2014 -0700

----------------------------------------------------------------------
 .../cassandra/ApplicationCreatorIT.java         | 31 +++++++++++++-------
 1 file changed, 20 insertions(+), 11 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/f0a9870c/stack/services/src/test/java/org/apache/usergrid/management/cassandra/ApplicationCreatorIT.java
----------------------------------------------------------------------
diff --git a/stack/services/src/test/java/org/apache/usergrid/management/cassandra/ApplicationCreatorIT.java b/stack/services/src/test/java/org/apache/usergrid/management/cassandra/ApplicationCreatorIT.java
index 6b3bb0b..a3eaa08 100644
--- a/stack/services/src/test/java/org/apache/usergrid/management/cassandra/ApplicationCreatorIT.java
+++ b/stack/services/src/test/java/org/apache/usergrid/management/cassandra/ApplicationCreatorIT.java
@@ -34,6 +34,7 @@ import org.apache.usergrid.management.ApplicationInfo;
 import org.apache.usergrid.management.OrganizationOwnerInfo;
 import org.apache.usergrid.persistence.index.impl.ElasticSearchResource;
 
+import static org.apache.usergrid.UUIDTestHelper.newUUIDString;
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertNotNull;
 import static org.junit.Assert.assertTrue;
@@ -42,8 +43,6 @@ import static org.junit.Assert.assertTrue;
 /** @author zznate */
 @Concurrent()
 public class ApplicationCreatorIT {
-    private static final Logger LOG = LoggerFactory.getLogger( ApplicationCreatorIT.class );
-
     @ClassRule
     public static CassandraResource cassandraResource = CassandraResource.newWithAvailablePorts();
 
@@ -59,14 +58,18 @@ public class ApplicationCreatorIT {
 
     @Test
     public void testCreateSampleApplication() throws Exception {
-        OrganizationOwnerInfo orgOwner = setup.getMgmtSvc()
-                                              .createOwnerAndOrganization( "appcreatortest", "nate-appcreatortest",
-                                                      "Nate", "nate+appcreatortest@apigee.com", "password", true,
-                                                      false );
+
+        final String orgName = "appcreatortest" + newUUIDString();
+        final String appName = "nate-appcreatortest" + newUUIDString();
+        final String expecteAppname = "sandbox";
+        final String expectedName = orgName + "/" + expecteAppname;
+
+        OrganizationOwnerInfo orgOwner = setup.getMgmtSvc().createOwnerAndOrganization( orgName, appName, "Nate",
+                "nate+appcreatortest" + newUUIDString() + "@apigee.com", "password", true, false );
 
         ApplicationInfo appInfo = setup.getAppCreator().createSampleFor( orgOwner.getOrganization() );
         assertNotNull( appInfo );
-        assertEquals( "appcreatortest/sandbox", appInfo.getName() );
+        assertEquals( expectedName, appInfo.getName() );
 
         Set<String> rolePerms = setup.getEmf().getEntityManager( appInfo.getId() ).getRolePermissions( "guest" );
         assertNotNull( rolePerms );
@@ -76,13 +79,19 @@ public class ApplicationCreatorIT {
 
     @Test
     public void testCreateSampleApplicationAltName() throws Exception {
-        OrganizationOwnerInfo orgOwner = setup.getMgmtSvc().createOwnerAndOrganization( "appcreatortestcustom",
-                "nate-appcreatortestcustom", "Nate", "nate+appcreatortestcustom@apigee.com", "password", true, false );
+
+        final String orgName = "appcreatortest" + newUUIDString();
+        final String appName = "nate-appcreatortest" + newUUIDString();
+        final String sampleAppName =  "messagee" ;
+        final String expectedName = orgName + "/" + sampleAppName;
+
+        OrganizationOwnerInfo orgOwner = setup.getMgmtSvc().createOwnerAndOrganization( orgName, appName, "Nate",
+                "nate+appcreatortestcustom" + newUUIDString() + "@apigee.com", "password", true, false );
 
         ApplicationCreatorImpl customCreator = new ApplicationCreatorImpl( setup.getEmf(), setup.getMgmtSvc() );
-        customCreator.setSampleAppName( "messagee" );
+        customCreator.setSampleAppName(sampleAppName);
         ApplicationInfo appInfo = customCreator.createSampleFor( orgOwner.getOrganization() );
         assertNotNull( appInfo );
-        assertEquals( "appcreatortestcustom/messagee", appInfo.getName() );
+        assertEquals( expectedName, appInfo.getName() );
     }
 }


[2/2] incubator-usergrid git commit: Fixes EmailFlowIT and creates utilities for testing.

Posted by to...@apache.org.
Fixes EmailFlowIT and creates utilities for testing.


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

Branch: refs/heads/USERGRID-273
Commit: ef3ddb247a4492d18602f0c959317fe5106e462e
Parents: f0a9870
Author: Todd Nine <tn...@apigee.com>
Authored: Wed Dec 10 16:14:28 2014 -0700
Committer: Todd Nine <tn...@apigee.com>
Committed: Wed Dec 10 16:14:28 2014 -0700

----------------------------------------------------------------------
 .../org/apache/usergrid/NewOrgAppAdminRule.java |   3 +-
 .../apache/usergrid/management/EmailFlowIT.java | 109 +++++++++++++------
 .../cassandra/ApplicationCreatorIT.java         |   4 +-
 .../management/cassandra/ExportServiceIT.java   |   2 +-
 .../cassandra/ManagementServiceIT.java          |   3 +-
 .../java/org/apache/usergrid/TestHelper.java    |  75 +++++++++++++
 .../org/apache/usergrid/UUIDTestHelper.java     |  38 -------
 7 files changed, 153 insertions(+), 81 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/ef3ddb24/stack/services/src/test/java/org/apache/usergrid/NewOrgAppAdminRule.java
----------------------------------------------------------------------
diff --git a/stack/services/src/test/java/org/apache/usergrid/NewOrgAppAdminRule.java b/stack/services/src/test/java/org/apache/usergrid/NewOrgAppAdminRule.java
index 71a4740..ab7857e 100644
--- a/stack/services/src/test/java/org/apache/usergrid/NewOrgAppAdminRule.java
+++ b/stack/services/src/test/java/org/apache/usergrid/NewOrgAppAdminRule.java
@@ -32,9 +32,8 @@ import org.apache.usergrid.management.ApplicationInfo;
 import org.apache.usergrid.management.OrganizationInfo;
 import org.apache.usergrid.management.OrganizationOwnerInfo;
 import org.apache.usergrid.management.UserInfo;
-import org.apache.usergrid.persistence.model.util.UUIDGenerator;
 
-import static org.apache.usergrid.UUIDTestHelper.newUUIDString;
+import static org.apache.usergrid.TestHelper.newUUIDString;
 
 
 /**

http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/ef3ddb24/stack/services/src/test/java/org/apache/usergrid/management/EmailFlowIT.java
----------------------------------------------------------------------
diff --git a/stack/services/src/test/java/org/apache/usergrid/management/EmailFlowIT.java b/stack/services/src/test/java/org/apache/usergrid/management/EmailFlowIT.java
index 719fd86..f831448 100644
--- a/stack/services/src/test/java/org/apache/usergrid/management/EmailFlowIT.java
+++ b/stack/services/src/test/java/org/apache/usergrid/management/EmailFlowIT.java
@@ -51,6 +51,11 @@ import org.apache.usergrid.persistence.entities.User;
 import org.apache.usergrid.persistence.index.impl.ElasticSearchResource;
 
 import static org.apache.commons.lang.StringUtils.isNotBlank;
+import static org.apache.usergrid.TestHelper.newUUIDString;
+import static org.apache.usergrid.TestHelper.uniqueApp;
+import static org.apache.usergrid.TestHelper.uniqueEmail;
+import static org.apache.usergrid.TestHelper.uniqueOrg;
+import static org.apache.usergrid.TestHelper.uniqueUsername;
 import static org.apache.usergrid.management.AccountCreationProps.PROPERTIES_ADMIN_USERS_REQUIRE_CONFIRMATION;
 import static org.apache.usergrid.management.AccountCreationProps.PROPERTIES_EMAIL_ADMIN_ACTIVATED;
 import static org.apache.usergrid.management.AccountCreationProps.PROPERTIES_EMAIL_ADMIN_CONFIRMATION;
@@ -87,8 +92,6 @@ import static org.junit.Assert.assertTrue;
  */
 public class EmailFlowIT {
     private static final Logger LOG = LoggerFactory.getLogger( EmailFlowIT.class );
-    private static final String ORGANIZATION_NAME = "email-test-org-1";
-    public static final String ORGANIZATION_NAME_2 = "email-test-org-2";
 
     @ClassRule
     public static CassandraResource cassandraResource = CassandraResource.newWithAvailablePorts( );
@@ -114,12 +117,17 @@ public class EmailFlowIT {
         setup.set( PROPERTIES_SYSADMIN_EMAIL, "sysadmin-1@mockserver.com" );
         setup.set( PROPERTIES_NOTIFY_ADMIN_OF_ACTIVATION, "true" );
 
+        final String orgName = uniqueOrg();
+        final String userName = uniqueUsername();
+        final String email = uniqueEmail();
+
         OrganizationOwnerInfo org_owner =
-                createOwnerAndOrganization( ORGANIZATION_NAME, "test-user-1", "Test User", "test-user-1@mockserver.com",
-                        "testpassword", false, false );
+                createOwnerAndOrganization( orgName, userName, "Test User", email, "testpassword", false, false );
+
+
         assertNotNull( org_owner );
 
-        List<Message> inbox = Mailbox.get( "test-user-1@mockserver.com" );
+        List<Message> inbox = Mailbox.get( email );
 
         assertFalse( inbox.isEmpty() );
 
@@ -127,7 +135,7 @@ public class EmailFlowIT {
         client.processMail();
 
         Message confirmation = inbox.get( 0 );
-        assertEquals( "User Account Confirmation: test-user-1@mockserver.com", confirmation.getSubject() );
+        assertEquals( "User Account Confirmation: " + email, confirmation.getSubject() );
 
         String token = getTokenFromMessage( confirmation );
         LOG.info( token );
@@ -151,16 +159,23 @@ public class EmailFlowIT {
         setup.set( PROPERTIES_ADMIN_USERS_REQUIRE_CONFIRMATION, "true" );
         setup.set( PROPERTIES_SYSADMIN_EMAIL, "sysadmin-2@mockserver.com" );
 
-        OrganizationOwnerInfo org_owner = createOwnerAndOrganization( ORGANIZATION_NAME_2, "test-user-2", "Test User",
-                "test-user-2@mockserver.com", "testpassword", false, false );
+        final String orgName = uniqueOrg();
+        final String userName = uniqueUsername();
+        final String email = uniqueEmail();
+
+        OrganizationOwnerInfo org_owner =
+                        createOwnerAndOrganization( orgName, userName, "Test User", email,
+                                "testpassword", false, false );
+
         assertNotNull( org_owner );
 
-        List<Message> user_inbox = Mailbox.get( "test-user-2@mockserver.com" );
+
+        List<Message> user_inbox = Mailbox.get( email );
 
         assertFalse( user_inbox.isEmpty() );
 
         Message confirmation = user_inbox.get( 0 );
-        assertEquals( "User Account Confirmation: test-user-2@mockserver.com", confirmation.getSubject() );
+        assertEquals( "User Account Confirmation: "+email, confirmation.getSubject() );
 
         String token = getTokenFromMessage( confirmation );
         LOG.info( token );
@@ -181,7 +196,7 @@ public class EmailFlowIT {
         assertFalse( sysadmin_inbox.isEmpty() );
 
         Message activation = sysadmin_inbox.get( 0 );
-        assertEquals( "Request For Admin User Account Activation test-user-2@mockserver.com", activation.getSubject() );
+        assertEquals( "Request For Admin User Account Activation "+email, activation.getSubject() );
 
         token = getTokenFromMessage( activation );
         LOG.info( token );
@@ -204,10 +219,14 @@ public class EmailFlowIT {
         setup.set( PROPERTIES_SYSADMIN_APPROVES_ADMIN_USERS, "false" );
         setup.set( PROPERTIES_ADMIN_USERS_REQUIRE_CONFIRMATION, "false" );
 
+
+        final String orgName = uniqueOrg();
+        final String userName = uniqueUsername();
+        final String email = uniqueEmail();
+
         OrganizationOwnerInfo ooi = setup.getMgmtSvc()
-                                         .createOwnerAndOrganization( "org-skipallemailtest", "user-skipallemailtest",
-                                                 "name-skipallemailtest", "nate+skipallemailtest@apigee.com",
-                                                 "password" );
+                                         .createOwnerAndOrganization(orgName, userName, "Test User", email,
+                                                                         "testpassword");
 
         EntityManager em = setup.getEmf().getEntityManager( setup.getEmf().getManagementAppId() );
         User user = em.get( ooi.getOwner().getUuid(), User.class );
@@ -234,23 +253,36 @@ public class EmailFlowIT {
     }
 
 
+    /**
+     * Tests that when a user is added to an app and activation on that app is required, the org admin is emailed
+     * @throws Exception
+     *
+     * TODO, I'm not convinced this worked correctly.  IT can't find users collection in the orgs.  Therefore,
+     * I think this is a legitimate bug that was just found from fixing the tests to be unique admins orgs and emails
+     */
     @Test
     public void testAppUserActivationResetpwdMail() throws Exception {
-        String orgName = this.getClass().getName() + "1";
-        String appName = name.getMethodName();
-        String userName = "Test User";
-        String email = "test-user-4@mockserver.com";
-        String passwd = "testpassword";
-        OrganizationOwnerInfo orgOwner;
 
-        orgOwner = createOwnerAndOrganization( orgName, appName, userName, email, passwd, false, false );
+        final String orgName = uniqueOrg();
+        final String appName = uniqueApp();
+        final String userName = uniqueUsername();
+        final String email = uniqueEmail();
+        final String passwd = "testpassword";
+
+        OrganizationOwnerInfo orgOwner = createOwnerAndOrganization( orgName, appName, userName, email, passwd, false, false );
         assertNotNull( orgOwner );
 
         ApplicationInfo app = setup.getMgmtSvc().createApplication( orgOwner.getOrganization().getUuid(), appName );
+
+        //turn on app admin approval for app users
         enableAdminApproval( app.getId() );
-        User user = setupAppUser( app.getId(), "testAppUserMailUrl", "testAppUserMailUrl@test.com", false );
 
-        String subject = "Request For User Account Activation testAppUserMailUrl@test.com";
+        final String appUserUsername = uniqueUsername();
+        final String appUserEmail = uniqueEmail();
+
+        User user = setupAppUser( app.getId(), appUserUsername, appUserEmail, false );
+
+        String subject = "Request For User Account Activation " + email;
         String activation_url = String.format( setup.get( PROPERTIES_USER_ACTIVATION_URL ), orgName, appName,
                 user.getUuid().toString() );
 
@@ -261,7 +293,7 @@ public class EmailFlowIT {
 
         List<Message> inbox = Mailbox.get( email );
         assertFalse( inbox.isEmpty() );
-        MockImapClient client = new MockImapClient( "usergrid.com", "test", "somepassword" );
+        MockImapClient client = new MockImapClient( "usergrid.com", userName, "somepassword" );
         client.processMail();
 
         // subject ok
@@ -287,9 +319,9 @@ public class EmailFlowIT {
         // reset_pwd
         setup.getMgmtSvc().startAppUserPasswordResetFlow( app.getId(), user );
 
-        inbox = Mailbox.get( "testAppUserMailUrl@test.com" );
+        inbox = Mailbox.get( appUserEmail );
         assertFalse( inbox.isEmpty() );
-        client = new MockImapClient( "test.com", "testAppUserMailUrl", "somepassword" );
+        client = new MockImapClient( "test.com", appUserUsername, "somepassword" );
         client.processMail();
 
         // subject ok
@@ -315,11 +347,13 @@ public class EmailFlowIT {
     /** Tests to make sure a normal user must be activated by the admin after confirmation. */
     @Test
     public void testAppUserConfirmationMail() throws Exception {
-        String orgName = this.getClass().getName();
-        String appName = name.getMethodName();
-        String userName = "Test User";
-        String email = "test-user-45@mockserver.com";
-        String passwd = "testpassword";
+        final String orgName = uniqueOrg();
+        final String appName = uniqueApp();
+        final String userName = uniqueUsername();
+        final String email = uniqueEmail();
+        final String passwd = "testpassword";
+
+
         OrganizationOwnerInfo orgOwner;
 
         orgOwner = createOwnerAndOrganization( orgName, appName, userName, email, passwd, false, false );
@@ -331,18 +365,23 @@ public class EmailFlowIT {
         assertNotNull( app );
         enableEmailConfirmation( app.getId() );
         enableAdminApproval( app.getId() );
-        User user = setupAppUser( app.getId(), "testAppUserConfMail", "testAppUserConfMail@test.com", true );
 
-        String subject = "User Account Confirmation: testAppUserConfMail@test.com";
+
+        final String appUserEmail = uniqueEmail();
+        final String appUserUsername = uniqueUsername();
+
+        User user = setupAppUser( app.getId(), appUserUsername, appUserEmail, true );
+
+        String subject = "User Account Confirmation: "+appUserEmail;
         String urlProp = setup.get( PROPERTIES_USER_CONFIRMATION_URL );
         String confirmation_url = String.format( urlProp, orgName, appName, user.getUuid().toString() );
 
         // request confirmation
         setup.getMgmtSvc().startAppUserActivationFlow( app.getId(), user );
 
-        List<Message> inbox = Mailbox.get( "testAppUserConfMail@test.com" );
+        List<Message> inbox = Mailbox.get( appUserEmail );
         assertFalse( inbox.isEmpty() );
-        MockImapClient client = new MockImapClient( "test.com", "testAppUserConfMail", "somepassword" );
+        MockImapClient client = new MockImapClient( "test.com", appUserUsername, "somepassword" );
         client.processMail();
 
         // subject ok

http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/ef3ddb24/stack/services/src/test/java/org/apache/usergrid/management/cassandra/ApplicationCreatorIT.java
----------------------------------------------------------------------
diff --git a/stack/services/src/test/java/org/apache/usergrid/management/cassandra/ApplicationCreatorIT.java b/stack/services/src/test/java/org/apache/usergrid/management/cassandra/ApplicationCreatorIT.java
index a3eaa08..2a52cb9 100644
--- a/stack/services/src/test/java/org/apache/usergrid/management/cassandra/ApplicationCreatorIT.java
+++ b/stack/services/src/test/java/org/apache/usergrid/management/cassandra/ApplicationCreatorIT.java
@@ -22,8 +22,6 @@ import java.util.Set;
 import org.junit.ClassRule;
 import org.junit.Rule;
 import org.junit.Test;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
 
 import org.apache.usergrid.ServiceITSetup;
 import org.apache.usergrid.ServiceITSetupImpl;
@@ -34,7 +32,7 @@ import org.apache.usergrid.management.ApplicationInfo;
 import org.apache.usergrid.management.OrganizationOwnerInfo;
 import org.apache.usergrid.persistence.index.impl.ElasticSearchResource;
 
-import static org.apache.usergrid.UUIDTestHelper.newUUIDString;
+import static org.apache.usergrid.TestHelper.newUUIDString;
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertNotNull;
 import static org.junit.Assert.assertTrue;

http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/ef3ddb24/stack/services/src/test/java/org/apache/usergrid/management/cassandra/ExportServiceIT.java
----------------------------------------------------------------------
diff --git a/stack/services/src/test/java/org/apache/usergrid/management/cassandra/ExportServiceIT.java b/stack/services/src/test/java/org/apache/usergrid/management/cassandra/ExportServiceIT.java
index 2c64836..1bb9e63 100644
--- a/stack/services/src/test/java/org/apache/usergrid/management/cassandra/ExportServiceIT.java
+++ b/stack/services/src/test/java/org/apache/usergrid/management/cassandra/ExportServiceIT.java
@@ -66,7 +66,7 @@ import org.apache.usergrid.persistence.index.impl.ElasticSearchResource;
 import com.google.common.collect.ImmutableSet;
 import com.google.inject.Module;
 
-import static org.apache.usergrid.UUIDTestHelper.newUUIDString;
+import static org.apache.usergrid.TestHelper.newUUIDString;
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertFalse;
 import static org.junit.Assert.assertNotNull;

http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/ef3ddb24/stack/services/src/test/java/org/apache/usergrid/management/cassandra/ManagementServiceIT.java
----------------------------------------------------------------------
diff --git a/stack/services/src/test/java/org/apache/usergrid/management/cassandra/ManagementServiceIT.java b/stack/services/src/test/java/org/apache/usergrid/management/cassandra/ManagementServiceIT.java
index 14a34b4..6ba02f2 100644
--- a/stack/services/src/test/java/org/apache/usergrid/management/cassandra/ManagementServiceIT.java
+++ b/stack/services/src/test/java/org/apache/usergrid/management/cassandra/ManagementServiceIT.java
@@ -23,7 +23,6 @@ import java.util.Map;
 import java.util.UUID;
 
 import org.junit.Before;
-import org.junit.BeforeClass;
 import org.junit.ClassRule;
 import org.junit.Ignore;
 import org.junit.Rule;
@@ -54,7 +53,7 @@ import org.apache.usergrid.utils.JsonUtils;
 import org.apache.usergrid.utils.UUIDUtils;
 
 import static org.apache.commons.codec.binary.Base64.encodeBase64URLSafeString;
-import static org.apache.usergrid.UUIDTestHelper.newUUIDString;
+import static org.apache.usergrid.TestHelper.newUUIDString;
 import static org.apache.usergrid.persistence.Schema.DICTIONARY_CREDENTIALS;
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertFalse;

http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/ef3ddb24/stack/test-utils/src/main/java/org/apache/usergrid/TestHelper.java
----------------------------------------------------------------------
diff --git a/stack/test-utils/src/main/java/org/apache/usergrid/TestHelper.java b/stack/test-utils/src/main/java/org/apache/usergrid/TestHelper.java
new file mode 100644
index 0000000..cf476e2
--- /dev/null
+++ b/stack/test-utils/src/main/java/org/apache/usergrid/TestHelper.java
@@ -0,0 +1,75 @@
+/*
+ * 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.apache.usergrid;
+
+
+import org.apache.usergrid.persistence.model.util.UUIDGenerator;
+
+
+/**
+ * Simple class to manipulate UUIDs into strings for unique strings when testing
+ */
+public class TestHelper {
+
+    /**
+     * Generate a unique name for an organization
+     * @return
+     */
+    public static String uniqueOrg(){
+        return "org" + newUUIDString();
+    }
+
+
+    /**
+     * Generate a unique name for an application
+     * @return
+     */
+    public static String uniqueApp(){
+        return "app" + newUUIDString();
+    }
+
+
+    /**
+     * Generate a unique username
+     * @return
+     */
+    public static String uniqueUsername(){
+        return "user" + newUUIDString();
+    }
+
+
+    /**
+     * Generate a unique email
+     * @return
+     */
+   public static String uniqueEmail(){
+       return "user" + newUUIDString() + "@apache.org";
+   }
+
+
+
+    /**
+     * Generate a new UUID, and remove all the '-' characters from the resulting string.
+     * @return
+     */
+    public static String newUUIDString() {
+        return UUIDGenerator.newTimeUUID().toString().replace( "-", "" );
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/ef3ddb24/stack/test-utils/src/main/java/org/apache/usergrid/UUIDTestHelper.java
----------------------------------------------------------------------
diff --git a/stack/test-utils/src/main/java/org/apache/usergrid/UUIDTestHelper.java b/stack/test-utils/src/main/java/org/apache/usergrid/UUIDTestHelper.java
deleted file mode 100644
index dffe826..0000000
--- a/stack/test-utils/src/main/java/org/apache/usergrid/UUIDTestHelper.java
+++ /dev/null
@@ -1,38 +0,0 @@
-/*
- * 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.apache.usergrid;
-
-
-import org.apache.usergrid.persistence.model.util.UUIDGenerator;
-
-
-/**
- * Simple class to manipulate UUIDs into strings for unique strings when testing
- */
-public class UUIDTestHelper {
-
-    /**
-     * Generate a new UUID, and remove all the '-' characters from the resulting string.
-     * @return
-     */
-    public static String newUUIDString() {
-        return UUIDGenerator.newTimeUUID().toString().replace( "-", "" );
-    }
-}