diff options
Diffstat (limited to 'src/test')
6 files changed, 476 insertions, 263 deletions
diff --git a/src/test/java/org/onap/dmaap/dbcapi/database/DBFieldHandlerTest.java b/src/test/java/org/onap/dmaap/dbcapi/database/DBFieldHandlerTest.java index c1e9c35..5171aaa 100644 --- a/src/test/java/org/onap/dmaap/dbcapi/database/DBFieldHandlerTest.java +++ b/src/test/java/org/onap/dmaap/dbcapi/database/DBFieldHandlerTest.java @@ -1,10 +1,11 @@ - /*- * ============LICENSE_START======================================================= * org.onap.dmaap * ================================================================================ * Copyright (C) 2018 AT&T Intellectual Property. All rights reserved. * ================================================================================ + * Modifications Copyright (c) 2019 IBM + * =================================================================== * 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 @@ -18,32 +19,36 @@ * limitations under the License. * ============LICENSE_END========================================================= */ + package org.onap.dmaap.dbcapi.database; -import org.onap.dmaap.dbcapi.database.DBFieldHandler; -import org.onap.dmaap.dbcapi.model.*; -import org.onap.dmaap.dbcapi.testframework.ReflectionHarness; +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertNull; -import static org.junit.Assert.*; +import java.sql.PreparedStatement; +import java.sql.ResultSet; -import org.junit.After; -import org.junit.Before; +import org.apache.log4j.Logger; import org.junit.Test; -import java.util.*; -import java.sql.*; +import org.onap.dmaap.dbcapi.authentication.AafLurAndFish; +import org.onap.dmaap.dbcapi.model.ReplicationType; +import org.onap.dmaap.dbcapi.testframework.ReflectionHarness; public class DBFieldHandlerTest { - private static final String fmt = "%24s: %s%n"; + private static final Logger logger = Logger.getLogger(AafLurAndFish.class); - ReflectionHarness rh = new ReflectionHarness(); + private static final String fmt = "%24s: %s%n"; - private static class TopicReplicationTypeHandler implements DBFieldHandler.SqlOp { + ReflectionHarness rh = new ReflectionHarness(); + + private static class TopicReplicationTypeHandler implements DBFieldHandler.SqlOp { public Object get(ResultSet rs, int index) throws Exception { int val = rs.getInt(index); return (ReplicationType.valueOf(val)); } + public void set(PreparedStatement ps, int index, Object val) throws Exception { if (val == null) { ps.setInt(index, 0); @@ -55,53 +60,55 @@ public class DBFieldHandlerTest { } } + @Test + public void test1() { + // rh.reflect( "org.onap.dmaap.dbcapi.aaf.client.MrTopicConnection", "get", + // "idNotSet@namespaceNotSet:pwdNotSet" ); + } + @Test + public void test2() { + String v = "Validate"; + // rh.reflect( "org.onap.dmaap.dbcapi.aaf.client.MrTopicConnection", "set", v ); + } - @Before - public void setUp() throws Exception { - } - - @After - public void tearDown() throws Exception { - } - - - @Test - public void test1() { - - - //rh.reflect( "org.onap.dmaap.dbcapi.aaf.client.MrTopicConnection", "get", "idNotSet@namespaceNotSet:pwdNotSet" ); - - } - - @Test - public void test2() { - String v = "Validate"; - //rh.reflect( "org.onap.dmaap.dbcapi.aaf.client.MrTopicConnection", "set", v ); - - } - - @Test - public void test3() { - - try { - DBFieldHandler fh = new DBFieldHandler( String.class, "aString", 1 ); - } catch (Exception e ) { - } - - } - - @Test - public void test4() { - - try { - DBFieldHandler fh = new DBFieldHandler( String.class, "aString", 1, null ); - } catch (Exception e ) { - } + @Test + public void test3() { + try { + DBFieldHandler fh = new DBFieldHandler(String.class, "aString", 1); + } catch (Exception e) { + logger.error("Error", e); + } + } - } + @Test + public void test4() { + try { + DBFieldHandler fh = new DBFieldHandler(String.class, "aString", 1, null); + } catch (Exception e) { + logger.error("Error", e); + } + } + @Test + public void testfesc() { + String sampleString = "@xyz,ww;,"; + String finalString = DBFieldHandler.fesc(sampleString); + assertEquals("@axyz@cww@s@c", finalString); + } + @Test + public void testfunesc() { + String sampleString = "@axyz@cww@s@c"; + String convertedString = DBFieldHandler.funesc(sampleString); + assertEquals("@xyz,ww;,", convertedString); + } + @Test + public void testfescWithNull() { + String sampleString1 = DBFieldHandler.fesc(null); + String sampleString2 = DBFieldHandler.funesc(null); + assertNull(null, sampleString1); + assertNull(null, sampleString2); + } } - diff --git a/src/test/java/org/onap/dmaap/dbcapi/model/TopicTest.java b/src/test/java/org/onap/dmaap/dbcapi/model/TopicTest.java index 5180b99..5da3aed 100644 --- a/src/test/java/org/onap/dmaap/dbcapi/model/TopicTest.java +++ b/src/test/java/org/onap/dmaap/dbcapi/model/TopicTest.java @@ -4,6 +4,8 @@ * ================================================================================ * Copyright (C) 2018 AT&T Intellectual Property. All rights reserved. * ================================================================================ + * Modifications Copyright (c) 2019 IBM + * ================================================================================ * 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 @@ -19,62 +21,67 @@ */ package org.onap.dmaap.dbcapi.model; -import static org.junit.Assert.*; +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertTrue; import org.junit.After; import org.junit.Before; import org.junit.Test; +import org.onap.dmaap.dbcapi.model.DmaapObject.DmaapObject_Status; import org.onap.dmaap.dbcapi.testframework.ReflectionHarness; - public class TopicTest { - private static final String fmt = "%24s: %s%n"; - - ReflectionHarness rh = new ReflectionHarness(); - - String f, t, d, e, o; - - @Before - public void setUp() throws Exception { - f = "org.onap.dmaap.interestingTopic"; - t = "interestingTopic"; - d = "A so very interesting topic"; - e = "Yes"; - o = "m12345"; - } - - @After - public void tearDown() throws Exception { - } - - - @Test - public void test1() { - - - rh.reflect( "org.onap.dmaap.dbcapi.model.Topic", "get", null ); - - } - - @Test - public void test2() { - String[] a = { "put", "view" }; - Topic obj = new Topic( f, t, d, e, o ); - - - assertTrue( f.equals( obj.getFqtn() )); - assertTrue( t.equals( obj.getTopicName() )); - assertTrue( d.equals( obj.getTopicDescription() )); - assertTrue( e.equals( obj.getTnxEnabled() )); - assertTrue( o.equals( obj.getOwner() )); - } - - @Test - public void test3() { - - String v = "Validate"; - rh.reflect( "org.onap.dmaap.dbcapi.model.Topic", "set", v ); - } + ReflectionHarness rh = new ReflectionHarness(); + + String f, t, d, e, o; + + @Before + public void setUp() throws Exception { + f = "org.onap.dmaap.interestingTopic"; + t = "interestingTopic"; + d = "A so very interesting topic"; + e = "Yes"; + o = "m12345"; + } + + @After + public void tearDown() throws Exception { + } + + @Test + public void test1() { + rh.reflect("org.onap.dmaap.dbcapi.model.Topic", "get", null); + } + + @Test + public void test2() { + Topic obj = new Topic(f, t, d, e, o); + assertTrue(f.equals(obj.getFqtn())); + assertTrue(t.equals(obj.getTopicName())); + assertTrue(d.equals(obj.getTopicDescription())); + assertTrue(e.equals(obj.getTnxEnabled())); + assertTrue(o.equals(obj.getOwner())); + } + + @Test + public void test3() { + String v = "Validate"; + rh.reflect("org.onap.dmaap.dbcapi.model.Topic", "set", v); + } + + @Test + public void getNumClientsHavingMRClientListNull() { + Topic obj = new Topic(f, t, d, e, o); + obj.setClients(null); + assertEquals(0, obj.getNumClients()); + } + + @Test + public void testTopicInitializationWithInvalidJsonString() { + String json = "{\"key\":\"value\""; + Topic obj = new Topic(json); + assertEquals(DmaapObject_Status.INVALID, obj.getStatus()); + } } diff --git a/src/test/java/org/onap/dmaap/dbcapi/resources/DR_PubResourceTest.java b/src/test/java/org/onap/dmaap/dbcapi/resources/DR_PubResourceTest.java index d4f71bb..bf03088 100644 --- a/src/test/java/org/onap/dmaap/dbcapi/resources/DR_PubResourceTest.java +++ b/src/test/java/org/onap/dmaap/dbcapi/resources/DR_PubResourceTest.java @@ -8,9 +8,9 @@ * 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. @@ -19,156 +19,264 @@ * ============LICENSE_END========================================================= */ package org.onap.dmaap.dbcapi.resources; -import org.onap.dmaap.dbcapi.model.*; -import org.onap.dmaap.dbcapi.service.*; -import static org.junit.Assert.*; -import org.junit.After; -import org.junit.Before; -import org.junit.Test; -import java.util.*; -import java.sql.*; +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertFalse; +import static org.junit.Assert.assertNotNull; +import static org.junit.Assert.assertTrue; -import org.glassfish.jersey.test.JerseyTest; -import org.glassfish.jersey.server.ResourceConfig; import javax.ws.rs.client.Entity; -import javax.ws.rs.core.Application; -import javax.ws.rs.core.Response; import javax.ws.rs.core.MediaType; -import javax.ws.rs.Path; -import javax.ws.rs.GET; - -public class DR_PubResourceTest extends JerseyTest{ - - @Override - protected Application configure() { - return new ResourceConfig() - .register( DR_PubResource.class ) - .register( FeedResource.class ); - } - - private static final String fmt = "%24s: %s%n"; - String d, un, up, f, p; -/* - @Before - public void setUp() throws Exception { - d = "central-onap"; - un = "user1"; - up = "secretW0rd"; - f = "234"; - p = "678"; - } - - @After - public void tearDown() throws Exception { - } -*/ - - - -/* may conflict with test framework! - @Before - public void setUp() throws Exception { - } - - @After - public void tearDown() throws Exception { - } -*/ - - private Feed addFeed( String name, String desc ) { - Feed feed = new Feed( name, "1.0", desc, "dgl", "unrestricted" ); - Entity<Feed> reqEntity = Entity.entity( feed, MediaType.APPLICATION_JSON ); - Response resp = target( "feeds").request().post( reqEntity, Response.class ); - int rc = resp.getStatus(); - System.out.println( "POST feed resp=" + rc ); - assertTrue( rc == 200 || rc == 409 ); - feed = resp.readEntity( Feed.class ); - return feed; - } - - private DR_Pub addPub( String d, String un, String up, String feedId ) { - DR_Pub dr_pub = new DR_Pub( d, un, up, feedId, "" ); - Entity<DR_Pub> reqEntity2 = Entity.entity( dr_pub, MediaType.APPLICATION_JSON); - Response resp = target( "dr_pubs").request().post( reqEntity2, Response.class); - System.out.println( "POST dr_pubs resp=" + resp.getStatus() ); - assertTrue( resp.getStatus() == 201 ); - dr_pub = resp.readEntity( DR_Pub.class ); - - return dr_pub; - } - - private DR_Pub addPubByName( String d, String un, String up, String feedName) { - DR_Pub dr_pub = new DR_Pub( d, un, up, null, "" ); - dr_pub.setFeedName(feedName); - Entity<DR_Pub> reqEntity2 = Entity.entity( dr_pub, MediaType.APPLICATION_JSON); - Response resp = target( "dr_pubs").request().post( reqEntity2, Response.class); - System.out.println( "POST dr_pubs resp=" + resp.getStatus() ); - assertTrue( resp.getStatus() == 201 ); - dr_pub = resp.readEntity( DR_Pub.class ); - - return dr_pub; - } - - @Test - public void GetTest() { - Response resp = target( "dr_pubs").request().get( Response.class ); - System.out.println( "GET dr_pubs resp=" + resp.getStatus() ); - - assertTrue( resp.getStatus() == 200 ); - } - - @Test - public void PostTest() { - - Feed feed = addFeed( "pubPostTest", "post unit test" ); - System.out.println( "fpubPostTest: feedId=" + feed.getFeedId()); - - String d, un, up; - d = "central-onap"; - un = "user1"; - up = "secretW0rd"; - - DR_Pub dr_pub = addPub( d, un, up, feed.getFeedId() ); - } - - @Test - public void PostTestByName() { - - Feed feed = addFeed( "pubPostTest2", "post unit test" ); - System.out.println( "fpubPostTest: feedId=" + feed.getFeedId()); - - String d, un, up; - d = "central-onap"; - un = "user1"; - up = "secretW0rd"; - - DR_Pub dr_pub = addPubByName( d, un, up, "pubPostTest2" ); - } - - @Test - public void PutTest() { - - Feed feed = addFeed( "pubPutTest", "put unit test"); - String d, un, up; - d = "central-onap"; - un = "user1"; - up = "secretW0rd"; - - DR_Pub dr_pub = addPub( d, un, up, feed.getFeedId() ); - - dr_pub.setUserpwd("newSecret"); - Entity<DR_Pub> reqEntity2 = Entity.entity( dr_pub, MediaType.APPLICATION_JSON); - Response resp = target( "dr_pubs") - .path( dr_pub.getPubId() ) - .request() - .put( reqEntity2, Response.class); - System.out.println( "PUT dr_pubs resp=" + resp.getStatus() ); - assertTrue( resp.getStatus() == 200 ); - } - +import javax.ws.rs.core.Response; +import org.glassfish.jersey.server.ResourceConfig; +import org.junit.AfterClass; +import org.junit.Before; +import org.junit.BeforeClass; +import org.junit.Test; +import org.onap.dmaap.dbcapi.database.DatabaseClass; +import org.onap.dmaap.dbcapi.model.ApiError; +import org.onap.dmaap.dbcapi.model.DR_Pub; +import org.onap.dmaap.dbcapi.model.Feed; +import org.onap.dmaap.dbcapi.testframework.DmaapObjectFactory; + +public class DR_PubResourceTest { + + private static final DmaapObjectFactory DMAAP_OBJECT_FACTORY = new DmaapObjectFactory(); + + private static final String DCAE_LOCATION_NAME = "central-onap"; + private static final String USERNAME = "user1"; + private static final String USRPWD = "secretW0rd"; + private static final String FEED_ID = "someFakeFeedId"; + private static final String PUB_ID = "0"; + private static FastJerseyTestContainer testContainer; + private static TestFeedCreator testFeedCreator; + + @BeforeClass + public static void setUpClass() throws Exception { + //TODO: init is still needed here to assure that dmaap is not null + DatabaseClass.getDmaap().init(DMAAP_OBJECT_FACTORY.genDmaap()); + + testContainer = new FastJerseyTestContainer(new ResourceConfig() + .register(DR_PubResource.class) + .register(FeedResource.class)); + + testContainer.init(); + testFeedCreator = new TestFeedCreator(testContainer); + } + + @AfterClass + public static void tearDownClass() throws Exception { + testContainer.destroy(); + /*TODO: Cannot cleanup yet until still other Resources tests depends on the static DB content + + DatabaseClass.clearDatabase(); + DatabaseClass.getDmaap().remove();*/ + } + + @Before + public void cleanupDatabase() { + DatabaseClass.clearDatabase(); + } + + @Test + public void getDr_Pub_test() { + Response resp = testContainer.target("dr_pubs").request().get(Response.class); + assertTrue(resp.getStatus() == 200); + assertTrue(resp.hasEntity()); + } + + @Test + public void addDr_Pub_shallReturnError_whenNoFeedIdAndFeedNameInPubProvided() { + //given + DR_Pub drPub = new DR_Pub(DCAE_LOCATION_NAME, USERNAME, USRPWD, null, PUB_ID); + Entity<DR_Pub> requestedEntity = Entity.entity(drPub, MediaType.APPLICATION_JSON); + + //when + Response resp = testContainer.target("dr_pubs") + .request() + .post(requestedEntity, Response.class); + + //then + assertEquals(400, resp.getStatus()); + ApiError responseError = resp.readEntity(ApiError.class); + assertNotNull(responseError); + assertEquals("feedName", responseError.getFields()); + } + + @Test + public void addDr_Pub_shallReturnError_whenFeedNameProvided_butFeedNotExist() { + //given + DR_Pub drPub = new DR_Pub(DCAE_LOCATION_NAME, USERNAME, USRPWD, null, PUB_ID); + Entity<DR_Pub> requestedEntity = Entity.entity(drPub, MediaType.APPLICATION_JSON); + drPub.setFeedName("feed_name"); + + + //when + Response resp = testContainer.target("dr_pubs") + .request() + .post(requestedEntity, Response.class); + + //then + assertEquals(404, resp.getStatus()); + ApiError responseError = resp.readEntity(ApiError.class); + assertNotNull(responseError); + assertEquals("feedName", responseError.getFields()); + + } + + @Test + public void addDr_Pub_shallReturnError_whenFeedIdProvided_butFeedNotExist() { + //given + DR_Pub drPub = new DR_Pub(DCAE_LOCATION_NAME, USERNAME, USRPWD, FEED_ID, PUB_ID); + Entity<DR_Pub> requestedEntity = Entity.entity(drPub, MediaType.APPLICATION_JSON); + + //when + Response resp = testContainer.target("dr_pubs") + .request() + .post(requestedEntity, Response.class); + + //then + assertEquals(404, resp.getStatus()); + ApiError responseError = resp.readEntity(ApiError.class); + assertNotNull(responseError); + assertEquals("feedId=" + FEED_ID, responseError.getFields()); + } + + @Test + public void addDr_Pub_shallExecuteSuccessfully_whenValidFeedIdProvided() { + //given + String feedId = assureFeedIsInDB(); + DR_Pub drPub = new DR_Pub(DCAE_LOCATION_NAME, USERNAME, USRPWD, feedId); + Entity<DR_Pub> requestedEntity = Entity.entity(drPub, MediaType.APPLICATION_JSON); + + //when + Response resp = testContainer.target("dr_pubs") + .request() + .post(requestedEntity, Response.class); + + //then + assertEquals(201, resp.getStatus()); + } + + @Test + public void addDr_Pub_shallExecuteSuccessfully_whenValidFeedNameProvided() { + //given + String feedName = "testFeed"; + testFeedCreator.addFeed(feedName, "test feed"); + DR_Pub drPub = new DR_Pub(DCAE_LOCATION_NAME, USERNAME, USRPWD, null, PUB_ID); + drPub.setFeedName(feedName); + Entity<DR_Pub> requestedEntity = Entity.entity(drPub, MediaType.APPLICATION_JSON); + + //when + Response resp = testContainer.target("dr_pubs") + .request() + .post(requestedEntity, Response.class); + + //then + assertEquals(201, resp.getStatus()); + } + + @Test + public void updateDr_Pub_shallExecuteSuccessfully_whenAddingNewPublisher() { + //given + String pubId = "5"; + DR_Pub drPub = new DR_Pub(DCAE_LOCATION_NAME, USERNAME, USRPWD, "feedId", PUB_ID); + Entity<DR_Pub> reqEntity2 = Entity.entity(drPub, MediaType.APPLICATION_JSON); + + //when + Response resp = testContainer.target("dr_pubs") + .path(pubId) + .request() + .put(reqEntity2, Response.class); + + //then + assertEquals(200, resp.getStatus()); + + } + + @Test + public void updateDr_Pub_shallReturnError_whenPathIsWrong() { + //given + DR_Pub drPub = new DR_Pub(DCAE_LOCATION_NAME, USERNAME, USRPWD, FEED_ID, PUB_ID); + Entity<DR_Pub> reqEntity2 = Entity.entity(drPub, MediaType.APPLICATION_JSON); + + //when + Response resp = testContainer.target("dr_pubs") + .path("") + .request() + .put(reqEntity2, Response.class); + + //then + assertEquals(405, resp.getStatus()); + } + + @Test + public void deleteDr_Pub_shouldDeleteObjectWithSuccess() { + //given + String feedId = assureFeedIsInDB(); + DR_Pub dr_pub = addPub(DCAE_LOCATION_NAME, USERNAME, USRPWD, feedId); + + //when + Response resp = testContainer.target("dr_pubs") + .path(dr_pub.getPubId()) + .request() + .delete(); + + //then + assertEquals("Shall delete subscription with success", 204, resp.getStatus()); + assertFalse("No entity object shall be returned", resp.hasEntity()); + } + + @Test + public void deleteDr_Pub_shouldReturnErrorResponse_whenGivenPubIdNotFound() { + //given + String notExistingPubId = "6789"; + + //when + Response resp = testContainer.target("dr_pubs") + .path(notExistingPubId) + .request() + .delete(); + + //then + assertEquals("Shall return error, when trying to delete not existing subscription", 404, resp.getStatus()); + ApiError responseError = resp.readEntity(ApiError.class); + assertNotNull(responseError); + assertEquals("pubId", responseError.getFields()); + } + + @Test + public void get_shallReturnExistingObject() { + //given + String feedId = assureFeedIsInDB(); + DR_Pub dr_Pub = addPub(DCAE_LOCATION_NAME, USERNAME, USRPWD, feedId); + + //when + Response resp = testContainer.target("dr_pubs") + .path(dr_Pub.getPubId()) + .request() + .get(); + + //then + assertEquals("Subscription shall be found", 200, resp.getStatus()); + assertEquals("Retrieved object shall be equal to eh one put into DB", dr_Pub, resp.readEntity(DR_Pub.class)); + } + private DR_Pub addPub(String d, String un, String up, String feedId) { + DR_Pub dr_pub = new DR_Pub(d, un, up, feedId, ""); + Entity<DR_Pub> reqEntity2 = Entity.entity(dr_pub, MediaType.APPLICATION_JSON); + Response resp = testContainer.target("dr_pubs").request().post(reqEntity2, Response.class); + System.out.println("POST dr_pubs resp=" + resp.getStatus()); + assertTrue(resp.getStatus() == 201); + dr_pub = resp.readEntity(DR_Pub.class); + return dr_pub; + } + private String assureFeedIsInDB() { + Feed feed = testFeedCreator.addFeed("SubscriberTestFeed", "feed for DR_Sub testing"); + assertNotNull("Feed shall be added into DB properly", feed); + return feed.getFeedId(); + } } diff --git a/src/test/java/org/onap/dmaap/dbcapi/resources/DR_SubResourceTest.java b/src/test/java/org/onap/dmaap/dbcapi/resources/DR_SubResourceTest.java index f812b3d..13b89ea 100644 --- a/src/test/java/org/onap/dmaap/dbcapi/resources/DR_SubResourceTest.java +++ b/src/test/java/org/onap/dmaap/dbcapi/resources/DR_SubResourceTest.java @@ -50,6 +50,7 @@ public class DR_SubResourceTest { private static final String DELIVERY_URL_TEMPLATE = "https://subscriber.onap.org/delivery/"; private static final String LOG_URL_TEMPLATE = "https://dr-prov/sublog/"; private static FastJerseyTestContainer testContainer; + private static TestFeedCreator testFeedCreator; @BeforeClass public static void setUpClass() throws Exception { @@ -60,6 +61,7 @@ public class DR_SubResourceTest { .register(DR_SubResource.class) .register(FeedResource.class)); testContainer.init(); + testFeedCreator = new TestFeedCreator(testContainer); } @AfterClass @@ -189,7 +191,7 @@ public class DR_SubResourceTest { public void addDr_Sub_shallExecuteSuccessfully_whenValidFeedNameProvided() { //given String feedName = "testFeed"; - addFeed(feedName, "test feed"); + testFeedCreator.addFeed(feedName, "test feed"); DR_Sub drSub = new DR_Sub(DCAE_LOCATION_NAME, USERNAME, USRPWD, null, DELIVERY_URL, LOG_URL, true); drSub.setFeedName(feedName); Entity<DR_Sub> requestedEntity = Entity.entity(drSub, MediaType.APPLICATION_JSON); @@ -390,17 +392,6 @@ public class DR_SubResourceTest { assertNotNull(resp.readEntity(ApiError.class)); } - private Feed addFeed(String name, String desc) { - Feed feed = new Feed(name, "1.0", desc, "dgl", "unrestricted"); - Entity<Feed> reqEntity = Entity.entity(feed, MediaType.APPLICATION_JSON); - Response resp = testContainer.target("feeds").request().post(reqEntity, Response.class); - int rc = resp.getStatus(); - System.out.println("POST feed resp=" + rc); - assertTrue(rc == 200 || rc == 409); - feed = resp.readEntity(Feed.class); - return feed; - } - private DR_Sub addSub(String d, String un, String up, String feedId) { DR_Sub dr_sub = new DR_Sub(d, un, up, feedId, "https://subscriber.onap.org/foo", "https://dr-prov/sublog", true); @@ -415,7 +406,7 @@ public class DR_SubResourceTest { } private String assureFeedIsInDB() { - Feed feed = addFeed("SubscriberTestFeed", "feed for DR_Sub testing"); + Feed feed = testFeedCreator.addFeed("SubscriberTestFeed", "feed for DR_Sub testing"); assertNotNull("Feed shall be added into DB properly", feed); return feed.getFeedId(); } diff --git a/src/test/java/org/onap/dmaap/dbcapi/resources/RequiredFieldExceptionTest.java b/src/test/java/org/onap/dmaap/dbcapi/resources/RequiredFieldExceptionTest.java new file mode 100644 index 0000000..d3dcc42 --- /dev/null +++ b/src/test/java/org/onap/dmaap/dbcapi/resources/RequiredFieldExceptionTest.java @@ -0,0 +1,51 @@ +/*- + * ============LICENSE_START======================================================= + * org.onap.dmaap + * ================================================================================ + * Copyright (C) 2018 AT&T Intellectual Property. All rights reserved. + * ================================================================================ + * Modifications Copyright (c) 2019 IBM + * =================================================================== + * 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========================================================= + */ + +package org.onap.dmaap.dbcapi.resources; + +import static javax.ws.rs.core.Response.Status.BAD_REQUEST; +import static org.junit.Assert.assertEquals; + +import org.junit.Before; +import org.junit.Test; +import org.onap.dmaap.dbcapi.model.ApiError; + +public class RequiredFieldExceptionTest { + ApiError apiError; + RequiredFieldException requiredFieldException; + String expectedValue; + + @Before + public void setUp() { + apiError = new ApiError(BAD_REQUEST.getStatusCode(), "value 'with white space' violates regexp check '^\\S+$'", + "field_name"); + + expectedValue = "RequiredFieldException{" + "apiError=" + apiError + '}'; + + requiredFieldException = new RequiredFieldException(apiError); + } + + @Test + public void testRequiredFieldExceptionToString() { + assertEquals(expectedValue, requiredFieldException.toString()); + } +} diff --git a/src/test/java/org/onap/dmaap/dbcapi/resources/TestFeedCreator.java b/src/test/java/org/onap/dmaap/dbcapi/resources/TestFeedCreator.java new file mode 100644 index 0000000..e4dedb1 --- /dev/null +++ b/src/test/java/org/onap/dmaap/dbcapi/resources/TestFeedCreator.java @@ -0,0 +1,49 @@ +/*-
+ * ============LICENSE_START=======================================================
+ * org.onap.dmaap
+ * ================================================================================
+ * Copyright (C) 2019 Nokia 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=========================================================
+ */
+package org.onap.dmaap.dbcapi.resources;
+
+import static org.junit.Assert.assertTrue;
+
+import javax.ws.rs.client.Entity;
+import javax.ws.rs.core.MediaType;
+import javax.ws.rs.core.Response;
+import org.onap.dmaap.dbcapi.model.Feed;
+
+
+public class TestFeedCreator {
+
+
+ private final FastJerseyTestContainer testContainer;
+
+ public TestFeedCreator(FastJerseyTestContainer testContainer) {
+ this.testContainer = testContainer;
+ }
+
+ Feed addFeed(String name, String desc) {
+ Feed feed = new Feed(name, "1.0", desc, "dgl", "unrestricted");
+ Entity<Feed> reqEntity = Entity.entity(feed, MediaType.APPLICATION_JSON);
+ Response resp = testContainer.target("feeds").request().post(reqEntity, Response.class);
+ int rc = resp.getStatus();
+ System.out.println("POST feed resp=" + rc);
+ assertTrue(rc == 200 || rc == 409);
+ feed = resp.readEntity(Feed.class);
+ return feed;
+ }
+}
|