use of org.pentaho.platform.api.repository2.unified.webservices.RepositoryFileDto in project pentaho-platform by pentaho.
the class FileServiceTest method doGetContentCreator.
@Test
public void doGetContentCreator() {
String pathId = "path:to:file:file1.ext";
String fileId = "file1";
String creatorId = "creatorId";
Map<String, Serializable> fileMetadata = mock(HashMap.class);
doReturn(creatorId).when(fileMetadata).get("contentCreator");
doReturn(fileMetadata).when(fileService.repository).getFileMetadata(fileId);
doReturn("/path/to/file/file1.ext").when(fileService).idToPath(pathId);
RepositoryFileDto repositoryFileDto = mock(RepositoryFileDto.class);
doReturn(fileId).when(repositoryFileDto).getId();
doReturn(repositoryFileDto).when(fileService.defaultUnifiedRepositoryWebService).getFile(anyString());
RepositoryFileDto repositoryFileDto1 = mock(RepositoryFileDto.class);
doReturn(repositoryFileDto1).when(fileService.defaultUnifiedRepositoryWebService).getFileById(creatorId);
// Test 1
RepositoryFileDto repositoryFileDto2 = null;
try {
repositoryFileDto2 = fileService.doGetContentCreator(pathId);
} catch (Exception e) {
fail();
}
assertEquals(repositoryFileDto1, repositoryFileDto2);
// Test 2
doReturn(null).when(fileMetadata).get("contentCreator");
try {
repositoryFileDto2 = fileService.doGetContentCreator(pathId);
assertEquals(null, repositoryFileDto2);
} catch (Exception e) {
fail();
}
// Test 3
doReturn("").when(fileMetadata).get("contentCreator");
try {
repositoryFileDto2 = fileService.doGetContentCreator(pathId);
assertEquals(null, repositoryFileDto2);
} catch (Exception e) {
fail();
}
verify(fileService, times(3)).idToPath(pathId);
verify(fileService.repository, times(3)).getFileMetadata(fileId);
verify(fileService.defaultUnifiedRepositoryWebService, times(3)).getFile(anyString());
verify(fileService.defaultUnifiedRepositoryWebService).getFileById(anyString());
}
use of org.pentaho.platform.api.repository2.unified.webservices.RepositoryFileDto in project pentaho-platform by pentaho.
the class FileServiceTest method testDoCreateDirsNegative.
@Test
public void testDoCreateDirsNegative() throws Exception {
String pathId = "path:to:file:file1.ext";
doReturn("/path/to/file/file1.ext").when(fileService).idToPath(pathId);
RepositoryFileDto parentDir = mock(RepositoryFileDto.class);
doReturn("").when(parentDir).getPath();
doReturn(FileUtils.PATH_SEPARATOR).when(parentDir).getId();
when(fileService.getRepoWs().getFile(FileUtils.PATH_SEPARATOR)).thenReturn(parentDir);
RepositoryFileDto filePath = mock(RepositoryFileDto.class);
doReturn("/path").when(filePath).getPath();
doReturn("/path").when(filePath).getId();
RepositoryFileDto fileTo = mock(RepositoryFileDto.class);
doReturn("/path/to").when(fileTo).getPath();
doReturn("/path/to").when(fileTo).getId();
RepositoryFileDto fileFile = mock(RepositoryFileDto.class);
doReturn("/path/to/file").when(fileFile).getPath();
doReturn("/path/to/file").when(fileFile).getId();
RepositoryFileDto fileFileExt = mock(RepositoryFileDto.class);
doReturn("/path/to/file/file1").when(fileFileExt).getPath();
doReturn("/path/to/file/file1").when(fileFileExt).getId();
when(fileService.getRepoWs().getFile("/path")).thenReturn(filePath);
when(fileService.getRepoWs().getFile("/path/to")).thenReturn(fileTo);
when(fileService.getRepoWs().getFile("/path/to/file")).thenReturn(fileFile);
when(fileService.getRepoWs().getFile("/path/to/file/file1.ext")).thenReturn(fileFileExt);
assertFalse(fileService.doCreateDir(pathId));
verify(fileService.getRepoWs(), times(0)).createFolder(anyString(), any(RepositoryFileDto.class), anyString());
when(fileService.getRepoWs().getFile("/path")).thenReturn(null);
when(fileService.getRepoWs().createFolder(eq("/"), any(RepositoryFileDto.class), eq("/path"))).thenThrow(new InternalError("negativetest"));
try {
fileService.doCreateDir(pathId);
} catch (InternalError e) {
assertEquals(e.getMessage(), "negativetest");
}
}
use of org.pentaho.platform.api.repository2.unified.webservices.RepositoryFileDto in project pentaho-platform by pentaho.
the class FileServiceTest method testSetFileAcls.
@Test
public void testSetFileAcls() throws Exception {
RepositoryFileDto file = mock(RepositoryFileDto.class);
doReturn("file.txt").when(file).getName();
when(fileService.defaultUnifiedRepositoryWebService.getFile(anyString())).thenReturn(file);
String pathId = "/usr/folder/file.txt";
RepositoryFileAclDto acl = mock(RepositoryFileAclDto.class);
fileService.setFileAcls(pathId, acl);
verify(acl, times(1)).setId(anyString());
verify(file, times(1)).getId();
verify(fileService.defaultUnifiedRepositoryWebService, times(1)).updateAcl(acl);
}
use of org.pentaho.platform.api.repository2.unified.webservices.RepositoryFileDto in project pentaho-platform by pentaho.
the class FileServiceTest method getMockedRepositoryFileDtoList.
public List<RepositoryFileDto> getMockedRepositoryFileDtoList(String[] fileNames) {
List<RepositoryFileDto> repoFileDtoList = new ArrayList<>();
for (String fileName : fileNames) {
RepositoryFileDto repoFileDto = mock(RepositoryFileDto.class);
when(repoFileDto.getName()).thenReturn(fileName);
when(repoFileDto.getId()).thenReturn(fileName);
repoFileDtoList.add(repoFileDto);
}
return repoFileDtoList;
}
use of org.pentaho.platform.api.repository2.unified.webservices.RepositoryFileDto in project pentaho-platform by pentaho.
the class FileServiceTest method testSearchGeneratedContent.
@Test
public void testSearchGeneratedContent() {
String lineageId = "test.prpt", pathId = "test.prpt", userFolder = "public/admin";
RepositoryFileDto fileDetailsMock = mock(RepositoryFileDto.class);
RepositoryFile workspaceFolder = mock(RepositoryFile.class);
doReturn(userFolder).when(workspaceFolder).getId();
SessionResource sessionResource = mock(SessionResource.class);
List<RepositoryFile> children = new ArrayList<RepositoryFile>();
RepositoryFile mockedChild = mock(RepositoryFile.class);
doReturn(false).when(mockedChild).isFolder();
children.add(mockedChild);
Map<String, Serializable> mockedFileMetadata = mock(Map.class);
doReturn(lineageId).when(mockedFileMetadata).get(QuartzScheduler.RESERVEDMAPKEY_LINEAGE_ID);
when(fileService.repository.getFileMetadata(mockedChild.getId())).thenReturn(mockedFileMetadata);
doReturn(pathId).when(fileDetailsMock).getId();
doReturn(userFolder).when(sessionResource).doGetCurrentUserDir();
doReturn(workspaceFolder).when(fileService.repository).getFile(userFolder);
doReturn(sessionResource).when(fileService).getSessionResource();
doReturn(children).when(fileService.repository).getChildren(userFolder);
RepositoryFileDto mockedRepositoryFileDto = mock(RepositoryFileDto.class);
doReturn(mockedRepositoryFileDto).when(fileService).toFileDto(mockedChild, null, false);
try {
doReturn(fileDetailsMock).when(fileService).doGetProperties(pathId);
List<RepositoryFileDto> list = fileService.searchGeneratedContent(userFolder, lineageId, QuartzScheduler.RESERVEDMAPKEY_LINEAGE_ID);
assertEquals(list.size(), 1);
} catch (FileNotFoundException e) {
e.printStackTrace();
fail();
} catch (Throwable t) {
fail();
}
}
Aggregations