Package org.pluginbuilder.autotestsuite.junit4

Source Code of org.pluginbuilder.autotestsuite.junit4.JUnit4Tests

package org.pluginbuilder.autotestsuite.junit4;

import java.util.Collection;

import org.osgi.framework.Bundle;
import org.pluginbuilder.autotestsuite.junit3.AllTestSuite;
import org.pluginbuilder.autotestsuite.junit3.AutoTestSuite;
import org.pluginbuilder.autotestsuite.junit3.BundleFilter;
import org.pluginbuilder.autotestsuite.junit3.ClassFilter;
import org.pluginbuilder.autotestsuite.junit3.Property;
import org.pluginbuilder.autotestsuite.junit3.TestClassScanner;
import org.pluginbuilder.autotestsuite.junit3.TestPluginScanner;

/**
* @author Markus Wiederkehr
*/
public class JUnit4Tests {

  public static final String PLUGIN_INCLUSIONS_PROPERTY = AllTestSuite.AUTOTEST_PLUGIN_INCLUSIONS;
  public static final String PLUGIN_EXCLUSIONS_PROPERTY = AllTestSuite.AUTOTEST_PLUGIN_EXCLUSIONS;
  public static final String PLUGIN_INCLUSIONS_DEFAULT = AllTestSuite.AUTOTEST_PLUGIN_DEFAULT_INCLUSIONS;
  public static final String PLUGIN_EXCLUSIONS_DEFAULT = AllTestSuite.AUTOTEST_PLUGIN_DEFAULT_EXCLUSIONS;

  public static final String CLASS_INCLUSIONS_PROPERTY = AutoTestSuite.AUTOTEST_CLASS_INCLUSIONS;
  public static final String CLASS_EXCLUSIONS_PROPERTY = AutoTestSuite.AUTOTEST_CLASS_EXCLUSIONS;
  public static final String CLASS_INCLUSIONS_DEFAULT = AutoTestSuite.AUTOTEST_CLASS_DEFAULT_INCLUSIONS;
  public static final String CLASS_EXCLUSIONS_DEFAULT = AutoTestSuite.AUTOTEST_CLASS_DEFAULT_EXCLUSIONS;

  private final String pluginInclusionPattern;
  private final String pluginExclusionPattern;

  private final String classInclusionPattern;
  private final String classExclusionPattern;

  public JUnit4Tests() {
    this( null, null, null, null );
  }

  public JUnit4Tests(String pluginInclusionPattern, String pluginExclusionPattern, String classInclusionPattern,
      String classExclusionPattern) {
    this.pluginInclusionPattern = Property.get( pluginInclusionPattern, PLUGIN_INCLUSIONS_PROPERTY,
        PLUGIN_INCLUSIONS_DEFAULT );
    this.pluginExclusionPattern = Property.get( pluginExclusionPattern, PLUGIN_EXCLUSIONS_PROPERTY,
        PLUGIN_EXCLUSIONS_DEFAULT );
    this.classInclusionPattern = Property.get( classInclusionPattern, CLASS_INCLUSIONS_PROPERTY,
        CLASS_INCLUSIONS_DEFAULT );
    this.classExclusionPattern = Property.get( classExclusionPattern, CLASS_EXCLUSIONS_PROPERTY,
        CLASS_EXCLUSIONS_DEFAULT );
  }

  public Collection<Bundle> findTestBundles() {
    BundleFilter filter = new IsJUnit4BundleFilter();
    TestPluginScanner scanner = new TestPluginScanner( pluginInclusionPattern, pluginExclusionPattern, filter );
    return scanner.findTestBundles();
  }

  public Collection<Class<?>> findTestClasses(Bundle bundle) {
    ClassFilter filter = new AndClassFilter( new IsJUnit4TestFilter(), new NotClassFilter( new IsSWTBotTestFilter(
        bundle ) ) );
    TestClassScanner scanner = new TestClassScanner( bundle, classInclusionPattern, classExclusionPattern, filter );
    return scanner.findTestClasses();
  }

  public Collection<Class<?>> findNonUIThreadTestClasses(Bundle bundle) {
    ClassFilter filter = new IsSWTBotTestFilter( bundle );
    TestClassScanner scanner = new TestClassScanner( bundle, classInclusionPattern, classExclusionPattern, filter );
    return scanner.findTestClasses();
  }

}
TOP

Related Classes of org.pluginbuilder.autotestsuite.junit4.JUnit4Tests

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.