Merge "Bug 5431: Fixing bug & adding new tests for code coverage"
[neutron.git] / integration / test / src / test / java / org / opendaylight / neutron / e2etest / NeutronLBPoolMembersTests.java
1 /*
2  * Copyright (C) 2015 IBM, Inc.
3  *
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
7  */
8
9 package org.opendaylight.neutron.e2etest;
10
11 import java.io.OutputStreamWriter;
12
13 import java.lang.Thread;
14
15 import java.net.HttpURLConnection;
16 import java.net.URL;
17
18 import org.junit.Assert;
19
20 public class NeutronLBPoolMembersTests {
21     String base;
22
23     public NeutronLBPoolMembersTests(String base) {
24         this.base = base;
25     }
26
27     public void pool_member_collection_get_test() {
28         String url = base + "/lbaas/pools/12ff63af-4127-4074-a251-bcb2ecc53ebe/members";
29         ITNeutronE2E.test_fetch(url, "LB Pool Member Collection GET failed");
30     }
31
32     //TODO handle SB check
33     public String singleton_lb_pool_member_create_test() {
34         String url = base + "/lbaas/pools/12ff63af-4127-4074-a251-bcb2ecc53ebe/members";
35         String content = " { \"member\": { \"address\": \"10.0.0.8\"," +
36             "\"admin_state_up\": true," +
37             "\"id\": \"9a7aff27-fd41-4ec1-ba4c-3eb92c629313\"," +
38             "\"protocol_port\": 80," +
39             "\"subnet_id\": \"013d3059-87a4-45a5-91e9-d721068ae0b2\"," +
40             "\"tenant_id\": \"1a3e005cf9ce40308c900bcb08e5320c\"," +
41             "\"weight\": 1 } }";
42         ITNeutronE2E.test_create(url, content, "Singleton LB Pool Member Post Failed NB");
43         return content;
44     }
45
46     public void singleton_lb_pool_member_get_with_one_query_item_test(String createJsonString) {
47         String url = base + "/lbaas/pools/12ff63af-4127-4074-a251-bcb2ecc53ebe/members";
48         ITNeutronE2E.test_fetch_with_one_query_item(url, createJsonString, "members");
49     }
50
51     public void pool_member_update_test() {
52         String url = base + "/lbaas/pools/12ff63af-4127-4074-a251-bcb2ecc53ebe/members/9a7aff27-fd41-4ec1-ba4c-3eb92c629313";
53         String content = " { \"member\": { \"address\": \"10.0.0.8\"," +
54             "\"admin_state_up\": false," +
55             "\"id\": \"9a7aff27-fd41-4ec1-ba4c-3eb92c629313\"," +
56             "\"protocol_port\": 80," +
57             "\"subnet_id\": \"013d3059-87a4-45a5-91e9-d721068ae0b2\"," +
58             "\"tenant_id\": \"1a3e005cf9ce40308c900bcb08e5320c\"," +
59             "\"weight\": 5 } }";
60         ITNeutronE2E.test_modify(url, content,"LB Pool Member Put Failed");
61     }
62    
63     public void pool_member_element_get_test() {
64         String url = base + "/lbaas/pools/12ff63af-4127-4074-a251-bcb2ecc53ebe/members/9a7aff27-fd41-4ec1-ba4c-3eb92c629313";
65         ITNeutronE2E.test_fetch(url, true ,"LB Pool Member Element Get Failed");
66     }
67
68     public void pool_member_element_get_with_query_test() {
69         String url = base + "/lbaas/pools/12ff63af-4127-4074-a251-bcb2ecc53ebe/members/9a7aff27-fd41-4ec1-ba4c-3eb92c629313" +
70             "?fields=id&fields=tenant_id&fields=address&fields=protocol_port" +
71             "&fields=weight&fields=subnet_id&fields=admin_state_up" +
72             "&fields=limit&fields=marker&fields=page_reverse";    ;
73         ITNeutronE2E.test_fetch(url, true ,"LB Pool Member Element Get With Query Failed");
74     }
75
76     public void pool_member_element_negative_get_test() {
77         String url = base + "/lbaas/pools/12ff63af-4127-4074-a251-bcb2ecc53ebe/members/9a7aff27-fd41-4ec1-ba4c-3eb92c629313";
78         ITNeutronE2E.test_fetch(url, false ,"LB Pool Member Element Negative Get Failed");
79     }
80
81     public void pool_member_delete_test() {
82         String url = base + "/lbaas/pools/12ff63af-4127-4074-a251-bcb2ecc53ebe/members/9a7aff27-fd41-4ec1-ba4c-3eb92c629313";
83         ITNeutronE2E.test_delete(url, "LB Pool Member Element Delete Failed");
84     }
85
86     public static void runTests(String base) {
87         NeutronLBPoolMembersTests pool_member_tester = new NeutronLBPoolMembersTests(base);
88         String createJsonString = pool_member_tester.singleton_lb_pool_member_create_test();
89         pool_member_tester.singleton_lb_pool_member_get_with_one_query_item_test(createJsonString);
90         pool_member_tester.pool_member_update_test();
91         pool_member_tester.pool_member_element_get_test();
92         pool_member_tester.pool_member_element_get_with_query_test();
93         pool_member_tester.pool_member_collection_get_test();
94         pool_member_tester.pool_member_delete_test();
95         pool_member_tester.pool_member_element_negative_get_test();
96     }
97 }