You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@servicecomb.apache.org by GitBox <gi...@apache.org> on 2020/11/26 10:04:11 UTC

[GitHub] [servicecomb-java-chassis] liubao68 opened a new pull request #2086: [#2081]add a test case for query with List

liubao68 opened a new pull request #2086:
URL: https://github.com/apache/servicecomb-java-chassis/pull/2086


   Follow this checklist to help us incorporate your contribution quickly and easily:
   
    - [ ] Make sure there is a [JIRA issue](https://issues.apache.org/jira/browse/SCB) filed for the change (usually before you start working on it).  Trivial changes like typos do not require a JIRA issue.  Your pull request should address just this issue, without pulling in other changes.
    - [ ] Each commit in the pull request should have a meaningful subject line and body.
    - [ ] Format the pull request title like `[SCB-XXX] Fixes bug in ApproximateQuantiles`, where you replace `SCB-XXX` with the appropriate JIRA issue.
    - [ ] Write a pull request description that is detailed enough to understand what the pull request does, how, and why.
    - [ ] Run `mvn clean install -Pit` to make sure basic checks pass. A more thorough check will be performed on your pull request automatically.
    - [ ] If this contribution is large, please file an Apache [Individual Contributor License Agreement](https://www.apache.org/licenses/icla.pdf).
   
   ---
   


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [servicecomb-java-chassis] wujimin commented on a change in pull request #2086: [#2081]add a test case for query with List

Posted by GitBox <gi...@apache.org>.
wujimin commented on a change in pull request #2086:
URL: https://github.com/apache/servicecomb-java-chassis/pull/2086#discussion_r531311822



##########
File path: demo/demo-jaxrs/jaxrs-client/src/main/java/org/apache/servicecomb/demo/jaxrs/client/TestQueryParamWithListSchema.java
##########
@@ -0,0 +1,154 @@
+/*
+ * 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.servicecomb.demo.jaxrs.client;
+
+import org.apache.servicecomb.demo.CategorizedTestCase;
+import org.apache.servicecomb.demo.TestMgr;
+import org.apache.servicecomb.provider.springmvc.reference.RestTemplateBuilder;
+import org.springframework.stereotype.Component;
+import org.springframework.web.client.RestTemplate;
+
+@Component
+public class TestQueryParamWithListSchema implements CategorizedTestCase {
+  private RestTemplate restTemplate = RestTemplateBuilder.create();
+
+  @Override
+  public void testAllTransport() throws Exception {
+    testMulti();
+    testCSV();
+    testSSV();
+    testTSV();
+    testPipes();
+  }
+
+  @Override
+  public void testRestTransport() throws Exception {
+    testMultiRest();
+    testCSVRest();
+    testSSVRest();
+    testTSVRest();
+    testPipesRest();
+  }
+
+  @Override
+  // highway do not handle empty/default/null
+  public void testHighwayTransport() throws Exception {
+    testMultiHighway();
+    testCSVHighway();
+    testSSVHighway();
+    testTSVHighway();
+    testPipesHighway();
+  }
+
+  private void testCSVHighway() {
+    TestMgr.check("null",
+        restTemplate.getForObject("cse://jaxrs/queryList/queryListCSV?", String.class));
+  }
+
+  private void testCSVRest() {
+    TestMgr.check("[]",
+        restTemplate.getForObject("cse://jaxrs/queryList/queryListCSV?", String.class));
+  }
+
+  private void testSSV() {
+    TestMgr.check("[1, 2]",
+        restTemplate.getForObject("cse://jaxrs/queryList/queryListSSV?queryList=1%202", String.class));
+    TestMgr.check("[, ]",
+        restTemplate.getForObject("cse://jaxrs/queryList/queryListSSV?queryList=%20", String.class));
+    TestMgr.check("[]",
+        restTemplate.getForObject("cse://jaxrs/queryList/queryListSSV?queryList=", String.class));
+  }
+
+  private void testTSVHighway() {
+    TestMgr.check("null",
+        restTemplate.getForObject("cse://jaxrs/queryList/queryListTSV?", String.class));
+  }
+
+  private void testTSVRest() {
+    TestMgr.check("[]",
+        restTemplate.getForObject("cse://jaxrs/queryList/queryListTSV?", String.class));
+  }
+
+  private void testTSV() {
+    TestMgr.check("[1, 2]",
+        restTemplate
+            .getForObject("cse://jaxrs/queryList/queryListTSV?queryList={1}", String.class, "1\t2"));
+    TestMgr.check("[, ]",
+        restTemplate.getForObject("cse://jaxrs/queryList/queryListTSV?queryList={1}", String.class, "\t"));
+    TestMgr.check("[]",

Review comment:
       无法区分下面两种场景?
   * List.of()
   * List.of("")  
   输出都是`[]`




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [servicecomb-java-chassis] codecov-io commented on pull request #2086: [#2081]add a test case for query with List

Posted by GitBox <gi...@apache.org>.
codecov-io commented on pull request #2086:
URL: https://github.com/apache/servicecomb-java-chassis/pull/2086#issuecomment-734308562


   # [Codecov](https://codecov.io/gh/apache/servicecomb-java-chassis/pull/2086?src=pr&el=h1) Report
   > Merging [#2086](https://codecov.io/gh/apache/servicecomb-java-chassis/pull/2086?src=pr&el=desc) (b8f1924) into [master](https://codecov.io/gh/apache/servicecomb-java-chassis/commit/e65d46da2290d27bb89fb6b3aafe2e5244eed7b0?el=desc) (e65d46d) will **increase** coverage by `0.01%`.
   > The diff coverage is `100.00%`.
   
   [![Impacted file tree graph](https://codecov.io/gh/apache/servicecomb-java-chassis/pull/2086/graphs/tree.svg?width=650&height=150&src=pr&token=KXfDcr9rX2)](https://codecov.io/gh/apache/servicecomb-java-chassis/pull/2086?src=pr&el=tree)
   
   ```diff
   @@             Coverage Diff              @@
   ##             master    #2086      +/-   ##
   ============================================
   + Coverage     81.50%   81.51%   +0.01%     
   - Complexity     1299     1318      +19     
   ============================================
     Files          1435     1436       +1     
     Lines         39240    39330      +90     
     Branches       3334     3334              
   ============================================
   + Hits          31982    32061      +79     
   - Misses         5801     5812      +11     
     Partials       1457     1457              
   ```
   
   
   | [Impacted Files](https://codecov.io/gh/apache/servicecomb-java-chassis/pull/2086?src=pr&el=tree) | Coverage Δ | Complexity Δ | |
   |---|---|---|---|
   | [...emo/jaxrs/client/TestQueryParamWithListSchema.java](https://codecov.io/gh/apache/servicecomb-java-chassis/pull/2086/diff?src=pr&el=tree#diff-ZGVtby9kZW1vLWpheHJzL2pheHJzLWNsaWVudC9zcmMvbWFpbi9qYXZhL29yZy9hcGFjaGUvc2VydmljZWNvbWIvZGVtby9qYXhycy9jbGllbnQvVGVzdFF1ZXJ5UGFyYW1XaXRoTGlzdFNjaGVtYS5qYXZh) | `100.00% <100.00%> (ø)` | `19.00 <19.00> (?)` | |
   | [...ansport/rest/client/http/RestClientInvocation.java](https://codecov.io/gh/apache/servicecomb-java-chassis/pull/2086/diff?src=pr&el=tree#diff-dHJhbnNwb3J0cy90cmFuc3BvcnQtcmVzdC90cmFuc3BvcnQtcmVzdC1jbGllbnQvc3JjL21haW4vamF2YS9vcmcvYXBhY2hlL3NlcnZpY2Vjb21iL3RyYW5zcG9ydC9yZXN0L2NsaWVudC9odHRwL1Jlc3RDbGllbnRJbnZvY2F0aW9uLmphdmE=) | `94.66% <100.00%> (+0.18%)` | `0.00 <0.00> (ø)` | |
   | [...pache/servicecomb/config/kie/client/KieClient.java](https://codecov.io/gh/apache/servicecomb-java-chassis/pull/2086/diff?src=pr&el=tree#diff-ZHluYW1pYy1jb25maWcvY29uZmlnLWtpZS9zcmMvbWFpbi9qYXZhL29yZy9hcGFjaGUvc2VydmljZWNvbWIvY29uZmlnL2tpZS9jbGllbnQvS2llQ2xpZW50LmphdmE=) | `72.61% <0.00%> (-5.96%)` | `0.00% <0.00%> (ø%)` | |
   | [...omb/codec/protobuf/definition/ProtobufManager.java](https://codecov.io/gh/apache/servicecomb-java-chassis/pull/2086/diff?src=pr&el=tree#diff-Y29tbW9uL2NvbW1vbi1wcm90b2J1Zi9zcmMvbWFpbi9qYXZhL29yZy9hcGFjaGUvc2VydmljZWNvbWIvY29kZWMvcHJvdG9idWYvZGVmaW5pdGlvbi9Qcm90b2J1Zk1hbmFnZXIuamF2YQ==) | `70.73% <0.00%> (-2.44%)` | `0.00% <0.00%> (ø%)` | |
   | [...mb/serviceregistry/client/http/RestClientUtil.java](https://codecov.io/gh/apache/servicecomb-java-chassis/pull/2086/diff?src=pr&el=tree#diff-c2VydmljZS1yZWdpc3RyeS9yZWdpc3RyeS1zZXJ2aWNlLWNlbnRlci9zcmMvbWFpbi9qYXZhL29yZy9hcGFjaGUvc2VydmljZWNvbWIvc2VydmljZXJlZ2lzdHJ5L2NsaWVudC9odHRwL1Jlc3RDbGllbnRVdGlsLmphdmE=) | `75.70% <0.00%> (-1.87%)` | `0.00% <0.00%> (ø%)` | |
   | [...egistry/client/http/ServiceRegistryClientImpl.java](https://codecov.io/gh/apache/servicecomb-java-chassis/pull/2086/diff?src=pr&el=tree#diff-c2VydmljZS1yZWdpc3RyeS9yZWdpc3RyeS1zZXJ2aWNlLWNlbnRlci9zcmMvbWFpbi9qYXZhL29yZy9hcGFjaGUvc2VydmljZWNvbWIvc2VydmljZXJlZ2lzdHJ5L2NsaWVudC9odHRwL1NlcnZpY2VSZWdpc3RyeUNsaWVudEltcGwuamF2YQ==) | `69.32% <0.00%> (-0.78%)` | `0.00% <0.00%> (ø%)` | |
   | [...mmon/rest/codec/query/QueryCodecWithDelimiter.java](https://codecov.io/gh/apache/servicecomb-java-chassis/pull/2086/diff?src=pr&el=tree#diff-Y29tbW9uL2NvbW1vbi1yZXN0L3NyYy9tYWluL2phdmEvb3JnL2FwYWNoZS9zZXJ2aWNlY29tYi9jb21tb24vcmVzdC9jb2RlYy9xdWVyeS9RdWVyeUNvZGVjV2l0aERlbGltaXRlci5qYXZh) | `100.00% <0.00%> (+4.76%)` | `0.00% <0.00%> (ø%)` | |
   
   ------
   
   [Continue to review full report at Codecov](https://codecov.io/gh/apache/servicecomb-java-chassis/pull/2086?src=pr&el=continue).
   > **Legend** - [Click here to learn more](https://docs.codecov.io/docs/codecov-delta)
   > `Δ = absolute <relative> (impact)`, `ø = not affected`, `? = missing data`
   > Powered by [Codecov](https://codecov.io/gh/apache/servicecomb-java-chassis/pull/2086?src=pr&el=footer). Last update [e65d46d...b8f1924](https://codecov.io/gh/apache/servicecomb-java-chassis/pull/2086?src=pr&el=lastupdated). Read the [comment docs](https://docs.codecov.io/docs/pull-request-comments).
   


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [servicecomb-java-chassis] wujimin merged pull request #2086: [#2081]add a test case for query with List

Posted by GitBox <gi...@apache.org>.
wujimin merged pull request #2086:
URL: https://github.com/apache/servicecomb-java-chassis/pull/2086


   


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [servicecomb-java-chassis] liubao68 commented on pull request #2086: [#2081]add a test case for query with List

Posted by GitBox <gi...@apache.org>.
liubao68 commented on pull request #2086:
URL: https://github.com/apache/servicecomb-java-chassis/pull/2086#issuecomment-734293887


   When running CI , find a bug, fix it too.
   
   [SCB-2131]when timeout exception, connect closed will trigger asynchr


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [servicecomb-java-chassis] codecov-io edited a comment on pull request #2086: [#2081]add a test case for query with List

Posted by GitBox <gi...@apache.org>.
codecov-io edited a comment on pull request #2086:
URL: https://github.com/apache/servicecomb-java-chassis/pull/2086#issuecomment-734308562


   # [Codecov](https://codecov.io/gh/apache/servicecomb-java-chassis/pull/2086?src=pr&el=h1) Report
   > Merging [#2086](https://codecov.io/gh/apache/servicecomb-java-chassis/pull/2086?src=pr&el=desc) (a91f8d5) into [master](https://codecov.io/gh/apache/servicecomb-java-chassis/commit/e65d46da2290d27bb89fb6b3aafe2e5244eed7b0?el=desc) (e65d46d) will **increase** coverage by `0.04%`.
   > The diff coverage is `100.00%`.
   
   [![Impacted file tree graph](https://codecov.io/gh/apache/servicecomb-java-chassis/pull/2086/graphs/tree.svg?width=650&height=150&src=pr&token=KXfDcr9rX2)](https://codecov.io/gh/apache/servicecomb-java-chassis/pull/2086?src=pr&el=tree)
   
   ```diff
   @@             Coverage Diff              @@
   ##             master    #2086      +/-   ##
   ============================================
   + Coverage     81.50%   81.55%   +0.04%     
   - Complexity     1299     1327      +28     
   ============================================
     Files          1435     1442       +7     
     Lines         39240    39501     +261     
     Branches       3334     3353      +19     
   ============================================
   + Hits          31982    32214     +232     
   - Misses         5801     5824      +23     
   - Partials       1457     1463       +6     
   ```
   
   
   | [Impacted Files](https://codecov.io/gh/apache/servicecomb-java-chassis/pull/2086?src=pr&el=tree) | Coverage Δ | Complexity Δ | |
   |---|---|---|---|
   | [...emo/jaxrs/client/TestQueryParamWithListSchema.java](https://codecov.io/gh/apache/servicecomb-java-chassis/pull/2086/diff?src=pr&el=tree#diff-ZGVtby9kZW1vLWpheHJzL2pheHJzLWNsaWVudC9zcmMvbWFpbi9qYXZhL29yZy9hcGFjaGUvc2VydmljZWNvbWIvZGVtby9qYXhycy9jbGllbnQvVGVzdFF1ZXJ5UGFyYW1XaXRoTGlzdFNjaGVtYS5qYXZh) | `100.00% <100.00%> (ø)` | `19.00 <19.00> (?)` | |
   | [...ansport/rest/client/http/RestClientInvocation.java](https://codecov.io/gh/apache/servicecomb-java-chassis/pull/2086/diff?src=pr&el=tree#diff-dHJhbnNwb3J0cy90cmFuc3BvcnQtcmVzdC90cmFuc3BvcnQtcmVzdC1jbGllbnQvc3JjL21haW4vamF2YS9vcmcvYXBhY2hlL3NlcnZpY2Vjb21iL3RyYW5zcG9ydC9yZXN0L2NsaWVudC9odHRwL1Jlc3RDbGllbnRJbnZvY2F0aW9uLmphdmE=) | `94.66% <100.00%> (+0.18%)` | `0.00 <0.00> (ø)` | |
   | [...l/schema/deserializer/scalar/EnumsReadSchemas.java](https://codecov.io/gh/apache/servicecomb-java-chassis/pull/2086/diff?src=pr&el=tree#diff-Zm91bmRhdGlvbnMvZm91bmRhdGlvbi1wcm90b2J1Zi9zcmMvbWFpbi9qYXZhL29yZy9hcGFjaGUvc2VydmljZWNvbWIvZm91bmRhdGlvbi9wcm90b2J1Zi9pbnRlcm5hbC9zY2hlbWEvZGVzZXJpYWxpemVyL3NjYWxhci9FbnVtc1JlYWRTY2hlbWFzLmphdmE=) | `54.34% <0.00%> (-13.22%)` | `0.00% <0.00%> (ø%)` | |
   | [...pache/servicecomb/config/kie/client/KieClient.java](https://codecov.io/gh/apache/servicecomb-java-chassis/pull/2086/diff?src=pr&el=tree#diff-ZHluYW1pYy1jb25maWcvY29uZmlnLWtpZS9zcmMvbWFpbi9qYXZhL29yZy9hcGFjaGUvc2VydmljZWNvbWIvY29uZmlnL2tpZS9jbGllbnQvS2llQ2xpZW50LmphdmE=) | `72.61% <0.00%> (-5.96%)` | `0.00% <0.00%> (ø%)` | |
   | [...nal/schema/serializer/scalar/EnumWriteSchemas.java](https://codecov.io/gh/apache/servicecomb-java-chassis/pull/2086/diff?src=pr&el=tree#diff-Zm91bmRhdGlvbnMvZm91bmRhdGlvbi1wcm90b2J1Zi9zcmMvbWFpbi9qYXZhL29yZy9hcGFjaGUvc2VydmljZWNvbWIvZm91bmRhdGlvbi9wcm90b2J1Zi9pbnRlcm5hbC9zY2hlbWEvc2VyaWFsaXplci9zY2FsYXIvRW51bVdyaXRlU2NoZW1hcy5qYXZh) | `86.53% <0.00%> (-5.30%)` | `0.00% <0.00%> (ø%)` | |
   | [...ecomb/provider/pojo/PojoConsumerMetaRefresher.java](https://codecov.io/gh/apache/servicecomb-java-chassis/pull/2086/diff?src=pr&el=tree#diff-cHJvdmlkZXJzL3Byb3ZpZGVyLXBvam8vc3JjL21haW4vamF2YS9vcmcvYXBhY2hlL3NlcnZpY2Vjb21iL3Byb3ZpZGVyL3Bvam8vUG9qb0NvbnN1bWVyTWV0YVJlZnJlc2hlci5qYXZh) | `75.60% <0.00%> (-2.44%)` | `0.00% <0.00%> (ø%)` | |
   | [...omb/codec/protobuf/definition/ProtobufManager.java](https://codecov.io/gh/apache/servicecomb-java-chassis/pull/2086/diff?src=pr&el=tree#diff-Y29tbW9uL2NvbW1vbi1wcm90b2J1Zi9zcmMvbWFpbi9qYXZhL29yZy9hcGFjaGUvc2VydmljZWNvbWIvY29kZWMvcHJvdG9idWYvZGVmaW5pdGlvbi9Qcm90b2J1Zk1hbmFnZXIuamF2YQ==) | `70.73% <0.00%> (-2.44%)` | `0.00% <0.00%> (ø%)` | |
   | [...servicecomb/it/testcase/TestDataTypePrimitive.java](https://codecov.io/gh/apache/servicecomb-java-chassis/pull/2086/diff?src=pr&el=tree#diff-aW50ZWdyYXRpb24tdGVzdHMvaXQtY29uc3VtZXIvc3JjL21haW4vamF2YS9vcmcvYXBhY2hlL3NlcnZpY2Vjb21iL2l0L3Rlc3RjYXNlL1Rlc3REYXRhVHlwZVByaW1pdGl2ZS5qYXZh) | `100.00% <0.00%> (ø)` | `160.00% <0.00%> (+8.00%)` | |
   | [...ecomb/foundation/common/base/DynamicEnumCache.java](https://codecov.io/gh/apache/servicecomb-java-chassis/pull/2086/diff?src=pr&el=tree#diff-Zm91bmRhdGlvbnMvZm91bmRhdGlvbi1jb21tb24vc3JjL21haW4vamF2YS9vcmcvYXBhY2hlL3NlcnZpY2Vjb21iL2ZvdW5kYXRpb24vY29tbW9uL2Jhc2UvRHluYW1pY0VudW1DYWNoZS5qYXZh) | `66.66% <0.00%> (ø)` | `0.00% <0.00%> (?%)` | |
   | [...or/core/processor/parameter/EnumPostProcessor.java](https://codecov.io/gh/apache/servicecomb-java-chassis/pull/2086/diff?src=pr&el=tree#diff-c3dhZ2dlci9zd2FnZ2VyLWdlbmVyYXRvci9nZW5lcmF0b3ItY29yZS9zcmMvbWFpbi9qYXZhL29yZy9hcGFjaGUvc2VydmljZWNvbWIvc3dhZ2dlci9nZW5lcmF0b3IvY29yZS9wcm9jZXNzb3IvcGFyYW1ldGVyL0VudW1Qb3N0UHJvY2Vzc29yLmphdmE=) | `100.00% <0.00%> (ø)` | `0.00% <0.00%> (?%)` | |
   | ... and [15 more](https://codecov.io/gh/apache/servicecomb-java-chassis/pull/2086/diff?src=pr&el=tree-more) | |
   
   ------
   
   [Continue to review full report at Codecov](https://codecov.io/gh/apache/servicecomb-java-chassis/pull/2086?src=pr&el=continue).
   > **Legend** - [Click here to learn more](https://docs.codecov.io/docs/codecov-delta)
   > `Δ = absolute <relative> (impact)`, `ø = not affected`, `? = missing data`
   > Powered by [Codecov](https://codecov.io/gh/apache/servicecomb-java-chassis/pull/2086?src=pr&el=footer). Last update [e65d46d...a91f8d5](https://codecov.io/gh/apache/servicecomb-java-chassis/pull/2086?src=pr&el=lastupdated). Read the [comment docs](https://docs.codecov.io/docs/pull-request-comments).
   


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [servicecomb-java-chassis] liubao68 commented on a change in pull request #2086: [#2081]add a test case for query with List

Posted by GitBox <gi...@apache.org>.
liubao68 commented on a change in pull request #2086:
URL: https://github.com/apache/servicecomb-java-chassis/pull/2086#discussion_r531320628



##########
File path: demo/demo-jaxrs/jaxrs-client/src/main/java/org/apache/servicecomb/demo/jaxrs/client/TestQueryParamWithListSchema.java
##########
@@ -0,0 +1,154 @@
+/*
+ * 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.servicecomb.demo.jaxrs.client;
+
+import org.apache.servicecomb.demo.CategorizedTestCase;
+import org.apache.servicecomb.demo.TestMgr;
+import org.apache.servicecomb.provider.springmvc.reference.RestTemplateBuilder;
+import org.springframework.stereotype.Component;
+import org.springframework.web.client.RestTemplate;
+
+@Component
+public class TestQueryParamWithListSchema implements CategorizedTestCase {
+  private RestTemplate restTemplate = RestTemplateBuilder.create();
+
+  @Override
+  public void testAllTransport() throws Exception {
+    testMulti();
+    testCSV();
+    testSSV();
+    testTSV();
+    testPipes();
+  }
+
+  @Override
+  public void testRestTransport() throws Exception {
+    testMultiRest();
+    testCSVRest();
+    testSSVRest();
+    testTSVRest();
+    testPipesRest();
+  }
+
+  @Override
+  // highway do not handle empty/default/null
+  public void testHighwayTransport() throws Exception {
+    testMultiHighway();
+    testCSVHighway();
+    testSSVHighway();
+    testTSVHighway();
+    testPipesHighway();
+  }
+
+  private void testCSVHighway() {
+    TestMgr.check("null",
+        restTemplate.getForObject("cse://jaxrs/queryList/queryListCSV?", String.class));
+  }
+
+  private void testCSVRest() {
+    TestMgr.check("[]",
+        restTemplate.getForObject("cse://jaxrs/queryList/queryListCSV?", String.class));
+  }
+
+  private void testSSV() {
+    TestMgr.check("[1, 2]",
+        restTemplate.getForObject("cse://jaxrs/queryList/queryListSSV?queryList=1%202", String.class));
+    TestMgr.check("[, ]",
+        restTemplate.getForObject("cse://jaxrs/queryList/queryListSSV?queryList=%20", String.class));
+    TestMgr.check("[]",
+        restTemplate.getForObject("cse://jaxrs/queryList/queryListSSV?queryList=", String.class));
+  }
+
+  private void testTSVHighway() {
+    TestMgr.check("null",
+        restTemplate.getForObject("cse://jaxrs/queryList/queryListTSV?", String.class));
+  }
+
+  private void testTSVRest() {
+    TestMgr.check("[]",
+        restTemplate.getForObject("cse://jaxrs/queryList/queryListTSV?", String.class));
+  }
+
+  private void testTSV() {
+    TestMgr.check("[1, 2]",
+        restTemplate
+            .getForObject("cse://jaxrs/queryList/queryListTSV?queryList={1}", String.class, "1\t2"));
+    TestMgr.check("[, ]",
+        restTemplate.getForObject("cse://jaxrs/queryList/queryListTSV?queryList={1}", String.class, "\t"));
+    TestMgr.check("[]",

Review comment:
       fixed 




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org