You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@roller.apache.org by sn...@apache.org on 2006/03/20 15:48:50 UTC
svn commit: r387215 -
/incubator/roller/trunk/tests/org/roller/business/RefererManagerTest.java
Author: snoopdave
Date: Mon Mar 20 06:48:47 2006
New Revision: 387215
URL: http://svn.apache.org/viewcvs?rev=387215&view=rev
Log:
Fixing compile bug in test
Modified:
incubator/roller/trunk/tests/org/roller/business/RefererManagerTest.java
Modified: incubator/roller/trunk/tests/org/roller/business/RefererManagerTest.java
URL: http://svn.apache.org/viewcvs/incubator/roller/trunk/tests/org/roller/business/RefererManagerTest.java?rev=387215&r1=387214&r2=387215&view=diff
==============================================================================
--- incubator/roller/trunk/tests/org/roller/business/RefererManagerTest.java (original)
+++ incubator/roller/trunk/tests/org/roller/business/RefererManagerTest.java Mon Mar 20 06:48:47 2006
@@ -1 +1 @@
-package org.roller.business;
import java.sql.Timestamp;
import java.util.Calendar;
import java.util.Date;
import java.util.List;
import junit.framework.Test;
import junit.framework.TestSuite;
import org.roller.RollerException;
import org.roller.model.PropertiesManager;
import org.roller.model.RefererManager;
import org.roller.model.Roller;
import org.roller.pojos.RefererData;
import org.roller.pojos.RollerPropertyData;
import org.roller.pojos.UserData;
import org.roller.pojos.WeblogEntryData;
import org.roller.pojos.WebsiteData;
import org.roller.util.DateUtil;
import org.roller.RollerTestBase;
/**
* Test Roller Referer Management.
*/
public class RefererManagerTest extends RollerTestBase
{
RefererManager rmgr;
//List refs;
int count = 20;
String testDay;
String origSpamWords;
//------------------------------------------------------------------------
public RefererManagerTest(String name)
{
super(name);
}
//--------
----------------------------------------------------------------
public static void main(String args[])
{
junit.textui.TestRunner.run(RefererManagerTest.class);
}
//------------------------------------------------------------------------
public static Test suite()
{
return new TestSuite(RefererManagerTest.class);
}
public void setUp() throws Exception
{
super.setUp();
// add "spamtest" to refererSpamWords
Roller mRoller = getRoller();
PropertiesManager pmgr = mRoller.getPropertiesManager();
RollerPropertyData spamprop = pmgr.getProperty("spam.blacklist");
this.origSpamWords = spamprop.getValue();
spamprop.setValue(spamprop.getValue() + ", spamtest");
pmgr.store(spamprop);
// Process count unique referers
rmgr = getRoller().getRefererManager();
Calendar lCalendar = Calendar.getInstance();
lCalendar.setTime(new Date()
);
for (int i = 0; i < count; i++)
{
lCalendar.add(Calendar.DATE, -1);
Timestamp day = new Timestamp(lCalendar.getTime().getTime());
testDay = DateUtil.format8chars(day);
getRoller().begin(UserData.SYSTEM_USER);
/*
MockRequest mock = new MockRequest(
DateUtil.format8chars(day),
"http://test"+i,
"http://test"+i,
null,
mWebsite
);
rmgr.processRequest(mock);
*/
rmgr.processReferrer("http://test"+i, "http://test"+i,
mWebsite.getHandle(), "", null, testDay);
getRoller().commit();
//testDay = mock.getDateString();
}
}
public void tearDown() throws Exception
{
List refs = rmgr.getReferer
s(mWebsite);
// Remove all referers processes
for (int i = 0; i < refs.size(); i++)
{
rmgr.removeReferer(((RefererData)refs.get(i)).getId());
}
// Make sure all were removed
refs = rmgr.getReferers(mWebsite);
assertEquals(0,refs.size());
// reset refererSpamWords to original value
Roller mRoller = getRoller();
PropertiesManager pmgr = mRoller.getPropertiesManager();
RollerPropertyData spamprop = pmgr.getProperty("spam.blacklist");
spamprop.setValue(this.origSpamWords);
pmgr.store(spamprop);
super.tearDown();
}
//------------------------------------------------------------------------
public void testGetReferersToDate() throws Exception
{
List referers = rmgr.getReferersToDate(mWebsite, testDay);
assertEquals("Should be one Referer.", referers.size(), 1);
}
//-----------
-------------------------------------------------------------
public void testRefererProcessing() throws RollerException
{
List refs = rmgr.getReferers(mWebsite);
assertEquals("number of referers should equal count", count, refs.size());
int hits = rmgr.getDayHits(mWebsite);
assertEquals("There should be one fewer hits than referers", count, hits);
}
/* Self-Referrer Denial is now caught by the RefererFilter -- Allen G
public void testSelfRefererDenial() throws RollerException
{
// test against "self referrals"
getRoller().begin(UserData.SYSTEM_USER);
// create "direct" referer
boolean isSpam = rmgr.processRequest(
new MockRequest(
"20020101",
"direct",
"http://test.com",
null, mWebsite
)
);
getRoller().commit();
assertFalse("is not spam", isSp
am);
int newRefCount = rmgr.getReferers(mWebsite).size();
// now create self-referer
getRoller().begin(UserData.SYSTEM_USER);
isSpam = rmgr.processRequest(
new MockRequest(
"20020202",
"http://test.com/page/" + mWebsite.getHandle(),
"http://test.com",
null, mWebsite
)
);
getRoller().commit();
assertFalse("is not spam", isSpam);
// number of referrers should not have changed
List refs = rmgr.getReferers(mWebsite);
assertEquals("self referal not ignored", newRefCount, refs.size());
// now create self-referer from editor page
isSpam = rmgr.processRequest(
new MockRequest(
"20020202",
"http://test.com/weblog.do",
"http://test.com",
null, mWebsite
)
);
getRoller().commit();
assertFalse("is not spam", isSpam);
// number of referrers should not have changed
refs = rmgr.getReferers(mWebsite);
assertEquals("editor referal not ignored", newRefCount, refs.size());
}
*/
/**
* Test to see if Referer Spam detection works.
*/
/* Referrer spam detection now happens in the RefererFilter -- Allen G
public void testSpamBlocking()
{
boolean isSpam = rmgr.processRequest(
new MockRequest(
"20040101",
"http://www.spamtest.com",
"http://test.com",
null, mWebsite
)
);
//assertTrue("failed to detect referer spam", isSpam);
}
*/
public void testApplyRefererFilters() throws Exception
{
List refs = rmgr.getReferers(mWebsite);
assertEquals(count, refs.size());
String origWords = null;
getRoller().begin(UserData.SYSTEM_USER);
Roller mRoller = getRoller();
PropertiesManager pmgr = mRoller.getPropertiesManager();
RollerPropertyData spamprop = pmgr.getProperty("spam.blacklist");
origWords = spamprop.getValue();
spamprop.setValue(spamprop.getValue() + ", test");
pmgr.store(spamprop);
getRoller().commit();
getRoller().begin(UserData.SYSTEM_USER);
getRoller().getRefererManager().applyRefererFilters();
getRoller().commit();
refs = rmgr.getReferers(mWebsite);
assertEquals(0, refs.size());
getRoller().begin(UserData.SYSTEM_USER);
spamprop = pmgr.getProperty("spam.blacklist");
spamprop.setValue(origWords);
pmgr.store(spamprop);
getRoller().commit();
}
public void testApplyRefererFiltersWebsite() throws Exception
{
List refs = rmgr.getReferers(mWebsite);
assertEquals(count, refs
.size());
String origWords = null;
getRoller().begin(UserData.SYSTEM_USER);
mWebsite = getRoller().getUserManager().retrieveWebsite(mWebsite.getId());
origWords = mWebsite.getBlacklist();
mWebsite.setBlacklist("test");
mWebsite.save();
getRoller().commit();
getRoller().begin(UserData.SYSTEM_USER);
getRoller().getRefererManager().applyRefererFilters();
getRoller().commit();
refs = rmgr.getReferers(mWebsite);
assertEquals(0, refs.size());
}
}
\ No newline at end of file
+package org.roller.business;
import java.sql.Timestamp;
import java.util.Calendar;
import java.util.Date;
import java.util.List;
import junit.framework.Test;
import junit.framework.TestSuite;
import org.roller.RollerException;
import org.roller.model.PropertiesManager;
import org.roller.model.RefererManager;
import org.roller.model.Roller;
import org.roller.pojos.RefererData;
import org.roller.pojos.RollerPropertyData;
import org.roller.pojos.UserData;
import org.roller.pojos.WeblogEntryData;
import org.roller.pojos.WebsiteData;
import org.roller.util.DateUtil;
import org.roller.RollerTestBase;
/**
* Test Roller Referer Management.
*/
public class RefererManagerTest extends RollerTestBase
{
RefererManager rmgr;
//List refs;
int count = 20;
String testDay;
String origSpamWords;
//------------------------------------------------------------------------
public RefererManagerTest(String name)
{
super(name);
}
//--------
----------------------------------------------------------------
public static void main(String args[])
{
junit.textui.TestRunner.run(RefererManagerTest.class);
}
//------------------------------------------------------------------------
public static Test suite()
{
return new TestSuite(RefererManagerTest.class);
}
public void setUp() throws Exception
{
super.setUp();
// add "spamtest" to refererSpamWords
Roller mRoller = getRoller();
PropertiesManager pmgr = mRoller.getPropertiesManager();
RollerPropertyData spamprop = pmgr.getProperty("spam.blacklist");
this.origSpamWords = spamprop.getValue();
spamprop.setValue(spamprop.getValue() + ", spamtest");
pmgr.store(spamprop);
// Process count unique referers
rmgr = getRoller().getRefererManager();
Calendar lCalendar = Calendar.getInstance();
lCalendar.setTime(new Date()
);
for (int i = 0; i < count; i++)
{
lCalendar.add(Calendar.DATE, -1);
Timestamp day = new Timestamp(lCalendar.getTime().getTime());
testDay = DateUtil.format8chars(day);
getRoller().begin(UserData.SYSTEM_USER);
/*
MockRequest mock = new MockRequest(
DateUtil.format8chars(day),
"http://test"+i,
"http://test"+i,
null,
mWebsite
);
rmgr.processRequest(mock);
*/
rmgr.processReferrer("http://test"+i, "http://test"+i,
mWebsite.getHandle(), null, testDay);
getRoller().commit();
//testDay = mock.getDateString();
}
}
public void tearDown() throws Exception
{
List refs = rmgr.getReferers(mW
ebsite);
// Remove all referers processes
for (int i = 0; i < refs.size(); i++)
{
rmgr.removeReferer(((RefererData)refs.get(i)).getId());
}
// Make sure all were removed
refs = rmgr.getReferers(mWebsite);
assertEquals(0,refs.size());
// reset refererSpamWords to original value
Roller mRoller = getRoller();
PropertiesManager pmgr = mRoller.getPropertiesManager();
RollerPropertyData spamprop = pmgr.getProperty("spam.blacklist");
spamprop.setValue(this.origSpamWords);
pmgr.store(spamprop);
super.tearDown();
}
//------------------------------------------------------------------------
public void testGetReferersToDate() throws Exception
{
List referers = rmgr.getReferersToDate(mWebsite, testDay);
assertEquals("Should be one Referer.", referers.size(), 1);
}
//---------------
---------------------------------------------------------
public void testRefererProcessing() throws RollerException
{
List refs = rmgr.getReferers(mWebsite);
assertEquals("number of referers should equal count", count, refs.size());
int hits = rmgr.getDayHits(mWebsite);
assertEquals("There should be one fewer hits than referers", count, hits);
}
/* Self-Referrer Denial is now caught by the RefererFilter -- Allen G
public void testSelfRefererDenial() throws RollerException
{
// test against "self referrals"
getRoller().begin(UserData.SYSTEM_USER);
// create "direct" referer
boolean isSpam = rmgr.processRequest(
new MockRequest(
"20020101",
"direct",
"http://test.com",
null, mWebsite
)
);
getRoller().commit();
assertFalse("is not spam", isSpam);
int newRefCount = rmgr.getReferers(mWebsite).size();
// now create self-referer
getRoller().begin(UserData.SYSTEM_USER);
isSpam = rmgr.processRequest(
new MockRequest(
"20020202",
"http://test.com/page/" + mWebsite.getHandle(),
"http://test.com",
null, mWebsite
)
);
getRoller().commit();
assertFalse("is not spam", isSpam);
// number of referrers should not have changed
List refs = rmgr.getReferers(mWebsite);
assertEquals("self referal not ignored", newRefCount, refs.size());
// now create self-referer from editor page
isSpam = rmgr.processRequest(
new MockRequest(
"20020202",
"http://test.com/weblog.do",
"http://test.com",
null, mWebsite
)
);
getRoller().commit();
assertFalse("is not spam", isSpam);
// number of referrers should not have changed
refs = rmgr.getReferers(mWebsite);
assertEquals("editor referal not ignored", newRefCount, refs.size());
}
*/
/**
* Test to see if Referer Spam detection works.
*/
/* Referrer spam detection now happens in the RefererFilter -- Allen G
public void testSpamBlocking()
{
boolean isSpam = rmgr.processRequest(
new MockRequest(
"20040101",
"http://www.spamtest.com",
"http://test.com",
null, mWebsite
)
);
//assertTrue("failed to detect referer spam", isSpam);
}
*/
public void testApplyRefererFilters() throws Exception
{
List refs = rmgr.getReferers(mWebsite);
assertEquals(count, refs.size());
String origWords = null;
getRoller().begin(UserData.SYSTEM_USER);
Roller mRoller = getRoller();
PropertiesManager pmgr = mRoller.getPropertiesManager();
RollerPropertyData spamprop = pmgr.getProperty("spam.blacklist");
origWords = spamprop.getValue();
spamprop.setValue(spamprop.getValue() + ", test");
pmgr.store(spamprop);
getRoller().commit();
getRoller().begin(UserData.SYSTEM_USER);
getRoller().getRefererManager().applyRefererFilters();
getRoller().commit();
refs = rmgr.getReferers(mWebsite);
assertEquals(0, refs.size());
getRoller().begin(UserData.SYSTEM_USER);
spamprop = pmgr.getProperty("spam.blacklist");
spamprop.setValue(origWords);
pmgr.store(spamprop);
getRoller().commit();
}
public void testApplyRefererFiltersWebsite() throws Exception
{
List refs = rmgr.getReferers(mWebsite);
assertEquals(count, refs.siz
e());
String origWords = null;
getRoller().begin(UserData.SYSTEM_USER);
mWebsite = getRoller().getUserManager().retrieveWebsite(mWebsite.getId());
origWords = mWebsite.getBlacklist();
mWebsite.setBlacklist("test");
mWebsite.save();
getRoller().commit();
getRoller().begin(UserData.SYSTEM_USER);
getRoller().getRefererManager().applyRefererFilters();
getRoller().commit();
refs = rmgr.getReferers(mWebsite);
assertEquals(0, refs.size());
}
}
\ No newline at end of file