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

搜索引擎

开发平台:

Java

  1. package net.javacoding.jspider.functional.specific.general;
  2. import junit.framework.TestCase;
  3. import net.javacoding.jspider.JSpider;
  4. import net.javacoding.jspider.Constants;
  5. import net.javacoding.jspider.functional.TestingConstants;
  6. import net.javacoding.jspider.api.event.EventSink;
  7. import net.javacoding.jspider.api.event.JSpiderEvent;
  8. import net.javacoding.jspider.api.event.resource.ResourceFetchedEvent;
  9. import net.javacoding.jspider.core.util.config.*;
  10. import net.javacoding.jspider.mockobjects.OverridingJSpiderConfiguration;
  11. import net.javacoding.jspider.mockobjects.OverridingPropertySet;
  12. import net.javacoding.jspider.mockobjects.plugin.JUnitEventSink;
  13. import java.io.*;
  14. import java.net.URL;
  15. /**
  16.  * $Id: UserAgentTest.java,v 1.8 2003/04/10 16:19:23 vanrogu Exp $
  17.  */
  18. public class UserAgentTest extends TestCase implements EventSink {
  19.     public final String TEST_URL="http://" + TestingConstants.HOST + "/testcases/specific/general/testUserAgent.php";
  20.     protected JUnitEventSink sink;
  21.     protected JSpiderConfiguration config;
  22.     protected JSpiderConfiguration config2;
  23.     protected JSpiderConfiguration config3;
  24.     protected String userAgent;
  25.     /**
  26.      * Public constructor giving a name to the test.
  27.      */
  28.     public UserAgentTest ( ) {
  29.         super ( "UserAgentTest ");
  30.     }
  31.     /**
  32.      * JUnit's overridden setUp method
  33.      * @throws java.lang.Exception in case something fails during setup
  34.      */
  35.     protected void setUp() throws Exception {
  36.         System.err.println("setUp");
  37.         userAgent = null;
  38.         config = ConfigurationFactory.getConfiguration(ConfigurationFactory.CONFIG_UNITTEST);
  39.         config2 = new OverridingJSpiderConfiguration ( config );
  40.         ((OverridingPropertySet)config2.getJSpiderConfiguration()).setValue("jspider.userAgent", "JSpiderUnitTestGlobalLevel");
  41.         config3 = new OverridingJSpiderConfiguration ( config );
  42.         ((OverridingPropertySet)config3.getBaseSiteConfiguration()).setValue("site.userAgent", "JSpiderUnitTestSiteLevel");
  43.         ConfigurationFactory.setConfiguration(config);
  44.         sink = JUnitEventSink.getInstance();
  45.         sink.setOtherSink(this);
  46.     }
  47.     /**
  48.      * JUnit's overridden tearDown method
  49.      * @throws java.lang.Exception in case something fails during tearDown
  50.      */
  51.     protected void tearDown() throws Exception {
  52.         System.err.println("tearDown");
  53.         ConfigurationFactory.cleanConfiguration();
  54.         sink.reset();
  55.     }
  56.     public void testUserAgentNormalAgent ( ) throws Exception {
  57.         URL url = new URL ( TEST_URL );
  58.         ConfigurationFactory.setConfiguration(config);
  59.         JSpider jspider = new JSpider ( url );
  60.         jspider.start ( );
  61.         String actual = userAgent;
  62.         String expected= ConfigurationFactory.getConfiguration().getJSpiderConfiguration().getString(ConfigConstants.CONFIG_USERAGENT, Constants.USERAGENT );
  63.         System.err.println("actual: " + actual );
  64.         System.err.println("expected: " + expected);
  65.         assertEquals(expected, actual);
  66.     }
  67.     public void testUserAgentGlobalLevel ( ) throws Exception {
  68.         URL url = new URL ( TEST_URL );
  69.         ConfigurationFactory.setConfiguration(config2);
  70.         JSpider jspider = new JSpider ( url );
  71.         jspider.start ( );
  72.         String actual = userAgent;
  73.         String expected= ConfigurationFactory.getConfiguration().getJSpiderConfiguration().getString(ConfigConstants.CONFIG_USERAGENT, Constants.USERAGENT );
  74.         System.err.println("actual: " + actual );
  75.         System.err.println("expected: " + expected);
  76.         assertEquals(expected, actual);
  77.     }
  78.     public void testUserAgentSiteLevel ( ) throws Exception {
  79.         URL url = new URL ( TEST_URL );
  80.         ConfigurationFactory.setConfiguration(config3);
  81.         JSpider jspider = new JSpider ( url );
  82.         jspider.start ( );
  83.         String actual = userAgent;
  84.         String expected= ConfigurationFactory.getConfiguration().getBaseSiteConfiguration().getString(ConfigConstants.SITE_USERAGENT, Constants.USERAGENT );
  85.         System.err.println("actual: " + actual );
  86.         System.err.println("expected: " + expected);
  87.         assertEquals(expected, actual);
  88.     }
  89.     public void notify(JSpiderEvent event) {
  90.         if ( event instanceof ResourceFetchedEvent ) {
  91.             ResourceFetchedEvent e = (ResourceFetchedEvent) event;
  92.             System.out.println(">>>> RESOURCE FETCHED : " + e.getResource().getURL() );
  93.             if ( e.getResource().getURL().toString().equalsIgnoreCase(TEST_URL) ) {
  94.             InputStream is = e.getResource().getInputStream();
  95.             BufferedReader br = new BufferedReader ( new InputStreamReader ( is ) );
  96.             System.out.println("FILE:");
  97.             try {
  98.                 String line = br.readLine();
  99.                 while ( line != null ) {
  100.                     System.out.println("LINE:" + line);
  101.                     userAgent = line;
  102.                     line = br.readLine();
  103.                 }
  104.             } catch (IOException e1) {
  105.                 e1.printStackTrace();
  106.             }
  107.             }
  108.         }
  109.     }
  110.     public void initialize() {
  111.     }
  112.     public void shutdown() {
  113.     }
  114. }