Github user dsmiley commented on a diff in the pull request:

    https://github.com/apache/lucene-solr/pull/410#discussion_r199386196
  
    --- Diff: 
solr/core/src/test/org/apache/solr/update/TestNestedUpdateProcessor.java ---
    @@ -0,0 +1,189 @@
    +/*
    + * 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.solr.update;
    +
    +import java.util.ArrayList;
    +import java.util.List;
    +
    +import org.apache.solr.SolrTestCaseJ4;
    +import org.apache.solr.common.SolrException;
    +import org.apache.solr.common.util.ContentStream;
    +import org.apache.solr.common.util.ContentStreamBase;
    +import org.apache.solr.request.SolrQueryRequest;
    +import org.apache.solr.request.SolrRequestInfo;
    +import org.apache.solr.response.SolrQueryResponse;
    +import org.apache.solr.schema.IndexSchema;
    +import org.apache.solr.servlet.SolrRequestParsers;
    +import org.junit.Before;
    +import org.junit.BeforeClass;
    +import org.junit.Rule;
    +import org.junit.Test;
    +import org.junit.rules.ExpectedException;
    +
    +public class TestNestedUpdateProcessor extends SolrTestCaseJ4 {
    +
    +  private static final char PATH_SEP_CHAR = '/';
    +  private static final String[] childrenIds = { "2", "3" };
    +  private static final String grandChildId = "4";
    +  private static final String jDoc = "{\n" +
    +      "    \"add\": {\n" +
    +      "        \"doc\": {\n" +
    +      "            \"id\": \"1\",\n" +
    +      "            \"children\": [\n" +
    +      "                {\n" +
    +      "                    \"id\": \"2\",\n" +
    +      "                    \"foo_s\": \"Yaz\"\n" +
    +      "                    \"grandChild\": \n" +
    +      "                          {\n" +
    +      "                             \"id\": \""+ grandChildId + "\",\n" +
    +      "                             \"foo_s\": \"Jazz\"\n" +
    +      "                          },\n" +
    +      "                },\n" +
    +      "                {\n" +
    +      "                    \"id\": \"3\",\n" +
    +      "                    \"foo_s\": \"Bar\"\n" +
    +      "                }\n" +
    +      "            ]\n" +
    +      "        }\n" +
    +      "    }\n" +
    +      "}";
    +
    +  private static final String noIdChildren = "{\n" +
    +      "    \"add\": {\n" +
    +      "        \"doc\": {\n" +
    +      "            \"id\": \"1\",\n" +
    +      "            \"children\": [\n" +
    +      "                {\n" +
    +      "                    \"foo_s\": \"Yaz\"\n" +
    +      "                    \"grandChild\": \n" +
    +      "                          {\n" +
    +      "                             \"foo_s\": \"Jazz\"\n" +
    +      "                          },\n" +
    +      "                },\n" +
    +      "                {\n" +
    +      "                    \"foo_s\": \"Bar\"\n" +
    +      "                }\n" +
    +      "            ]\n" +
    +      "        }\n" +
    +      "    }\n" +
    +      "}";
    +
    +  private static final String errDoc = "{\n" +
    +      "    \"add\": {\n" +
    +      "        \"doc\": {\n" +
    +      "            \"id\": \"1\",\n" +
    +      "            \"children" + PATH_SEP_CHAR + "a\": [\n" +
    +      "                {\n" +
    +      "                    \"id\": \"2\",\n" +
    +      "                    \"foo_s\": \"Yaz\"\n" +
    +      "                    \"grandChild\": \n" +
    +      "                          {\n" +
    +      "                             \"id\": \""+ grandChildId + "\",\n" +
    +      "                             \"foo_s\": \"Jazz\"\n" +
    +      "                          },\n" +
    +      "                },\n" +
    +      "                {\n" +
    +      "                    \"id\": \"3\",\n" +
    +      "                    \"foo_s\": \"Bar\"\n" +
    +      "                }\n" +
    +      "            ]\n" +
    +      "        }\n" +
    +      "    }\n" +
    +      "}";
    +
    +  @Rule
    +  public ExpectedException thrown = ExpectedException.none();
    --- End diff --
    
    This is neat; I didn't know about this utility.  But take note of 
`SolrTestCaseJ4.assertQEx(...)` especially the one that takes the exception 
message.  You could use that?


---

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org

Reply via email to