01: /**
02: * $Id: BaseSiteOnlyRuleTest.java,v 1.4 2003/04/11 16:37:09 vanrogu Exp $
03: */package net.javacoding.jspider.mod.rule;
04:
05: import junit.framework.TestCase;
06: import net.javacoding.jspider.api.model.Decision;
07: import net.javacoding.jspider.api.model.Site;
08: import net.javacoding.jspider.core.SpiderContext;
09: import net.javacoding.jspider.core.model.SiteInternal;
10: import net.javacoding.jspider.spi.Rule;
11: import net.javacoding.jspider.mockobjects.SimpleSpiderContext;
12: import net.javacoding.jspider.mod.rule.BaseSiteOnlyRule;
13:
14: import java.net.URL;
15:
16: public class BaseSiteOnlyRuleTest extends TestCase {
17:
18: protected Rule rule;
19: protected SpiderContext context;
20: protected Site jspiderSite;
21: protected Site otherSite;
22:
23: public BaseSiteOnlyRuleTest() {
24: super ("BaseSiteOnlyRuleTest");
25: }
26:
27: protected void setUp() throws Exception {
28: rule = new BaseSiteOnlyRule();
29: URL jspiderUrl = new URL("http://j-spider.sourceforge.net");
30: jspiderSite = new SiteInternal(0, null, jspiderUrl);
31: URL otherUrl = new URL("http://www.javacoding.net");
32: otherSite = new SiteInternal(0, null, otherUrl);
33: context = new SimpleSpiderContext(jspiderUrl);
34: }
35:
36: public void testBaseSite() throws Exception {
37: URL url = new URL(
38: "http://j-spider.sourceforge.net/some/doc.html");
39: Decision decision = rule.apply(context, jspiderSite, url);
40: assertEquals("resource within same site not accepted",
41: Decision.RULE_ACCEPT, decision.getDecision());
42: }
43:
44: public void testBaseSiteOtherContext() throws Exception {
45: URL url = new URL(
46: "http://j-spider.sourceforge.net/some/doc.html");
47: Decision decision = rule.apply(context, otherSite, url);
48: assertEquals("resource within same site not accepted",
49: Decision.RULE_ACCEPT, decision.getDecision());
50: }
51:
52: public void testOtherSite() throws Exception {
53: URL url = new URL("http://www.javacoding.net/some/doc.html");
54: Decision decision = rule.apply(context, jspiderSite, url);
55: assertEquals("resource within same site not ignored",
56: Decision.RULE_IGNORE, decision.getDecision());
57: }
58:
59: public void testOtherSiteOtherContext() throws Exception {
60: URL url = new URL("http://www.javacoding.net/some/doc.html");
61: Decision decision = rule.apply(context, jspiderSite, url);
62: assertEquals("resource within same site not ignored",
63: Decision.RULE_IGNORE, decision.getDecision());
64: }
65:
66: }
|