Search in sources :

Example 21 with IOService

use of org.uberfire.io.IOService in project kie-wb-common by kiegroup.

the class JavaRoasterModelDriverTest method nestedClassUpdateTest.

@Test
public void nestedClassUpdateTest() {
    try {
        // First read the NestedClassUpdateTest
        Path nestedClassUpdateTestFilePath = rootPath.resolve("package5").resolve("NestedClassUpdateTest.java");
        String source = ioService.readAllString(nestedClassUpdateTestFilePath);
        JavaClassSource nestedClassUpdateTestJavaClassSource = (JavaClassSource) Roaster.parse(source);
        ClassLoader classLoader = getClass().getClassLoader();
        ClassTypeResolver classTypeResolver = DriverUtils.createClassTypeResolver(nestedClassUpdateTestJavaClassSource, classLoader);
        final SourceFilter pojo1Filter = javaType -> false;
        final NestedClassFilter nestedClassFilter = javaType -> javaType.isClass() && javaType.getAnnotation(Generated.class) != null;
        final MethodFilter methodFilter = method -> !method.isConstructor() && method.getAnnotation(Generated.class) != null;
        FilterHolder filterHolder = mock(FilterHolder.class);
        when(filterHolder.getSourceFilters()).thenReturn(Collections.singleton(pojo1Filter));
        when(filterHolder.getNestedClassFilters()).thenReturn(Collections.singleton(nestedClassFilter));
        when(filterHolder.getMethodFilters()).thenReturn(Collections.singleton(methodFilter));
        JavaRoasterModelDriver javaRoasterModelDriver = new JavaRoasterModelDriver(ioService, rootPath, classLoader, filterHolder);
        ModelDriverResult result = javaRoasterModelDriver.loadDataObject(source, nestedClassUpdateTestFilePath);
        // 1) read the NestedClassUpdateTest
        DataObject nestedClassUpdateTest = result.getDataModel().getDataObject("org.kie.workbench.common.services.datamodeller.driver.package5.NestedClassUpdateTest");
        // 2) modify the NestedClassUpdateTest according to the expected result
        JavaClass nestedClass = nestedClassUpdateTest.getNestedClasses().stream().filter(t -> t.getName().equals("NestedClass")).findFirst().get();
        assertNotNull(nestedClass);
        nestedClass.setName("UpdatedNestedClass");
        String removedInterface = nestedClass.removeInterface("ParametrizedInterface<Integer>");
        assertNotNull(removedInterface);
        nestedClass.addInterface("ParametrizedInterface<Double>");
        Method method = nestedClass.getMethod("method", Collections.EMPTY_LIST);
        assertNotNull(method);
        method.setName("updatedMethod");
        nestedClassUpdateTest.setName("NestedClassUpdateTestResult");
        // 3) compare the modified data object with the expected data object.
        Path expectedFilePath = rootPath.resolve("package5").resolve("NestedClassUpdateTestResult.java");
        String expectedSource = ioService.readAllString(expectedFilePath);
        JavaClassSource expectedJavaClassSource = (JavaClassSource) Roaster.parse(expectedSource);
        ModelDriverResult expectedResult = javaRoasterModelDriver.loadDataObject(expectedSource, expectedFilePath);
        DataObject nestedClassUpdateTestResult = expectedResult.getDataModel().getDataObject("org.kie.workbench.common.services.datamodeller.driver.package5.NestedClassUpdateTestResult");
        // First check, the modified data object in memory should be the same as the readed from the model.
        DataModelerAssert.assertEqualsDataObject(nestedClassUpdateTestResult, nestedClassUpdateTest);
        // Second check, update the JavaClassSource corresponding to the NestedClassUpdateTest
        javaRoasterModelDriver.updateSource(nestedClassUpdateTestJavaClassSource, nestedClassUpdateTest, new UpdateInfo(), classTypeResolver);
        ModelDriverResult updatedResult = javaRoasterModelDriver.loadDataObject(nestedClassUpdateTestJavaClassSource.toString(), nestedClassUpdateTestFilePath);
        // and now compare the updatedResult with the expected value.
        DataModelerAssert.assertEqualsDataObject(nestedClassUpdateTestResult, updatedResult.getDataModel().getDataObject("org.kie.workbench.common.services.datamodeller.driver.package5.NestedClassUpdateTestResult"));
        logger.debug(nestedClassUpdateTestJavaClassSource.toString());
    } catch (Exception e) {
        e.printStackTrace();
        fail("Test failed: " + e.getMessage());
    }
}
Also used : Path(org.uberfire.java.nio.file.Path) Description(org.kie.api.definition.type.Description) Arrays(java.util.Arrays) ClassTypeResolver(org.kie.soup.project.datamodel.commons.types.ClassTypeResolver) Timestamp(org.kie.api.definition.type.Timestamp) Label(org.kie.api.definition.type.Label) TestAnnotation1(org.kie.workbench.common.services.datamodeller.parser.test.TestAnnotation1) UpdateInfo(org.kie.workbench.common.services.datamodeller.driver.impl.UpdateInfo) LoggerFactory(org.slf4j.LoggerFactory) DataModelerAssert(org.kie.workbench.common.services.datamodeller.DataModelerAssert) Paths(org.uberfire.backend.server.util.Paths) Generated(javax.annotation.Generated) Matcher(java.util.regex.Matcher) Roaster(org.jboss.forge.roaster.Roaster) ClassAnnotation(org.kie.workbench.common.services.datamodeller.annotations.ClassAnnotation) SequenceGenerator(javax.persistence.SequenceGenerator) SimpleFileSystemProvider(org.uberfire.java.nio.fs.file.SimpleFileSystemProvider) JavaEnum(org.kie.workbench.common.services.datamodeller.core.JavaEnum) URI(java.net.URI) Instance(javax.enterprise.inject.Instance) Entity(javax.persistence.Entity) ParameterImpl(org.kie.workbench.common.services.datamodeller.core.impl.ParameterImpl) UniqueConstraint(javax.persistence.UniqueConstraint) ClassReactive(org.kie.api.definition.type.ClassReactive) JavaTypeInfo(org.kie.workbench.common.services.datamodeller.core.JavaTypeInfo) ENUM3(org.kie.workbench.common.services.datamodeller.annotations.ENUM3) NoSuchFileException(org.uberfire.java.nio.file.NoSuchFileException) List(java.util.List) AnnotationDefinition(org.kie.workbench.common.services.datamodeller.core.AnnotationDefinition) DataModelImpl(org.kie.workbench.common.services.datamodeller.core.impl.DataModelImpl) JavaClassSource(org.jboss.forge.roaster.model.source.JavaClassSource) EnumsAnnotation(org.kie.workbench.common.services.datamodeller.annotations.EnumsAnnotation) AnnotationValuesAnnotation(org.kie.workbench.common.services.datamodeller.annotations.AnnotationValuesAnnotation) Role(org.kie.api.definition.type.Role) JavaClassImpl(org.kie.workbench.common.services.datamodeller.core.impl.JavaClassImpl) PrimitivesAnnotation(org.kie.workbench.common.services.datamodeller.annotations.PrimitivesAnnotation) MockitoJUnitRunner(org.mockito.junit.MockitoJUnitRunner) JavaRoasterModelDriver(org.kie.workbench.common.services.datamodeller.driver.impl.JavaRoasterModelDriver) ObjectProperty(org.kie.workbench.common.services.datamodeller.core.ObjectProperty) Expires(org.kie.api.definition.type.Expires) TestAnnotation(org.kie.workbench.common.services.datamodeller.parser.test.TestAnnotation) MarkerAnnotation(org.kie.workbench.common.services.datamodeller.annotations.MarkerAnnotation) Parameter(org.kie.workbench.common.services.datamodeller.core.Parameter) Mock(org.mockito.Mock) Path(org.uberfire.java.nio.file.Path) RunWith(org.junit.runner.RunWith) DriverUtils(org.kie.workbench.common.services.datamodeller.util.DriverUtils) Annotation(org.kie.workbench.common.services.datamodeller.core.Annotation) Type(org.kie.workbench.common.services.datamodeller.core.Type) ArrayList(java.util.ArrayList) Table(javax.persistence.Table) TypeSafe(org.kie.api.definition.type.TypeSafe) Duration(org.kie.api.definition.type.Duration) DataModel(org.kie.workbench.common.services.datamodeller.core.DataModel) Before(org.junit.Before) Logger(org.slf4j.Logger) JavaEnumImpl(org.kie.workbench.common.services.datamodeller.core.impl.JavaEnumImpl) DataObject(org.kie.workbench.common.services.datamodeller.core.DataObject) IOException(java.io.IOException) Test(org.junit.Test) Method(org.kie.workbench.common.services.datamodeller.core.Method) InputStreamReader(java.io.InputStreamReader) File(java.io.File) ImportImpl(org.kie.workbench.common.services.datamodeller.core.impl.ImportImpl) DataObjectImpl(org.kie.workbench.common.services.datamodeller.core.impl.DataObjectImpl) MethodImpl(org.kie.workbench.common.services.datamodeller.core.impl.MethodImpl) Mockito(org.mockito.Mockito) TestEnums(org.kie.workbench.common.services.datamodeller.annotations.TestEnums) AnnotationImpl(org.kie.workbench.common.services.datamodeller.core.impl.AnnotationImpl) Position(org.kie.api.definition.type.Position) JavaClass(org.kie.workbench.common.services.datamodeller.core.JavaClass) TypeImpl(org.kie.workbench.common.services.datamodeller.core.impl.TypeImpl) ModelDriverResult(org.kie.workbench.common.services.datamodeller.driver.model.ModelDriverResult) IOService(org.uberfire.io.IOService) BufferedReader(java.io.BufferedReader) Key(org.kie.api.definition.type.Key) Assert(org.junit.Assert) Collections(java.util.Collections) Visibility(org.kie.workbench.common.services.datamodeller.core.Visibility) InputStream(java.io.InputStream) JavaClassSource(org.jboss.forge.roaster.model.source.JavaClassSource) Method(org.kie.workbench.common.services.datamodeller.core.Method) NoSuchFileException(org.uberfire.java.nio.file.NoSuchFileException) IOException(java.io.IOException) DataObject(org.kie.workbench.common.services.datamodeller.core.DataObject) JavaClass(org.kie.workbench.common.services.datamodeller.core.JavaClass) ModelDriverResult(org.kie.workbench.common.services.datamodeller.driver.model.ModelDriverResult) ClassTypeResolver(org.kie.soup.project.datamodel.commons.types.ClassTypeResolver) JavaRoasterModelDriver(org.kie.workbench.common.services.datamodeller.driver.impl.JavaRoasterModelDriver) UpdateInfo(org.kie.workbench.common.services.datamodeller.driver.impl.UpdateInfo) Test(org.junit.Test)

