Search in sources :

Example 1 with DataServiceDelegate

use of org.pentaho.di.trans.dataservice.ui.DataServiceDelegate in project pdi-dataservice-server-plugin by pentaho.

the class DataServiceRemapConfirmationDialogControllerTest method testController.

@Test
public void testController() {
    DataServiceDelegate delegate = mock(DataServiceDelegate.class);
    DataServiceRemapConfirmationDialogController controller = spy(new DataServiceRemapConfirmationDialogController(mock(DataServiceMeta.class), Arrays.asList("Step1"), delegate));
    doReturn(mock(SwtDialog.class)).when(controller).getDialog();
    Assert.assertEquals(controller.getAction(), DataServiceRemapConfirmationDialog.Action.CANCEL);
    controller.remap();
    Assert.assertEquals(controller.getAction(), DataServiceRemapConfirmationDialog.Action.REMAP);
    controller.delete();
    Assert.assertEquals(controller.getAction(), DataServiceRemapConfirmationDialog.Action.DELETE);
}
Also used : SwtDialog(org.pentaho.ui.xul.swt.tags.SwtDialog) DataServiceDelegate(org.pentaho.di.trans.dataservice.ui.DataServiceDelegate) Test(org.junit.Test)

Example 2 with DataServiceDelegate

use of org.pentaho.di.trans.dataservice.ui.DataServiceDelegate in project pdi-dataservice-server-plugin by pentaho.

the class DataServiceRemapConfirmationDialogControllerTest method testCancel.

@Test
public void testCancel() {
    DataServiceDelegate delegate = mock(DataServiceDelegate.class);
    DataServiceRemapConfirmationDialogController controller = spy(new DataServiceRemapConfirmationDialogController(mock(DataServiceMeta.class), Arrays.asList("Step1"), delegate));
    SwtDialog dialog = mock(SwtDialog.class);
    doReturn(dialog).when(controller).getElementById(anyString());
    controller.cancel();
    verify(dialog).dispose();
}
Also used : SwtDialog(org.pentaho.ui.xul.swt.tags.SwtDialog) DataServiceDelegate(org.pentaho.di.trans.dataservice.ui.DataServiceDelegate) Test(org.junit.Test)

Example 3 with DataServiceDelegate

use of org.pentaho.di.trans.dataservice.ui.DataServiceDelegate in project pdi-dataservice-server-plugin by pentaho.

the class DataServiceRemapStepChooserDialogControllerTest method testInit.

@Test
public void testInit() throws InvocationTargetException, XulException {
    DataServiceRemapStepChooserModel model = mock(DataServiceRemapStepChooserModel.class);
    DataServiceMeta dataService = mock(DataServiceMeta.class);
    List<String> stepNames = Arrays.asList("step1");
    DataServiceDelegate delegate = mock(DataServiceDelegate.class);
    final SwtLabel label = mock(SwtLabel.class);
    final SwtListbox listbox = mock(SwtListbox.class);
    BindingFactory bindingFactory = mock(BindingFactory.class);
    when(bindingFactory.createBinding(same(model), anyString(), any(XulComponent.class), anyString())).thenReturn(mock(Binding.class));
    DataServiceRemapStepChooserDialogController controller = spy(new DataServiceRemapStepChooserDialogController(model, dataService, stepNames, delegate));
    doAnswer(new Answer() {

        private Object[] returnValues = { label, listbox };

        int invocations = 0;

        @Override
        public Object answer(InvocationOnMock invocationOnMock) throws Throwable {
            return returnValues[invocations++];
        }
    }).when(controller).getElementById(anyString());
    doReturn(bindingFactory).when(controller).getBindingFactory();
    controller.init();
    verify(label).setValue(anyString());
    verify(listbox).setElements(same(stepNames));
    verify(bindingFactory).createBinding(same(model), anyString(), same(listbox), anyString());
}
Also used : Binding(org.pentaho.ui.xul.binding.Binding) DataServiceMeta(org.pentaho.di.trans.dataservice.DataServiceMeta) SwtListbox(org.pentaho.ui.xul.swt.tags.SwtListbox) Matchers.anyString(org.mockito.Matchers.anyString) SwtLabel(org.pentaho.ui.xul.swt.tags.SwtLabel) Answer(org.mockito.stubbing.Answer) Mockito.doAnswer(org.mockito.Mockito.doAnswer) InvocationOnMock(org.mockito.invocation.InvocationOnMock) DataServiceRemapStepChooserModel(org.pentaho.di.trans.dataservice.ui.model.DataServiceRemapStepChooserModel) DataServiceDelegate(org.pentaho.di.trans.dataservice.ui.DataServiceDelegate) XulComponent(org.pentaho.ui.xul.XulComponent) BindingFactory(org.pentaho.ui.xul.binding.BindingFactory) Test(org.junit.Test)

