use of org.pentaho.di.repository.pur.model.ObjectAcl in project pentaho-kettle by pentaho.
the class UIEEJobTest method testAcls.
@Test
public void testAcls() throws Exception {
final String owner = "owner";
final String role = "role";
ObjectRecipient mockObjectRecipient = mock(ObjectRecipient.class);
when(mockObjectRecipient.getName()).thenReturn(owner);
ObjectAcl mockAcl = mock(ObjectAcl.class);
when(mockAcl.getOwner()).thenReturn(mockObjectRecipient);
when(mockAclService.getAcl(mockObjectId, false)).thenReturn(mockAcl);
uiJob.clearAcl();
UIRepositoryObjectAcls acls = new UIRepositoryObjectAcls();
uiJob.getAcls(acls);
verify(mockAclService).getAcl(mockObjectId, false);
assertEquals(owner, acls.getOwner().getName());
acls = new UIRepositoryObjectAcls();
RepositoryObjectAcl repObjectAcl = new RepositoryObjectAcl(new RepositoryObjectRecipient(role, Type.ROLE));
acls.setObjectAcl(new RepositoryObjectAcl(new RepositoryObjectRecipient(role, Type.ROLE)));
uiJob.setAcls(acls);
verify(mockAclService).setAcl(mockObjectId, repObjectAcl);
when(mockAclService.getAcl(mockObjectId, false)).thenThrow(new KettleException(""));
uiJob.clearAcl();
try {
uiJob.getAcls(acls);
fail("Expected an exception");
} catch (AccessDeniedException e) {
// Test Succeeded if here
}
doThrow(new KettleException("")).when(mockAclService).setAcl(any(ObjectId.class), any(RepositoryObjectAcl.class));
try {
uiJob.setAcls(acls);
fail("Expected an exception");
} catch (AccessDeniedException e) {
// Test Succeeded if here
}
}
use of org.pentaho.di.repository.pur.model.ObjectAcl in project pentaho-kettle by pentaho.
the class UIEERepositoryDirectoryTest method testAcls.
@Test
public void testAcls() throws Exception {
final String owner = "owner";
final String role = "role";
ObjectRecipient mockObjectRecipient = mock(ObjectRecipient.class);
when(mockObjectRecipient.getName()).thenReturn(owner);
ObjectAcl mockAcl = mock(ObjectAcl.class);
when(mockAcl.getOwner()).thenReturn(mockObjectRecipient);
when(mockAclService.getAcl(mockObjectId, false)).thenReturn(mockAcl);
uiRepDir.clearAcl();
UIRepositoryObjectAcls acls = new UIRepositoryObjectAcls();
uiRepDir.getAcls(acls);
verify(mockAclService, times(1)).getAcl(mockObjectId, false);
assertEquals(owner, acls.getOwner().getName());
acls = new UIRepositoryObjectAcls();
uiRepDir.getAcls(acls, false);
verify(mockAclService, times(2)).getAcl(mockObjectId, false);
assertEquals(owner, acls.getOwner().getName());
acls = new UIRepositoryObjectAcls();
RepositoryObjectAcl repObjectAcl = new RepositoryObjectAcl(new RepositoryObjectRecipient(role, Type.ROLE));
acls.setObjectAcl(new RepositoryObjectAcl(new RepositoryObjectRecipient(role, Type.ROLE)));
uiRepDir.setAcls(acls);
verify(mockAclService).setAcl(mockObjectId, repObjectAcl);
when(mockAclService.getAcl(mockObjectId, false)).thenThrow(new KettleException(""));
uiRepDir.clearAcl();
try {
uiRepDir.getAcls(acls);
fail("Expected an exception");
} catch (AccessDeniedException e) {
// Test Succeeded if here
}
when(mockAclService.getAcl(mockObjectId, true)).thenThrow(new KettleException(""));
uiRepDir.clearAcl();
try {
uiRepDir.getAcls(acls, true);
fail("Expected an exception");
} catch (AccessDeniedException e) {
// Test Succeeded if here
}
doThrow(new KettleException("")).when(mockAclService).setAcl(any(ObjectId.class), any(ObjectAcl.class));
uiRepDir.clearAcl();
try {
uiRepDir.setAcls(acls);
fail("Expected an exception");
} catch (AccessDeniedException e) {
// Test Succeeded if here
}
}
use of org.pentaho.di.repository.pur.model.ObjectAcl in project pentaho-kettle by pentaho.
the class UIEETransformationTest method testAcls.
@Test
public void testAcls() throws Exception {
final String owner = "owner";
final String role = "role";
ObjectRecipient mockObjectRecipient = mock(ObjectRecipient.class);
when(mockObjectRecipient.getName()).thenReturn(owner);
ObjectAcl mockAcl = mock(ObjectAcl.class);
when(mockAcl.getOwner()).thenReturn(mockObjectRecipient);
when(mockAclService.getAcl(mockObjectId, false)).thenReturn(mockAcl);
uiTransformation.clearAcl();
UIRepositoryObjectAcls acls = new UIRepositoryObjectAcls();
uiTransformation.getAcls(acls);
verify(mockAclService).getAcl(mockObjectId, false);
assertEquals(owner, acls.getOwner().getName());
acls = new UIRepositoryObjectAcls();
RepositoryObjectAcl repObjectAcl = new RepositoryObjectAcl(new RepositoryObjectRecipient(role, Type.ROLE));
acls.setObjectAcl(new RepositoryObjectAcl(new RepositoryObjectRecipient(role, Type.ROLE)));
uiTransformation.setAcls(acls);
verify(mockAclService).setAcl(mockObjectId, repObjectAcl);
when(mockAclService.getAcl(mockObjectId, false)).thenThrow(new KettleException(""));
uiTransformation.clearAcl();
try {
uiTransformation.getAcls(acls);
fail("Expected an exception");
} catch (AccessDeniedException e) {
// Test Succeeded if here
}
doThrow(new KettleException("")).when(mockAclService).setAcl(any(ObjectId.class), any(RepositoryObjectAcl.class));
try {
uiTransformation.setAcls(acls);
fail("Expected an exception");
} catch (AccessDeniedException e) {
// Test Succeeded if here
}
}
use of org.pentaho.di.repository.pur.model.ObjectAcl in project pentaho-kettle by pentaho.
the class UIRepositoryObjectAclsTest method testSetObjectAcl.
@Test
public void testSetObjectAcl() {
ObjectAcl objectAcl = repositoryObjectAcls.getObjectAcl();
assertEquals(repObjectAcl, objectAcl);
}
use of org.pentaho.di.repository.pur.model.ObjectAcl in project pentaho-kettle by pentaho.
the class RepositoryTestBase method testGetAcl.
@Test
@Ignore
public void testGetAcl() throws Exception {
RepositoryDirectoryInterface rootDir = initRepo();
JobMeta jobMeta = createJobMeta(EXP_JOB_NAME);
RepositoryDirectoryInterface jobsDir = rootDir.findDirectory(DIR_JOBS);
repository.save(jobMeta, VERSION_COMMENT_V1, null);
deleteStack.push(jobMeta);
assertNotNull(jobMeta.getObjectId());
ObjectRevision version = jobMeta.getObjectRevision();
assertNotNull(version);
assertTrue(hasVersionWithComment(jobMeta, VERSION_COMMENT_V1));
assertTrue(repository.exists(EXP_JOB_NAME, jobsDir, RepositoryObjectType.JOB));
ObjectAcl acl = ((IAclService) repository).getAcl(jobMeta.getObjectId(), false);
assertNotNull(acl);
}
Aggregations