Example 22 with IOService

use of org.uberfire.io.IOService in project kie-wb-common by kiegroup.

the class ExamplesServiceImplTest method setup.

@Before
public void setup() throws Exception {
    when(spaceConfigStorageRegistry.get(Mockito.<String>any())).thenReturn(spaceConfigStorage);
    when(spaceConfigStorageRegistry.getBatch(Mockito.<String>any())).thenReturn(new SpaceConfigStorageRegistryImpl.SpaceStorageBatchImpl(spaceConfigStorage));
    when(spaceConfigStorageRegistry.exist(Mockito.<String>any())).thenReturn(true);
    when(ou.getSpace()).thenReturn(space);
    when(space.getName()).thenReturn("ou");
    service = spy(new ExamplesServiceImpl(ioService, repositoryFactory, moduleService, ouService, projectService, metadataService, newProjectEvent, projectScreenService, validators, spaceConfigStorageRegistry, systemFS, pathUtil, repositoryService));
    FileUtils.deleteDirectory(new File(".kie-wb-playground"));
    when(this.validators.getValidators()).thenReturn(new ArrayList<>());
    doAnswer(invocationOnMock -> {
        String spaceName = (String) invocationOnMock.getArguments()[0];
        String defaultGroupId = (String) invocationOnMock.getArguments()[1];
        OrganizationalUnitImpl o = new OrganizationalUnitImpl(spaceName, defaultGroupId);
        organizationalUnits.put(spaceName, o);
        return o;
    }).when(ouService).createOrganizationalUnit(Mockito.<String>any(), Mockito.<String>any());
    doAnswer(invocationOnMock -> organizationalUnits.get(invocationOnMock.getArguments()[0])).when(ouService).getOrganizationalUnit(Mockito.<String>any());
    when(ouService.getOrganizationalUnits()).thenReturn(new HashSet<OrganizationalUnit>() {

        {
            add(new OrganizationalUnitImpl("ou1Name", "ou1GroupId"));
            add(new OrganizationalUnitImpl("ou2Name", "ou2GroupId"));
        }
    });
    when(moduleService.resolveModule(Mockito.<Path>any())).thenAnswer((Answer<KieModule>) invocationOnMock -> {
        final Path path = (Path) invocationOnMock.getArguments()[0];
        final KieModule module = new KieModule(path, path, path, path, path, path, mock(POM.class));
        return module;
    });
    when(sessionInfo.getId()).thenReturn("sessionId");
    when(sessionInfo.getIdentity()).thenReturn(user);
    when(user.getIdentifier()).thenReturn("user");
    doAnswer(invocationOnMock -> organizationalUnits.containsKey(invocationOnMock.getArguments()[0])).when(service).existSpace(any());
}
Also used : Arrays(java.util.Arrays) RepositoryInfo(org.guvnor.structure.organizationalunit.config.RepositoryInfo) RepositoryFactory(org.guvnor.structure.server.repositories.RepositoryFactory) URL(java.net.URL) ArgumentMatchers.eq(org.mockito.ArgumentMatchers.eq) OrganizationalUnitService(org.guvnor.structure.organizationalunit.OrganizationalUnitService) ExampleRepository(org.kie.workbench.common.screens.examples.model.ExampleRepository) POM(org.guvnor.common.services.project.model.POM) PathFactory(org.uberfire.backend.vfs.PathFactory) KieModuleService(org.kie.workbench.common.services.shared.project.KieModuleService) Map(java.util.Map) After(org.junit.After) Spy(org.mockito.Spy) Mockito.doAnswer(org.mockito.Mockito.doAnswer) WorkspaceProjectContextChangeEvent(org.guvnor.common.services.project.context.WorkspaceProjectContextChangeEvent) SessionInfo(org.uberfire.rpc.SessionInfo) Module(org.guvnor.common.services.project.model.Module) WorkspaceProject(org.guvnor.common.services.project.model.WorkspaceProject) SpaceConfigStorage(org.guvnor.structure.organizationalunit.config.SpaceConfigStorage) ProjectScreenService(org.kie.workbench.common.screens.projecteditor.service.ProjectScreenService) Mockito.doReturn(org.mockito.Mockito.doReturn) NewProjectEvent(org.guvnor.common.services.project.events.NewProjectEvent) MetadataService(org.guvnor.common.services.shared.metadata.MetadataService) SpaceConfigStorageRegistry(org.guvnor.structure.organizationalunit.config.SpaceConfigStorageRegistry) Set(java.util.Set) KieModule(org.kie.workbench.common.services.shared.project.KieModule) List(java.util.List) ImportProjectValidators(org.kie.workbench.common.screens.examples.validation.ImportProjectValidators) Assert.assertFalse(org.junit.Assert.assertFalse) PathUtil(org.guvnor.common.services.project.backend.server.utils.PathUtil) Optional(java.util.Optional) EventSourceMock(org.uberfire.mocks.EventSourceMock) MockitoJUnitRunner(org.mockito.junit.MockitoJUnitRunner) SpaceConfigStorageRegistryImpl(org.guvnor.structure.backend.organizationalunit.config.SpaceConfigStorageRegistryImpl) Mockito.mock(org.mockito.Mockito.mock) ArgumentMatchers.any(org.mockito.ArgumentMatchers.any) Space(org.uberfire.spaces.Space) Mock(org.mockito.Mock) OrganizationalUnitImpl(org.guvnor.structure.organizationalunit.impl.OrganizationalUnitImpl) RunWith(org.junit.runner.RunWith) HashMap(java.util.HashMap) Mockito.spy(org.mockito.Mockito.spy) Captor(org.mockito.Captor) ArrayList(java.util.ArrayList) HashSet(java.util.HashSet) Answer(org.mockito.stubbing.Answer) ExamplesMetaData(org.kie.workbench.common.screens.examples.model.ExamplesMetaData) ArgumentCaptor(org.mockito.ArgumentCaptor) Path(org.uberfire.backend.vfs.Path) Before(org.junit.Before) Event(javax.enterprise.event.Event) OrganizationalUnit(org.guvnor.structure.organizationalunit.OrganizationalUnit) Assert.assertNotNull(org.junit.Assert.assertNotNull) RepositoryService(org.guvnor.structure.repositories.RepositoryService) Assert.assertTrue(org.junit.Assert.assertTrue) FileUtils(org.apache.commons.io.FileUtils) Test(org.junit.Test) Mockito.times(org.mockito.Mockito.times) GitRepository(org.guvnor.structure.repositories.impl.git.GitRepository) Mockito.when(org.mockito.Mockito.when) WorkspaceProjectService(org.guvnor.common.services.project.service.WorkspaceProjectService) File(java.io.File) ExampleOrganizationalUnit(org.kie.workbench.common.screens.examples.model.ExampleOrganizationalUnit) Mockito.verify(org.mockito.Mockito.verify) ImportUtils.makeGitRepository(org.kie.workbench.common.screens.examples.backend.server.ImportUtils.makeGitRepository) Mockito(org.mockito.Mockito) Mockito.never(org.mockito.Mockito.never) Assert.assertNull(org.junit.Assert.assertNull) Paths(java.nio.file.Paths) User(org.jboss.errai.security.shared.api.identity.User) ImportProject(org.kie.workbench.common.screens.examples.model.ImportProject) IOService(org.uberfire.io.IOService) Collections(java.util.Collections) FileSystem(org.uberfire.java.nio.file.FileSystem) Assert.assertEquals(org.junit.Assert.assertEquals) Branch(org.guvnor.structure.repositories.Branch) Path(org.uberfire.backend.vfs.Path) SpaceConfigStorageRegistryImpl(org.guvnor.structure.backend.organizationalunit.config.SpaceConfigStorageRegistryImpl) OrganizationalUnit(org.guvnor.structure.organizationalunit.OrganizationalUnit) ExampleOrganizationalUnit(org.kie.workbench.common.screens.examples.model.ExampleOrganizationalUnit) File(java.io.File) OrganizationalUnitImpl(org.guvnor.structure.organizationalunit.impl.OrganizationalUnitImpl) KieModule(org.kie.workbench.common.services.shared.project.KieModule) Before(org.junit.Before)

