package com.codeaffine.extras.workingset.internal; import static org.assertj.core.api.Assertions.assertThat; import org.eclipse.ui.IStartup; import org.junit.Test; import org.osgi.framework.BundleActivator; import com.codeaffine.eclipse.core.runtime.Extension; import com.codeaffine.eclipse.core.runtime.Predicates; import com.codeaffine.eclipse.core.runtime.RegistryAdapter; import com.codeaffine.extras.workingset.internal.DynamicWorkingSetStartup; public class DynamicWorkingSetStartupPDETest { @Test public void testStartupExtension() { Extension extension = getEarlyStartup(); IStartup startup = extension.createExecutableExtension( "class", IStartup.class ); assertThat( startup ).isInstanceOf( DynamicWorkingSetStartup.class ); assertThat( startup ).isNotInstanceOf( BundleActivator.class ); } private static Extension getEarlyStartup() { return new RegistryAdapter() .readExtension( "org.eclipse.ui.startup" ) .thatMatches( Predicates.attribute( "class", DynamicWorkingSetStartup.class.getName() ) ) .process(); } }