You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@streams.apache.org by ds...@apache.org on 2013/11/07 20:55:29 UTC
svn commit: r1539785 -
/incubator/streams/branches/webservice/streams-components/src/test/java/org/apache/streams/components/service/StreamsPublisherRegistrationServiceTest.java
Author: dsullivan
Date: Thu Nov 7 19:55:29 2013
New Revision: 1539785
URL: http://svn.apache.org/r1539785
Log:
adding StreamsPublisherRegistrationServiceTest
Added:
incubator/streams/branches/webservice/streams-components/src/test/java/org/apache/streams/components/service/StreamsPublisherRegistrationServiceTest.java
Added: incubator/streams/branches/webservice/streams-components/src/test/java/org/apache/streams/components/service/StreamsPublisherRegistrationServiceTest.java
URL: http://svn.apache.org/viewvc/incubator/streams/branches/webservice/streams-components/src/test/java/org/apache/streams/components/service/StreamsPublisherRegistrationServiceTest.java?rev=1539785&view=auto
==============================================================================
--- incubator/streams/branches/webservice/streams-components/src/test/java/org/apache/streams/components/service/StreamsPublisherRegistrationServiceTest.java (added)
+++ incubator/streams/branches/webservice/streams-components/src/test/java/org/apache/streams/components/service/StreamsPublisherRegistrationServiceTest.java Thu Nov 7 19:55:29 2013
@@ -0,0 +1,70 @@
+package org.apache.streams.components.service;
+
+import org.apache.streams.components.service.impl.CassandraPublisherService;
+import org.apache.streams.components.service.impl.StreamsPublisherRegistrationServiceImpl;
+import org.apache.streams.persistence.model.ActivityStreamsPublisher;
+import org.junit.Before;
+import org.junit.Rule;
+import org.junit.Test;
+import org.junit.rules.ExpectedException;
+
+import static org.easymock.EasyMock.*;
+import static org.hamcrest.CoreMatchers.instanceOf;
+import static org.hamcrest.CoreMatchers.is;
+import static org.hamcrest.core.IsEqual.equalTo;
+import static org.junit.Assert.assertThat;
+
+public class StreamsPublisherRegistrationServiceTest {
+ private StreamsPublisherRegistrationService publisherRegistrationService;
+ private StreamsPublisherRepositoryService publisherRepositoryService;
+
+ @Rule
+ public ExpectedException thrown = ExpectedException.none();
+
+ @Before
+ public void setup(){
+ publisherRepositoryService = createMock(CassandraPublisherService.class);
+ publisherRegistrationService = new StreamsPublisherRegistrationServiceImpl(publisherRepositoryService);
+ }
+
+ @Test
+ public void registerTest_SrcNull() throws Exception {
+ String publisherJson = "{}";
+
+ thrown.expect(Exception.class);
+ thrown.expectMessage("configuration src is null");
+
+ publisherRegistrationService.register(publisherJson);
+ }
+
+ @Test
+ public void registerTest_SrcValid_inDB() throws Exception{
+ String publisherJson = "{\"src\":\"this is my src!\"}";
+ String inRoute = "this is returned inRoute";
+ ActivityStreamsPublisher publisher= createMock(ActivityStreamsPublisher.class);
+
+ expect(publisherRepositoryService.getActivityStreamsPublisherBySrc("this is my src!")).andReturn(publisher);
+ expect(publisher.getInRoute()).andReturn(inRoute);
+ replay(publisherRepositoryService,publisher);
+
+ String returned = publisherRegistrationService.register(publisherJson);
+
+ assertThat(returned, is(equalTo(inRoute)));
+ }
+
+ @Test
+ public void registerTest_SrcValid_notInDB() throws Exception{
+ String publisherJson = "{\"src\":\"this is my src!\"}";
+ String inRoute = "this is returned inRoute";
+
+ expect(publisherRepositoryService.getActivityStreamsPublisherBySrc("this is my src!")).andReturn(null);
+ publisherRepositoryService.savePublisher(isA(ActivityStreamsPublisher.class));
+ expectLastCall();
+ replay(publisherRepositoryService);
+
+ String returned = publisherRegistrationService.register(publisherJson);
+
+ assertThat(returned, is(instanceOf(String.class)));
+ verify(publisherRepositoryService);
+ }
+}