Example 23 with IOService

use of org.uberfire.io.IOService in project kie-wb-common by kiegroup.

the class BaseIndexingTest method setup.

@Before
public void setup() throws IOException {
    if (!created) {
        final String repositoryName = getRepositoryName();
        final String path = createTempDirectory().getAbsolutePath();
        System.setProperty("org.uberfire.nio.git.dir", path);
        System.setProperty("org.uberfire.nio.git.daemon.enabled", "false");
        System.setProperty("org.uberfire.nio.git.ssh.enabled", "false");
        System.setProperty("org.uberfire.sys.repo.monitor.disabled", "true");
        logger.debug(".niogit: " + path);
        final URI newRepo = URI.create("git://" + repositoryName);
        try {
            IOService ioService = ioService();
            ioService.newFileSystem(newRepo, new HashMap<String, Object>());
            // Don't ask, but we need to write a single file first in order for indexing to work
            basePath = getDirectoryPath().resolveSibling("someNewOtherPath");
            ioService().write(basePath.resolve("dummy"), "<none>");
        } catch (final Exception e) {
            e.printStackTrace();
            logger.warn("Failed to initialize IOService instance: " + e.getClass().getSimpleName() + ": " + e.getMessage(), e);
        } finally {
            created = true;
        }
        final Instance<NamedQuery> namedQueriesProducer = mock(Instance.class);
        when(namedQueriesProducer.iterator()).thenReturn(getQueries().iterator());
        service = new RefactoringQueryServiceImpl(getConfig(), new NamedQueries(namedQueriesProducer));
        service.init();
    }
}
Also used : IOService(org.uberfire.io.IOService) NamedQueries(org.kie.workbench.common.services.refactoring.backend.server.query.NamedQueries) NamedQuery(org.kie.workbench.common.services.refactoring.backend.server.query.NamedQuery) URI(java.net.URI) IOException(java.io.IOException) RefactoringQueryServiceImpl(org.kie.workbench.common.services.refactoring.backend.server.query.RefactoringQueryServiceImpl) Before(org.junit.Before)

