You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by sa...@apache.org on 2016/11/02 23:59:46 UTC

[49/50] [abbrv] lucene-solr:apiv2: merge trunk

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/27baf3fb/solr/core/src/test/org/apache/solr/cloud/rule/RulesTest.java
----------------------------------------------------------------------
diff --cc solr/core/src/test/org/apache/solr/cloud/rule/RulesTest.java
index 5c06d45,6955418..13649e1
--- a/solr/core/src/test/org/apache/solr/cloud/rule/RulesTest.java
+++ b/solr/core/src/test/org/apache/solr/cloud/rule/RulesTest.java
@@@ -20,21 -20,17 +20,19 @@@ import java.lang.invoke.MethodHandles
  import java.nio.file.Paths;
  import java.util.List;
  import java.util.Map;
- import java.util.regex.Matcher;
- import java.util.regex.Pattern;
  
+ import org.apache.lucene.util.LuceneTestCase;
 +import org.apache.solr.client.solrj.SolrClient;
+ import org.apache.solr.client.solrj.embedded.JettySolrRunner;
  import org.apache.solr.client.solrj.impl.HttpSolrClient;
  import org.apache.solr.client.solrj.request.CollectionAdminRequest;
  import org.apache.solr.client.solrj.request.GenericSolrRequest;
- import org.apache.solr.client.solrj.response.CollectionAdminResponse;
 +import org.apache.solr.client.solrj.response.SimpleSolrResponse;
- import org.apache.solr.cloud.AbstractFullDistribZkTestBase;
+ import org.apache.solr.cloud.SolrCloudTestCase;
  import org.apache.solr.common.cloud.DocCollection;
- import org.apache.solr.common.cloud.ImplicitDocRouter;
- import org.apache.solr.common.cloud.ZkStateReader;
  import org.apache.solr.common.params.ModifiableSolrParams;
+ import org.junit.After;
+ import org.junit.BeforeClass;
  import org.junit.Test;
  import org.junit.rules.ExpectedException;
  import org.slf4j.Logger;
