use of org.apache.sling.distribution.DistributionRequest in project sling by apache.
the class SimpleDistributionPackageTest method testSimplePackageFromTest.
@Test
public void testSimplePackageFromTest() throws Exception {
DistributionRequest distributionRequest = new SimpleDistributionRequest(DistributionRequestType.TEST);
SimpleDistributionPackage createdPackage = new SimpleDistributionPackage(distributionRequest, "VOID");
SimpleDistributionPackage readPackage = SimpleDistributionPackage.fromStream(new ByteArrayInputStream(("DSTRPCK:TEST|").getBytes()), "VOID");
assertNotNull(readPackage);
assertEquals(createdPackage.getType(), readPackage.getType());
assertEquals(createdPackage.getInfo().getRequestType(), readPackage.getInfo().getRequestType());
assertEquals(Arrays.toString(createdPackage.getInfo().getPaths()), Arrays.toString(readPackage.getInfo().getPaths()));
assertEquals(createdPackage.getId(), readPackage.getId());
assertTrue(IOUtils.contentEquals(createdPackage.createInputStream(), readPackage.createInputStream()));
}
use of org.apache.sling.distribution.DistributionRequest in project sling by apache.
the class SimpleDistributionPackageTest method testCreatedAndReadPackagesEquality.
@Test
public void testCreatedAndReadPackagesEquality() throws Exception {
DistributionRequest request = new SimpleDistributionRequest(DistributionRequestType.DELETE, "/abc");
SimpleDistributionPackage createdPackage = new SimpleDistributionPackage(request, "VOID");
SimpleDistributionPackage readPackage = SimpleDistributionPackage.fromStream(new ByteArrayInputStream(("DSTRPCK:DELETE|/abc").getBytes()), "VOID");
assertNotNull(readPackage);
assertEquals(createdPackage.getType(), readPackage.getType());
assertEquals(createdPackage.getInfo().getRequestType(), readPackage.getInfo().getRequestType());
assertEquals(Arrays.toString(createdPackage.getInfo().getPaths()), Arrays.toString(readPackage.getInfo().getPaths()));
assertEquals(createdPackage.getId(), readPackage.getId());
assertTrue(IOUtils.contentEquals(createdPackage.createInputStream(), readPackage.createInputStream()));
}
use of org.apache.sling.distribution.DistributionRequest in project sling by apache.
the class AgentDistributionPackageExporterTest method testTestExport.
@Test
public void testTestExport() throws Exception {
AgentDistributionPackageExporter distributionPackageExporter = new AgentDistributionPackageExporter(null, mock(DistributionAgent.class), mock(DistributionPackageBuilderProvider.class), null);
ResourceResolver resourceResolver = mock(ResourceResolver.class);
// vargarg doesn't match and causes compiler warning
String[] args = new String[0];
DistributionRequest distributionRequest = new SimpleDistributionRequest(DistributionRequestType.TEST, args);
final List<DistributionPackage> distributionPackages = new ArrayList<DistributionPackage>();
distributionPackageExporter.exportPackages(resourceResolver, distributionRequest, new DistributionPackageProcessor() {
@Override
public void process(DistributionPackage distributionPackage) {
distributionPackages.add(distributionPackage);
}
@Override
public List<DistributionResponse> getAllResponses() {
return null;
}
@Override
public int getPackagesCount() {
return 0;
}
@Override
public long getPackagesSize() {
return 0;
}
});
assertNotNull(distributionPackages);
assertEquals(1, distributionPackages.size());
}
use of org.apache.sling.distribution.DistributionRequest in project sling by apache.
the class PrivilegeDistributionRequestAuthorizationStrategyTest method testNoPermissionOnDelete.
@Test(expected = DistributionException.class)
public void testNoPermissionOnDelete() throws Exception {
String jcrPrivilege = "somePermission";
PrivilegeDistributionRequestAuthorizationStrategy strategy = new PrivilegeDistributionRequestAuthorizationStrategy(jcrPrivilege);
DistributionRequest distributionRequest = mock(DistributionRequest.class);
ResourceResolver resourceResolver = mock(ResourceResolver.class);
Session session = mock(Session.class);
AccessControlManager acm = mock(AccessControlManager.class);
Privilege privilege = mock(Privilege.class);
when(acm.privilegeFromName(jcrPrivilege)).thenReturn(privilege);
when(session.getAccessControlManager()).thenReturn(acm);
when(resourceResolver.adaptTo(Session.class)).thenReturn(session);
String[] paths = new String[] { "/foo" };
for (String path : paths) {
when(acm.hasPrivileges(path, new Privilege[] { privilege })).thenReturn(false);
when(session.nodeExists(path)).thenReturn(true);
}
when(distributionRequest.getPaths()).thenReturn(paths);
when(distributionRequest.getRequestType()).thenReturn(DistributionRequestType.DELETE);
strategy.checkPermission(resourceResolver, distributionRequest);
}
use of org.apache.sling.distribution.DistributionRequest in project sling by apache.
the class PrivilegeDistributionRequestAuthorizationStrategyTest method testCheckPermissionWithSession.
@Test
public void testCheckPermissionWithSession() throws Exception {
String jcrPrivilege = "foo";
PrivilegeDistributionRequestAuthorizationStrategy strategy = new PrivilegeDistributionRequestAuthorizationStrategy(jcrPrivilege);
DistributionRequest distributionRequest = mock(DistributionRequest.class);
ResourceResolver resourceResolver = mock(ResourceResolver.class);
Session session = mock(Session.class);
when(resourceResolver.adaptTo(Session.class)).thenReturn(session);
strategy.checkPermission(resourceResolver, distributionRequest);
}
Aggregations