Example 4 with DataServiceDelegate

use of org.pentaho.di.trans.dataservice.ui.DataServiceDelegate in project pdi-dataservice-server-plugin by pentaho.

the class AnnotationsQueryServiceTest method testAnnotationsOnCurrentStep2Paths.

@Test
public void testAnnotationsOnCurrentStep2Paths() throws Exception {
    TransMeta transMeta = new TransMeta();
    DummyTransMeta src1Meta = new DummyTransMeta();
    StepMeta src1 = new StepMeta("src1", src1Meta);
    transMeta.addStep(src1);
    final ModelAnnotationGroup mag1 = new ModelAnnotationGroup(new ModelAnnotation<CreateAttribute>(new CreateAttribute()));
    final String name1 = mag1.get(0).getName();
    DummyTransMeta annot1Meta = createPseudoAnnotate(mag1);
    StepMeta annot1 = new StepMeta("annot1", annot1Meta);
    transMeta.addStep(annot1);
    TransHopMeta src1ToAnnot1 = new TransHopMeta(src1, annot1);
    transMeta.addTransHop(src1ToAnnot1);
    DummyTransMeta src2Meta = new DummyTransMeta();
    StepMeta src2 = new StepMeta("src2", src2Meta);
    transMeta.addStep(src2);
    final ModelAnnotationGroup mag2 = new ModelAnnotationGroup(new ModelAnnotation<CreateAttribute>(new CreateAttribute()));
    final String name2 = mag2.get(0).getName();
    DummyTransMeta annot2Meta = createPseudoAnnotate(mag2);
    StepMeta annot2 = new StepMeta("annot2", annot2Meta);
    transMeta.addStep(annot2);
    TransHopMeta src2ToAnnot2 = new TransHopMeta(src2, annot2);
    transMeta.addTransHop(src2ToAnnot2);
    DummyTransMeta mergedMeta = new DummyTransMeta();
    StepMeta mergedStepMeta = new StepMeta("merged", mergedMeta);
    transMeta.addStep(mergedStepMeta);
    transMeta.addTransHop(new TransHopMeta(annot1, mergedStepMeta));
    transMeta.addTransHop(new TransHopMeta(annot2, mergedStepMeta));
    final DataServiceMeta ds1 = new DataServiceMeta((TransMeta) transMeta.clone());
    ds1.setName("dsa");
    ds1.setStepname("annot1");
    final DataServiceMeta dsAll = new DataServiceMeta((TransMeta) transMeta.clone());
    dsAll.setName("ds");
    dsAll.setStepname("merged");
    final DataServiceDelegate dataServiceFactory = mock(DataServiceDelegate.class);
    final DataServiceResolver dataServiceResolver = mock(DataServiceResolver.class);
    when(dataServiceResolver.getDataService("dsAll")).thenReturn(dsAll);
    when(dataServiceResolver.getDataService("ds1")).thenReturn(ds1);
    final DataServiceContext dataServiceContext = mock(DataServiceContext.class);
    when(dataServiceContext.getDataServiceDelegate()).thenReturn(dataServiceFactory);
    final MetastoreLocator metastoreLocator = mock(MetastoreLocator.class);
    when(metastoreLocator.getMetastore()).thenReturn(null);
    AnnotationsQueryService queryService = new AnnotationsQueryService(metastoreLocator, dataServiceResolver);
    Query query = queryService.prepareQuery("show annotations from ds1", 0, Collections.<String, String>emptyMap());
    ByteArrayOutputStream outputStream = new ByteArrayOutputStream();
    query.writeTo(outputStream);
    String result = getResultString(outputStream);
    assertTrue(result.contains(name1));
    assertFalse(result.contains(name2));
    queryService = new AnnotationsQueryService(metastoreLocator, dataServiceResolver);
    query = queryService.prepareQuery("show annotations from dsAll", 0, Collections.<String, String>emptyMap());
    outputStream = new ByteArrayOutputStream();
    query.writeTo(outputStream);
    String result2 = getResultString(outputStream);
    assertTrue(result2.contains(name1));
    assertTrue(result2.contains(name2));
}
Also used : ModelAnnotationGroup(org.pentaho.agilebi.modeler.models.annotations.ModelAnnotationGroup) DataServiceMeta(org.pentaho.di.trans.dataservice.DataServiceMeta) CreateAttribute(org.pentaho.agilebi.modeler.models.annotations.CreateAttribute) TransMeta(org.pentaho.di.trans.TransMeta) DummyTransMeta(org.pentaho.di.trans.steps.dummytrans.DummyTransMeta) DataServiceResolver(org.pentaho.di.trans.dataservice.resolvers.DataServiceResolver) MetastoreLocator(org.pentaho.osgi.metastore.locator.api.MetastoreLocator) ByteArrayOutputStream(java.io.ByteArrayOutputStream) StepMeta(org.pentaho.di.trans.step.StepMeta) DummyTransMeta(org.pentaho.di.trans.steps.dummytrans.DummyTransMeta) DataServiceContext(org.pentaho.di.trans.dataservice.DataServiceContext) DataServiceDelegate(org.pentaho.di.trans.dataservice.ui.DataServiceDelegate) TransHopMeta(org.pentaho.di.trans.TransHopMeta) Test(org.junit.Test)

