aboutsummaryrefslogtreecommitdiffstats
path: root/datarouter-prov/src/test/java/datarouter/provisioning/testDRFeedsPost.java
diff options
context:
space:
mode:
Diffstat (limited to 'datarouter-prov/src/test/java/datarouter/provisioning/testDRFeedsPost.java')
-rw-r--r--datarouter-prov/src/test/java/datarouter/provisioning/testDRFeedsPost.java281
1 files changed, 0 insertions, 281 deletions
diff --git a/datarouter-prov/src/test/java/datarouter/provisioning/testDRFeedsPost.java b/datarouter-prov/src/test/java/datarouter/provisioning/testDRFeedsPost.java
deleted file mode 100644
index 51424230..00000000
--- a/datarouter-prov/src/test/java/datarouter/provisioning/testDRFeedsPost.java
+++ /dev/null
@@ -1,281 +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 datarouter.provisioning;
-
-import static org.junit.Assert.*;
-
-import java.io.IOException;
-
-import javax.servlet.http.HttpServletResponse;
-
-import org.apache.http.Header;
-import org.apache.http.HttpEntity;
-import org.apache.http.HttpResponse;
-import org.apache.http.client.methods.HttpPost;
-import org.apache.http.entity.ByteArrayEntity;
-import org.apache.http.entity.ContentType;
-import org.apache.http.util.EntityUtils;
-import org.json.JSONArray;
-import org.json.JSONException;
-import org.json.JSONObject;
-import org.json.JSONTokener;
-import org.junit.AfterClass;
-import org.junit.BeforeClass;
-import org.junit.Test;
-import org.onap.dmaap.datarouter.provisioning.FeedServlet;
-
-public class testDRFeedsPost extends testBase {
- @BeforeClass
- public static void setUpBeforeClass() throws Exception {
- }
-
- @AfterClass
- public static void tearDownAfterClass() throws Exception {
- }
-
- @Test
- public void testNormal() {
- JSONObject jo = buildFeedRequest();
- testCommon(jo, HttpServletResponse.SC_CREATED);
- }
- @Test
- public void testNormalNoCTVersion() {
- JSONObject jo = buildFeedRequest();
- testCommon(jo, HttpServletResponse.SC_CREATED, "application/vnd.att-dr.feed", "JUnit");
- }
- @Test
- public void testBadContentType() {
- JSONObject jo = buildFeedRequest();
- testCommon(jo, HttpServletResponse.SC_UNSUPPORTED_MEDIA_TYPE, "bad/bad", "Junit");
- }
- @Test
- public void testNoBehalfHeader() {
- JSONObject jo = buildFeedRequest();
- testCommon(jo, HttpServletResponse.SC_BAD_REQUEST, FeedServlet.FEED_CONTENT_TYPE, null);
- }
- @Test
- public void testMissingName() {
- JSONObject jo = buildFeedRequest();
- jo.remove("name");
- testCommon(jo, 400);
- }
- @Test
- public void testTooLongName() {
- JSONObject jo = buildFeedRequest();
- jo.put("name", "123456789012345678901234567890");
- testCommon(jo, 400);
- }
- @Test
- public void testMissingVersion() {
- JSONObject jo = buildFeedRequest();
- jo.remove("version");
- testCommon(jo, 400);
- }
- @Test
- public void testTooLongVersion() {
- JSONObject jo = buildFeedRequest();
- jo.put("version", "123456789012345678901234567890");
- testCommon(jo, 400);
- }
- @Test
- public void testTooLongDescription() {
- // normal request
- JSONObject jo = buildFeedRequest();
- jo.put("description", s_257);
- testCommon(jo, 400);
- }
- @Test
- public void testMissingAuthorization() {
- JSONObject jo = buildFeedRequest();
- jo.remove("authorization");
- testCommon(jo, 400);
- }
- @Test
- public void testMissingClassification() {
- JSONObject jo = buildFeedRequest();
- JSONObject j2 = jo.getJSONObject("authorization");
- j2.remove("classification");
- testCommon(jo, 400);
- }
- @Test
- public void testTooLongClassification() {
- JSONObject jo = buildFeedRequest();
- JSONObject j2 = jo.getJSONObject("authorization");
- j2.put("classification", s_33);
- testCommon(jo, 400);
- }
- @Test
- public void testNoEndpointIds() {
- JSONObject jo = buildFeedRequest();
- JSONObject j2 = jo.getJSONObject("authorization");
- j2.put("endpoint_ids", new JSONArray());
- testCommon(jo, 400);
- }
- @Test
- public void testBadIPAddress1() {
- JSONObject jo = buildFeedRequest();
- JSONObject j2 = jo.getJSONObject("authorization");
- JSONArray ja = j2.getJSONArray("endpoint_addrs");
- ja.put("ZZZ^&#$%@#&^%$@#&^");
- testCommon(jo, 400);
- }
- @Test
- public void testBadIPAddress2() {
- JSONObject jo = buildFeedRequest();
- JSONObject j2 = jo.getJSONObject("authorization");
- JSONArray ja = j2.getJSONArray("endpoint_addrs");
- ja.put("135.207.136.678"); // bad IPv4 addr
- testCommon(jo, 400);
- }
- @Test
- public void testBadIPAddress3() {
- JSONObject jo = buildFeedRequest();
- JSONObject j2 = jo.getJSONObject("authorization");
- JSONArray ja = j2.getJSONArray("endpoint_addrs");
- ja.put("2001:1890:1110:d000:1a29::17567"); // bad IPv6 addr
- testCommon(jo, 400);
- }
- @Test
- public void testBadNetMask() {
- JSONObject jo = buildFeedRequest();
- JSONObject j2 = jo.getJSONObject("authorization");
- JSONArray ja = j2.getJSONArray("endpoint_addrs");
- ja.put("10.10.10.10/64");
- testCommon(jo, 400);
- }
- @Test
- public void testGoodIPAddress1() {
- JSONObject jo = buildFeedRequest();
- JSONObject j2 = jo.getJSONObject("authorization");
- JSONArray ja = j2.getJSONArray("endpoint_addrs");
- ja.put("135.207.136.175"); // good IPv4 addr
- testCommon(jo, 201);
- }
- @Test
- public void testGoodIPAddress2() {
- JSONObject jo = buildFeedRequest();
- JSONObject j2 = jo.getJSONObject("authorization");
- JSONArray ja = j2.getJSONArray("endpoint_addrs");
- ja.put("2001:1890:1110:d000:1a29::175"); // good IPv6 addr
- testCommon(jo, 201);
- }
- @Test
- public void testGoodNetMask() {
- JSONObject jo = buildFeedRequest();
- JSONObject j2 = jo.getJSONObject("authorization");
- JSONArray ja = j2.getJSONArray("endpoint_addrs");
- ja.put("2001:1890:1110:d000:1a29::175/120");
- testCommon(jo, 201);
- }
- private void testCommon(JSONObject jo, int expect) {
- testCommon(jo, expect, FeedServlet.FEED_CONTENT_TYPE, "JUnit");
- }
- private void testCommon(JSONObject jo, int expect, String ctype, String bhdr) {
- String url = props.getProperty("test.host") + "/";
- HttpPost httpPost = new HttpPost(url);
- try {
- if (bhdr != null)
- httpPost.addHeader(FeedServlet.BEHALF_HEADER, bhdr);
- String t = jo.toString();
- HttpEntity body = new ByteArrayEntity(t.getBytes(), ContentType.create(ctype));
- httpPost.setEntity(body);
-
- HttpResponse response = httpclient.execute(httpPost);
- ckResponse(response, expect);
-
- HttpEntity entity = response.getEntity();
- ctype = entity.getContentType().getValue().trim();
- int code = response.getStatusLine().getStatusCode();
- if (code == HttpServletResponse.SC_CREATED && !ctype.equals(FeedServlet.FEEDFULL_CONTENT_TYPE))
- fail("Got wrong content type: "+ctype);
-
- if (code == HttpServletResponse.SC_CREATED) {
- Header[] loc = response.getHeaders("Location");
- if (loc == null)
- fail("Missing Location header.");
- }
-
- // do something useful with the response body and ensure it is fully consumed
- if (ctype.equals(FeedServlet.FEEDFULL_CONTENT_TYPE)) {
- // ck Location header!
- JSONObject jo2 = null;
- try {
- jo2 = new JSONObject(new JSONTokener(entity.getContent()));
- System.err.println(jo2.toString());
- } catch (Exception e) {
- fail("Bad JSON: "+e.getMessage());
- }
- try {
- jo2.getString("publisher");
- JSONObject jo3 = jo2.getJSONObject("links");
- jo3.getString("self");
- jo3.getString("publish");
- jo3.getString("subscribe");
- jo3.getString("log");
- } catch (JSONException e) {
- fail("required field missing from result: "+e.getMessage());
- }
- } else {
- EntityUtils.consume(entity);
- }
- } catch (IOException e) {
- fail(e.getMessage());
- } finally {
- httpPost.releaseConnection();
- }
- }
- private JSONObject buildFeedRequest() {
- JSONObject jo = new JSONObject();
- jo.put("name", "JunitFeed");
- jo.put("version", ""+System.currentTimeMillis()); // make version unique
- jo.put("description", "Sample feed used by JUnit to test");
-
- JSONObject jo2 = new JSONObject();
- jo2.put("classification", "unrestricted");
-
- JSONArray ja = new JSONArray();
- JSONObject jo3 = new JSONObject();
- jo3.put("id", "id001");
- jo3.put("password", "re1kwelj");
- JSONObject jo4 = new JSONObject();
- jo4.put("id", "id002");
- jo4.put("password", "o9eqlmbd");
- ja.put(jo3);
- ja.put(jo4);
- jo2.put("endpoint_ids", ja);
-
- ja = new JSONArray();
- ja.put("10.0.0.1");
- ja.put("192.168.0.1");
- ja.put("135.207.136.128/25");
- jo2.put("endpoint_addrs", ja);
-
- jo.put("authorization", jo2);
- return jo;
- }
-}
-/*
-curl -v -X POST -H 'X-ATT-DR-ON-BEHALF-OF: tester' -H 'Content-type: application/vnd.att-dr.feed' --user publisher:tomcat \
- --data "$data" http://127.0.0.1:8080/prov/feed/
-*/