/* (c) 2016 Open Source Geospatial Foundation - all rights reserved * This code is licensed under the GPL 2.0 license, available at the root * application directory. */ package org.geoserver.platform; /** * @author Morgan Thompson - Boundless */ import static org.easymock.EasyMock.anyObject; import static org.easymock.EasyMock.createMock; import static org.easymock.EasyMock.expect; import static org.junit.Assert.assertEquals; import java.util.List; import org.easymock.EasyMock; import org.junit.Test; import org.springframework.context.ApplicationContext; /** * Unit tests for {@link ModuleStatusImpl} * * @author Morgan Thompson - Boundless */ public class ModuleStatusTest { @Test public void testModuleStatus() { ModuleStatus status = createMock("testStatus", ModuleStatus.class); expect(status.getName()).andReturn("test").atLeastOnce(); ModuleStatusImpl impl = new ModuleStatusImpl(); impl.setName("default"); ApplicationContext appContext = createMock(ApplicationContext.class); expect(appContext.getBean("testStatus")).andStubReturn(status); expect(appContext.getBean("defaultStatus")).andStubReturn(impl); GeoServerExtensions gse = new GeoServerExtensions(); gse.setApplicationContext(appContext); expect(appContext.getBeanNamesForType(ExtensionFilter.class)).andReturn(new String[0]); expect(appContext.getBeanNamesForType(ModuleStatus.class)) .andStubReturn(new String[] { "testStatus", "defaultStatus" }); expect(appContext.isSingleton((String) anyObject())).andReturn(true).anyTimes(); expect(appContext.getBeanNamesForType(ExtensionProvider.class)).andReturn(new String[0]); EasyMock.replay(status, appContext); List<ModuleStatus> list = gse.extensions(ModuleStatus.class); assertEquals("test interfact mock", "test", status.getName()); assertEquals("found module status", 2, list.size()); for( ModuleStatus s : list ){ System.out.println( s.getName() ); } EasyMock.verify(status); } @Test public void testModuleStatusBooleans() { ModuleStatusImpl impl = new ModuleStatusImpl(); impl.setAvailable(false); impl.setEnabled(false); assertEquals(impl.isAvailable(), false); assertEquals(impl.isEnabled(), false); } }