From 3fc19dc9157f4d05bdbd6fd05a52f0592268c4e7 Mon Sep 17 00:00:00 2001 From: Varun Gudisena Date: Thu, 31 Aug 2017 10:52:33 -0500 Subject: Revert package name changes Reverted package name changes to avoid any potential issues. Renamed maven group id only. Issue-id: DMAAP-74 Change-Id: Ic741b602ade60f108d940c0571a1d94b7be2abc2 Signed-off-by: Varun Gudisena --- .../com/att/nsa/cambria/CambriaApiTestCase.java | 52 +++++++++++++++ .../att/nsa/cambria/CambriaRateLimiterTest.java | 78 ++++++++++++++++++++++ .../java/com/att/nsa/cambria/utils/UtilsTest.java | 57 ++++++++++++++++ 3 files changed, 187 insertions(+) create mode 100644 src/test/java/com/att/nsa/cambria/CambriaApiTestCase.java create mode 100644 src/test/java/com/att/nsa/cambria/CambriaRateLimiterTest.java create mode 100644 src/test/java/com/att/nsa/cambria/utils/UtilsTest.java (limited to 'src/test/java/com/att/nsa/cambria') diff --git a/src/test/java/com/att/nsa/cambria/CambriaApiTestCase.java b/src/test/java/com/att/nsa/cambria/CambriaApiTestCase.java new file mode 100644 index 0000000..c14f10c --- /dev/null +++ b/src/test/java/com/att/nsa/cambria/CambriaApiTestCase.java @@ -0,0 +1,52 @@ +/******************************************************************************* + * ============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 com.att.nsa.cambria; + +import java.util.HashMap; +import java.util.Map; + +import junit.framework.TestCase; + +import org.junit.Ignore; + +@Ignore +public class CambriaApiTestCase extends TestCase { + + @Override + protected void setUp() throws Exception { + final Map argMap = new HashMap (); + + argMap.put("broker.type", "memory"); + argMap.put("accounts.dao.class", "com.att.nsa.fe3c.dao.memory.MemoryDAOFactory"); + argMap.put("topic.dao.class", "com.att.nsa.fe3c.dao.memory.MemoryDAOFactory"); + + //CambriaApiServer.start(argMap); + System.out.println("setUp() complete"); + } + + @Override + protected void tearDown() throws Exception { + System.out.println("tearDown() started"); + //CambriaApiServer.stop(); + System.out.println("tearDown() complete"); + } +} diff --git a/src/test/java/com/att/nsa/cambria/CambriaRateLimiterTest.java b/src/test/java/com/att/nsa/cambria/CambriaRateLimiterTest.java new file mode 100644 index 0000000..8e853d2 --- /dev/null +++ b/src/test/java/com/att/nsa/cambria/CambriaRateLimiterTest.java @@ -0,0 +1,78 @@ +/******************************************************************************* + * ============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 com.att.nsa.cambria; + +import junit.framework.TestCase; + +import org.junit.Test; + +import com.att.nsa.apiServer.util.NsaTestClock; + +public class CambriaRateLimiterTest +{ + @Test + public void testRateLimiter () + { + /*final NsaTestClock clock = new NsaTestClock(1, false); + + final String topic = "topic"; + final String consumerGroup = "group"; + final String clientId = "id"; + + final int window = 5; + + // rate limit: 1 empty call/min avg over 5 minutes, with 10ms delay + final CambriaRateLimiter rater = new CambriaRateLimiter ( 1.0, window, 10 ); + try + { + // prime with a call to start rate window + rater.onCall ( topic, consumerGroup, clientId ); + rater.onSend ( topic, consumerGroup, clientId, 1 ); + clock.addMs ( 1000*60*window ); + + // rate should now be 0, with a good window + for ( int i=0; i<4; i++ ) + { + clock.addMs ( 1000*15 ); + rater.onCall ( topic, consumerGroup, clientId ); + rater.onSend ( topic, consumerGroup, clientId, 0 ); + } + // rate is now 0.8 = 4 calls in last 5 minutes = 4/5 = 0.8 + + clock.addMs ( 1000*15 ); + rater.onCall ( topic, consumerGroup, clientId ); + rater.onSend ( topic, consumerGroup, clientId, 0 ); + // rate = 1.0 = 5 calls in last 5 mins + + clock.addMs ( 1000 ); + rater.onCall ( topic, consumerGroup, clientId ); + rater.onSend ( topic, consumerGroup, clientId, 0 ); + // rate = 1.2 = 6 calls in last 5 mins, should fire + + fail ( "Should have thrown rate limit exception." ); + } + catch ( CambriaApiException x ) + { + // good + }*/ + } +} diff --git a/src/test/java/com/att/nsa/cambria/utils/UtilsTest.java b/src/test/java/com/att/nsa/cambria/utils/UtilsTest.java new file mode 100644 index 0000000..58e6934 --- /dev/null +++ b/src/test/java/com/att/nsa/cambria/utils/UtilsTest.java @@ -0,0 +1,57 @@ +/******************************************************************************* + * ============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 com.att.nsa.cambria.utils; + +import static org.junit.Assert.*; + +import java.text.SimpleDateFormat; +import java.util.Date; + +import org.junit.After; +import org.junit.Before; +import org.junit.Test; + +public class UtilsTest { + + private static final String DATE_FORMAT = "dd-MM-yyyy::hh:mm:ss:SSS"; + + @Before + public void setUp() throws Exception { + } + + @After + public void tearDown() throws Exception { + } + + @Test + public void testGetFormattedDate() { + Date now = new Date(); + String dateStr = Utils.getFormattedDate(now); + SimpleDateFormat sdf = new SimpleDateFormat(DATE_FORMAT); + String expectedStr = sdf.format(now); + assertNotNull(dateStr); + assertTrue("Formatted date does not match - expected [" + expectedStr + + "] received [" + dateStr + "]", + dateStr.equalsIgnoreCase(expectedStr)); + } + +} -- cgit 1.2.3-korg