@@@ -206,23 -161,6 +164,21 @@@ public class RulesTest extends SolrClou
  
    }
  
 +  @Test
 +  public void testInvokeApi() throws Exception {
-     String baseUrl = getBaseUrl((HttpSolrClient) clients.get(0));
-     try (SolrClient client = createNewSolrClient("", baseUrl)) {
++    JettySolrRunner jetty = cluster.getRandomJetty(random());
++    try (SolrClient client = getHttpSolrClient(jetty.getBaseUrl().toString())) {
 +      GenericSolrRequest req =  new GenericSolrRequest(GET, "/v2/node/invoke", new ModifiableSolrParams()
 +          .add("class", ImplicitSnitch.class.getName())
 +          .add("cores", "1")
 +          .add("freedisk", "1")
 +      );
 +      SimpleSolrResponse rsp = req.process(client);
 +      assertNotNull(((Map) rsp.getResponse().get(ImplicitSnitch.class.getName())).get("cores"));
 +      assertNotNull(((Map) rsp.getResponse().get(ImplicitSnitch.class.getName())).get("freedisk"));
 +    }
- 
- 
 +  }
 +
  
    @Test
    public void testModifyColl() throws Exception {

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/27baf3fb/solr/core/src/test/org/apache/solr/core/SolrCoreTest.java
----------------------------------------------------------------------
diff --cc solr/core/src/test/org/apache/solr/core/SolrCoreTest.java
index 6b18bed,2799078..39b9340
--- a/solr/core/src/test/org/apache/solr/core/SolrCoreTest.java
+++ b/solr/core/src/test/org/apache/solr/core/SolrCoreTest.java
@@@ -109,7 -109,9 +109,10 @@@ public class SolrCoreTest extends SolrT
        ++ihCount; assertEquals(pathToClassMap.get("/update/csv"), "solr.UpdateRequestHandler");
        ++ihCount; assertEquals(pathToClassMap.get("/update/json"), "solr.UpdateRequestHandler");
        ++ihCount; assertEquals(pathToClassMap.get("/update/json/docs"), "solr.UpdateRequestHandler");
+       ++ihCount; assertEquals(pathToClassMap.get("/analysis/document"), "solr.DocumentAnalysisRequestHandler");
+       ++ihCount; assertEquals(pathToClassMap.get("/analysis/field"), "solr.FieldAnalysisRequestHandler");
+       ++ihCount; assertEquals(pathToClassMap.get("/debug/dump"), "solr.DumpRequestHandler");
 +      ++ihCount; assertEquals(pathToClassMap.get("update"), "solr.UpdateRequestHandlerApi");
      }
      assertEquals("wrong number of implicit handlers", ihCount, implicitHandlers.size());
    }

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/27baf3fb/solr/core/src/test/org/apache/solr/handler/admin/TestCoreAdminApis.java
----------------------------------------------------------------------
diff --cc solr/core/src/test/org/apache/solr/handler/admin/TestCoreAdminApis.java
index 3d627aa,0000000..55d4eac
mode 100644,000000..100644
--- a/solr/core/src/test/org/apache/solr/handler/admin/TestCoreAdminApis.java
+++ b/solr/core/src/test/org/apache/solr/handler/admin/TestCoreAdminApis.java
@@@ -1,115 -1,0 +1,115 @@@
 +/*
 + * 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.handler.admin;
 +
 +import java.nio.file.Path;
 +import java.nio.file.Paths;
 +import java.util.Collections;
 +import java.util.HashMap;
 +import java.util.Map;
 +import java.util.Properties;
 +
 +import org.apache.solr.SolrTestCaseJ4;
 +import org.apache.solr.client.solrj.SolrRequest;
 +import org.apache.solr.core.CoreContainer;
 +import org.apache.solr.api.Api;
 +import org.apache.solr.api.ApiBag;
 +import org.easymock.EasyMock;
 +
 +import static org.apache.solr.common.util.Utils.fromJSONString;
 +import static org.easymock.EasyMock.anyBoolean;
 +import static org.easymock.EasyMock.anyObject;
 +import static org.easymock.EasyMock.getCurrentArguments;
 +
 +public class TestCoreAdminApis extends SolrTestCaseJ4 {
 +
 +  public void testCalls() throws Exception {
 +    Map<String, Object[]> calls = new HashMap<>();
 +    CoreContainer mockCC = getCoreContainerMock(calls, new HashMap<>());
 +
 +    CoreAdminHandler  coreAdminHandler = new CoreAdminHandler(mockCC);
 +    ApiBag apiBag = new ApiBag();
 +    for (Api api : coreAdminHandler.getApis()) {
 +      apiBag.register(api, Collections.EMPTY_MAP);
 +    }
 +    TestCollectionAPIs.makeCall(apiBag, "/cores", SolrRequest.METHOD.POST,
 +        "{create:{name: hello, instanceDir : someDir, schema: 'schema.xml'}}", mockCC);
 +    Object[] params = calls.get("create");
 +    assertEquals("hello" ,params[0]);
 +    assertEquals(fromJSONString("{schema : schema.xml}") ,params[2]);
 +
 +    TestCollectionAPIs.makeCall(apiBag, "/cores/core1", SolrRequest.METHOD.POST,
 +        "{swap:{with: core2}}", mockCC);
 +    params = calls.get("swap");
 +    assertEquals("core1" ,params[0]);
 +    assertEquals("core2" ,params[1]);
 +
 +    TestCollectionAPIs.makeCall(apiBag, "/cores/core1", SolrRequest.METHOD.POST,
 +        "{rename:{to: core2}}", mockCC);
 +    params = calls.get("swap");
 +    assertEquals("core1" ,params[0]);
 +    assertEquals("core2" ,params[1]);
 +
 +    TestCollectionAPIs.makeCall(apiBag, "/cores/core1", SolrRequest.METHOD.POST,
 +        "{unload:{deleteIndex : true}}", mockCC);
 +    params = calls.get("unload");
 +    assertEquals("core1" ,params[0]);
 +    assertEquals(Boolean.TRUE ,params[1]);
 +  }
 +
 +  public static CoreContainer getCoreContainerMock(final Map<String, Object[]> in,Map<String,Object> out ) {
 +    CoreContainer mockCC = EasyMock.createMock(CoreContainer.class);
 +    EasyMock.reset(mockCC);
-     mockCC.create(anyObject(String.class), anyObject(Path.class) , anyObject(Map.class));
++    mockCC.create(anyObject(String.class), anyObject(Path.class) , anyObject(Map.class), false);
 +    EasyMock.expectLastCall().andAnswer(() -> {
 +      in.put("create", getCurrentArguments());
 +      return null;
 +    }).anyTimes();
 +    mockCC.swap(anyObject(String.class), anyObject(String.class));
 +    EasyMock.expectLastCall().andAnswer(() -> {
 +      in.put("swap", getCurrentArguments());
 +      return null;
 +    }).anyTimes();
 +
 +    mockCC.rename(anyObject(String.class), anyObject(String.class));
 +    EasyMock.expectLastCall().andAnswer(() -> {
 +      in.put("rename", getCurrentArguments());
 +      return null;
 +    }).anyTimes();
 +
 +    mockCC.unload(anyObject(String.class), anyBoolean(),
 +        anyBoolean(), anyBoolean());
 +    EasyMock.expectLastCall().andAnswer(() -> {
 +      in.put("unload", getCurrentArguments());
 +      return null;
 +    }).anyTimes();
 +
 +    mockCC.getCoreRootDirectory();
 +    EasyMock.expectLastCall().andAnswer(() -> Paths.get("coreroot")).anyTimes();
 +    mockCC.getContainerProperties();
 +    EasyMock.expectLastCall().andAnswer(() -> new Properties()).anyTimes();
 +
 +    mockCC.getRequestHandlers();
 +    EasyMock.expectLastCall().andAnswer(() -> out.get("getRequestHandlers")).anyTimes();
 +
 +    EasyMock.replay(mockCC);
 +    return mockCC;
 +  }
 +
 +
 +}

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/27baf3fb/solr/core/src/test/org/apache/solr/rest/schema/TestBulkSchemaAPI.java
----------------------------------------------------------------------

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/27baf3fb/solr/core/src/test/org/apache/solr/security/BasicAuthIntegrationTest.java
----------------------------------------------------------------------
diff --cc solr/core/src/test/org/apache/solr/security/BasicAuthIntegrationTest.java
index 405bac7,137fcdd..397f4e8
--- a/solr/core/src/test/org/apache/solr/security/BasicAuthIntegrationTest.java
+++ b/solr/core/src/test/org/apache/solr/security/BasicAuthIntegrationTest.java
@@@ -80,14 -85,7 +85,11 @@@ public class BasicAuthIntegrationTest e
  
      String authcPrefix = "/admin/authentication";
      String authzPrefix = "/admin/authorization";
 +    if(random().nextBoolean()){
 +      authcPrefix = "/v2/cluster/security/authentication";
 +      authzPrefix = "/v2/cluster/security/authorization";
 +    }
  
-     String old = cloudSolrClient.getDefaultCollection();
-     cloudSolrClient.setDefaultCollection(null);
- 
      NamedList<Object> rsp;
      HttpClient cl = null;
      try {

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/27baf3fb/solr/server/solr/configsets/sample_techproducts_configs/conf/solrconfig.xml
----------------------------------------------------------------------

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/27baf3fb/solr/solrj/src/java/org/apache/solr/client/solrj/impl/CloudSolrClient.java
----------------------------------------------------------------------

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/27baf3fb/solr/solrj/src/java/org/apache/solr/common/cloud/ZkStateReader.java
----------------------------------------------------------------------

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/27baf3fb/solr/solrj/src/test/org/apache/solr/client/solrj/embedded/SolrExampleJettyTest.java
----------------------------------------------------------------------

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/27baf3fb/solr/test-framework/src/java/org/apache/solr/util/RestTestHarness.java
----------------------------------------------------------------------