/** * Licensed to The Apereo Foundation under one or more contributor license * agreements. See the NOTICE file distributed with this work for additional * information regarding copyright ownership. * * * The Apereo Foundation licenses this file to you under the Educational * Community 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://opensource.org/licenses/ecl2.txt * * 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.opencastproject.usertracking.impl; import org.opencastproject.usertracking.api.UserAction; import org.opencastproject.usertracking.api.UserActionList; import org.opencastproject.usertracking.api.UserSession; import org.junit.Assert; import org.junit.Test; import java.util.LinkedList; import java.util.List; public class UserActionListImplTest { /** * Tests that adding events to a UserActionList works using the basic .add method */ @Test public void testBasicAddition() { UserSession us1 = new UserSessionImpl(); us1.setSessionId("4"); us1.setUserId("testing user"); us1.setUserIp("127.0.0.1"); UserSession us2 = new UserSessionImpl(); us2.setSessionId("6"); us2.setUserId("testing user 2"); us2.setUserIp("127.0.0.5"); UserAction ua1 = new UserActionImpl(); ua1.setId(4L); ua1.setInpoint(90); ua1.setIsPlaying(true); ua1.setMediapackageId("false"); ua1.setOutpoint(100); ua1.setSession(us1); ua1.setType("test"); UserAction ua2 = new UserActionImpl(); ua2.setId(6L); ua2.setInpoint(5); ua2.setIsPlaying(false); ua2.setMediapackageId("other"); ua2.setOutpoint(20); ua2.setSession(us2); ua2.setType("other test"); UserActionList ual1 = new UserActionListImpl(); ual1.add(ua1); ual1.setTotal(1); Assert.assertEquals(1, ual1.getTotal()); Assert.assertEquals(1, ual1.getUserActions().size()); Assert.assertEquals(new Long(4), ual1.getUserActions().get(0).getId()); Assert.assertEquals(90, ual1.getUserActions().get(0).getInpoint()); Assert.assertEquals(true, ual1.getUserActions().get(0).getIsPlaying()); Assert.assertEquals("false", ual1.getUserActions().get(0).getMediapackageId()); Assert.assertEquals(100, ual1.getUserActions().get(0).getOutpoint()); Assert.assertEquals("4", ual1.getUserActions().get(0).getSession().getSessionId()); Assert.assertEquals("test", ual1.getUserActions().get(0).getType()); Assert.assertEquals("testing user", ual1.getUserActions().get(0).getSession().getUserId()); Assert.assertEquals("127.0.0.1", ual1.getUserActions().get(0).getSession().getUserIp()); Assert.assertEquals(10, ual1.getUserActions().get(0).getLength()); UserActionList ual2 = new UserActionListImpl(); ual2.add(ua2); ual2.setTotal(1); Assert.assertEquals(1, ual2.getTotal()); Assert.assertEquals(1, ual2.getUserActions().size()); Assert.assertEquals(new Long(6), ual2.getUserActions().get(0).getId()); Assert.assertEquals(5, ual2.getUserActions().get(0).getInpoint()); Assert.assertEquals(false, ual2.getUserActions().get(0).getIsPlaying()); Assert.assertEquals("other", ual2.getUserActions().get(0).getMediapackageId()); Assert.assertEquals(20, ual2.getUserActions().get(0).getOutpoint()); Assert.assertEquals("6", ual2.getUserActions().get(0).getSession().getSessionId()); Assert.assertEquals("other test", ual2.getUserActions().get(0).getType()); Assert.assertEquals("testing user 2", ual2.getUserActions().get(0).getSession().getUserId()); Assert.assertEquals("127.0.0.5", ual2.getUserActions().get(0).getSession().getUserIp()); Assert.assertEquals(15, ual2.getUserActions().get(0).getLength()); } /** * Tests that adding events to a UserActionList works using the list add method */ @Test public void testListAddition() { UserSession us1 = new UserSessionImpl(); us1.setSessionId("4"); us1.setUserId("testing user"); us1.setUserIp("127.0.0.1"); UserSession us2 = new UserSessionImpl(); us2.setSessionId("6"); us2.setUserId("testing user 2"); us2.setUserIp("127.0.0.5"); UserAction ua1 = new UserActionImpl(); ua1.setId(4L); ua1.setInpoint(90); ua1.setIsPlaying(true); ua1.setMediapackageId("false"); ua1.setOutpoint(100); ua1.setSession(us1); ua1.setType("test"); UserAction ua2 = new UserActionImpl(); ua2.setId(6L); ua2.setInpoint(5); ua2.setIsPlaying(false); ua2.setMediapackageId("other"); ua2.setOutpoint(20); ua2.setSession(us2); ua2.setType("other test"); List<UserAction> list = new LinkedList<UserAction>(); list.add(ua1); list.add(ua2); UserActionList ual = new UserActionListImpl(); ual.add(list); ual.setTotal(2); Assert.assertEquals(2, ual.getTotal()); Assert.assertEquals(2, ual.getUserActions().size()); Assert.assertEquals(new Long(4), ual.getUserActions().get(0).getId()); Assert.assertEquals(90, ual.getUserActions().get(0).getInpoint()); Assert.assertEquals(true, ual.getUserActions().get(0).getIsPlaying()); Assert.assertEquals("false", ual.getUserActions().get(0).getMediapackageId()); Assert.assertEquals(100, ual.getUserActions().get(0).getOutpoint()); Assert.assertEquals("4", ual.getUserActions().get(0).getSession().getSessionId()); Assert.assertEquals("test", ual.getUserActions().get(0).getType()); Assert.assertEquals("testing user", ual.getUserActions().get(0).getSession().getUserId()); Assert.assertEquals("127.0.0.1", ual.getUserActions().get(0).getSession().getUserIp()); Assert.assertEquals(new Long(6), ual.getUserActions().get(1).getId()); Assert.assertEquals(5, ual.getUserActions().get(1).getInpoint()); Assert.assertEquals(false, ual.getUserActions().get(1).getIsPlaying()); Assert.assertEquals("other", ual.getUserActions().get(1).getMediapackageId()); Assert.assertEquals(20, ual.getUserActions().get(1).getOutpoint()); Assert.assertEquals("6", ual.getUserActions().get(1).getSession().getSessionId()); Assert.assertEquals("other test", ual.getUserActions().get(1).getType()); Assert.assertEquals("testing user 2", ual.getUserActions().get(1).getSession().getUserId()); Assert.assertEquals("127.0.0.5", ual.getUserActions().get(1).getSession().getUserIp()); Assert.assertEquals(15, ual.getUserActions().get(1).getLength()); } }