diff options
Diffstat (limited to 'src/main/java/org/onap/dmaap/mr/test/support')
-rw-r--r-- | src/main/java/org/onap/dmaap/mr/test/support/MRBatchingPublisherMock.java | 184 | ||||
-rw-r--r-- | src/main/java/org/onap/dmaap/mr/test/support/MRConsumerMock.java | 169 |
2 files changed, 0 insertions, 353 deletions
diff --git a/src/main/java/org/onap/dmaap/mr/test/support/MRBatchingPublisherMock.java b/src/main/java/org/onap/dmaap/mr/test/support/MRBatchingPublisherMock.java deleted file mode 100644 index 3e64c35..0000000 --- a/src/main/java/org/onap/dmaap/mr/test/support/MRBatchingPublisherMock.java +++ /dev/null @@ -1,184 +0,0 @@ -/******************************************************************************* - * ============LICENSE_START======================================================= - * org.onap.dmaap - * ================================================================================ - * Copyright © 2017 AT&T Intellectual Property. All rights reserved. - * ================================================================================ - * 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. - * ============LICENSE_END========================================================= - * - * ECOMP is a trademark and service mark of AT&T Intellectual Property. - * - *******************************************************************************/ -package org.onap.dmaap.mr.test.support; - -import java.util.Collection; -import java.util.LinkedList; -import java.util.List; -import java.util.concurrent.TimeUnit; - -import org.slf4j.Logger; - -import org.onap.dmaap.mr.client.MRBatchingPublisher; -import org.onap.dmaap.mr.client.response.MRPublisherResponse; - -/** - * A helper for unit testing systems that use a MRPublisher. When setting - * up your test, inject an instance into MRClientFactory to have it return - * the mock client. - * - * @author author - * - */ -public class MRBatchingPublisherMock implements MRBatchingPublisher -{ - public class Entry - { - public Entry ( String partition, String msg ) - { - fPartition = partition; - fMessage = msg; - } - - @Override - public String toString () - { - return fMessage; - } - - public final String fPartition; - public final String fMessage; - } - - public MRBatchingPublisherMock () - { - fCaptures = new LinkedList<> (); - } - - public interface Listener - { - void onMessage ( Entry e ); - } - public void addListener ( Listener listener ) - { - fListeners.add ( listener ); - } - - public List<Entry> getCaptures () - { - return getCaptures ( new MessageFilter () { @Override public boolean match ( String msg ) { return true; } } ); - } - - public interface MessageFilter - { - boolean match ( String msg ); - } - - public List<Entry> getCaptures ( MessageFilter filter ) - { - final LinkedList<Entry> result = new LinkedList<> (); - for ( Entry capture : fCaptures ) - { - if ( filter.match ( capture.fMessage ) ) - { - result.add ( capture ); - } - } - return result; - } - - public int received () - { - return fCaptures.size(); - } - - public void reset () - { - fCaptures.clear (); - } - - @Override - public int send ( String partition, String msg ) - { - final Entry e = new Entry ( partition, msg ); - - fCaptures.add ( e ); - for ( Listener l : fListeners ) - { - l.onMessage ( e ); - } - return 1; - } - - @Override - public int send ( message msg ) - { - return send ( msg.fPartition, msg.fMsg ); - } - @Override - public int send ( String msg ) - { - return 1; - - } - - @Override - public int send ( Collection<message> msgs ) - { - int sum = 0; - for ( message m : msgs ) - { - sum += send ( m ); - } - return sum; - } - - @Override - public int getPendingMessageCount () - { - return 0; - } - - @Override - public List<message> close ( long timeout, TimeUnit timeoutUnits ) - { - return new LinkedList<> (); - } - - @Override - public void close () - { - } - - @Override - public void setApiCredentials ( String apiKey, String apiSecret ) - { - } - - @Override - public void clearApiCredentials () - { - } - - @Override - public void logTo ( Logger log ) - { - } - - private final LinkedList<Entry> fCaptures; - private LinkedList<Listener> fListeners = new LinkedList<> (); - @Override - public MRPublisherResponse sendBatchWithResponse() { - // TODO Auto-generated method stub - return null; - } -} diff --git a/src/main/java/org/onap/dmaap/mr/test/support/MRConsumerMock.java b/src/main/java/org/onap/dmaap/mr/test/support/MRConsumerMock.java deleted file mode 100644 index afa36ea..0000000 --- a/src/main/java/org/onap/dmaap/mr/test/support/MRConsumerMock.java +++ /dev/null @@ -1,169 +0,0 @@ -/******************************************************************************* - * ============LICENSE_START======================================================= - * org.onap.dmaap - * ================================================================================ - * Copyright © 2017 AT&T Intellectual Property. All rights reserved. - * ================================================================================ - * 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. - * ============LICENSE_END========================================================= - * - * ECOMP is a trademark and service mark of AT&T Intellectual Property. - * - *******************************************************************************/ -package org.onap.dmaap.mr.test.support; - -import java.io.IOException; -import java.util.LinkedList; -import java.util.List; - -import org.slf4j.Logger; - -import org.onap.dmaap.mr.client.MRConsumer; -import org.onap.dmaap.mr.client.response.MRConsumerResponse; - -/** - * A helper for unit testing systems that use a MRConsumer. When setting - * up your test, inject an instance into MRClientFactory to have it return - * the mock client. - * - * @author author - * - */ -public class MRConsumerMock implements MRConsumer -{ - public class Entry - { - public Entry ( long waitMs, int statusCode, List<String> msgs ) - { - fWaitMs = waitMs; - fStatusCode = statusCode; - fStatusMsg = null; - fMsgs = new LinkedList<> ( msgs ); - } - - public Entry ( long waitMs, int statusCode, String statusMsg ) - { - fWaitMs = waitMs; - fStatusCode = statusCode; - fStatusMsg = statusMsg; - fMsgs = null; - } - - public LinkedList<String> run () throws IOException - { - try - { - Thread.sleep ( fWaitMs ); - if ( fStatusCode >= 200 && fStatusCode <= 299 ) - { - return fMsgs; - } - throw new IOException ( "" + fStatusCode + " " + fStatusMsg ); - } - catch ( InterruptedException e ) - { - Thread.currentThread().interrupt(); - throw new IOException ( e ); - } - } - - private final long fWaitMs; - private final int fStatusCode; - private final String fStatusMsg; - private final LinkedList<String> fMsgs; - } - - public MRConsumerMock () - { - fReplies = new LinkedList<> (); - } - - @Override - public void close () - { - } - - @Override - public void setApiCredentials ( String apiKey, String apiSecret ) - { - } - - @Override - public void clearApiCredentials () - { - } - - public synchronized void add ( Entry e ) - { - fReplies.add ( e ); - } - - public void addImmediateMsg ( String msg ) - { - addDelayedMsg ( 0, msg ); - } - - public void addDelayedMsg ( long delay, String msg ) - { - final LinkedList<String> list = new LinkedList<> (); - list.add ( msg ); - add ( new Entry ( delay, 200, list ) ); - } - - public void addImmediateMsgGroup ( List<String> msgs ) - { - addDelayedMsgGroup ( 0, msgs ); - } - - public void addDelayedMsgGroup ( long delay, List<String> msgs ) - { - final LinkedList<String> list = new LinkedList<> ( msgs ); - add ( new Entry ( delay, 200, list ) ); - } - - public void addImmediateError ( int statusCode, String statusText ) - { - add ( new Entry ( 0, statusCode, statusText ) ); - } - - @Override - public Iterable<String> fetch () throws IOException - { - return fetch ( -1, -1 ); - } - - @Override - public Iterable<String> fetch ( int timeoutMs, int limit ) throws IOException - { - return fReplies.size () > 0 ? fReplies.removeFirst ().run() : new LinkedList<String>(); - } - - @Override - public void logTo ( Logger log ) - { - } - - private final LinkedList<Entry> fReplies; - - @Override - public MRConsumerResponse fetchWithReturnConsumerResponse() { - // TODO Auto-generated method stub - return null; - } - - @Override - public MRConsumerResponse fetchWithReturnConsumerResponse(int timeoutMs, - int limit) { - // TODO Auto-generated method stub - return null; - } -} |