Example 5 with DataServiceDelegate

use of org.pentaho.di.trans.dataservice.ui.DataServiceDelegate in project pdi-dataservice-server-plugin by pentaho.

the class AnnotationsQueryServiceTest method testAnnotationsOnCurrentStep.

@Test
public void testAnnotationsOnCurrentStep() throws Exception {
    TransMeta transMeta = new TransMeta();
    DummyTransMeta src1Meta = new DummyTransMeta();
    StepMeta src1 = new StepMeta("src", src1Meta);
    transMeta.addStep(src1);
    final ModelAnnotationGroup mag1 = new ModelAnnotationGroup(new ModelAnnotation<CreateAttribute>(new CreateAttribute()));
    final String name1 = mag1.get(0).getName();
    DummyTransMeta annot1Meta = createPseudoAnnotate(mag1);
    StepMeta annot1 = Mockito.spy(new StepMeta("annot", annot1Meta));
    transMeta.addStep(annot1);
    TransHopMeta src1ToAnnot1 = new TransHopMeta(src1, annot1);
    transMeta.addTransHop(src1ToAnnot1);
    final DataServiceMeta dsA = new DataServiceMeta(transMeta);
    dsA.setName("dsa");
    dsA.setStepname("annot");
    final DataServiceMeta ds1 = new DataServiceMeta(transMeta);
    ds1.setName("ds");
    ds1.setStepname("src");
    final DataServiceDelegate dataServiceFactory = mock(DataServiceDelegate.class);
    final DataServiceContext dataServiceContext = mock(DataServiceContext.class);
    when(dataServiceContext.getDataServiceDelegate()).thenReturn(dataServiceFactory);
    final DataServiceResolver dataServiceResolver = mock(DataServiceResolver.class);
    when(dataServiceResolver.getDataService("ds")).thenReturn(ds1);
    when(dataServiceResolver.getDataService("dsa")).thenReturn(dsA);
    final MetastoreLocator metastoreLocator = mock(MetastoreLocator.class);
    when(metastoreLocator.getMetastore()).thenReturn(null);
    final AnnotationsQueryService queryService = new AnnotationsQueryService(metastoreLocator, dataServiceResolver);
    Query query = queryService.prepareQuery("show annotations from dsa", 0, Collections.<String, String>emptyMap());
    ByteArrayOutputStream outputStream = new ByteArrayOutputStream();
    query.writeTo(outputStream);
    String result = getResultString(outputStream);
    assertTrue(result.contains(name1));
    query = queryService.prepareQuery("show annotations from ds", 0, Collections.<String, String>emptyMap());
    outputStream = new ByteArrayOutputStream();
    query.writeTo(outputStream);
    result = getResultString(outputStream);
    String output = getResultString(outputStream);
    assertEquals("<annotations></annotations>", output.trim());
}
Also used : ModelAnnotationGroup(org.pentaho.agilebi.modeler.models.annotations.ModelAnnotationGroup) DataServiceMeta(org.pentaho.di.trans.dataservice.DataServiceMeta) CreateAttribute(org.pentaho.agilebi.modeler.models.annotations.CreateAttribute) TransMeta(org.pentaho.di.trans.TransMeta) DummyTransMeta(org.pentaho.di.trans.steps.dummytrans.DummyTransMeta) DataServiceResolver(org.pentaho.di.trans.dataservice.resolvers.DataServiceResolver) MetastoreLocator(org.pentaho.osgi.metastore.locator.api.MetastoreLocator) ByteArrayOutputStream(java.io.ByteArrayOutputStream) StepMeta(org.pentaho.di.trans.step.StepMeta) DummyTransMeta(org.pentaho.di.trans.steps.dummytrans.DummyTransMeta) DataServiceContext(org.pentaho.di.trans.dataservice.DataServiceContext) DataServiceDelegate(org.pentaho.di.trans.dataservice.ui.DataServiceDelegate) TransHopMeta(org.pentaho.di.trans.TransHopMeta) Test(org.junit.Test)

