mirror of
https://github.com/Alfresco/alfresco-community-repo.git
synced 2025-08-07 17:49:17 +00:00
Status Updates can now be sent when publishing content to a channel.
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@28392 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
@@ -32,7 +32,12 @@ import static org.alfresco.model.ContentModel.PROP_LONGITUDE;
|
||||
import static org.alfresco.model.ContentModel.PROP_NAME;
|
||||
import static org.alfresco.model.ContentModel.TYPE_CONTENT;
|
||||
import static org.alfresco.repo.publishing.PublishingModel.ASSOC_LAST_PUBLISHING_EVENT;
|
||||
import static org.mockito.Mockito.*;
|
||||
import static org.mockito.Matchers.anyMap;
|
||||
import static org.mockito.Matchers.eq;
|
||||
import static org.mockito.Mockito.never;
|
||||
import static org.mockito.Mockito.times;
|
||||
import static org.mockito.Mockito.verify;
|
||||
import static org.mockito.Mockito.when;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.Calendar;
|
||||
@@ -49,6 +54,7 @@ import org.alfresco.repo.content.MimetypeMap;
|
||||
import org.alfresco.service.cmr.publishing.MutablePublishingPackage;
|
||||
import org.alfresco.service.cmr.publishing.PublishingPackage;
|
||||
import org.alfresco.service.cmr.publishing.PublishingService;
|
||||
import org.alfresco.service.cmr.publishing.StatusUpdate;
|
||||
import org.alfresco.service.cmr.publishing.channels.ChannelService;
|
||||
import org.alfresco.service.cmr.publishing.channels.ChannelType;
|
||||
import org.alfresco.service.cmr.repository.ChildAssociationRef;
|
||||
@@ -59,7 +65,6 @@ import org.alfresco.service.cmr.repository.NodeRef;
|
||||
import org.alfresco.service.namespace.QName;
|
||||
import org.alfresco.service.namespace.RegexQNamePattern;
|
||||
import org.junit.Test;
|
||||
import org.mockito.exceptions.verification.NeverWantedButInvoked;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
|
||||
/**
|
||||
@@ -228,6 +233,7 @@ public class PublishEventActionTest extends AbstractPublishingIntegrationTest
|
||||
verify(channelType, times(1)).publish(eq(publishedNode), anyMap());
|
||||
}
|
||||
|
||||
@SuppressWarnings("unchecked")
|
||||
public void testChannelTypePublishIsCalledOnUpdate() throws Exception
|
||||
{
|
||||
// Create content node with appropriate aspects added.
|
||||
@@ -319,11 +325,33 @@ public class PublishEventActionTest extends AbstractPublishingIntegrationTest
|
||||
verify(channelType, times(1)).publish(eq(publishedNode), anyMap());
|
||||
}
|
||||
|
||||
@SuppressWarnings("unchecked")
|
||||
public void testStatusUpdate() throws Exception
|
||||
{
|
||||
NodeRef source = createContentNode(contentNodeName, content);
|
||||
|
||||
// Create Status Update
|
||||
String message = "Here is the message ";
|
||||
StatusUpdate status = queue.createStatusUpdate(message, source, channelName);
|
||||
|
||||
String url = "http://test/url";
|
||||
|
||||
publishNode(source, status);
|
||||
|
||||
String expMessage = message + url;
|
||||
verify(channelType, times(1)).updateStatus(eq(expMessage), anyMap());
|
||||
}
|
||||
|
||||
private NodeRef publishNode(NodeRef source)
|
||||
{
|
||||
return publishNode(source, null);
|
||||
}
|
||||
|
||||
private NodeRef publishNode(NodeRef source, StatusUpdate statusUpdate)
|
||||
{
|
||||
MutablePublishingPackage pckg = queue.createPublishingPackage();
|
||||
pckg.addNodesToPublish(source);
|
||||
scheduleEvent(pckg);
|
||||
scheduleEvent(pckg, statusUpdate);
|
||||
|
||||
assertNotNull(eventId);
|
||||
NodeRef eventNode = new NodeRef(eventId);
|
||||
@@ -333,11 +361,11 @@ public class PublishEventActionTest extends AbstractPublishingIntegrationTest
|
||||
return eventNode;
|
||||
}
|
||||
|
||||
private void scheduleEvent(PublishingPackage publishPckg)
|
||||
private void scheduleEvent(PublishingPackage publishPckg, StatusUpdate statusUpdate)
|
||||
{
|
||||
Calendar schedule = Calendar.getInstance();
|
||||
schedule.add(Calendar.YEAR, 1);
|
||||
this.eventId = queue.scheduleNewEvent(publishPckg, channelName, schedule, null);
|
||||
this.eventId = queue.scheduleNewEvent(publishPckg, channelName, schedule, null, statusUpdate);
|
||||
}
|
||||
|
||||
private void addGeographicAspect(NodeRef source, double lattitude, double longtitude)
|
||||
|
Reference in New Issue
Block a user