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 public class NeutronMeteringRuleTests {
14 public NeutronMeteringRuleTests(String base) {
18 public void meteringRule_collection_get_test() {
19 String url = base + "/metering/metering-label-rules";
20 ITNeutronE2E.test_fetch(url, "Metering Rule Collection GET failed");
23 //TODO handle SB check
24 public void singleton_meteringRule_create_test() {
25 String url = base + "/metering/metering-label-rules";
26 String content = "{ \"metering_label_rule\": { " +
27 "\"remote_ip_prefix\": \"10.0.1.0/24\", " +
28 "\"direction\": \"ingress\", " +
29 "\"metering_label_id\": \"bc91b832-8465-40a7-a5d8-ba87de442266\", " +
30 "\"id\": \"00e13b58-b4f2-4579-9c9c-7ac94615f9ae\", " +
31 "\"excluded\": false } }";
32 ITNeutronE2E.test_create(url, content, "Singleton Metering Rule Post Failed NB");
35 public void meteringRule_element_get_test() {
36 String url = base + "/metering/metering-label-rules/00e13b58-b4f2-4579-9c9c-7ac94615f9ae";
37 ITNeutronE2E.test_fetch(url, true ,"Metering Rule Element Get Failed");
40 public void meteringRule_element_get_with_query_test() {
41 String url = base + "/metering/metering-label-rules/00e13b58-b4f2-4579-9c9c-7ac94615f9ae" +
42 "?fields=id&fields=direction&fields=remote_ip_prefix&fields=metering_label_id";
43 ITNeutronE2E.test_fetch(url, true ,"Metering Rule Element Get Failed");
46 public void meteringRule_delete_test() {
47 String url = base + "/metering/metering-label-rules/00e13b58-b4f2-4579-9c9c-7ac94615f9ae";
48 ITNeutronE2E.test_delete(url, "Metering Rule Element Delete Failed");
51 public void meteringRule_element_negative_get_test() {
52 String url = base + "/metering/metering-label-rules/00e13b58-b4f2-4579-9c9c-7ac94615f9ae";
53 ITNeutronE2E.test_fetch(url, false ,"Metering Rule Element Negative Get Failed");
56 public void bug4224_ipv6_test() {
57 String url = base + "/metering/metering-label-rules";
58 String content = "{ \"metering_label_rule\": { " +
59 "\"remote_ip_prefix\": \"fe80::1/10\", " +
60 "\"direction\": \"ingress\", " +
61 "\"metering_label_id\": \"bc91b832-8465-40a7-a5d8-ba87de442266\", " +
62 "\"id\": \"00e13b58-b4f2-4579-9c9c-7ac94615f9ae\", " +
63 "\"excluded\": false } }";
64 ITNeutronE2E.test_create(url, content, "Metering Rule Bug4224 IPv6 Failed NB");
65 url = url + "/00e13b58-b4f2-4579-9c9c-7ac94615f9ae";
66 ITNeutronE2E.test_delete(url, "Metering Rule Element Delete Failed");
69 public static void runTests(String base) {
70 NeutronMeteringRuleTests meteringRule_tester = new NeutronMeteringRuleTests(base);
71 meteringRule_tester.singleton_meteringRule_create_test();
72 meteringRule_tester.meteringRule_element_get_test();
73 meteringRule_tester.meteringRule_element_get_with_query_test();
74 meteringRule_tester.meteringRule_collection_get_test();
75 meteringRule_tester.meteringRule_delete_test();
76 meteringRule_tester.meteringRule_element_negative_get_test();