Example 24 with IOService

use of org.uberfire.io.IOService in project drools-wb by kiegroup.

the class DecisionTableXLSServiceImplTest method inputStreamShouldNotBeReused.

@Test
public void inputStreamShouldNotBeReused() throws IOException {
    when(ioService.write(any(org.uberfire.java.nio.file.Path.class), any(byte[].class), any())).thenReturn(null);
    this.service = getServiceWithValidationOverride((tempFile) -> {
    // Do nothing; tests do not use a *real* XLS file
    });
    mockStatic(IOUtils.class);
    mockStatic(Paths.class);
    when(Paths.convert(any(Path.class))).thenReturn(nioPath);
    service.create(path, inputstream, sessionId, comment);
    final InOrder inOrder = inOrder(ioService);
    inOrder.verify(ioService).startBatch(any());
    inOrder.verify(ioService).write(any(org.uberfire.java.nio.file.Path.class), Mockito.<byte[]>any(), any(CommentedOption.class));
    inOrder.verify(ioService).endBatch();
    verifyStatic(IOUtils.class, times(1));
    IOUtils.copy(eq(inputstream), any(OutputStream.class));
}
Also used : Path(org.uberfire.backend.vfs.Path) ArgumentMatchers.any(org.mockito.ArgumentMatchers.any) PowerMockito.mockStatic(org.powermock.api.mockito.PowerMockito.mockStatic) Mock(org.mockito.Mock) ArgumentMatchers.eq(org.mockito.ArgumentMatchers.eq) URISyntaxException(java.net.URISyntaxException) RunWith(org.junit.runner.RunWith) Captor(org.mockito.Captor) Paths(org.uberfire.backend.server.util.Paths) ArgumentCaptor(org.mockito.ArgumentCaptor) CommentedOptionFactory(org.guvnor.common.services.backend.util.CommentedOptionFactory) PrepareForTest(org.powermock.core.classloader.annotations.PrepareForTest) PowerMockRunner(org.powermock.modules.junit4.PowerMockRunner) RenameService(org.uberfire.ext.editor.commons.service.RenameService) PowerMockIgnore(org.powermock.core.classloader.annotations.PowerMockIgnore) Path(org.uberfire.backend.vfs.Path) DeleteService(org.uberfire.ext.editor.commons.service.DeleteService) Before(org.junit.Before) ArgumentMatchers.isA(org.mockito.ArgumentMatchers.isA) OutputStream(java.io.OutputStream) Event(javax.enterprise.event.Event) PowerMockito.verifyStatic(org.powermock.api.mockito.PowerMockito.verifyStatic) InOrder(org.mockito.InOrder) Assert.assertNotNull(org.junit.Assert.assertNotNull) CommentedOption(org.uberfire.java.nio.base.options.CommentedOption) FileOutputStream(java.io.FileOutputStream) IOException(java.io.IOException) Test(org.junit.Test) Mockito.times(org.mockito.Mockito.times) DecisionTableXLSConversionService(org.drools.workbench.screens.dtablexls.service.DecisionTableXLSConversionService) Mockito.when(org.mockito.Mockito.when) AuthenticationService(org.jboss.errai.security.shared.service.AuthenticationService) StandardOpenOption(org.uberfire.java.nio.file.StandardOpenOption) ResourceOpenedEvent(org.uberfire.workbench.events.ResourceOpenedEvent) File(java.io.File) GenericValidator(org.guvnor.common.services.backend.validation.GenericValidator) Mockito.verify(org.mockito.Mockito.verify) Consumer(java.util.function.Consumer) IOUtils(org.apache.commons.io.IOUtils) Mockito(org.mockito.Mockito) Mockito.never(org.mockito.Mockito.never) User(org.jboss.errai.security.shared.api.identity.User) Mockito.inOrder(org.mockito.Mockito.inOrder) DecisionTableParseException(org.drools.template.parser.DecisionTableParseException) IOService(org.uberfire.io.IOService) CopyService(org.uberfire.ext.editor.commons.service.CopyService) Assert.assertEquals(org.junit.Assert.assertEquals) InputStream(java.io.InputStream) CommentedOptionFactoryImpl(org.guvnor.common.services.backend.util.CommentedOptionFactoryImpl) InOrder(org.mockito.InOrder) CommentedOption(org.uberfire.java.nio.base.options.CommentedOption) OutputStream(java.io.OutputStream) FileOutputStream(java.io.FileOutputStream) PrepareForTest(org.powermock.core.classloader.annotations.PrepareForTest) Test(org.junit.Test)

