/** * Licensed to The Apereo Foundation under one or more contributor license * agreements. See the NOTICE file distributed with this work for additional * information regarding copyright ownership. * * * The Apereo Foundation licenses this file to you under the Educational * Community License, Version 2.0 (the "License"); you may not use this file * except in compliance with the License. You may obtain a copy of the License * at: * * http://opensource.org/licenses/ecl2.txt * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the * License for the specific language governing permissions and limitations under * the License. * */ package org.opencastproject.index.service.catalog.adapter; import org.opencastproject.util.PropertiesUtil; import org.apache.commons.io.IOUtils; import org.easymock.EasyMock; import org.junit.Before; import org.junit.Test; import org.osgi.framework.BundleContext; import org.osgi.framework.ServiceRegistration; import org.osgi.service.component.ComponentContext; import java.io.InputStream; import java.util.ArrayList; import java.util.Dictionary; import java.util.Hashtable; import java.util.Properties; /** * Test class for {@link CatalogUIAdapterFactory}. */ public class CatalogUIAdapterFactoryTest { private Dictionary<String, String> configProperties = new Hashtable<>(); private final CatalogUIAdapterFactory factory = new CatalogUIAdapterFactory(); @Before public void setUpClass() throws Exception { // Load the config properties InputStream in = getClass().getResourceAsStream("/catalog-adapter/event.properties"); Properties props = new Properties(); try { props.load(in); } finally { IOUtils.closeQuietly(in); } configProperties = PropertiesUtil.toDictionary(props); } @Test public void testRegisteringCommonCatalog() throws Exception { ServiceRegistration service = EasyMock.createNiceMock(ServiceRegistration.class); BundleContext bundleContext = EasyMock.createNiceMock(BundleContext.class); EasyMock.expect(bundleContext.getServiceReferences(EasyMock.anyObject(Class.class), EasyMock.anyString())) .andReturn(new ArrayList<>()).once(); EasyMock.expect(bundleContext.registerService(EasyMock.anyObject(String[].class), EasyMock.anyObject(), EasyMock.anyObject(Dictionary.class))).andReturn(service).once(); ComponentContext componentContext = EasyMock.createNiceMock(ComponentContext.class); EasyMock.expect(componentContext.getBundleContext()).andReturn(bundleContext).anyTimes(); EasyMock.replay(componentContext, bundleContext, service); factory.activate(componentContext); factory.updated("testPid", configProperties); factory.deleted("testPid"); } }