diff --git a/zeppelin-server/src/test/java/org/apache/zeppelin/rest/AbstractTestRestApi.java b/zeppelin-server/src/test/java/org/apache/zeppelin/rest/AbstractTestRestApi.java index 99048ee30e5..7ea2774c9d7 100644 --- a/zeppelin-server/src/test/java/org/apache/zeppelin/rest/AbstractTestRestApi.java +++ b/zeppelin-server/src/test/java/org/apache/zeppelin/rest/AbstractTestRestApi.java @@ -31,6 +31,7 @@ import org.apache.commons.exec.CommandLine; import org.apache.commons.exec.DefaultExecutor; import org.apache.commons.exec.PumpStreamHandler; +import org.apache.commons.httpclient.Header; import org.apache.commons.httpclient.HttpClient; import org.apache.commons.httpclient.HttpMethodBase; import org.apache.commons.httpclient.cookie.CookiePolicy; @@ -333,7 +334,7 @@ protected static boolean checkIfServerIsRunning() { GetMethod request = null; boolean isRunning = true; try { - request = httpGet("/"); + request = httpGet("/version"); isRunning = request.getStatusCode() == 200; } catch (IOException e) { LOG.error("AbstractTestRestApi.checkIfServerIsRunning() fails .. ZeppelinServer is not running"); @@ -427,8 +428,14 @@ private static String getCookie(String user, String password) throws IOException httpClient.executeMethod(postMethod); LOG.info("{} - {}", postMethod.getStatusCode(), postMethod.getStatusText()); Pattern pattern = Pattern.compile("JSESSIONID=([a-zA-Z0-9-]*)"); - java.util.regex.Matcher matcher = pattern.matcher(postMethod.getResponseHeaders("Set-Cookie")[0].toString()); - return matcher.find()? matcher.group(1) : StringUtils.EMPTY; + Header[] setCookieHeaders = postMethod.getResponseHeaders("Set-Cookie"); + for (Header setCookie : setCookieHeaders) { + java.util.regex.Matcher matcher = pattern.matcher(setCookie.toString()); + if (matcher.find()) { + return matcher.group(1); + } + } + return StringUtils.EMPTY; } protected static boolean userAndPasswordAreNotBlank(String user, String pwd) { diff --git a/zeppelin-server/src/test/java/org/apache/zeppelin/rest/SecurityRestApiTest.java b/zeppelin-server/src/test/java/org/apache/zeppelin/rest/SecurityRestApiTest.java index b56763aaf83..bc38f740328 100644 --- a/zeppelin-server/src/test/java/org/apache/zeppelin/rest/SecurityRestApiTest.java +++ b/zeppelin-server/src/test/java/org/apache/zeppelin/rest/SecurityRestApiTest.java @@ -40,7 +40,7 @@ public class SecurityRestApiTest extends AbstractTestRestApi { @BeforeClass public static void init() throws Exception { - AbstractTestRestApi.startUpWithAuthenticationEnable();; + AbstractTestRestApi.startUpWithAuthenticationEnable(); } @AfterClass @@ -50,21 +50,21 @@ public static void destroy() throws Exception { @Test public void testTicket() throws IOException { - GetMethod get = httpGet("/security/ticket"); + GetMethod get = httpGet("/security/ticket", "admin", "password1"); get.addRequestHeader("Origin", "http://localhost"); Map resp = gson.fromJson(get.getResponseBodyAsString(), new TypeToken>(){}.getType()); Map body = (Map) resp.get("body"); collector.checkThat("Paramater principal", body.get("principal"), - CoreMatchers.equalTo("anonymous")); + CoreMatchers.equalTo("admin")); collector.checkThat("Paramater ticket", body.get("ticket"), - CoreMatchers.equalTo("anonymous")); + CoreMatchers.not("anonymous")); get.releaseConnection(); } @Test public void testGetUserList() throws IOException { - GetMethod get = httpGet("/security/userlist/admi"); + GetMethod get = httpGet("/security/userlist/admi", "admin", "password1"); get.addRequestHeader("Origin", "http://localhost"); Map resp = gson.fromJson(get.getResponseBodyAsString(), new TypeToken>(){}.getType()); @@ -75,7 +75,7 @@ public void testGetUserList() throws IOException { CoreMatchers.equalTo(true)); get.releaseConnection(); - GetMethod notUser = httpGet("/security/userlist/randomString"); + GetMethod notUser = httpGet("/security/userlist/randomString", "admin", "password1"); notUser.addRequestHeader("Origin", "http://localhost"); Map notUserResp = gson.fromJson(notUser.getResponseBodyAsString(), new TypeToken>(){}.getType()); @@ -85,6 +85,5 @@ public void testGetUserList() throws IOException { notUser.releaseConnection(); } - } diff --git a/zeppelin-server/src/test/java/org/apache/zeppelin/security/DirAccessTest.java b/zeppelin-server/src/test/java/org/apache/zeppelin/security/DirAccessTest.java index 7837573ee3a..2f2486ba348 100644 --- a/zeppelin-server/src/test/java/org/apache/zeppelin/security/DirAccessTest.java +++ b/zeppelin-server/src/test/java/org/apache/zeppelin/security/DirAccessTest.java @@ -30,7 +30,7 @@ public class DirAccessTest extends AbstractTestRestApi { public void testDirAccessForbidden() throws Exception { synchronized (this) { System.setProperty(ZeppelinConfiguration.ConfVars.ZEPPELIN_SERVER_DEFAULT_DIR_ALLOWED.getVarName(), "false"); - AbstractTestRestApi.startUpWithAuthenticationEnable(); + AbstractTestRestApi.startUp(); HttpClient httpClient = new HttpClient(); GetMethod getMethod = new GetMethod(getUrlToTest() + "/app/"); httpClient.executeMethod(getMethod); @@ -43,7 +43,7 @@ public void testDirAccessForbidden() throws Exception { public void testDirAccessOk() throws Exception { synchronized (this) { System.setProperty(ZeppelinConfiguration.ConfVars.ZEPPELIN_SERVER_DEFAULT_DIR_ALLOWED.getVarName(), "true"); - AbstractTestRestApi.startUpWithAuthenticationEnable(); + AbstractTestRestApi.startUp(); HttpClient httpClient = new HttpClient(); GetMethod getMethod = new GetMethod(getUrlToTest() + "/app/"); httpClient.executeMethod(getMethod); diff --git a/zeppelin-zengine/src/test/java/org/apache/zeppelin/notebook/NotebookTest.java b/zeppelin-zengine/src/test/java/org/apache/zeppelin/notebook/NotebookTest.java index 50775c0e9f4..679941008ec 100644 --- a/zeppelin-zengine/src/test/java/org/apache/zeppelin/notebook/NotebookTest.java +++ b/zeppelin-zengine/src/test/java/org/apache/zeppelin/notebook/NotebookTest.java @@ -1159,7 +1159,7 @@ public void testPublicPrivateNewNote() throws IOException, SchedulerException { assertEquals(notebookAuthorization.getOwners(notePublic.getId()).size(), 1); assertEquals(notebookAuthorization.getReaders(notePublic.getId()).size(), 0); assertEquals(notebookAuthorization.getWriters(notePublic.getId()).size(), 0); - + // case of private note System.setProperty(ConfVars.ZEPPELIN_NOTEBOOK_PUBLIC.getVarName(), "false"); ZeppelinConfiguration conf2 = ZeppelinConfiguration.create(); @@ -1181,8 +1181,7 @@ public void testPublicPrivateNewNote() throws IOException, SchedulerException { notes2 = notebook.getAllNotes(user2); assertEquals(notes1.size(), 2); assertEquals(notes2.size(), 1); - assertEquals(notes1.get(1).getId(), notePrivate.getId()); - + // user1 have all rights assertEquals(notebookAuthorization.getOwners(notePrivate.getId()).size(), 1); assertEquals(notebookAuthorization.getReaders(notePrivate.getId()).size(), 1);