You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@olingo.apache.org by sk...@apache.org on 2014/05/19 15:28:01 UTC
[12/50] [abbrv] git commit: [OLINGO-266] OData handler + service
document test
[OLINGO-266] OData handler + service document test
Project: http://git-wip-us.apache.org/repos/asf/olingo-odata4/repo
Commit: http://git-wip-us.apache.org/repos/asf/olingo-odata4/commit/181bd264
Tree: http://git-wip-us.apache.org/repos/asf/olingo-odata4/tree/181bd264
Diff: http://git-wip-us.apache.org/repos/asf/olingo-odata4/diff/181bd264
Branch: refs/heads/master
Commit: 181bd2645466484c37cd742b0dd143b50f8d9717
Parents: 92ad342
Author: Stephan Klevenz <st...@sap.com>
Authored: Thu May 15 13:05:03 2014 +0200
Committer: Stephan Klevenz <st...@sap.com>
Committed: Mon May 19 14:27:04 2014 +0200
----------------------------------------------------------------------
.../apache/olingo/server/core/ODataHandler.java | 6 +-
.../apache/olingo/server/core/ODataRequest.java | 12 +---
.../olingo/server/core/ODataHandlerTest.java | 67 ++++++++++++++++++++
3 files changed, 72 insertions(+), 13 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/181bd264/lib/server-core/src/main/java/org/apache/olingo/server/core/ODataHandler.java
----------------------------------------------------------------------
diff --git a/lib/server-core/src/main/java/org/apache/olingo/server/core/ODataHandler.java b/lib/server-core/src/main/java/org/apache/olingo/server/core/ODataHandler.java
index 1f7e3c4..da6baf7 100644
--- a/lib/server-core/src/main/java/org/apache/olingo/server/core/ODataHandler.java
+++ b/lib/server-core/src/main/java/org/apache/olingo/server/core/ODataHandler.java
@@ -27,8 +27,8 @@ import org.apache.olingo.server.api.serializer.ODataSerializer;
public class ODataHandler {
- private ODataServer server;
- private Edm edm;
+ private final ODataServer server;
+ private final Edm edm;
public ODataHandler(final ODataServer server, final Edm edm) {
this.server = server;
@@ -39,7 +39,7 @@ public class ODataHandler {
ODataResponse response = new ODataResponse();
ODataSerializer serializer = server.createSerializer(ODataFormat.JSON);
- InputStream responseEntity = serializer.serviceDocument(edm, "http//:root");
+ InputStream responseEntity = serializer.serviceDocument(edm, "http://root");
response.setStatusCode(200);
response.setHeader("Content-Type", "application/json");
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/181bd264/lib/server-core/src/main/java/org/apache/olingo/server/core/ODataRequest.java
----------------------------------------------------------------------
diff --git a/lib/server-core/src/main/java/org/apache/olingo/server/core/ODataRequest.java b/lib/server-core/src/main/java/org/apache/olingo/server/core/ODataRequest.java
index 5d992a0..5499a79 100644
--- a/lib/server-core/src/main/java/org/apache/olingo/server/core/ODataRequest.java
+++ b/lib/server-core/src/main/java/org/apache/olingo/server/core/ODataRequest.java
@@ -19,6 +19,7 @@
package org.apache.olingo.server.core;
import java.io.InputStream;
+import java.util.Collections;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@@ -30,7 +31,6 @@ public class ODataRequest {
private Map<String, List<String>> headers = new HashMap<String, List<String>>();
private InputStream body;
private Map<String, String> queryParameters;
- private String contentType;
public HttpMethod getMethod() {
return method;
@@ -41,7 +41,7 @@ public class ODataRequest {
}
public Map<String, List<String>> getHeaders() {
- return headers;
+ return Collections.unmodifiableMap(headers);
}
public void setHeaders(final Map<String, List<String>> headers) {
@@ -63,12 +63,4 @@ public class ODataRequest {
public void setQueryParameters(final Map<String, String> queryParameters) {
this.queryParameters = queryParameters;
}
-
- public String getContentType() {
- return contentType;
- }
-
- public void setContentType(final String contentType) {
- this.contentType = contentType;
- }
}
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/181bd264/lib/server-test/src/test/java/org/apache/olingo/server/core/ODataHandlerTest.java
----------------------------------------------------------------------
diff --git a/lib/server-test/src/test/java/org/apache/olingo/server/core/ODataHandlerTest.java b/lib/server-test/src/test/java/org/apache/olingo/server/core/ODataHandlerTest.java
new file mode 100644
index 0000000..aa472c4
--- /dev/null
+++ b/lib/server-test/src/test/java/org/apache/olingo/server/core/ODataHandlerTest.java
@@ -0,0 +1,67 @@
+/*
+ * 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.apache.olingo.server.core;
+
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertNotNull;
+import static org.junit.Assert.assertTrue;
+
+import org.apache.commons.io.IOUtils;
+import org.apache.olingo.commons.api.edm.Edm;
+import org.apache.olingo.commons.api.http.HttpMethod;
+import org.apache.olingo.server.api.ODataServer;
+import org.apache.olingo.server.tecsvc.provider.EdmTechProvider;
+import org.junit.Before;
+import org.junit.Test;
+
+public class ODataHandlerTest {
+
+ private ODataHandler handler;
+
+ @Before
+ public void before() {
+ ODataServer server = ODataServer.newInstance();
+ Edm edm = server.createEdm(new EdmTechProvider());
+
+ handler = new ODataHandler(server, edm);
+ }
+
+ @Test
+ public void testServiceDocumentDefault() throws Exception {
+ ODataRequest request = new ODataRequest();
+
+ request.setMethod(HttpMethod.GET);
+
+ ODataResponse response = handler.process(request);
+
+ assertNotNull(response);
+ assertEquals(200, response.getStatusCode());
+ assertEquals("application/json", response.getHeaders().get("Content-Type"));
+
+
+ assertNotNull(response.getContent());
+ String doc = IOUtils.toString(response.getContent());
+
+ assertTrue(doc.contains("\"@odata.context\" : \"http://root/$metadata\""));
+ assertTrue(doc.contains("\"value\" :"));
+
+ // TODO
+ }
+
+}