From a87ba09e11a9bce4e5d97e3f713afe261112efc5 Mon Sep 17 00:00:00 2001 From: Erick Erickson Date: Mon, 11 Mar 2019 21:40:23 -0700 Subject: [PATCH] SOLR-13268: Clean up any test failures resulting from defaulting to async logging. Put TestXmlQParser back (cherry picked from commit b893548d97f8b04b40dfbebd79bd860603b92c63) --- .../src/groovy/check-source-patterns.groovy | 4 +- .../apache/solr/search/TestXmlQParser.java | 55 +++++++++++++++++++ 2 files changed, 58 insertions(+), 1 deletion(-) create mode 100644 solr/core/src/test/org/apache/solr/search/TestXmlQParser.java diff --git a/lucene/tools/src/groovy/check-source-patterns.groovy b/lucene/tools/src/groovy/check-source-patterns.groovy index f0007eac88e..ccfcc493a42 100644 --- a/lucene/tools/src/groovy/check-source-patterns.groovy +++ b/lucene/tools/src/groovy/check-source-patterns.groovy @@ -182,7 +182,9 @@ ant.fileScanner{ checkMockitoAssume(f, text); } - if (f.path.substring(baseDirLen).contains("solr/") && f.name.equals("SolrTestCase.java") == false) { + if (f.path.substring(baseDirLen).contains("solr/") + && f.name.equals("SolrTestCase.java") == false + && f.name.equals("TestXmlQParser.java") == false) { if (extendsLuceneTestCasePattern.matcher(text).find()) { reportViolation(f, "Solr test cases should extend SolrTestCase rather than LuceneTestCase"); } diff --git a/solr/core/src/test/org/apache/solr/search/TestXmlQParser.java b/solr/core/src/test/org/apache/solr/search/TestXmlQParser.java new file mode 100644 index 00000000000..76ed752716a --- /dev/null +++ b/solr/core/src/test/org/apache/solr/search/TestXmlQParser.java @@ -0,0 +1,55 @@ +/* + * 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.search; + +import java.lang.invoke.MethodHandles; + +import org.apache.lucene.queryparser.xml.CoreParser; + +import org.apache.lucene.queryparser.xml.TestCoreParser; +import org.apache.solr.util.StartupLoggingUtils; +import org.junit.AfterClass; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +public class TestXmlQParser extends TestCoreParser { + + private static final Logger log = LoggerFactory.getLogger(MethodHandles.lookup().lookupClass()); + private CoreParser solrCoreParser; + + @AfterClass + public static void shutdownLogger() throws Exception { + StartupLoggingUtils.shutdown(); + } + + @Override + protected CoreParser coreParser() { + if (solrCoreParser == null) { + solrCoreParser = new SolrCoreParser( + super.defaultField(), + super.analyzer(), + null); + } + return solrCoreParser; + } + + //public void testSomeOtherQuery() { + // Query q = parse("SomeOtherQuery.xml"); + // dumpResults("SomeOtherQuery", q, ?); + //} + +}