Delete netconf
[controller.git] / opendaylight / md-sal / sal-rest-connector / src / test / java / org / opendaylight / controller / sal / rest / impl / test / providers / AbstractBodyReaderTest.java
index abe5c2f251bee04a2d82ca78f6f74fe75fdd505a..35a6162c95faaa9b4bf1ed4e5db4e4173c8e9076 100644 (file)
@@ -14,10 +14,13 @@ import static org.mockito.Mockito.when;
 
 import java.lang.reflect.Field;
 import java.util.Collections;
+
 import javax.ws.rs.core.MediaType;
 import javax.ws.rs.core.MultivaluedHashMap;
 import javax.ws.rs.core.MultivaluedMap;
+import javax.ws.rs.core.Request;
 import javax.ws.rs.core.UriInfo;
+
 import org.opendaylight.controller.md.sal.rest.common.TestRestconfUtils;
 import org.opendaylight.controller.sal.rest.api.RestconfConstants;
 import org.opendaylight.controller.sal.rest.impl.AbstractIdentifierAwareJaxRsProvider;
@@ -26,56 +29,75 @@ import org.opendaylight.controller.sal.restconf.impl.NormalizedNodeContext;
 import org.opendaylight.yangtools.yang.model.api.SchemaContext;
 
 /**
- * sal-rest-connector
- * org.opendaylight.controller.sal.rest.impl.test.providers
+ * sal-rest-connector org.opendaylight.controller.sal.rest.impl.test.providers
  *
  *
  *
  * @author <a href="mailto:vdemcak@cisco.com">Vaclav Demcak</a>
  *
- * Created: Mar 7, 2015
+ *         Created: Mar 7, 2015
  */
 public abstract class AbstractBodyReaderTest {
 
-    protected final static ControllerContext controllerContext = ControllerContext.getInstance();
+    protected final static ControllerContext controllerContext = ControllerContext
+            .getInstance();
     protected final MediaType mediaType;
     private static Field uriField;
+    private static Field requestField;
 
-    public AbstractBodyReaderTest () throws NoSuchFieldException, SecurityException {
-        uriField = AbstractIdentifierAwareJaxRsProvider.class.getDeclaredField("uriInfo");
+    public AbstractBodyReaderTest() throws NoSuchFieldException,
+            SecurityException {
+        uriField = AbstractIdentifierAwareJaxRsProvider.class
+                .getDeclaredField("uriInfo");
         uriField.setAccessible(true);
+        requestField = AbstractIdentifierAwareJaxRsProvider.class
+                .getDeclaredField("request");
+        requestField.setAccessible(true);
         mediaType = getMediaType();
     }
 
-    abstract MediaType getMediaType();
+    protected abstract MediaType getMediaType();
 
-    protected static SchemaContext schemaContextLoader(final String yangPath, final SchemaContext schemaContext) {
+    protected static SchemaContext schemaContextLoader(final String yangPath,
+            final SchemaContext schemaContext) {
         return TestRestconfUtils.loadSchemaContext(yangPath, schemaContext);
     }
 
     protected static <T extends AbstractIdentifierAwareJaxRsProvider> void mockBodyReader(
-            final String identifier, final T normalizedNodeProvider) throws NoSuchFieldException,
+            final String identifier, final T normalizedNodeProvider,
+            final boolean isPost) throws NoSuchFieldException,
             SecurityException, IllegalArgumentException, IllegalAccessException {
         final UriInfo uriInfoMock = mock(UriInfo.class);
-        final MultivaluedMap<String, String> pathParm = new MultivaluedHashMap<>(1);
-        pathParm.put(RestconfConstants.IDENTIFIER, Collections.singletonList(identifier));
+        final MultivaluedMap<String, String> pathParm = new MultivaluedHashMap<>(
+                1);
+        pathParm.put(RestconfConstants.IDENTIFIER,
+                Collections.singletonList(identifier));
         when(uriInfoMock.getPathParameters()).thenReturn(pathParm);
         when(uriInfoMock.getPathParameters(false)).thenReturn(pathParm);
         when(uriInfoMock.getPathParameters(true)).thenReturn(pathParm);
         uriField.set(normalizedNodeProvider, uriInfoMock);
+        final Request request = mock(Request.class);
+        if (isPost) {
+            when(request.getMethod()).thenReturn("POST");
+        } else {
+            when(request.getMethod()).thenReturn("PUT");
+        }
+        requestField.set(normalizedNodeProvider, request);
     }
 
-    protected static void checkMountPointNormalizedNodeContext(final NormalizedNodeContext nnContext) {
+    protected static void checkMountPointNormalizedNodeContext(
+            final NormalizedNodeContext nnContext) {
         checkNormalizedNodeContext(nnContext);
         assertNotNull(nnContext.getInstanceIdentifierContext().getMountPoint());
     }
 
-    protected static void checkNormalizedNodeContext(final NormalizedNodeContext nnContext) {
-        assertNotNull(nnContext);
+    protected static void checkNormalizedNodeContext(
+            final NormalizedNodeContext nnContext) {
         assertNotNull(nnContext.getData());
-        assertNotNull(nnContext.getInstanceIdentifierContext());
-        assertNotNull(nnContext.getInstanceIdentifierContext().getInstanceIdentifier());
-        assertNotNull(nnContext.getInstanceIdentifierContext().getSchemaContext());
+        assertNotNull(nnContext.getInstanceIdentifierContext()
+                .getInstanceIdentifier());
+        assertNotNull(nnContext.getInstanceIdentifierContext()
+                .getSchemaContext());
         assertNotNull(nnContext.getInstanceIdentifierContext().getSchemaNode());
     }
 }