Package org.archive.modules.deciderules

Source Code of org.archive.modules.deciderules.ViaSurtPrefixedDecideRuleTest

package org.archive.modules.deciderules;


import java.util.ArrayList;
import java.util.List;

import org.apache.commons.httpclient.URIException;
import org.archive.modules.CrawlURI;
import org.archive.modules.extractor.LinkContext;
import org.archive.net.UURI;
import org.archive.net.UURIFactory;
import org.archive.state.ModuleTestBase;

public class ViaSurtPrefixedDecideRuleTest extends ModuleTestBase {

    public void testNoVia() throws Exception {
        ViaSurtPrefixedDecideRule dr = new ViaSurtPrefixedDecideRule();
        List<String> surtPrefixes = new ArrayList<String>();
        surtPrefixes.add("http://(org,archive,");
        dr.setSurtPrefixes(surtPrefixes);
        CrawlURI testUri = createTestUri("http://example.com");
       
        assertFalse(dr.evaluate(testUri));
    }
    public void testNoSurts() throws Exception {
        ViaSurtPrefixedDecideRule dr = new ViaSurtPrefixedDecideRule();
        List<String> surtPrefixes = new ArrayList<String>();
        dr.setSurtPrefixes(surtPrefixes);
        CrawlURI testUri = createTestUri("http://example.com");

        assertFalse(dr.evaluate(testUri));
    }
    public void testNullSurts() throws Exception {
        ViaSurtPrefixedDecideRule dr = new ViaSurtPrefixedDecideRule();
        dr.setSurtPrefixes(null);
        CrawlURI testUri = createTestUri("http://example.com");

        assertFalse(dr.evaluate(testUri));
    }
    public void testPositiveSingleSurt() throws Exception {
        ViaSurtPrefixedDecideRule dr = new ViaSurtPrefixedDecideRule();
        List<String> surtPrefixes = new ArrayList<String>();
        surtPrefixes.add("http://(org,archive,");
        dr.setSurtPrefixes(surtPrefixes);
        CrawlURI testUri = createTestUri("http://example.com","http://archive.org");

        assertTrue(dr.evaluate(testUri));
    }
    public void testNegativeSingleSurt() throws Exception {
        ViaSurtPrefixedDecideRule dr = new ViaSurtPrefixedDecideRule();
        List<String> surtPrefixes = new ArrayList<String>();
        surtPrefixes.add("http://(org,archive,");
        dr.setSurtPrefixes(surtPrefixes);
        CrawlURI testUri = createTestUri("http://example.com","http://google.com");

        assertFalse(dr.evaluate(testUri));
    }
    public void testPositiveMultipleSurts() throws Exception {
        ViaSurtPrefixedDecideRule dr = new ViaSurtPrefixedDecideRule();
        List<String> surtPrefixes = new ArrayList<String>();
        surtPrefixes.add("http://(org,archive,");
        surtPrefixes.add("http://(com,test,");
        surtPrefixes.add("http://(com,google,");
        dr.setSurtPrefixes(surtPrefixes);
        CrawlURI testUri = createTestUri("http://example.com","http://google.com");

        assertTrue(dr.evaluate(testUri));
    }
    public void testPositiveMultipleSurts2() throws Exception {
        ViaSurtPrefixedDecideRule dr = new ViaSurtPrefixedDecideRule();
        List<String> surtPrefixes = new ArrayList<String>();
        surtPrefixes.add("http://(org,archive,");
        surtPrefixes.add("http://(com,google,");
        surtPrefixes.add("http://(com,test,");
        dr.setSurtPrefixes(surtPrefixes);
        CrawlURI testUri = createTestUri("http://example.com","http://google.com");

        assertTrue(dr.evaluate(testUri));
    }
    public void testNegativeMultipleSurts() throws Exception {
        ViaSurtPrefixedDecideRule dr = new ViaSurtPrefixedDecideRule();
        List<String> surtPrefixes = new ArrayList<String>();
        surtPrefixes.add("http://(org,archive,");
        surtPrefixes.add("http://(com,test,");
        surtPrefixes.add("http://(com,google,");
        dr.setSurtPrefixes(surtPrefixes);
        CrawlURI testUri = createTestUri("http://example.com","http://negativeexample.com");

        assertFalse(dr.evaluate(testUri));
    }
   
   
    private CrawlURI createTestUri(String urlStr) throws URIException {
        UURI testUuri = UURIFactory.getInstance(urlStr);
        CrawlURI testUri = new CrawlURI(testUuri, null, null, LinkContext.NAVLINK_MISC);

        return testUri;
    }
    private CrawlURI createTestUri(String urlStr, String via) throws URIException {
       
        UURI testViaUuri = UURIFactory.getInstance(via);
        CrawlURI testUri = createTestUri(urlStr);
        testUri.setVia(testViaUuri);

        return testUri;
    }
}
TOP

Related Classes of org.archive.modules.deciderules.ViaSurtPrefixedDecideRuleTest

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.