You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airavata.apache.org by ma...@apache.org on 2017/12/15 16:43:01 UTC

[airavata] 01/20: Repostory Junot test

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

machristie pushed a commit to branch registry-refactoring
in repository https://gitbox.apache.org/repos/asf/airavata.git

commit 4153e2813fe8e2bfd161ebf70e4821206e68907b
Author: Abhiit Karanjkar <ay...@indiana.edu>
AuthorDate: Mon Sep 26 17:15:29 2016 -0400

    Repostory Junot test
---
 .../registry/core/repositories/RepositoryTest.java | 291 +++++++++++++++++++++
 1 file changed, 291 insertions(+)

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
new file mode 100644
index 0000000..53d77f1
--- /dev/null
+++ b/modules/registry-refactoring/src/test/java/org/apache/airavata/registry/core/repositories/RepositoryTest.java
@@ -0,0 +1,291 @@
+/*
+ *
+ * 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.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;
+import org.apache.airavata.model.workspace.Notification;
+import org.apache.airavata.model.workspace.Project;
+import org.apache.airavata.registry.core.entities.expcatalog.ExperimentEntity;
+import org.apache.airavata.registry.core.entities.workspacecatalog.GatewayEntity;
+import org.apache.airavata.registry.core.entities.workspacecatalog.NotificationEntity;
+import org.apache.airavata.registry.core.entities.workspacecatalog.ProjectEntity;
+import org.apache.airavata.registry.core.entities.workspacecatalog.UserProfileEntity;
+import org.apache.airavata.registry.core.repositories.expcatalog.ExperimentRepository;
+import org.apache.airavata.registry.core.repositories.workspacecatalog.GatewayRepository;
+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;
+
+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 gateWayRepositoryTest() {
+        Gateway gateway = new Gateway();
+        gateway.setGatewayApprovalStatus(GatewayApprovalStatus.ACTIVE);
+        gateway.setGatewayId(gatewayId);
+
+		/*
+         * 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(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());
+
+
+
+		/*
+         * UserProfile Instance creation
+		 */
+        UserProfile userProfile = new UserProfile();
+        userProfile.setAiravataInternalUserId(userId);
+        userProfile.setGatewayId(gateway.getGatewayId());
+
+        /*
+         * 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.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

-- 
To stop receiving notification emails like this one, please contact
"commits@airavata.apache.org" <co...@airavata.apache.org>.