You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@zeppelin.apache.org by mo...@apache.org on 2015/04/20 04:55:23 UTC

incubator-zeppelin git commit: Interpreter.getProperty() is not returning correct property set.

Repository: incubator-zeppelin
Updated Branches:
  refs/heads/master cdd343b1f -> 182908792


Interpreter.getProperty() is not returning correct property set.

Interpreter.getProperty() is not returning correct property set.
This PR fixes the problem and add test for it.

Ready to merge.

Author: Lee moon soo <mo...@apache.org>

Closes #42 from Leemoonsoo/fix_getProperty and squashes the following commits:

dc29e1b [Lee moon soo] Fix Interpreter.getProperty() which was not really combine default property and given property.


Project: http://git-wip-us.apache.org/repos/asf/incubator-zeppelin/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-zeppelin/commit/18290879
Tree: http://git-wip-us.apache.org/repos/asf/incubator-zeppelin/tree/18290879
Diff: http://git-wip-us.apache.org/repos/asf/incubator-zeppelin/diff/18290879

Branch: refs/heads/master
Commit: 182908792c9efbb17ba9e52b1a8228713d23a947
Parents: cdd343b
Author: Lee moon soo <mo...@apache.org>
Authored: Mon Apr 20 06:30:30 2015 +0900
Committer: Lee moon soo <mo...@apache.org>
Committed: Mon Apr 20 11:55:15 2015 +0900

----------------------------------------------------------------------
 .../zeppelin/interpreter/Interpreter.java       |  2 +-
 .../zeppelin/interpreter/InterpreterTest.java   | 63 ++++++++++++++++++++
 2 files changed, 64 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-zeppelin/blob/18290879/zeppelin-interpreter/src/main/java/org/apache/zeppelin/interpreter/Interpreter.java
----------------------------------------------------------------------
diff --git a/zeppelin-interpreter/src/main/java/org/apache/zeppelin/interpreter/Interpreter.java b/zeppelin-interpreter/src/main/java/org/apache/zeppelin/interpreter/Interpreter.java
index 3f7d35a..b6d0257 100644
--- a/zeppelin-interpreter/src/main/java/org/apache/zeppelin/interpreter/Interpreter.java
+++ b/zeppelin-interpreter/src/main/java/org/apache/zeppelin/interpreter/Interpreter.java
@@ -148,7 +148,7 @@ public abstract class Interpreter {
     Map<String, InterpreterProperty> defaultProperties = Interpreter
         .findRegisteredInterpreterByClassName(getClassName()).getProperties();
     for (String k : defaultProperties.keySet()) {
-      if (!p.contains(k)) {
+      if (!p.containsKey(k)) {
         String value = defaultProperties.get(k).getDefaultValue();
         if (value != null) {
           p.put(k, defaultProperties.get(k).getDefaultValue());

http://git-wip-us.apache.org/repos/asf/incubator-zeppelin/blob/18290879/zeppelin-interpreter/src/test/java/org/apache/zeppelin/interpreter/InterpreterTest.java
----------------------------------------------------------------------
diff --git a/zeppelin-interpreter/src/test/java/org/apache/zeppelin/interpreter/InterpreterTest.java b/zeppelin-interpreter/src/test/java/org/apache/zeppelin/interpreter/InterpreterTest.java
new file mode 100644
index 0000000..e10bb32
--- /dev/null
+++ b/zeppelin-interpreter/src/test/java/org/apache/zeppelin/interpreter/InterpreterTest.java
@@ -0,0 +1,63 @@
+/*
+ * 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.zeppelin.interpreter;
+
+import static org.junit.Assert.assertEquals;
+
+import java.util.Properties;
+
+import org.apache.zeppelin.interpreter.remote.mock.MockInterpreterA;
+import org.junit.Test;
+
+public class InterpreterTest {
+
+  @Test
+  public void testDefaultProperty() {
+    Properties p = new Properties();
+    MockInterpreterA intp = new MockInterpreterA(p);
+
+    assertEquals(1, intp.getProperty().size());
+    assertEquals("v1", intp.getProperty().get("p1"));
+    assertEquals("v1", intp.getProperty("p1"));
+  }
+
+  @Test
+  public void testOverridedProperty() {
+    Properties p = new Properties();
+    p.put("p1", "v2");
+    MockInterpreterA intp = new MockInterpreterA(p);
+
+    assertEquals(1, intp.getProperty().size());
+    assertEquals("v2", intp.getProperty().get("p1"));
+    assertEquals("v2", intp.getProperty("p1"));
+  }
+
+  @Test
+  public void testAdditionalProperty() {
+    Properties p = new Properties();
+    p.put("p2", "v2");
+    MockInterpreterA intp = new MockInterpreterA(p);
+
+    assertEquals(2, intp.getProperty().size());
+    assertEquals("v1", intp.getProperty().get("p1"));
+    assertEquals("v1", intp.getProperty("p1"));
+    assertEquals("v2", intp.getProperty().get("p2"));
+    assertEquals("v2", intp.getProperty("p2"));
+  }
+
+}