You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@openmeetings.apache.org by so...@apache.org on 2017/05/01 06:11:15 UTC

[24/50] [abbrv] openmeetings git commit: no jira: additional tests for calendar web service are added

no jira: additional tests for calendar web service are added


Project: http://git-wip-us.apache.org/repos/asf/openmeetings/repo
Commit: http://git-wip-us.apache.org/repos/asf/openmeetings/commit/98b9cf9a
Tree: http://git-wip-us.apache.org/repos/asf/openmeetings/tree/98b9cf9a
Diff: http://git-wip-us.apache.org/repos/asf/openmeetings/diff/98b9cf9a

Branch: refs/heads/3.1.x
Commit: 98b9cf9a7259d3399f821719a590cd6e64391df1
Parents: 1736662
Author: Maxim Solodovnik <so...@apache.org>
Authored: Fri Jan 13 04:19:56 2017 +0000
Committer: Maxim Solodovnik <so...@apache.org>
Committed: Fri Jan 13 04:19:56 2017 +0000

----------------------------------------------------------------------
 .../test/AbstractJUnitDefaults.java             | 61 +++++++++----------
 .../test/webservice/AbstractWebServiceTest.java |  6 +-
 .../test/webservice/TestCalendarService.java    | 62 ++++++++++++++++++++
 3 files changed, 96 insertions(+), 33 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/openmeetings/blob/98b9cf9a/openmeetings-web/src/test/java/org/apache/openmeetings/test/AbstractJUnitDefaults.java
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/test/java/org/apache/openmeetings/test/AbstractJUnitDefaults.java b/openmeetings-web/src/test/java/org/apache/openmeetings/test/AbstractJUnitDefaults.java
index 42b95a8..368bd87 100644
--- a/openmeetings-web/src/test/java/org/apache/openmeetings/test/AbstractJUnitDefaults.java
+++ b/openmeetings-web/src/test/java/org/apache/openmeetings/test/AbstractJUnitDefaults.java
@@ -27,10 +27,12 @@ import java.util.UUID;
 
 import org.apache.openmeetings.db.dao.basic.ConfigurationDao;
 import org.apache.openmeetings.db.dao.calendar.AppointmentDao;
+import org.apache.openmeetings.db.dao.user.GroupDao;
 import org.apache.openmeetings.db.dao.user.UserDao;
 import org.apache.openmeetings.db.entity.calendar.Appointment;
 import org.apache.openmeetings.db.entity.room.Room;
 import org.apache.openmeetings.db.entity.user.Address;
+import org.apache.openmeetings.db.entity.user.GroupUser;
 import org.apache.openmeetings.db.entity.user.User;
 import org.apache.openmeetings.installation.ImportInitvalues;
 import org.apache.openmeetings.installation.InstallationConfig;
