You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airavata.apache.org by sc...@apache.org on 2016/09/26 21:49:09 UTC

airavata git commit: Repostory Junot test

Repository: airavata
Updated Branches:
  refs/heads/registry-refactoring ae5461264 -> 13e6278fd


Repostory Junot test


Project: http://git-wip-us.apache.org/repos/asf/airavata/repo
Commit: http://git-wip-us.apache.org/repos/asf/airavata/commit/13e6278f
Tree: http://git-wip-us.apache.org/repos/asf/airavata/tree/13e6278f
Diff: http://git-wip-us.apache.org/repos/asf/airavata/diff/13e6278f

Branch: refs/heads/registry-refactoring
Commit: 13e6278fd68c2b94e65cfe6ab9f051b3b2c59ebb
Parents: ae54612
Author: Abhiit Karanjkar <ay...@indiana.edu>
Authored: Mon Sep 26 17:15:29 2016 -0400
Committer: Abhiit Karanjkar <ay...@indiana.edu>
Committed: Mon Sep 26 17:15:29 2016 -0400

----------------------------------------------------------------------
 .../core/repositories/RepositoryTest.java       | 255 ++++++++++++++++---
 1 file changed, 223 insertions(+), 32 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/airavata/blob/13e6278f/modules/registry-refactoring/src/test/java/org/apache/airavata/registry/core/repositories/RepositoryTest.java
----------------------------------------------------------------------
diff --git a/modules/registry-refactoring/src/test/java/org/apache/airavata/registry/core/repositories/RepositoryTest.java b/modules/registry-refactoring/src/test/java/org/apache/airavata/registry/core/repositories/RepositoryTest.java
index 342b73c..53d77f1 100644
--- a/modules/registry-refactoring/src/test/java/org/apache/airavata/registry/core/repositories/RepositoryTest.java
+++ b/modules/registry-refactoring/src/test/java/org/apache/airavata/registry/core/repositories/RepositoryTest.java
@@ -22,6 +22,7 @@ package org.apache.airavata.registry.core.repositories;
 
 import org.apache.airavata.model.experiment.ExperimentModel;
 import org.apache.airavata.model.experiment.UserConfigurationDataModel;
+import org.apache.airavata.model.user.NSFDemographics;
 import org.apache.airavata.model.user.UserProfile;
 import org.apache.airavata.model.workspace.Gateway;
 import org.apache.airavata.model.workspace.GatewayApprovalStatus;
@@ -37,7 +38,11 @@ import org.apache.airavata.registry.core.repositories.workspacecatalog.GatewayRe
 import org.apache.airavata.registry.core.repositories.workspacecatalog.NotificationRepository;
 import org.apache.airavata.registry.core.repositories.workspacecatalog.ProjectRepository;
 import org.apache.airavata.registry.core.repositories.workspacecatalog.UserProfileRepository;
+import org.apache.airavata.registry.core.utils.ObjectMapperSingleton;
+import org.dozer.Mapper;
 import org.junit.Assert;
+import org.junit.Before;
+import org.junit.BeforeClass;
 import org.junit.Test;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
