BaseURLParseTest.java
上传用户:qing5858
上传日期:2015-10-27
资源大小:6056k
文件大小:9k
源码类别:

搜索引擎

开发平台:

Java

  1. package net.javacoding.jspider.functional.specific.parse;
  2. import junit.framework.TestCase;
  3. import net.javacoding.jspider.JSpider;
  4. import net.javacoding.jspider.functional.TestingConstants;
  5. import net.javacoding.jspider.core.util.config.ConfigurationFactory;
  6. import net.javacoding.jspider.core.util.config.JSpiderConfiguration;
  7. import net.javacoding.jspider.mockobjects.plugin.JUnitEventSink;
  8. import java.net.URL;
  9. /**
  10.  * $Id: BaseURLParseTest.java,v 1.3 2003/04/29 17:53:50 vanrogu Exp $
  11.  */
  12. public class BaseURLParseTest extends TestCase {
  13.     protected JUnitEventSink sink;
  14.     protected JSpiderConfiguration config;
  15.     /**
  16.      * Public constructor giving a name to the test.
  17.      */
  18.     public BaseURLParseTest ( ) {
  19.         super ( "BaseURLParseTest ");
  20.     }
  21.     /**
  22.      * JUnit's overridden setUp method
  23.      * @throws java.lang.Exception in case something fails during setup
  24.      */
  25.     protected void setUp() throws Exception {
  26.         System.err.println("setUp");
  27.         config = ConfigurationFactory.getConfiguration(ConfigurationFactory.CONFIG_UNITTEST);
  28.         sink = JUnitEventSink.getInstance();
  29.     }
  30.     /**
  31.      * JUnit's overridden tearDown method
  32.      * @throws java.lang.Exception in case something fails during tearDown
  33.      */
  34.     protected void tearDown() throws Exception {
  35.         System.err.println("tearDown");
  36.         ConfigurationFactory.cleanConfiguration();
  37.         sink.reset();
  38.     }
  39.     public void testWithFileReference ( ) throws Exception {
  40.         URL url = new URL ( "http://" + TestingConstants.HOST + "/testcases/specific/parse/testBaseURLParse.php" );
  41.         JSpider jspider = new JSpider ( url );
  42.         jspider.start ( );
  43.         testEventCount(net.javacoding.jspider.api.event.engine.SpideringStartedEvent.class,1);
  44.         testEventCount(net.javacoding.jspider.api.event.engine.SpideringSummaryEvent.class,1);
  45.         testEventCount(net.javacoding.jspider.api.event.engine.SpideringStoppedEvent.class,1);
  46.         testEventCount(net.javacoding.jspider.api.event.site.SiteDiscoveredEvent.class,1);
  47.         testEventCount(net.javacoding.jspider.api.event.site.RobotsTXTMissingEvent.class,0);
  48.         testEventCount(net.javacoding.jspider.api.event.site.RobotsTXTFetchedEvent.class,1);
  49.         testEventCount(net.javacoding.jspider.api.event.site.RobotsTXTFetchErrorEvent.class,0);
  50.         testEventCount(net.javacoding.jspider.api.event.resource.ResourceDiscoveredEvent.class,4);
  51.         testEventCount(net.javacoding.jspider.api.event.resource.ResourceFetchedEvent.class,4);
  52.         testEventCount(net.javacoding.jspider.api.event.resource.ResourceFetchErrorEvent.class,0);
  53.         testEventCount(net.javacoding.jspider.api.event.resource.ResourceForbiddenEvent.class,0);
  54.         testEventCount(net.javacoding.jspider.api.event.resource.ResourceIgnoredForFetchingEvent.class,0);
  55.         testEventCount(net.javacoding.jspider.api.event.resource.ResourceIgnoredForParsingEvent.class,0);
  56.         testEventCount(net.javacoding.jspider.api.event.resource.ResourceReferenceDiscoveredEvent.class,2);
  57.         testEventCount(net.javacoding.jspider.api.event.resource.ResourceParsedEvent.class,3);
  58.         testEventCount(net.javacoding.jspider.api.event.resource.MalformedBaseURLFoundEvent.class,0);
  59.     }
  60.     public void testWithFolderReferenceAndSlash ( ) throws Exception {
  61.         URL url = new URL ( "http://" + TestingConstants.HOST + "/testcases/specific/parse/testBaseURLParseNoFile.php" );
  62.         JSpider jspider = new JSpider ( url );
  63.         jspider.start ( );
  64.         testEventCount(net.javacoding.jspider.api.event.engine.SpideringStartedEvent.class,1);
  65.         testEventCount(net.javacoding.jspider.api.event.engine.SpideringSummaryEvent.class,1);
  66.         testEventCount(net.javacoding.jspider.api.event.engine.SpideringStoppedEvent.class,1);
  67.         testEventCount(net.javacoding.jspider.api.event.site.SiteDiscoveredEvent.class,1);
  68.         testEventCount(net.javacoding.jspider.api.event.site.RobotsTXTMissingEvent.class,0);
  69.         testEventCount(net.javacoding.jspider.api.event.site.RobotsTXTFetchedEvent.class,1);
  70.         testEventCount(net.javacoding.jspider.api.event.site.RobotsTXTFetchErrorEvent.class,0);
  71.         testEventCount(net.javacoding.jspider.api.event.resource.ResourceDiscoveredEvent.class,4);
  72.         testEventCount(net.javacoding.jspider.api.event.resource.ResourceFetchedEvent.class,4);
  73.         testEventCount(net.javacoding.jspider.api.event.resource.ResourceFetchErrorEvent.class,0);
  74.         testEventCount(net.javacoding.jspider.api.event.resource.ResourceForbiddenEvent.class,0);
  75.         testEventCount(net.javacoding.jspider.api.event.resource.ResourceIgnoredForFetchingEvent.class,0);
  76.         testEventCount(net.javacoding.jspider.api.event.resource.ResourceIgnoredForParsingEvent.class,0);
  77.         testEventCount(net.javacoding.jspider.api.event.resource.ResourceReferenceDiscoveredEvent.class,2);
  78.         testEventCount(net.javacoding.jspider.api.event.resource.ResourceParsedEvent.class,3);
  79.         testEventCount(net.javacoding.jspider.api.event.resource.MalformedBaseURLFoundEvent.class,0);
  80.     }
  81.     public void testWithFolderReferenceNoSlash ( ) throws Exception {
  82.         URL url = new URL ( "http://" + TestingConstants.HOST + "/testcases/specific/parse/testBaseURLParseNoSlash.php" );
  83.         JSpider jspider = new JSpider ( url );
  84.         jspider.start ( );
  85.         testEventCount(net.javacoding.jspider.api.event.engine.SpideringStartedEvent.class,1);
  86.         testEventCount(net.javacoding.jspider.api.event.engine.SpideringSummaryEvent.class,1);
  87.         testEventCount(net.javacoding.jspider.api.event.engine.SpideringStoppedEvent.class,1);
  88.         testEventCount(net.javacoding.jspider.api.event.site.SiteDiscoveredEvent.class,1);
  89.         testEventCount(net.javacoding.jspider.api.event.site.RobotsTXTMissingEvent.class,0);
  90.         testEventCount(net.javacoding.jspider.api.event.site.RobotsTXTFetchedEvent.class,1);
  91.         testEventCount(net.javacoding.jspider.api.event.site.RobotsTXTFetchErrorEvent.class,0);
  92.         testEventCount(net.javacoding.jspider.api.event.resource.ResourceDiscoveredEvent.class,5);
  93.         testEventCount(net.javacoding.jspider.api.event.resource.ResourceFetchedEvent.class,5);
  94.         testEventCount(net.javacoding.jspider.api.event.resource.ResourceFetchErrorEvent.class,0);
  95.         testEventCount(net.javacoding.jspider.api.event.resource.ResourceForbiddenEvent.class,0);
  96.         testEventCount(net.javacoding.jspider.api.event.resource.ResourceIgnoredForFetchingEvent.class,0);
  97.         testEventCount(net.javacoding.jspider.api.event.resource.ResourceIgnoredForParsingEvent.class,0);
  98.         testEventCount(net.javacoding.jspider.api.event.resource.ResourceReferenceDiscoveredEvent.class,4);
  99.         testEventCount(net.javacoding.jspider.api.event.resource.ResourceParsedEvent.class,4);
  100.         testEventCount(net.javacoding.jspider.api.event.resource.MalformedBaseURLFoundEvent.class,0);
  101.     }
  102.     public void testMalformed ( ) throws Exception {
  103.         URL url = new URL ( "http://" + TestingConstants.HOST + "/testcases/specific/parse/testMalformedBaseURLParse.php" );
  104.         JSpider jspider = new JSpider ( url );
  105.         jspider.start ( );
  106.         testEventCount(net.javacoding.jspider.api.event.engine.SpideringStartedEvent.class,1);
  107.         testEventCount(net.javacoding.jspider.api.event.engine.SpideringSummaryEvent.class,1);
  108.         testEventCount(net.javacoding.jspider.api.event.engine.SpideringStoppedEvent.class,1);
  109.         testEventCount(net.javacoding.jspider.api.event.site.SiteDiscoveredEvent.class,1);
  110.         testEventCount(net.javacoding.jspider.api.event.site.RobotsTXTMissingEvent.class,0);
  111.         testEventCount(net.javacoding.jspider.api.event.site.RobotsTXTFetchedEvent.class,1);
  112.         testEventCount(net.javacoding.jspider.api.event.site.RobotsTXTFetchErrorEvent.class,0);
  113.         testEventCount(net.javacoding.jspider.api.event.resource.ResourceDiscoveredEvent.class,3);
  114.         testEventCount(net.javacoding.jspider.api.event.resource.ResourceFetchedEvent.class,2);
  115.         testEventCount(net.javacoding.jspider.api.event.resource.ResourceFetchErrorEvent.class,1);
  116.         testEventCount(net.javacoding.jspider.api.event.resource.ResourceForbiddenEvent.class,0);
  117.         testEventCount(net.javacoding.jspider.api.event.resource.ResourceIgnoredForFetchingEvent.class,0);
  118.         testEventCount(net.javacoding.jspider.api.event.resource.ResourceIgnoredForParsingEvent.class,0);
  119.         testEventCount(net.javacoding.jspider.api.event.resource.ResourceReferenceDiscoveredEvent.class,1);
  120.         testEventCount(net.javacoding.jspider.api.event.resource.ResourceParsedEvent.class,1);
  121.         testEventCount(net.javacoding.jspider.api.event.resource.MalformedBaseURLFoundEvent.class,1);
  122.     }
  123.     protected void testEventCount ( Class eventClass, int expectedCount  ) {
  124.         assertEquals(eventClass.getName(), expectedCount, sink.getEventCount(eventClass));
  125.     }
  126. }