use of org.apache.zeppelin.interpreter.Interpreter in project zeppelin by apache.
the class RemoteInterpreterTest method testExecuteCorrectPrecode.
@Test
public void testExecuteCorrectPrecode() throws TTransportException, IOException, InterpreterException {
interpreterSetting.getOption().setPerUser(InterpreterOption.SHARED);
interpreterSetting.setProperty("zeppelin.SleepInterpreter.precode", "1");
Interpreter interpreter1 = interpreterSetting.getInterpreter("user1", note1Id, "sleep");
InterpreterContext context1 = createDummyInterpreterContext();
assertEquals(Code.SUCCESS, interpreter1.interpret("10", context1).code());
}
use of org.apache.zeppelin.interpreter.Interpreter in project zeppelin by apache.
the class ParagraphTest method returnUnchangedResultsWithDifferentUser.
@Ignore
public void returnUnchangedResultsWithDifferentUser() throws Throwable {
Note mockNote = mock(Note.class);
when(mockNote.getCredentials()).thenReturn(mock(Credentials.class));
Paragraph spyParagraph = spy(new Paragraph("para_1", mockNote, null));
Interpreter mockInterpreter = mock(Interpreter.class);
spyParagraph.setInterpreter(mockInterpreter);
doReturn(mockInterpreter).when(spyParagraph).getBindedInterpreter();
ManagedInterpreterGroup mockInterpreterGroup = mock(ManagedInterpreterGroup.class);
when(mockInterpreter.getInterpreterGroup()).thenReturn(mockInterpreterGroup);
when(mockInterpreterGroup.getId()).thenReturn("mock_id_1");
when(mockInterpreterGroup.getAngularObjectRegistry()).thenReturn(mock(AngularObjectRegistry.class));
when(mockInterpreterGroup.getResourcePool()).thenReturn(mock(ResourcePool.class));
List<InterpreterSetting> spyInterpreterSettingList = spy(new ArrayList<>());
InterpreterSetting mockInterpreterSetting = mock(InterpreterSetting.class);
when(mockInterpreterGroup.getInterpreterSetting()).thenReturn(mockInterpreterSetting);
InterpreterOption mockInterpreterOption = mock(InterpreterOption.class);
when(mockInterpreterSetting.getOption()).thenReturn(mockInterpreterOption);
when(mockInterpreterOption.permissionIsSet()).thenReturn(false);
when(mockInterpreterSetting.getStatus()).thenReturn(Status.READY);
when(mockInterpreterSetting.getId()).thenReturn("mock_id_1");
when(mockInterpreterSetting.getOrCreateInterpreterGroup(anyString(), anyString())).thenReturn(mockInterpreterGroup);
when(mockInterpreterSetting.isUserAuthorized(any(List.class))).thenReturn(true);
spyInterpreterSettingList.add(mockInterpreterSetting);
when(mockNote.getId()).thenReturn("any_id");
when(mockInterpreter.getFormType()).thenReturn(FormType.NONE);
ParagraphJobListener mockJobListener = mock(ParagraphJobListener.class);
doReturn(mockJobListener).when(spyParagraph).getListener();
InterpreterResult mockInterpreterResult = mock(InterpreterResult.class);
when(mockInterpreter.interpret(anyString(), Mockito.<InterpreterContext>any())).thenReturn(mockInterpreterResult);
when(mockInterpreterResult.code()).thenReturn(Code.SUCCESS);
// Actual test
List<InterpreterResultMessage> result1 = new ArrayList<>();
result1.add(new InterpreterResultMessage(Type.TEXT, "result1"));
when(mockInterpreterResult.message()).thenReturn(result1);
AuthenticationInfo user1 = new AuthenticationInfo("user1");
spyParagraph.setAuthenticationInfo(user1);
spyParagraph.jobRun();
Paragraph p1 = spyParagraph.getUserParagraph(user1.getUser());
mockInterpreterResult = mock(InterpreterResult.class);
when(mockInterpreter.interpret(anyString(), Mockito.<InterpreterContext>any())).thenReturn(mockInterpreterResult);
when(mockInterpreterResult.code()).thenReturn(Code.SUCCESS);
List<InterpreterResultMessage> result2 = new ArrayList<>();
result2.add(new InterpreterResultMessage(Type.TEXT, "result2"));
when(mockInterpreterResult.message()).thenReturn(result2);
AuthenticationInfo user2 = new AuthenticationInfo("user2");
spyParagraph.setAuthenticationInfo(user2);
spyParagraph.jobRun();
Paragraph p2 = spyParagraph.getUserParagraph(user2.getUser());
assertNotEquals(p1.getReturn().toString(), p2.getReturn().toString());
assertEquals(p1, spyParagraph.getUserParagraph(user1.getUser()));
}
use of org.apache.zeppelin.interpreter.Interpreter in project zeppelin by apache.
the class KSQLInterpreterTest method shouldRenderKSQLSelectAsTable.
@Test
public void shouldRenderKSQLSelectAsTable() throws InterpreterException, IOException, InterruptedException {
// given
Properties p = new Properties();
p.putAll(PROPS);
KSQLRestService service = Mockito.mock(KSQLRestService.class);
Stubber stubber = Mockito.doAnswer((invocation) -> {
Consumer<KSQLResponse> callback = (Consumer<KSQLResponse>) invocation.getArguments()[2];
IntStream.range(1, 5).forEach(i -> {
Map<String, Object> map = new HashMap<>();
if (i == 4) {
map.put("row", null);
map.put("terminal", true);
} else {
map.put("row", Collections.singletonMap("columns", Arrays.asList("value " + i)));
map.put("terminal", false);
}
callback.accept(new KSQLResponse(Arrays.asList("fieldName"), map));
try {
Thread.sleep(3000);
} catch (InterruptedException e) {
e.printStackTrace();
}
});
return null;
});
stubber.when(service).executeQuery(Mockito.any(String.class), Mockito.anyString(), Mockito.any(Consumer.class));
Interpreter interpreter = new KSQLInterpreter(p, service);
// when
String query = "select * from orders";
interpreter.interpret(query, context);
// then
String expected = "%table fieldName\n" + "value 1\n" + "value 2\n" + "value 3\n";
context.out.flush();
assertEquals(1, context.out.toInterpreterResultMessage().size());
assertEquals(expected, context.out.toInterpreterResultMessage().get(0).toString());
assertEquals(InterpreterResult.Type.TABLE, context.out.toInterpreterResultMessage().get(0).getType());
interpreter.close();
}
use of org.apache.zeppelin.interpreter.Interpreter in project zeppelin by apache.
the class Helium method suggestApp.
public HeliumPackageSuggestion suggestApp(Paragraph paragraph) {
HeliumPackageSuggestion suggestion = new HeliumPackageSuggestion();
Interpreter intp = null;
try {
intp = paragraph.getBindedInterpreter();
} catch (InterpreterNotFoundException e) {
return suggestion;
}
ResourcePool resourcePool = intp.getInterpreterGroup().getResourcePool();
ResourceSet allResources;
if (resourcePool != null) {
if (resourcePool instanceof DistributedResourcePool) {
allResources = ((DistributedResourcePool) resourcePool).getAll(true);
} else {
allResources = resourcePool.getAll();
}
} else {
allResources = interpreterSettingManager.getAllResources();
}
for (List<HeliumPackageSearchResult> pkgs : allPackages.values()) {
for (HeliumPackageSearchResult pkg : pkgs) {
if (pkg.getPkg().getType() == HeliumType.APPLICATION && pkg.isEnabled()) {
ResourceSet resources = ApplicationLoader.findRequiredResourceSet(pkg.getPkg().getResources(), paragraph.getNote().getId(), paragraph.getId(), allResources);
if (resources == null) {
continue;
} else {
suggestion.addAvailablePackage(pkg);
}
break;
}
}
}
suggestion.sort();
return suggestion;
}
use of org.apache.zeppelin.interpreter.Interpreter in project zeppelin by apache.
the class IPySparkInterpreterTest method startInterpreter.
@Override
protected void startInterpreter(Properties properties) throws InterpreterException {
InterpreterContext context = getInterpreterContext();
context.setIntpEventClient(mockIntpEventClient);
InterpreterContext.set(context);
LazyOpenInterpreter sparkInterpreter = new LazyOpenInterpreter(new SparkInterpreter(properties));
intpGroup = new InterpreterGroup();
intpGroup.put("session_1", new ArrayList<Interpreter>());
intpGroup.get("session_1").add(sparkInterpreter);
sparkInterpreter.setInterpreterGroup(intpGroup);
LazyOpenInterpreter pySparkInterpreter = new LazyOpenInterpreter(new PySparkInterpreter(properties));
intpGroup.get("session_1").add(pySparkInterpreter);
pySparkInterpreter.setInterpreterGroup(intpGroup);
interpreter = new LazyOpenInterpreter(new IPySparkInterpreter(properties));
intpGroup.get("session_1").add(interpreter);
interpreter.setInterpreterGroup(intpGroup);
pySparkInterpreter.open();
interpreter.open();
}
Aggregations