use of org.opencastproject.security.api.JaxbRole in project opencast by opencast.
the class MailServiceTest method setUp.
@Before
public void setUp() throws Exception {
// Set up the mail service
User user = new JaxbUser("test", null, "Test User", "test@test.com", "test", new DefaultOrganization(), new HashSet<JaxbRole>());
UserDirectoryService userDirectoryService = EasyMock.createNiceMock(UserDirectoryService.class);
EasyMock.expect(userDirectoryService.loadUser(EasyMock.anyObject(String.class))).andReturn(user).anyTimes();
EasyMock.replay(userDirectoryService);
SecurityService securityService = EasyMock.createNiceMock(SecurityService.class);
EasyMock.expect(securityService.getOrganization()).andReturn(new DefaultOrganization()).anyTimes();
EasyMock.replay(securityService);
mailService = new MailService();
mailService.setUserDirectoryService(userDirectoryService);
mailService.setSecurityService(securityService);
mailService.setEntityManagerFactory(newTestEntityManagerFactory(MailService.PERSISTENCE_UNIT));
}
use of org.opencastproject.security.api.JaxbRole in project opencast by opencast.
the class MailServiceTest method testCRUDMessageTemplate.
@Test
public void testCRUDMessageTemplate() {
User admin = new JaxbUser("george@test.com", null, "George", "george@test.com", "test", new DefaultOrganization(), new HashSet<JaxbRole>());
User student = new JaxbUser("frank@test.com", null, "Frank", "frank@test.com", "test", new DefaultOrganization(), new HashSet<JaxbRole>());
String name = "Invitation";
MessageTemplate msgTmpl1 = new MessageTemplate(name, student, "Course invitation", "Please watch this course recording.");
MessageTemplate msgTmpl2 = new MessageTemplate("Acknowledge 1", admin, "Recording ready!", "The recording of the course XYZ is finished. Please review it.");
msgTmpl2.setType(TemplateType.Type.ACKNOWLEDGE.getType());
msgTmpl2.setHidden(true);
MessageTemplate msgTmpl3 = new MessageTemplate("Acknowledge 2", admin, "Recording ready!", "The recording of the course ZYX is finished. Please review it.");
msgTmpl3.setType(TemplateType.Type.ACKNOWLEDGE.getType());
// Create
try {
msgTmpl1 = mailService.updateMessageTemplate(msgTmpl1);
msgTmpl2 = mailService.updateMessageTemplate(msgTmpl2);
msgTmpl3 = mailService.updateMessageTemplate(msgTmpl3);
} catch (MailServiceException e) {
fail("Not able to save a message template entity: " + e.getMessage());
}
// Read
TemplateMessageQuery query = new TemplateMessageQuery();
// Search without hidden
List<MessageTemplate> savedMsgTemplates = mailService.findMessageTemplates(query);
assertEquals(2, savedMsgTemplates.size());
// Search with hidden
query.withIncludeHidden();
savedMsgTemplates = mailService.findMessageTemplates(query);
assertEquals(3, savedMsgTemplates.size());
// Search with only the creator admin
query.withCreator(admin.getUsername());
savedMsgTemplates = mailService.findMessageTemplates(query);
assertEquals(2, savedMsgTemplates.size());
assertTrue(savedMsgTemplates.contains(msgTmpl2) && savedMsgTemplates.contains(msgTmpl3));
// Search with only creator student (no template)
query.withCreator(student.getUsername());
savedMsgTemplates = mailService.findMessageTemplates(query);
assertEquals(1, savedMsgTemplates.size());
assertEquals(msgTmpl1, savedMsgTemplates.get(0));
// Search with only the name
query.withCreator(null);
query.withName(name);
savedMsgTemplates = mailService.findMessageTemplates(query);
assertEquals(1, savedMsgTemplates.size());
assertTrue(msgTmpl1.equals(savedMsgTemplates.get(0)));
// Search with only the type
query.withName(null);
query.withType(msgTmpl1.getType().getType());
savedMsgTemplates = mailService.findMessageTemplates(query);
assertEquals(1, savedMsgTemplates.size());
assertTrue(msgTmpl1.equals(savedMsgTemplates.get(0)));
// Search with only fullText
query.withType(null);
query.withFullText("ready");
savedMsgTemplates = mailService.findMessageTemplates(query);
assertEquals(2, savedMsgTemplates.size());
assertTrue(savedMsgTemplates.contains(msgTmpl2) && savedMsgTemplates.contains(msgTmpl3));
// Search with different options
query.withCreator(admin.getUsername());
query.withType(TemplateType.Type.ACKNOWLEDGE);
query.withFullText("ready");
savedMsgTemplates = mailService.findMessageTemplates(query);
assertEquals(2, savedMsgTemplates.size());
assertTrue(savedMsgTemplates.contains(msgTmpl2) && savedMsgTemplates.contains(msgTmpl3));
// Update
try {
msgTmpl2.setSubject("Informations");
msgTmpl2 = mailService.updateMessageTemplate(msgTmpl2);
query.withCreator(null);
query.withType(null);
query.withFullText(null);
savedMsgTemplates = mailService.findMessageTemplates(query);
assertEquals(3, savedMsgTemplates.size());
assertTrue(savedMsgTemplates.contains(msgTmpl2));
} catch (MailServiceException e) {
fail("Not able to save a message template entity: " + e.getMessage());
}
// Delete
try {
mailService.deleteMessageTemplate(msgTmpl2.getId());
savedMsgTemplates = mailService.findMessageTemplates(query);
assertEquals(2, savedMsgTemplates.size());
assertTrue(savedMsgTemplates.contains(msgTmpl1) && savedMsgTemplates.contains(msgTmpl3));
} catch (Exception e) {
fail("Not able to get the message template entity " + msgTmpl2.getName() + " : " + e.getMessage());
}
}
use of org.opencastproject.security.api.JaxbRole in project opencast by opencast.
the class ServiceRegistrationTest method setUp.
@Before
public void setUp() throws Exception {
serviceRegistry = new ServiceRegistryJpaImpl();
serviceRegistry.setEntityManagerFactory(PersistenceUtil.newTestEntityManagerFactory(ServiceRegistryJpaImpl.PERSISTENCE_UNIT));
serviceRegistry.activate(null);
Organization organization = new DefaultOrganization();
OrganizationDirectoryService organizationDirectoryService = EasyMock.createMock(OrganizationDirectoryService.class);
expect(organizationDirectoryService.getOrganization((String) anyObject())).andReturn(organization).anyTimes();
EasyMock.replay(organizationDirectoryService);
serviceRegistry.setOrganizationDirectoryService(organizationDirectoryService);
JaxbOrganization jaxbOrganization = JaxbOrganization.fromOrganization(organization);
User anonymous = new JaxbUser("anonymous", "test", jaxbOrganization, new JaxbRole(jaxbOrganization.getAnonymousRole(), jaxbOrganization));
SecurityService securityService = EasyMock.createNiceMock(SecurityService.class);
expect(securityService.getUser()).andReturn(anonymous).anyTimes();
expect(securityService.getOrganization()).andReturn(organization).anyTimes();
EasyMock.replay(securityService);
serviceRegistry.setSecurityService(securityService);
// The service registry will automatically register this host with the available number of processors.
// This is potentially ruining our test setup.
serviceRegistry.unregisterHost(LOCALHOST);
// register the hosts
serviceRegistry.registerHost(LOCALHOST, "127.0.0.1", 1024, 1, 1);
serviceRegistry.registerHost(REMOTEHOST_1, "127.0.0.1", 1024, 1, 1);
serviceRegistry.registerHost(REMOTEHOST_2, "127.0.0.1", 1024, 1, 1);
// register some service instances
regType1Localhost = (ServiceRegistrationJpaImpl) serviceRegistry.registerService(JOB_TYPE_1, LOCALHOST, PATH_1);
regType1Remotehost1 = (ServiceRegistrationJpaImpl) serviceRegistry.registerService(JOB_TYPE_1, REMOTEHOST_1, PATH_1);
regType1Remotehost2 = (ServiceRegistrationJpaImpl) serviceRegistry.registerService(JOB_TYPE_1, REMOTEHOST_2, PATH_2);
}
use of org.opencastproject.security.api.JaxbRole in project opencast by opencast.
the class ServiceRegistryJpaImplTest method setUpServiceRegistryJpaImpl.
public void setUpServiceRegistryJpaImpl() throws PropertyVetoException, NotFoundException, TrustedHttpClientException {
serviceRegistryJpaImpl = new ServiceRegistryJpaImpl();
serviceRegistryJpaImpl.setEntityManagerFactory(emf);
Organization organization = new DefaultOrganization();
OrganizationDirectoryService organizationDirectoryService = EasyMock.createMock(OrganizationDirectoryService.class);
EasyMock.expect(organizationDirectoryService.getOrganization((String) EasyMock.anyObject())).andReturn(organization).anyTimes();
EasyMock.replay(organizationDirectoryService);
serviceRegistryJpaImpl.setOrganizationDirectoryService(organizationDirectoryService);
JaxbOrganization jaxbOrganization = JaxbOrganization.fromOrganization(organization);
User anonymous = new JaxbUser("anonymous", "test", jaxbOrganization, new JaxbRole(jaxbOrganization.getAnonymousRole(), jaxbOrganization));
SecurityService securityService = EasyMock.createNiceMock(SecurityService.class);
EasyMock.expect(securityService.getUser()).andReturn(anonymous).anyTimes();
EasyMock.expect(securityService.getOrganization()).andReturn(organization).anyTimes();
EasyMock.replay(securityService);
serviceRegistryJpaImpl.setSecurityService(securityService);
UserDirectoryService userDirectoryService = EasyMock.createNiceMock(UserDirectoryService.class);
EasyMock.expect(userDirectoryService.loadUser(EasyMock.anyString())).andReturn(anonymous).anyTimes();
EasyMock.replay(userDirectoryService);
serviceRegistryJpaImpl.setUserDirectoryService(userDirectoryService);
final Capture<HttpUriRequest> request = EasyMock.newCapture();
final BasicHttpResponse successRespone = new BasicHttpResponse(new BasicStatusLine(new HttpVersion(1, 1), HttpStatus.SC_NO_CONTENT, "No message"));
final BasicHttpResponse unavailableResponse = new BasicHttpResponse(new BasicStatusLine(new HttpVersion(1, 1), HttpStatus.SC_SERVICE_UNAVAILABLE, "No message"));
TrustedHttpClient trustedHttpClient = EasyMock.createNiceMock(TrustedHttpClient.class);
EasyMock.expect(trustedHttpClient.execute(EasyMock.capture(request))).andAnswer(new IAnswer<HttpResponse>() {
@Override
public HttpResponse answer() throws Throwable {
if (!request.hasCaptured())
return unavailableResponse;
if (request.getValue().getURI().toString().contains(TEST_PATH))
return unavailableResponse;
if (request.getValue().getURI().toString().contains(TEST_PATH_3))
return unavailableResponse;
return successRespone;
}
}).anyTimes();
EasyMock.replay(trustedHttpClient);
serviceRegistryJpaImpl.setTrustedHttpClient(trustedHttpClient);
}
use of org.opencastproject.security.api.JaxbRole in project opencast by opencast.
the class SoxServiceTest method setUp.
@Before
public void setUp() throws Exception {
if (!soxInstalled)
return;
// Copy an existing media file to a temp file
File f = new File("src/test/resources/audio-test.flac");
source = File.createTempFile(FilenameUtils.getBaseName(f.getName()), ".flac");
FileUtils.copyFile(f, source);
f = null;
JaxbOrganization org = new DefaultOrganization();
User user = new JaxbUser("admin", "test", org, new JaxbRole(DefaultOrganization.DEFAULT_ORGANIZATION_ADMIN, org));
OrganizationDirectoryService orgDirectory = EasyMock.createNiceMock(OrganizationDirectoryService.class);
EasyMock.expect(orgDirectory.getOrganization((String) EasyMock.anyObject())).andReturn(org).anyTimes();
UserDirectoryService userDirectory = EasyMock.createNiceMock(UserDirectoryService.class);
EasyMock.expect(userDirectory.loadUser("admin")).andReturn(user).anyTimes();
SecurityService securityService = EasyMock.createNiceMock(SecurityService.class);
EasyMock.expect(securityService.getOrganization()).andReturn(org).anyTimes();
EasyMock.expect(securityService.getUser()).andReturn(user).anyTimes();
Workspace workspace = EasyMock.createNiceMock(Workspace.class);
EasyMock.expect(workspace.get((URI) EasyMock.anyObject())).andReturn(source).anyTimes();
BundleContext bc = EasyMock.createNiceMock(BundleContext.class);
EasyMock.expect(bc.getProperty(SoxServiceImpl.CONFIG_SOX_PATH)).andReturn(SOX_BINARY).anyTimes();
ComponentContext cc = EasyMock.createNiceMock(ComponentContext.class);
EasyMock.expect(cc.getBundleContext()).andReturn(bc).anyTimes();
IncidentService incidentService = EasyMock.createNiceMock(IncidentService.class);
// Finish setting up the mocks
EasyMock.replay(bc, cc, orgDirectory, userDirectory, securityService, workspace, incidentService);
// Create and populate the composer service
soxService = new SoxServiceImpl();
serviceRegistry = new ServiceRegistryInMemoryImpl(soxService, securityService, userDirectory, orgDirectory, incidentService);
soxService.setOrganizationDirectoryService(orgDirectory);
soxService.setSecurityService(securityService);
soxService.setServiceRegistry(serviceRegistry);
soxService.setUserDirectoryService(userDirectory);
soxService.setWorkspace(workspace);
soxService.activate(cc);
}
Aggregations