blob: 995e318b4521bfc28e101db23f82cb77bf63308d [file] [log] [blame]
/*
* Licensed to the Apache Software Foundation (ASF) under one or more
* contributor license agreements. See the NOTICE file distributed with
* this work for additional information regarding copyright ownership.
* The ASF licenses this file to You 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.
*/
package org.jclouds.dimensiondata.cloudcontrol.utils;
import org.jclouds.dimensiondata.cloudcontrol.domain.Property;
import org.jclouds.dimensiondata.cloudcontrol.domain.Response;
import org.testng.Assert;
import org.testng.annotations.Test;
import java.util.ArrayList;
import java.util.List;
@Test(groups = "unit", testName = "ParseResponseTest", singleThreaded = true)
public class ParseResponseTest {
public void testTryFindPropertyValue() {
List<Property> infoProperties = new ArrayList<Property>();
infoProperties.add(Property.create("propertyName1", "propertyValue1"));
infoProperties.add(Property.create("propertyName2", "propertyValue2"));
Response response = Response.builder().responseCode("responseCode").error(null).message("message")
.operation("operation").requestId("requestId").info(infoProperties).build();
Assert.assertEquals(new ParseResponse(null, "propertyName1").tryFindInfoPropertyValue(response),
"propertyValue1");
Assert.assertEquals(new ParseResponse(null, "propertyName2").tryFindInfoPropertyValue(response),
"propertyValue2");
}
@Test(expectedExceptions = { IllegalStateException.class })
public void testTryFindPropertyValue_PropertyNotFound() {
List<Property> infoProperties = new ArrayList<Property>();
infoProperties.add(Property.create("propertyName1", "propertyValue1"));
Response response = Response.builder().responseCode("responseCode").error(null).message("message")
.operation("operation").requestId("requestId").info(infoProperties).build();
new ParseResponse(null, "noProperty").tryFindInfoPropertyValue(response);
}
public void testTryFindPropertyValue_ErrorReturned() {
List<Property> errorProperties = new ArrayList<Property>();
errorProperties.add(Property.create("propertyName1", "propertyValue1"));
errorProperties.add(Property.create("propertyName2", "propertyValue2"));
Response response = Response.builder().responseCode("responseCode").error(errorProperties).message("message")
.operation("operation").requestId("requestId").info(null).build();
Assert.assertEquals(new ParseResponse(null, "noProperty").checkForErrorElements(response),
"Error Elements: propertyName1:propertyValue1, propertyName2:propertyValue2.");
}
}