/* * © Copyright IBM Corp. 2014 * * Licensed 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 com.ibm.sbt.services.client.connections.activities; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; import org.junit.Assert; import org.junit.Test; import com.ibm.commons.xml.XMLException; import com.ibm.sbt.services.client.ClientServicesException; import com.ibm.sbt.services.client.base.datahandlers.EntityList; import com.ibm.sbt.services.client.base.datahandlers.XmlDataHandler; /** * @author mwallace * */ public class ActivityReadNoTagsTest extends BaseActivityServiceTest { @Test @org.junit.Ignore("Issue with Mime Depdency") public void testCreateActivity() throws ClientServicesException, XMLException { Activity activity = new Activity(); activity.setTitle(createActivityTitle()); activityService.createActivity(activity); System.out.println(activity.getTags().size()); //System.out.println(activity.toXmlString()); List<String> no_tags = new ArrayList<String>(); List<String> tags = new ArrayList<String>(); tags.add("user=1234567890"); activity.setTags(tags); activityService.updateActivity(activity); System.out.println(activity.getTags().size()); //System.out.println(activity.toXmlString()); Map<String, String> params = new HashMap<String, String>(); params.put("nodetype", "activity"); params.put("page", "1"); params.put("priority", "all"); params.put("tag", "user=1234567890"); params.put("ps", "1"); params.put("completed", "yes"); EntityList<Activity> activities = activityService.getMyActivities(params); Assert.assertEquals("Invalid activity count", 1, activities.size()); System.out.println(activities.get(0).getTags().size()); createActivityNode(activity.getActivityUuid(), "^^^^^^"); activities = activityService.getMyActivities(params); System.out.println(activities.get(0).getTags().size()); Assert.assertEquals("Invalid activity count", 1, activities.size()); createActivityNode(activity.getActivityUuid(), "^^^^^^"); activities = activityService.getMyActivities(params); Assert.assertEquals("Invalid activity count", 1, activities.size()); System.out.println(activities.get(0).getTags().size()); tags.add("user=1234567890"); activity.setTags(tags); activityService.updateActivity(activity); activities = activityService.getMyActivities(params); Assert.assertEquals("Invalid activity count", 1, activities.size()); System.out.println(activities.get(0).getTags().size()); createActivityNode(activity.getActivityUuid(), "^^^^^^"); activities = activityService.getMyActivities(params); Assert.assertEquals("Invalid activity count", 1, activities.size()); System.out.println(activities.get(0).getTags().size()); EntityList<ActivityUpdate> updates = activityService.getHistory(activity.getActivityUuid()); for (ActivityUpdate update : updates) { System.out.println("----------------------------------------------------------------------------------------------------------------------------------------------------------"); System.out.println(update.getType()); System.out.println(update.getTitle()); System.out.println(update.getAuthor().getName()); System.out.println(XmlDataHandler.dateFormat.format(update.getUpdated())); } /* testTags(activity, tags); removeTags(activity); testTags(activity, tags); removeTags(activity); testTags(activity, tags); removeTags(activity); testTags(activity, tags); */ } protected void testTags(Activity activity, List<String> tags) throws ClientServicesException { activity.setTags(tags); activityService.updateActivity(activity); System.out.println(activity.getTags().size()); //System.out.println(activity.toXmlString()); //https://apps.na.collabservtest.lotus.com/activities/service/atom2/activities?nodetype=activity&page=1&priority=all&tag=user%3D20133257&ps=1&completed=yes Map<String, String> params = new HashMap<String, String>(); params.put("nodetype", "activity"); params.put("page", "1"); params.put("priority", "all"); params.put("tag", "user=1234567890"); params.put("ps", "1"); params.put("completed", "yes"); EntityList<Activity> activities = activityService.getMyActivities(params); String activityUuid = activities.get(0).getActivityUuid(); Assert.assertEquals("Invalid activity count", 1, activities.size()); //System.out.println(activityUuid); System.out.println(activities.get(0).getTags().size()); //System.out.println(activities.get(0).toXmlString()); //Assert.assertTrue("Invalid activity tags", activities.get(0).getTags().size() > 0); Activity read = activityService.getActivity(activityUuid); System.out.println(read.getTags().size()); } protected void removeTags(Activity activity) throws ClientServicesException { List<String> tags = new ArrayList<String>(); activity.setTags(tags); activityService.updateActivity(activity); //System.out.println(activity.getTags().size()); } @Test @org.junit.Ignore("Issue with Mime Depdency") public void testReadActivity() throws ClientServicesException, XMLException { //https://apps.na.collabservtest.lotus.com/activities/service/atom2/activities?nodetype=activity&page=1&priority=all&tag=user%3D20133257&ps=1&completed=yes Map<String, String> params = new HashMap<String, String>(); params.put("nodetype", "activity"); params.put("page", "1"); params.put("priority", "all"); params.put("tag", "user=20133257"); params.put("ps", "1"); params.put("completed", "yes"); EntityList<Activity> activities = activityService.getMyActivities(params); String activityUuid = activities.get(0).getActivityUuid(); Assert.assertEquals("Invalid activity count", 1, activities.size()); System.out.println(activityUuid); System.out.println(activities.get(0).getTags().size()); System.out.println(activities.get(0).toXmlString()); Assert.assertTrue("Invalid activity tags", activities.get(0).getTags().size() > 0); Activity read = activityService.getActivity(activityUuid); System.out.println(read.getTags().size()); System.out.println(read.toXmlString()); EntityList<ActivityUpdate> updates = activityService.getHistory(activityUuid); for (ActivityUpdate update : updates) { System.out.println("----------------------------------------------------------------------------------------------------------------------------------------------------------"); System.out.println(update.getType()); System.out.println(update.getTitle()); System.out.println(update.getAuthor().getName()); System.out.println(XmlDataHandler.dateFormat.format(update.getUpdated())); } System.out.println("\n\n"); EntityList<ActivityNode> descendants = activityService.getActivityDescendants(activityUuid); for (ActivityNode descendant : descendants) { System.out.println("----------------------------------------------------------------------------------------------------------------------------------------------------------"); System.out.println(descendant.getType()); System.out.println(descendant.getTitle()); } /* int page = 1; params = new HashMap<String, String>(); params.put("page", "" + page); params.put("ps", "100"); activities = activityService.getMyActivities(params); int totalResults = activities.getTotalResults(); int readCount = activities.size(); while (readCount < totalResults) { for (Activity activity : activities) { if (activity.getActivityUuid().equals(activityUuid)) { System.out.println(activity.getTags().size()); System.out.println(activity.toXmlString()); } } params.put("page", "" + ++page); activities = activityService.getMyActivities(params); totalResults = activities.getTotalResults(); readCount += activities.size(); } for (Activity activity : activities) { if (activity.getActivityUuid().equals(activityUuid)) { System.out.println(activity.getTags().size()); System.out.println(activity.toXmlString()); } } page = 1; params = new HashMap<String, String>(); params.put("page", "" + page); params.put("ps", "100"); activities = activityService.getAllActivities(params); totalResults = activities.getTotalResults(); readCount = activities.size(); while (readCount < totalResults) { for (Activity activity : activities) { if (activity.getActivityUuid().equals(activityUuid) && "activity".equals(activity.getType())) { System.out.println(activity.getTags().size()); System.out.println(activity.toXmlString()); } } params.put("page", "" + ++page); activities = activityService.getAllActivities(params); totalResults = activities.getTotalResults(); readCount += activities.size(); } for (Activity activity : activities) { if (activity.getActivityUuid().equals(activityUuid) && "activity".equals(activity.getType())) { System.out.println(activity.getTags().size()); System.out.println(activity.toXmlString()); } } */ } }