@@ -41,7 +43,8 @@ import org.springframework.beans.factory.annotation.Autowired;
 
 public abstract class AbstractJUnitDefaults extends AbstractSpringTest {
 	private static final Logger log = Red5LoggerFactory.getLogger(AbstractJUnitDefaults.class);
-	
+	public static final int ONE_HOUR = 60 * 60 * 1000;
+
 	protected static final String username = "admin";
 	protected static final String userpass = "12345";
 	private static final String orgname = "smoketest";
@@ -53,6 +56,8 @@ public abstract class AbstractJUnitDefaults extends AbstractSpringTest {
 	@Autowired
 	private UserDao userDao;
 	@Autowired
+	private GroupDao groupDao;
+	@Autowired
 	private ImportInitvalues importInitvalues;
 	@Autowired
 	protected ConfigurationDao cfgDao;
@@ -72,14 +77,22 @@ public abstract class AbstractJUnitDefaults extends AbstractSpringTest {
 		}
 	}
 
-	public Appointment createAppointment() {
-		Date appointmentstart = new Date();
-		Date appointmentend = new Date();
-		appointmentend.setTime(appointmentstart.getTime() + 3600);
-		return createAppointment(appointmentstart, appointmentend);
+	public Appointment getAppointment() {
+		Date start = new Date();
+		Date end = new Date();
+		end.setTime(start.getTime() + ONE_HOUR);
+		return getAppointment(start, end);
 	}
-	
+
 	public Appointment getAppointment(Date start, Date end) {
+		return getAppointment(userDao.get(1L), start, end);
+	}
+
+	public Appointment getAppointment(User owner, Date start, Date end) {
+		return getAppointment(owner, null, start, end);
+	}
+
+	public Appointment getAppointment(User owner, Room r, Date start, Date end) {
 		assertNotNull("Can't access to appointment dao implimentation", appointmentDao);
 
 		// add new appointment
@@ -99,42 +112,24 @@ public abstract class AbstractJUnitDefaults extends AbstractSpringTest {
 		ap.setIsYearly(false);
 		ap.setPasswordProtected(false);
 
-		ap.setOwner(userDao.get(1L));
+		ap.setOwner(owner);
 		ap.setConnectedEvent(false);
 
 		if (ap.getReminder() == null) {
 			ap.setReminder(Appointment.Reminder.none);
 		}
 		
-		Room r = new Room();
-		r.setType(Room.Type.conference);
-		r.setAppointment(true);
+		if (r == null) {
+			r = new Room();
+			r.setType(Room.Type.conference);
+			r.setAppointment(true);
+		}
 		ap.setRoom(r);
 		return ap;
 	}
 
-	public Appointment createAppointment(Date start, Date end) {
-		assertNotNull("Can't access to appointment dao implimentation", appointmentDao);
-
+	public Appointment createAppointment(Appointment ap) {
 		// add new appointment
-		Appointment ap = new Appointment();
-
-		ap.setTitle("appointmentName");
-		ap.setLocation("appointmentLocation");
-
-		ap.setStart(start);
-		ap.setEnd(end);
-		ap.setDescription("appointmentDescription");
-		ap.setInserted(new Date());
-		ap.setDeleted(false);
-		ap.setIsDaily(false);
-		ap.setIsWeekly(false);
-		ap.setIsMonthly(false);
-		ap.setIsYearly(false);
-		ap.setPasswordProtected(false);
-
-		ap.setOwner(userDao.get(1L));
-		ap.setConnectedEvent(false);
 		ap = appointmentDao.update(ap, null, false);
 		assertNotNull("Cann't add appointment", ap.getId());
 		return ap;
@@ -157,6 +152,8 @@ public abstract class AbstractJUnitDefaults extends AbstractSpringTest {
 		u.setAddress(new Address());
 		u.getAddress().setEmail(String.format("email%s@local", uuid));
 		u.setRights(UserDao.getDefaultRights());
+		u.setTimeZoneId("Asia/Bangkok");
+		u.getGroupUsers().add(new GroupUser(groupDao.get(1L), u));
 		u.updatePassword(cfgDao, getRandomPass(uuid));
 		u.setLanguageId(1L);
 		return u;

http://git-wip-us.apache.org/repos/asf/openmeetings/blob/98b9cf9a/openmeetings-web/src/test/java/org/apache/openmeetings/test/webservice/AbstractWebServiceTest.java
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/test/java/org/apache/openmeetings/test/webservice/AbstractWebServiceTest.java b/openmeetings-web/src/test/java/org/apache/openmeetings/test/webservice/AbstractWebServiceTest.java
index fa2d908..6675d59 100644
--- a/openmeetings-web/src/test/java/org/apache/openmeetings/test/webservice/AbstractWebServiceTest.java
+++ b/openmeetings-web/src/test/java/org/apache/openmeetings/test/webservice/AbstractWebServiceTest.java
@@ -45,7 +45,11 @@ public class AbstractWebServiceTest extends AbstractJUnitDefaults {
 	}
 
 	public static ServiceResult login() {
-		ServiceResult sr = getClient(USER_SERVICE_URL).path("/login").query("user", username).query("pass", userpass)
+		return login(username, userpass);
+	}
+
+	public static ServiceResult login(String user, String pass) {
+		ServiceResult sr = getClient(USER_SERVICE_URL).path("/login").query("user", user).query("pass", pass)
 				.get(ServiceResult.class);
 		assertEquals("Login should be successful", Type.SUCCESS.name(), sr.getType());
 		return sr;

http://git-wip-us.apache.org/repos/asf/openmeetings/blob/98b9cf9a/openmeetings-web/src/test/java/org/apache/openmeetings/test/webservice/TestCalendarService.java
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/test/java/org/apache/openmeetings/test/webservice/TestCalendarService.java b/openmeetings-web/src/test/java/org/apache/openmeetings/test/webservice/TestCalendarService.java
new file mode 100644
index 0000000..b593307
--- /dev/null
+++ b/openmeetings-web/src/test/java/org/apache/openmeetings/test/webservice/TestCalendarService.java
@@ -0,0 +1,62 @@
+/*
+ * 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.openmeetings.test.webservice;
+
+import static org.junit.Assert.assertNotNull;
+
+import java.util.Date;
+import java.util.UUID;
+
+import org.apache.openmeetings.db.dao.room.RoomDao;
+import org.apache.openmeetings.db.dto.basic.ServiceResult;
+import org.apache.openmeetings.db.dto.calendar.AppointmentDTO;
+import org.apache.openmeetings.db.entity.calendar.Appointment;
+import org.apache.openmeetings.db.entity.room.Room;
+import org.apache.openmeetings.db.entity.user.User;
+import org.junit.Test;
+import org.springframework.beans.factory.annotation.Autowired;
+
+public class TestCalendarService extends AbstractWebServiceTest {
+	public final static String CALENDAR_SERVICE_URL = BASE_SERVICES_URL + "/calendar";
+	@Autowired
+	private RoomDao roomDao;
+
+	private void actualTest(Room r) throws Exception {
+		String uuid = UUID.randomUUID().toString();
+		User u = createUser(uuid);
+		ServiceResult sr = login(u.getLogin(), getRandomPass(uuid));
+
+		Date start = new Date();
+		Appointment a = createAppointment(getAppointment(u, r, start, new Date(start.getTime() + ONE_HOUR)));
+
+		AppointmentDTO app = getClient(CALENDAR_SERVICE_URL).path("/room/" + a.getRoom().getId()).query("sid", sr.getMessage())
+				.get(AppointmentDTO.class);
+		assertNotNull("Valid DTO should be returned", app);
+	}
+
+	@Test
+	public void testGetByAppRoom() throws Exception {
+		actualTest(null);
+	}
+
+	@Test
+	public void testGetByPublicRoom() throws Exception {
+		actualTest(roomDao.get(5L)); //default public restricted room
+	}
+}