use of org.opencastproject.security.api.DefaultOrganization 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);
}
use of org.opencastproject.security.api.DefaultOrganization in project opencast by opencast.
the class TestSeriesEndpoint method createSeries.
private Series createSeries(String id, String title, String contributor, String organizer, long time, Long themeId) {
Series series = new Series(id, new DefaultOrganization().getId());
series.setCreatedDateTime(new Date(time));
series.addContributor(contributor);
series.addOrganizer(organizer);
series.setTitle(title);
if (themeId != null) {
series.setTheme(themeId);
}
return series;
}
use of org.opencastproject.security.api.DefaultOrganization in project opencast by opencast.
the class TestSeriesEndpoint method createEvents.
@SuppressWarnings("unchecked")
private SearchResultItem<Event>[] createEvents(int readyCount, int blacklistedCount, int optedOutCount) {
SearchResultItem<Event>[] eventitems = new SearchResultItem[readyCount + blacklistedCount + optedOutCount];
int total = 1;
String orgId = new DefaultOrganization().getId();
for (int i = 0; i < readyCount; i++) {
Event readyEvent = new Event(Integer.toString(i + total), orgId);
readyEvent.setOptedOut(false);
SearchResultItem<Event> eventItem = EasyMock.createMock(SearchResultItem.class);
EasyMock.expect(eventItem.getSource()).andReturn(readyEvent);
EasyMock.replay(eventItem);
eventitems[total - 1] = eventItem;
total++;
}
for (int i = 0; i < blacklistedCount; i++) {
Event blacklistedEvent = new Event(Integer.toString(i + total), orgId);
blacklistedEvent.setBlacklisted(true);
SearchResultItem<Event> eventItem = EasyMock.createMock(SearchResultItem.class);
EasyMock.expect(eventItem.getSource()).andReturn(blacklistedEvent);
EasyMock.replay(eventItem);
eventitems[total - 1] = eventItem;
total++;
}
for (int i = 0; i < optedOutCount; i++) {
Event optedOutEvent = new Event(Integer.toString(i + total), orgId);
optedOutEvent.setOptedOut(true);
SearchResultItem<Event> eventItem = EasyMock.createMock(SearchResultItem.class);
EasyMock.expect(eventItem.getSource()).andReturn(optedOutEvent);
EasyMock.replay(eventItem);
eventitems[total - 1] = eventItem;
total++;
}
return eventitems;
}
use of org.opencastproject.security.api.DefaultOrganization in project opencast by opencast.
the class TestSeriesEndpoint method setupIndex.
@SuppressWarnings({ "unchecked" })
private void setupIndex() throws SearchIndexException, IOException, IllegalStateException, ParseException {
long time = DateTimeSupport.fromUTC("2014-04-27T14:35:50Z");
Series series1 = createSeries("1", "title 1", "contributor 1", "organizer 1", time, 1L);
time = DateTimeSupport.fromUTC("2014-04-28T14:35:50Z");
Series series2 = createSeries("2", "title 2", "contributor 2", "organizer 2", time, null);
time = DateTimeSupport.fromUTC("2014-04-29T14:35:50Z");
Series series3 = createSeries("3", "title 3", "contributor 3", "organizer 3", time, null);
org.opencastproject.index.service.impl.index.theme.Theme theme1 = new org.opencastproject.index.service.impl.index.theme.Theme(1L, new DefaultOrganization().getId());
theme1.setName("theme-1-name");
theme1.setDescription("theme-1-description");
SearchResultItem<Series> item1 = EasyMock.createMock(SearchResultItem.class);
EasyMock.expect(item1.getSource()).andReturn(series1).anyTimes();
SearchResultItem<Series> item2 = EasyMock.createMock(SearchResultItem.class);
EasyMock.expect(item2.getSource()).andReturn(series2).anyTimes();
SearchResultItem<Series> item3 = EasyMock.createMock(SearchResultItem.class);
EasyMock.expect(item3.getSource()).andReturn(series3).anyTimes();
SearchResultItem<Series>[] ascSeriesItems = new SearchResultItem[3];
ascSeriesItems[0] = item1;
ascSeriesItems[1] = item2;
ascSeriesItems[2] = item3;
SearchResultItem<Series>[] descSeriesItems = new SearchResultItem[3];
descSeriesItems[0] = item3;
descSeriesItems[1] = item2;
descSeriesItems[2] = item1;
// final SearchResultItem<Event>[] eventItems1 = new SearchResultItem[0];
final SearchResultItem<Event>[] eventItems1 = createEvents(1, 1, 1);
// Setup the events for series 2
final SearchResultItem<Event>[] eventItems2 = new SearchResultItem[0];
// Setup the events for series 3
final SearchResultItem<Event>[] eventItems3 = createEvents(0, 1, 2);
final SearchResultItem<org.opencastproject.index.service.impl.index.theme.Theme> themeItem1 = EasyMock.createMock(SearchResultItem.class);
EasyMock.expect(themeItem1.getSource()).andReturn(theme1);
// Setup series search results
final SearchResult<Series> ascSeriesSearchResult = EasyMock.createMock(SearchResult.class);
EasyMock.expect(ascSeriesSearchResult.getItems()).andReturn(ascSeriesItems);
EasyMock.expect(ascSeriesSearchResult.getHitCount()).andReturn((long) ascSeriesItems.length);
final SearchResult<Series> descSeriesSearchResult = EasyMock.createMock(SearchResult.class);
EasyMock.expect(descSeriesSearchResult.getItems()).andReturn(descSeriesItems);
EasyMock.expect(descSeriesSearchResult.getHitCount()).andReturn((long) descSeriesItems.length);
// Create an empty search result.
final SearchResult<Series> emptySearchResult = EasyMock.createMock(SearchResult.class);
EasyMock.expect(emptySearchResult.getPageSize()).andReturn(0L).anyTimes();
// Create a single search result for series 1.
final SearchResult<Series> oneSearchResult = EasyMock.createMock(SearchResult.class);
EasyMock.expect(oneSearchResult.getPageSize()).andReturn(1L).anyTimes();
EasyMock.expect(oneSearchResult.getItems()).andReturn(new SearchResultItem[] { item1 }).anyTimes();
// Create a single search result for series 2.
final SearchResult<Series> twoSearchResult = EasyMock.createMock(SearchResult.class);
EasyMock.expect(twoSearchResult.getPageSize()).andReturn(1L).anyTimes();
EasyMock.expect(twoSearchResult.getItems()).andReturn(new SearchResultItem[] { item2 }).anyTimes();
adminuiSearchIndex = EasyMock.createMock(AdminUISearchIndex.class);
final Capture<SeriesSearchQuery> captureSeriesSearchQuery = EasyMock.newCapture();
final Capture<EventSearchQuery> captureEventSearchQuery = EasyMock.newCapture();
final Capture<ThemeSearchQuery> captureThemeSearchQuery = EasyMock.newCapture();
EasyMock.expect(adminuiSearchIndex.getByQuery(EasyMock.capture(captureSeriesSearchQuery))).andAnswer(new IAnswer<SearchResult<Series>>() {
@Override
public SearchResult<Series> answer() throws Throwable {
if (captureSeriesSearchQuery.hasCaptured() && captureSeriesSearchQuery.getValue().getIdentifier().length == 1) {
if ("1".equals(captureSeriesSearchQuery.getValue().getIdentifier()[0])) {
return oneSearchResult;
} else if ("2".equals(captureSeriesSearchQuery.getValue().getIdentifier()[0])) {
return twoSearchResult;
} else {
return emptySearchResult;
}
} else if (captureSeriesSearchQuery.hasCaptured() && captureSeriesSearchQuery.getValue().getSeriesContributorsSortOrder() == Order.Ascending) {
return ascSeriesSearchResult;
} else if (captureSeriesSearchQuery.hasCaptured() && captureSeriesSearchQuery.getValue().getSeriesContributorsSortOrder() == Order.Descending) {
return descSeriesSearchResult;
} else if (captureSeriesSearchQuery.hasCaptured() && captureSeriesSearchQuery.getValue().getSeriesDateSortOrder() == Order.Ascending) {
return ascSeriesSearchResult;
} else if (captureSeriesSearchQuery.hasCaptured() && captureSeriesSearchQuery.getValue().getSeriesDateSortOrder() == Order.Descending) {
return descSeriesSearchResult;
} else if (captureSeriesSearchQuery.hasCaptured() && captureSeriesSearchQuery.getValue().getSeriesOrganizersSortOrder() == Order.Ascending) {
return ascSeriesSearchResult;
} else if (captureSeriesSearchQuery.hasCaptured() && captureSeriesSearchQuery.getValue().getSeriesOrganizersSortOrder() == Order.Descending) {
return descSeriesSearchResult;
} else if (captureSeriesSearchQuery.hasCaptured() && captureSeriesSearchQuery.getValue().getSeriesTitleSortOrder() == Order.Ascending) {
return ascSeriesSearchResult;
} else if (captureSeriesSearchQuery.hasCaptured() && captureSeriesSearchQuery.getValue().getSeriesTitleSortOrder() == Order.Descending) {
return descSeriesSearchResult;
} else {
return ascSeriesSearchResult;
}
}
});
EasyMock.expect(adminuiSearchIndex.getByQuery(EasyMock.capture(captureEventSearchQuery))).andAnswer(new IAnswer<SearchResult<Event>>() {
@Override
public SearchResult<Event> answer() throws Throwable {
SearchResult<Event> eventsSearchResult = EasyMock.createMock(SearchResult.class);
if (captureEventSearchQuery.hasCaptured() && "1".equals(captureEventSearchQuery.getValue().getSeriesId()) && !("RUNNING".equals(captureEventSearchQuery.getValue().getWorkflowState())) && !("INSTANTIATED".equals(captureEventSearchQuery.getValue().getWorkflowState()))) {
// Setup events search results
EasyMock.expect(eventsSearchResult.getItems()).andReturn(eventItems1).anyTimes();
EasyMock.expect(eventsSearchResult.getHitCount()).andReturn((long) eventItems1.length).anyTimes();
} else if (captureEventSearchQuery.hasCaptured() && "1".equals(captureEventSearchQuery.getValue().getSeriesId()) && "INSTANTIATED".equals(captureEventSearchQuery.getValue().getWorkflowState())) {
// Setup events search results
EasyMock.expect(eventsSearchResult.getItems()).andReturn(eventItems2).anyTimes();
EasyMock.expect(eventsSearchResult.getHitCount()).andReturn((long) eventItems2.length).anyTimes();
} else if (captureEventSearchQuery.hasCaptured() && "1".equals(captureEventSearchQuery.getValue().getSeriesId()) && "RUNNING".equals(captureEventSearchQuery.getValue().getWorkflowState())) {
// Setup events search results
EasyMock.expect(eventsSearchResult.getItems()).andReturn(eventItems2).anyTimes();
EasyMock.expect(eventsSearchResult.getHitCount()).andReturn((long) eventItems2.length).anyTimes();
} else if (captureEventSearchQuery.hasCaptured() && "2".equals(captureEventSearchQuery.getValue().getSeriesId()) && !("RUNNING".equals(captureEventSearchQuery.getValue().getWorkflowState()))) {
// Setup events search results
EasyMock.expect(eventsSearchResult.getItems()).andReturn(eventItems2).anyTimes();
EasyMock.expect(eventsSearchResult.getHitCount()).andReturn((long) eventItems2.length).anyTimes();
} else if (captureEventSearchQuery.hasCaptured() && "3".equals(captureEventSearchQuery.getValue().getSeriesId())) {
// Setup events search results
EasyMock.expect(eventsSearchResult.getItems()).andReturn(eventItems3).anyTimes();
EasyMock.expect(eventsSearchResult.getHitCount()).andReturn((long) eventItems3.length).anyTimes();
} else if (captureEventSearchQuery.hasCaptured() && "2".equals(captureEventSearchQuery.getValue().getSeriesId()) && "RUNNING".equals(captureEventSearchQuery.getValue().getWorkflowState())) {
// Setup events search results
EasyMock.expect(eventsSearchResult.getItems()).andReturn(eventItems3).anyTimes();
EasyMock.expect(eventsSearchResult.getHitCount()).andReturn((long) eventItems3.length).anyTimes();
} else {
if (!captureEventSearchQuery.hasCaptured()) {
Assert.fail("Haven't captured an event search query yet.");
} else {
logger.info("IDs for search query" + captureEventSearchQuery.getValue().getSeriesId());
Assert.fail("Tried to get an event collection that doesn't exist.");
}
}
EasyMock.replay(eventsSearchResult);
return eventsSearchResult;
}
}).anyTimes();
EasyMock.expect(adminuiSearchIndex.getByQuery(EasyMock.capture(captureThemeSearchQuery))).andAnswer(new IAnswer<SearchResult<org.opencastproject.index.service.impl.index.theme.Theme>>() {
@Override
public SearchResult<org.opencastproject.index.service.impl.index.theme.Theme> answer() throws Throwable {
SearchResult<org.opencastproject.index.service.impl.index.theme.Theme> themeSearchResult = EasyMock.createMock(SearchResult.class);
// Setup theme search results
EasyMock.expect(themeSearchResult.getPageSize()).andReturn(1L).anyTimes();
EasyMock.expect(themeSearchResult.getItems()).andReturn(new SearchResultItem[] { themeItem1 }).anyTimes();
EasyMock.replay(themeSearchResult);
return themeSearchResult;
}
}).anyTimes();
EasyMock.replay(adminuiSearchIndex, item1, item2, item3, themeItem1, ascSeriesSearchResult, descSeriesSearchResult, emptySearchResult, oneSearchResult, twoSearchResult);
}
use of org.opencastproject.security.api.DefaultOrganization in project opencast by opencast.
the class RemoteUserAndOrganizationFilterTest method testOrganizationSwitching.
@Test
public void testOrganizationSwitching() throws IOException {
SecurityService securityService = EasyMock.createNiceMock(SecurityService.class);
filter.setSecurityService(securityService);
EasyMock.expect(securityService.getOrganization()).andReturn(new DefaultOrganization()).anyTimes();
EasyMock.expect(securityService.getUser()).andAnswer(userResponder).anyTimes();
securityService.setOrganization(EasyMock.anyObject(Organization.class));
EasyMock.expectLastCall().times(2);
EasyMock.replay(securityService);
HttpServletRequest request = EasyMock.createNiceMock(HttpServletRequest.class);
EasyMock.expect(request.getHeader(SecurityConstants.ORGANIZATION_HEADER)).andReturn("mh_default_org").anyTimes();
EasyMock.replay(request);
HttpServletResponse response = EasyMock.createNiceMock(HttpServletResponse.class);
EasyMock.replay(response);
try {
filter.doFilter(request, response, chain);
} catch (Exception e) {
Assert.fail(e.getMessage());
}
EasyMock.verify(securityService);
}
Aggregations