Skip to content

Commit fee61f9

Browse files
committed
add more test
1 parent 1b9fbbc commit fee61f9

File tree

4 files changed

+54
-2
lines changed

4 files changed

+54
-2
lines changed

livy/src/main/java/org/apache/zeppelin/livy/LivyHelper.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -321,6 +321,7 @@ private Map getStatusById(InterpreterContext context,
321321
+ userSessionMap.get(context.getAuthenticationInfo().getUser())
322322
+ "/statements/" + id,
323323
"GET", null, context.getParagraphId());
324+
LOGGER.debug("statement {} response: {}", id, json);
324325
try {
325326
Map jsonMap = gson.fromJson(json,
326327
new TypeToken<Map>() {

livy/src/test/java/org/apache/zeppelin/livy/LivyHelperTest.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@
2828
import org.mockito.Answers;
2929
import org.mockito.Mock;
3030
import org.mockito.runners.MockitoJUnitRunner;
31+
import org.slf4j.LoggerFactory;
3132

3233
import java.util.HashMap;
3334
import java.util.Properties;
@@ -63,7 +64,7 @@ public void prepareContext() throws Exception {
6364
livyHelper.property = properties;
6465
livyHelper.paragraphHttpMap = new HashMap<>();
6566
livyHelper.gson = new GsonBuilder().setPrettyPrinting().create();
66-
67+
livyHelper.LOGGER = LoggerFactory.getLogger(LivyHelper.class);
6768

6869
doReturn("{\"id\":1,\"state\":\"idle\",\"kind\":\"spark\",\"proxyUser\":\"null\",\"log\":[]}")
6970
.when(livyHelper)
@@ -80,7 +81,7 @@ public void prepareContext() throws Exception {
8081
.executeHTTP(
8182
livyHelper.property.getProperty("zeppelin.livy.url") + "/sessions/1/statements",
8283
"POST",
83-
"{\"code\": \"print(1)\" }",
84+
"{\"code\": \"print(1)\"}",
8485
null
8586
);
8687

livy/src/test/java/org/apache/zeppelin/livy/LivyIntegrationTest.java

Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@
3232
import java.util.Properties;
3333

3434
import static org.junit.Assert.assertEquals;
35+
import static org.junit.Assert.assertNull;
3536
import static org.junit.Assert.assertTrue;
3637

3738
public class LivyIntegrationTest {
@@ -117,6 +118,53 @@ public void testSparkInterpreter() {
117118
assertEquals(InterpreterResult.Type.TABLE, result.type());
118119
// TODO (zjffdu), \t at the end of each line is not necessary, it is a bug of LivySparkSQLInterpreter
119120
assertEquals("_1\t_2\t\nhello\t20\t\n", result.message());
121+
122+
// single line comment
123+
outputListener.reset();
124+
String singleLineComment = "// my comment";
125+
result = sparkInterpreter.interpret(singleLineComment, context);
126+
assertEquals(InterpreterResult.Code.SUCCESS, result.code());
127+
assertEquals(InterpreterResult.Type.TEXT, result.type());
128+
assertNull(result.message());
129+
130+
// multiple line comment
131+
outputListener.reset();
132+
String multipleLineComment = "/* multiple \n" + "line \n" + "comment */";
133+
result = sparkInterpreter.interpret(multipleLineComment, context);
134+
assertEquals(InterpreterResult.Code.SUCCESS, result.code());
135+
assertEquals(InterpreterResult.Type.TEXT, result.type());
136+
assertNull(result.message());
137+
138+
// multi-line string
139+
outputListener.reset();
140+
String multiLineString = "val str = \"\"\"multiple\n" +
141+
"line\"\"\"\n" +
142+
"println(str)";
143+
result = sparkInterpreter.interpret(multiLineString, context);
144+
assertEquals(InterpreterResult.Code.SUCCESS, result.code());
145+
assertEquals(InterpreterResult.Type.TEXT, result.type());
146+
assertNull(result.message());
147+
assertTrue(outputListener.getOutputAppended().contains("multiple\nline"));
148+
149+
// case class
150+
outputListener.reset();
151+
String caseClassCode = "case class Person(id:Int, \n" +
152+
"name:String)\n" +
153+
"val p=Person(1, \"name_a\")";
154+
result = sparkInterpreter.interpret(caseClassCode, context);
155+
assertEquals(InterpreterResult.Code.SUCCESS, result.code());
156+
assertEquals(InterpreterResult.Type.TEXT, result.type());
157+
assertNull(result.message());
158+
assertTrue(outputListener.getOutputAppended().contains("defined class Person"));
159+
160+
// object class
161+
outputListener.reset();
162+
String objectClassCode = "object Person {}";
163+
result = sparkInterpreter.interpret(objectClassCode, context);
164+
assertEquals(InterpreterResult.Code.SUCCESS, result.code());
165+
assertEquals(InterpreterResult.Type.TEXT, result.type());
166+
assertNull(result.message());
167+
assertTrue(outputListener.getOutputAppended().contains("defined module Person"));
120168
}
121169

122170
@Test

livy/src/test/resources/log4j.properties

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,3 +20,5 @@ log4j.rootLogger = INFO, stdout
2020
log4j.appender.stdout = org.apache.log4j.ConsoleAppender
2121
log4j.appender.stdout.layout = org.apache.log4j.PatternLayout
2222
log4j.appender.stdout.layout.ConversionPattern=%5p [%d] ({%t} %F[%M]:%L) - %m%n
23+
24+
log4j.logger.org.apache.zeppelin.livy=DEBUG

0 commit comments

Comments
 (0)