@@ -47,54 +52,240 @@ import java.util.UUID;
 public class RepositoryTest {
     private final static Logger logger = LoggerFactory.getLogger(RepositoryTest.class);
 
+    private GatewayRepository gatewayRepository;
+    private NotificationRepository notificationRepository;
+    private UserProfileRepository userProfileRepository;
+    private ProjectRepository projectRepository;
+    private String gatewayId;
+    private String notificationId;
+    private String userId;
+    private String projectId;
+
+    private final String GATEWAY_DOMAIN = "test1.com";
+    private final String NOTIFY_MESSAGE = "NotifyMe";
+    private final String USER_COMMENT = "TestComment";
+    private final String PROJECT_DESCRIPTION = "Test Description";
+
+    @Before
+    public void setupRepository() {
+
+        gatewayRepository = new GatewayRepository(Gateway.class, GatewayEntity.class);
+        notificationRepository = new NotificationRepository(Notification.class,
+                NotificationEntity.class);
+        userProfileRepository = new UserProfileRepository(UserProfile.class, UserProfileEntity.class);
+        projectRepository = new ProjectRepository(Project.class, ProjectEntity.class);
+
+        gatewayId = "test.com" + System.currentTimeMillis();
+        notificationId = UUID.randomUUID().toString();
+        userId = "testuser" + System.currentTimeMillis();
+        projectId = "project" + System.currentTimeMillis();;
+    }
+
+
     @Test
-    public void test(){
+    public void gateWayRepositoryTest() {
         Gateway gateway = new Gateway();
         gateway.setGatewayApprovalStatus(GatewayApprovalStatus.ACTIVE);
-        gateway.setGatewayId("test.com" + System.currentTimeMillis());
-        gateway.setDomain("test.com");
+        gateway.setGatewayId(gatewayId);
 
-        GatewayRepository gatewayRepository = new GatewayRepository(Gateway.class, GatewayEntity.class);
+		/*
+         * GateWay Repository Insert Operation Test
+		 */
         gateway = gatewayRepository.create(gateway);
         Assert.assertTrue(!gateway.getGatewayId().isEmpty());
 
+		/*
+         * GateWay Repository Update Operation Test
+		 */
+        gateway.setDomain(GATEWAY_DOMAIN);
+        gatewayRepository.update(gateway);
+        gateway = gatewayRepository.get(gateway.getGatewayId());
+        Assert.assertEquals(gateway.getDomain(), GATEWAY_DOMAIN);
+
+		/*
+         * GateWay Repository Select Operation Test
+		 */
+        gateway = null;
+        gateway = gatewayRepository.get(gatewayId);
+        Assert.assertNotNull(gateway);
+
+		/*
+         * GateWay Repository Delete Operation
+		 */
+        boolean deleteResult = gatewayRepository.delete(gatewayId);
+        Assert.assertTrue(deleteResult);
+
+    }
+
+    @Test
+    public void notificationRepositoryTest() {
+
+        String tempNotificationId = null;
+        Gateway gateway = new Gateway();
+        gateway.setGatewayApprovalStatus(GatewayApprovalStatus.ACTIVE);
+        gateway.setGatewayId(gatewayId);
+        gateway.setDomain(GATEWAY_DOMAIN);
+        gateway = gatewayRepository.create(gateway);
+
         Notification notification = new Notification();
         notification.setGatewayId(gateway.getGatewayId());
-        notification.setNotificationId(UUID.randomUUID().toString());
+        notification.setNotificationId(notificationId);
+
+		/*
+         * Notification INSERT Operation Test
+		 */
+        notification = notificationRepository.create(notification);
+        Assert.assertTrue(!notification.getNotificationId().isEmpty());
+
+		/*
+         * Notification SELECT Operation Test
+		 */
+        tempNotificationId = notification.getNotificationId();
+        notification = null;
+        notification = notificationRepository.get(tempNotificationId);
+        Assert.assertNotNull(notification);
+
+
+		/*
+         * Notification UPDATE Operation Test
+		 */
+        notification.setNotificationMessage(NOTIFY_MESSAGE);
+        notificationRepository.update(notification);
+        notification = notificationRepository.get(notification.getNotificationId());
+        Assert.assertEquals(NOTIFY_MESSAGE, notification.getNotificationMessage());
+
+		/*
+         * Notification DELETE Operation Test
+		 */
+        boolean result = notificationRepository.delete(tempNotificationId);
+        Assert.assertTrue(result);
+
+        gatewayRepository.delete(gatewayId);
+    }
+
+    @Test
+    public void userProfileRepositoryTest() {
+
+		/*
+         * Creating Gateway required for UserProfile creation
+		 */
+        Gateway gateway = new Gateway();
+        gateway.setGatewayApprovalStatus(GatewayApprovalStatus.ACTIVE);
+        gateway.setGatewayId(gatewayId);
+        gateway.setDomain(GATEWAY_DOMAIN);
+        gateway = gatewayRepository.create(gateway);
+        Assert.assertTrue(!gateway.getGatewayId().isEmpty());
 
-        NotificationRepository notificationRepository = new NotificationRepository(Notification.class, NotificationEntity.class);
-        notificationRepository.create(notification);
 
-        notificationRepository.get(notification.getNotificationId());
 
+		/*
+         * UserProfile Instance creation
+		 */
         UserProfile userProfile = new UserProfile();
-        userProfile.setAiravataInternalUserId(UUID.randomUUID().toString());
+        userProfile.setAiravataInternalUserId(userId);
         userProfile.setGatewayId(gateway.getGatewayId());
-        UserProfileRepository userProfileRepository = new UserProfileRepository(UserProfile.class, UserProfileEntity.class);
-        userProfileRepository.create(userProfile);
 
+        /*
+         * Workspace UserProfile Repository Insert Operation Test
+		 */
+        userProfile = userProfileRepository.create(userProfile);
+        Assert.assertTrue(!userProfile.getAiravataInternalUserId().isEmpty());
+
+        /*
+         * Workspace UserProfile Repository Update Operation Test
+		 */
+        userProfile.setComments(USER_COMMENT);
+        userProfileRepository.update(userProfile);
+        userProfile = userProfileRepository.get(userId);
+        System.out.println(userProfile.getComments());
+        Assert.assertEquals(userProfile.getComments(), USER_COMMENT);
+
+		/*
+         * Workspace UserProfile Repository Select Operation Test
+		 */
+        userProfile = null;
+        userProfile = userProfileRepository.get(userId);
+        Assert.assertNotNull(userProfile);
+
+		/*
+         * Workspace UserProfile Repository Delete Operation
+		 */
+        boolean deleteResult = userProfileRepository.delete(userId);
+        Assert.assertTrue(deleteResult);
+        deleteResult = gatewayRepository.delete(gatewayId);
+        Assert.assertTrue(deleteResult);
+
+
+    }
+
+    @Test
+    public void projectRepositoryTest() {
+
+		/*
+         * Creating Gateway required for UserProfile & Project creation
+		 */
+        Gateway gateway = new Gateway();
+        gateway.setGatewayApprovalStatus(GatewayApprovalStatus.ACTIVE);
+        gateway.setGatewayId(gatewayId);
+        gateway.setDomain(GATEWAY_DOMAIN);
+        gateway = gatewayRepository.create(gateway);
+        Assert.assertTrue(!gateway.getGatewayId().isEmpty());
+
+		/*
+         * UserProfile Instance creation required for Project Creation
+		 */
+        UserProfile userProfile = new UserProfile();
+        userProfile.setAiravataInternalUserId(userId);
+        userProfile.setGatewayId(gateway.getGatewayId());
+        userProfile = userProfileRepository.create(userProfile);
+        Assert.assertTrue(!userProfile.getAiravataInternalUserId().isEmpty());
 
+        /*
+         * Project Instance creation
+         */
         Project project = new Project();
-        project.setProjectID(UUID.randomUUID().toString());
-        project.setOwner(userProfile.getAiravataInternalUserId());
-        project.setGatewayId(gateway.getGatewayId());
-        project.setName("Project Name");
-
-        ProjectRepository projectRepository = new ProjectRepository(Project.class, ProjectEntity.class);
-        projectRepository.create(project);
-
-        ExperimentModel experiment = new ExperimentModel();
-        experiment.setExperimentId(UUID.randomUUID().toString());
-        experiment.setUserName(userProfile.getAiravataInternalUserId());
-        experiment.setProjectId(project.getProjectID());
-        experiment.setGatewayId(gateway.getGatewayId());
-        experiment.setExperimentName("Dummy Experiment");
-
-        UserConfigurationDataModel userConfigurationData = new UserConfigurationDataModel();
-        userConfigurationData.setExperimentDataDir("some/path");
-        experiment.setUserConfigurationData(userConfigurationData);
-
-        ExperimentRepository experimentRepository = new ExperimentRepository(ExperimentModel.class, ExperimentEntity.class);
-        experimentRepository.create(experiment);
+        project.setGatewayId(gatewayId);
+        project.setOwner(userId);
+        project.setProjectID(projectId);
+        project.setGatewayIdIsSet(true);
+
+
+
+        /*
+         * Workspace Project Repository Insert Operation Test
+		 */
+        project = projectRepository.create(project);
+        Assert.assertTrue(!project.getProjectID().isEmpty());
+
+
+
+        /*
+         * Workspace Project Repository Update Operation Test
+		 */
+        project.setDescription(PROJECT_DESCRIPTION);
+        projectRepository.update(project);
+        project = projectRepository.get(projectId);
+        Assert.assertEquals(project.getDescription(), PROJECT_DESCRIPTION);
+
+		/*
+         * Workspace Project Repository Select Operation Test
+		 */
+        project = null;
+        project = projectRepository.get(projectId);
+        Assert.assertNotNull(project);
+
+		/*
+         * Workspace Project Repository Delete Operation
+		 */
+        boolean deleteResult = projectRepository.delete(projectId);
+        Assert.assertTrue(deleteResult);
+
+        deleteResult = userProfileRepository.delete(userId);
+        Assert.assertTrue(deleteResult);
+
+        deleteResult = gatewayRepository.delete(gatewayId);
+        Assert.assertTrue(deleteResult);
+
+
     }
 }
\ No newline at end of file