Aggregations

DataServiceDelegate (org.pentaho.di.trans.dataservice.ui.DataServiceDelegate)12 Test (org.junit.Test)11 DataServiceContext (org.pentaho.di.trans.dataservice.DataServiceContext)6 DataServiceMeta (org.pentaho.di.trans.dataservice.DataServiceMeta)6 ByteArrayOutputStream (java.io.ByteArrayOutputStream)5 DataServiceResolver (org.pentaho.di.trans.dataservice.resolvers.DataServiceResolver)5 MetastoreLocator (org.pentaho.osgi.metastore.locator.api.MetastoreLocator)5 SwtDialog (org.pentaho.ui.xul.swt.tags.SwtDialog)5 TransMeta (org.pentaho.di.trans.TransMeta)4 DummyTransMeta (org.pentaho.di.trans.steps.dummytrans.DummyTransMeta)4 ModelAnnotationGroup (org.pentaho.agilebi.modeler.models.annotations.ModelAnnotationGroup)3 URL (java.net.URL)2 Shell (org.eclipse.swt.widgets.Shell)2 Matchers.anyString (org.mockito.Matchers.anyString)2 InvocationOnMock (org.mockito.invocation.InvocationOnMock)2 CreateAttribute (org.pentaho.agilebi.modeler.models.annotations.CreateAttribute)2 TransHopMeta (org.pentaho.di.trans.TransHopMeta)2 DataServiceRemapStepChooserModel (org.pentaho.di.trans.dataservice.ui.model.DataServiceRemapStepChooserModel)2 StepMeta (org.pentaho.di.trans.step.StepMeta)2 Document (org.w3c.dom.Document)2