Example 25 with IOService

use of org.uberfire.io.IOService in project drools-wb by kiegroup.

the class DecisionTableXLSServiceImplTest method testInvalidTable.

private void testInvalidTable(Consumer<DecisionTableXLSServiceImpl> serviceConsumer) throws IOException {
    this.service = getServiceWithValidationOverride((tempFile) -> {
        // mock an invalid file
        Throwable t = new Throwable("testing invalid xls dt creation");
        throw new DecisionTableParseException("DecisionTableParseException: " + t.getMessage(), t);
    });
    mockStatic(IOUtils.class);
    when(IOUtils.copy(any(InputStream.class), any(OutputStream.class))).thenReturn(0);
    try {
        serviceConsumer.accept(service);
    } catch (RuntimeException e) {
    // this is expected correct behavior
    }
    verify(ioService, never()).newOutputStream(any(org.uberfire.java.nio.file.Path.class), any(CommentedOption.class));
    verifyStatic(IOUtils.class, never());
    IOUtils.toByteArray(Mockito.<InputStream>any());
}
Also used : ArgumentMatchers.any(org.mockito.ArgumentMatchers.any) PowerMockito.mockStatic(org.powermock.api.mockito.PowerMockito.mockStatic) Mock(org.mockito.Mock) ArgumentMatchers.eq(org.mockito.ArgumentMatchers.eq) URISyntaxException(java.net.URISyntaxException) RunWith(org.junit.runner.RunWith) Captor(org.mockito.Captor) Paths(org.uberfire.backend.server.util.Paths) ArgumentCaptor(org.mockito.ArgumentCaptor) CommentedOptionFactory(org.guvnor.common.services.backend.util.CommentedOptionFactory) PrepareForTest(org.powermock.core.classloader.annotations.PrepareForTest) PowerMockRunner(org.powermock.modules.junit4.PowerMockRunner) RenameService(org.uberfire.ext.editor.commons.service.RenameService) PowerMockIgnore(org.powermock.core.classloader.annotations.PowerMockIgnore) Path(org.uberfire.backend.vfs.Path) DeleteService(org.uberfire.ext.editor.commons.service.DeleteService) Before(org.junit.Before) ArgumentMatchers.isA(org.mockito.ArgumentMatchers.isA) OutputStream(java.io.OutputStream) Event(javax.enterprise.event.Event) PowerMockito.verifyStatic(org.powermock.api.mockito.PowerMockito.verifyStatic) InOrder(org.mockito.InOrder) Assert.assertNotNull(org.junit.Assert.assertNotNull) CommentedOption(org.uberfire.java.nio.base.options.CommentedOption) FileOutputStream(java.io.FileOutputStream) IOException(java.io.IOException) Test(org.junit.Test) Mockito.times(org.mockito.Mockito.times) DecisionTableXLSConversionService(org.drools.workbench.screens.dtablexls.service.DecisionTableXLSConversionService) Mockito.when(org.mockito.Mockito.when) AuthenticationService(org.jboss.errai.security.shared.service.AuthenticationService) StandardOpenOption(org.uberfire.java.nio.file.StandardOpenOption) ResourceOpenedEvent(org.uberfire.workbench.events.ResourceOpenedEvent) File(java.io.File) GenericValidator(org.guvnor.common.services.backend.validation.GenericValidator) Mockito.verify(org.mockito.Mockito.verify) Consumer(java.util.function.Consumer) IOUtils(org.apache.commons.io.IOUtils) Mockito(org.mockito.Mockito) Mockito.never(org.mockito.Mockito.never) User(org.jboss.errai.security.shared.api.identity.User) Mockito.inOrder(org.mockito.Mockito.inOrder) DecisionTableParseException(org.drools.template.parser.DecisionTableParseException) IOService(org.uberfire.io.IOService) CopyService(org.uberfire.ext.editor.commons.service.CopyService) Assert.assertEquals(org.junit.Assert.assertEquals) InputStream(java.io.InputStream) CommentedOptionFactoryImpl(org.guvnor.common.services.backend.util.CommentedOptionFactoryImpl) Path(org.uberfire.backend.vfs.Path) DecisionTableParseException(org.drools.template.parser.DecisionTableParseException) InputStream(java.io.InputStream) CommentedOption(org.uberfire.java.nio.base.options.CommentedOption) OutputStream(java.io.OutputStream) FileOutputStream(java.io.FileOutputStream)

Aggregations

IOService (org.uberfire.io.IOService)25 Before (org.junit.Before)18 Test (org.junit.Test)15 IOException (java.io.IOException)14 Mock (org.mockito.Mock)14 RunWith (org.junit.runner.RunWith)13 List (java.util.List)12 Paths (org.uberfire.backend.server.util.Paths)12 Mockito (org.mockito.Mockito)11 Path (org.uberfire.backend.vfs.Path)11 File (java.io.File)10 InputStream (java.io.InputStream)10 ArrayList (java.util.ArrayList)10 Collections (java.util.Collections)10 URI (java.net.URI)9 MockitoJUnitRunner (org.mockito.junit.MockitoJUnitRunner)9 Logger (org.slf4j.Logger)9 Path (org.uberfire.java.nio.file.Path)9 Arrays (java.util.Arrays)8 LoggerFactory (org.slf4j.LoggerFactory)8