You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@wink.apache.org by bl...@apache.org on 2009/10/02 03:28:59 UTC
svn commit: r820860 - in /incubator/wink/trunk:
wink-common/src/main/java/org/apache/wink/common/internal/registry/
wink-common/src/test/java/org/apache/wink/common/internal/registry/
wink-server/src/test/java/org/apache/wink/server/internal/registry/
Author: bluk
Date: Fri Oct 2 01:28:59 2009
New Revision: 820860
URL: http://svn.apache.org/viewvc?rev=820860&view=rev
Log:
Stop the sort during multivalued params
[See WINK-201]
Added:
incubator/wink/trunk/wink-server/src/test/java/org/apache/wink/server/internal/registry/HeaderTest.java (with props)
Modified:
incubator/wink/trunk/wink-common/src/main/java/org/apache/wink/common/internal/registry/ValueConvertor.java
incubator/wink/trunk/wink-common/src/test/java/org/apache/wink/common/internal/registry/ValueConvertorTest.java
Modified: incubator/wink/trunk/wink-common/src/main/java/org/apache/wink/common/internal/registry/ValueConvertor.java
URL: http://svn.apache.org/viewvc/incubator/wink/trunk/wink-common/src/main/java/org/apache/wink/common/internal/registry/ValueConvertor.java?rev=820860&r1=820859&r2=820860&view=diff
==============================================================================
--- incubator/wink/trunk/wink-common/src/main/java/org/apache/wink/common/internal/registry/ValueConvertor.java (original)
+++ incubator/wink/trunk/wink-common/src/main/java/org/apache/wink/common/internal/registry/ValueConvertor.java Fri Oct 2 01:28:59 2009
@@ -244,9 +244,7 @@
if (values == null || values.size() == 0) {
return convert((String)null);
}
- List<String> valuesSorted = new ArrayList<String>(values);
- Collections.sort(valuesSorted);
- return convert(valuesSorted.get(0));
+ return convert(values.get(0));
}
}
Modified: incubator/wink/trunk/wink-common/src/test/java/org/apache/wink/common/internal/registry/ValueConvertorTest.java
URL: http://svn.apache.org/viewvc/incubator/wink/trunk/wink-common/src/test/java/org/apache/wink/common/internal/registry/ValueConvertorTest.java?rev=820860&r1=820859&r2=820860&view=diff
==============================================================================
--- incubator/wink/trunk/wink-common/src/test/java/org/apache/wink/common/internal/registry/ValueConvertorTest.java (original)
+++ incubator/wink/trunk/wink-common/src/test/java/org/apache/wink/common/internal/registry/ValueConvertorTest.java Fri Oct 2 01:28:59 2009
@@ -19,9 +19,6 @@
*******************************************************************************/
package org.apache.wink.common.internal.registry;
-import java.util.ArrayList;
-import java.util.List;
-
import junit.framework.TestCase;
public class ValueConvertorTest extends TestCase {
@@ -149,16 +146,4 @@
assertEquals(MyEnumWithFromString.SUNDAY_fromString, fromStringConvertor.convert("SUNDAY"));
}
- // make sure that a single value conversion will sort multiple values
- // correctly
- public void testMultipleValuesSortedReturned() throws Exception {
- ValueConvertor constructorConvertor =
- ValueConvertor.createValueConvertor(CustomTypeConstructor.class,
- CustomTypeConstructor.class);
- List<String> values = new ArrayList<String>();
- values.add("z");
- values.add("a");
- values.add("aa");
- assertEquals("a", constructorConvertor.convert(values).toString());
- }
}
Added: incubator/wink/trunk/wink-server/src/test/java/org/apache/wink/server/internal/registry/HeaderTest.java
URL: http://svn.apache.org/viewvc/incubator/wink/trunk/wink-server/src/test/java/org/apache/wink/server/internal/registry/HeaderTest.java?rev=820860&view=auto
==============================================================================
--- incubator/wink/trunk/wink-server/src/test/java/org/apache/wink/server/internal/registry/HeaderTest.java (added)
+++ incubator/wink/trunk/wink-server/src/test/java/org/apache/wink/server/internal/registry/HeaderTest.java Fri Oct 2 01:28:59 2009
@@ -0,0 +1,77 @@
+/*
+ * 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.wink.server.internal.registry;
+
+import javax.ws.rs.GET;
+import javax.ws.rs.HeaderParam;
+import javax.ws.rs.Path;
+import javax.ws.rs.core.MediaType;
+
+import org.apache.wink.server.internal.servlet.MockServletInvocationTest;
+import org.apache.wink.test.mock.MockRequestConstructor;
+import org.springframework.mock.web.MockHttpServletRequest;
+import org.springframework.mock.web.MockHttpServletResponse;
+
+public class HeaderTest extends MockServletInvocationTest {
+
+ @Override
+ protected Class<?>[] getClasses() {
+ return new Class<?>[] {Resource.class};
+ }
+
+ @Path(value = "/test")
+ public static class Resource {
+
+ @GET
+ public String stringParamHandling(@HeaderParam("A") boolean a, @HeaderParam("B") boolean b) {
+ StringBuilder sb = new StringBuilder();
+ if (a) {
+ sb.append("a=" + a);
+ }
+ if (b) {
+ sb.append("b=" + b);
+ }
+ return sb.toString();
+ }
+ }
+
+ public void testHeaders() throws Exception {
+
+ testHeader(new String[][] {{"a", "true"}}, "a=true");
+
+ testHeader(new String[][] { {"a", "true"}, {"a", "false"}}, "a=true");
+
+ testHeader(new String[][] { {"a", "false"}, {"b", "true"}}, "b=true");
+
+ testHeader(new String[][] { {"a", "true"}, {"b", "false"}, {"a", "false"}}, "a=true");
+
+ }
+
+ private void testHeader(String[][] headers, String expected) throws Exception {
+ MockHttpServletRequest request =
+ MockRequestConstructor.constructMockRequest("GET", "/test", MediaType.WILDCARD);
+ for (String[] header : headers) {
+ request.addHeader(header[0], header[1]);
+
+ }
+ MockHttpServletResponse response = invoke(request);
+ assertEquals(200, response.getStatus());
+ assertTrue(response.getContentAsString().contains(expected));
+ }
+}
Propchange: incubator/wink/trunk/wink-server/src/test/java/org/apache/wink/server/internal/registry/HeaderTest.java
------------------------------------------------------------------------------
svn:eol-style = native