2 * Copyright (C) 2015 IBM, Inc.
4 * This program and the accompanying materials are made available under the
5 * terms of the Eclipse Public License v1.0 which accompanies this distribution,
6 * and is available at http://www.eclipse.org/legal/epl-v10.html
9 package org.opendaylight.neutron.e2etest;
11 import java.io.BufferedReader;
12 import java.io.InputStreamReader;
13 import java.io.OutputStreamWriter;
15 import java.lang.Thread;
17 import java.net.HttpURLConnection;
20 import org.junit.Assert;
22 public class NeutronRouterTests {
25 public NeutronRouterTests(String base) {
29 public void router_collection_get_test() {
30 String url = base + "/routers";
31 ITNeutronE2E.test_fetch(url, "Router Collection GET failed");
34 //TODO handle SB check
35 public void singleton_router_create_test() {
36 String url = base + "/routers";
37 String content = "{ \"router\": { " +
38 "\"status\": \"ACTIVE\", " +
39 "\"external_gateway_info\": { " +
40 "\"network_id\": \"8ca37218-28ff-41cb-9b10-039601ea7e6b\" }, " +
41 "\"name\": \"another_router\", " +
42 "\"admin_state_up\": true, " +
43 "\"tenant_id\": \"9bacb3c5d39d41a79512987f338cf177\", " +
44 "\"id\": \"8604a0de-7f6b-409a-a47c-a1cc7bc77b2e\" } } ";
45 ITNeutronE2E.test_create(url, content, "Singleton Router Post Failed NB");
48 //TODO handle SB check
49 public void create_router() {
50 String url = base + "/routers";
51 String content = "{ \"router\": { " +
52 "\"status\": \"ACTIVE\", " +
53 "\"external_gateway_info\": { " +
54 "\"network_id\": \"8ca37218-28ff-41cb-9b10-039601ea7e6b\" }, " +
55 "\"name\": \"another_router\", " +
56 "\"admin_state_up\": true, " +
57 "\"tenant_id\": \"9bacb3c5d39d41a79512987f338cf177\", " +
58 "\"id\": \"8604a0de-7f6b-409a-a47c-a1cc7bc77b2f\" } } ";
59 ITNeutronE2E.test_create(url, content, "Singleton Router Post Failed NB");
62 //TODO handle SB check
63 public void update_router_test() {
64 String url = base + "/routers/8604a0de-7f6b-409a-a47c-a1cc7bc77b2e";
65 String content = "{ \"router\": { " +
66 "\"status\": \"ACTIVE\", " +
67 "\"external_gateway_info\": { " +
68 "\"network_id\": \"8ca37218-28ff-41cb-9b10-039601ea7e6b\" }, " +
69 "\"name\": \"new_name\", " +
70 "\"admin_state_up\": true, " +
71 "\"tenant_id\": \"9bacb3c5d39d41a79512987f338cf177\", " +
72 "\"id\": \"8604a0de-7f6b-409a-a47c-a1cc7bc77b2e\" } } ";
73 ITNeutronE2E.test_modify(url, content, "Singleton Router Put Failed NB");
76 //TODO handle SB check
77 public void router_add_interface_test() {
78 String url = base + "/routers/8604a0de-7f6b-409a-a47c-a1cc7bc77b2e/add_router_interface";
79 String content = "{ " +
80 "\"subnet_id\": \"3b80198d-4f7b-4f77-9ef5-774d54e17126\", " +
81 "\"port_id\": \"d8a4cc85-ad78-46ac-b5a1-8e04f16fa51e\", " +
82 "\"tenant_id\": \"9bacb3c5d39d41a79512987f338cf177\", " +
83 "\"id\": \"8604a0de-7f6b-409a-a47c-a1cc7bc77b2e\"}";
84 ITNeutronE2E.test_modify(url, content, "Add Interface to Router Put Failed NB");
87 //TODO handle SB check
88 public void router_add_interface() {
89 String url = base + "/routers/8604a0de-7f6b-409a-a47c-a1cc7bc77b2f/add_router_interface";
90 String content = "{ " +
91 "\"subnet_id\": \"3b80198d-4f7b-4f77-9ef5-774d54e17126\", " +
92 "\"port_id\": \"d8a4cc85-ad78-46ac-b5a1-8e04f16fa51f\", " +
93 "\"tenant_id\": \"9bacb3c5d39d41a79512987f338cf177\", " +
94 "\"id\": \"8604a0de-7f6b-409a-a47c-a1cc7bc77b2f\"}";
95 ITNeutronE2E.test_modify(url, content, "Router Prep Interface Add Failed");
98 //TODO handle SB check
99 public void router_remove_interface_test() {
100 String url = base + "/routers/8604a0de-7f6b-409a-a47c-a1cc7bc77b2f/remove_router_interface";
101 String content = "{ " +
102 "\"subnet_id\": \"3b80198d-4f7b-4f77-9ef5-774d54e17126\", " +
103 "\"port_id\": \"d8a4cc85-ad78-46ac-b5a1-8e04f16fa51f\", " +
104 "\"tenant_id\": \"9bacb3c5d39d41a79512987f338cf177\", " +
105 "\"id\": \"8604a0de-7f6b-409a-a47c-a1cc7bc77b2f\"}";
106 ITNeutronE2E.test_modify(url, content, "Remove Interface to Router Put Failed NB");
109 public void router_element_get_test() {
110 String url = base + "/routers/8604a0de-7f6b-409a-a47c-a1cc7bc77b2f";
111 ITNeutronE2E.test_fetch(url, true, "Router Element Get Test");
114 public void router_delete_test() {
115 String url = base + "/routers/8604a0de-7f6b-409a-a47c-a1cc7bc77b2f";
116 ITNeutronE2E.test_delete(url, "Router Delete Test");
119 public void router_element_negative_get_test() {
120 String url = base + "/routers/8604a0de-7f6b-409a-a47c-a1cc7bc77b2f";
121 ITNeutronE2E.test_fetch(url, false, "Router Element Negative Get Test");
124 public static void runTests(String base) {
125 NeutronRouterTests router_tester = new NeutronRouterTests(base);
126 router_tester.router_collection_get_test();
127 router_tester.singleton_router_create_test();
128 router_tester.router_add_interface_test();
129 router_tester.update_router_test();
130 router_tester.create_router(); // needed for following tests
131 router_tester.router_add_interface();
132 router_tester.router_element_get_test();
133 router_tester.router_remove_interface_test();
134 router_tester.router_delete_test();
135 router_tester.router_element_negative_get_test();