Commit 2c4a7793 authored by Matt Tucker's avatar Matt Tucker Committed by matt

Updated test cases from Conor Hayes.

git-svn-id: http://svn.igniterealtime.org/svn/repos/messenger/trunk@2696 b35dd754-fafc-0310-a699-88a17e54d16e
parent e5bb78c8
...@@ -11,45 +11,36 @@ import org.xmpp.packet.Message; ...@@ -11,45 +11,36 @@ import org.xmpp.packet.Message;
* *
* @author chayes * @author chayes
*/ */
public class ContentFilterTest extends TestCase public class ContentFilterTest extends TestCase {
{
private ContentFilter filter; private ContentFilter filter;
public static void main(String[] args) public static void main(String[] args) {
{
junit.textui.TestRunner.run(ContentFilterTest.class); junit.textui.TestRunner.run(ContentFilterTest.class);
} }
/* /*
* @see TestCase#setUp() * @see TestCase#setUp()
*/ */
protected void setUp() throws Exception protected void setUp() throws Exception {
{
filter = new ContentFilter(); filter = new ContentFilter();
} }
/* /*
* @see TestCase#tearDown() * @see TestCase#tearDown()
*/ */
protected void tearDown() throws Exception protected void tearDown() throws Exception {
{
super.tearDown(); super.tearDown();
} }
public void testSetInvalidPatterns() public void testSetInvalidPatterns() {
{ try {
try
{
filter.setPatterns("$*["); filter.setPatterns("$*[");
fail("expected PatternSyntaxException");
} catch (PatternSyntaxException e) {
} }
catch (PatternSyntaxException e)
{
System.out.println(e.getMessage());
System.out.println(e.getPattern());
} }
}
public void testSetContentMask() public void testSetContentMask() {
{
assertFalse(filter.isMaskingContent()); assertFalse(filter.isMaskingContent());
filter.setMask("dummy"); filter.setMask("dummy");
assertTrue(filter.isMaskingContent()); assertTrue(filter.isMaskingContent());
...@@ -57,8 +48,7 @@ public class ContentFilterTest extends TestCase ...@@ -57,8 +48,7 @@ public class ContentFilterTest extends TestCase
assertFalse(filter.isMaskingContent()); assertFalse(filter.isMaskingContent());
} }
public void testFilterWithEmptyMessage() public void testFilterWithEmptyMessage() {
{
Message message = new Message(); Message message = new Message();
boolean matched = filter.filter(message); boolean matched = filter.filter(message);
...@@ -69,8 +59,7 @@ public class ContentFilterTest extends TestCase ...@@ -69,8 +59,7 @@ public class ContentFilterTest extends TestCase
assertEquals(new Message().toXML(), message.toXML()); assertEquals(new Message().toXML(), message.toXML());
} }
public void testFilterMessageSubject() public void testFilterMessageSubject() {
{
// filter on the word fox // filter on the word fox
filter.setPatterns("fox"); filter.setPatterns("fox");
...@@ -88,13 +77,12 @@ public class ContentFilterTest extends TestCase ...@@ -88,13 +77,12 @@ public class ContentFilterTest extends TestCase
assertNull(message.getBody()); assertNull(message.getBody());
} }
public void testFilterMessageSubjectWithMask() public void testFilterMessageSubjectWithMask() {
{
// filter on the word fox // filter on the word fox
filter.setPatterns("fox"); filter.setPatterns("fox");
//set a content mask // set a content mask
filter.setMask("**"); filter.setMask("**");
// test message // test message
...@@ -112,8 +100,7 @@ public class ContentFilterTest extends TestCase ...@@ -112,8 +100,7 @@ public class ContentFilterTest extends TestCase
} }
public void testFilterMessageBody() public void testFilterMessageBody() {
{
// filter on the word fox // filter on the word fox
filter.setPatterns("fox"); filter.setPatterns("fox");
...@@ -132,8 +119,7 @@ public class ContentFilterTest extends TestCase ...@@ -132,8 +119,7 @@ public class ContentFilterTest extends TestCase
assertNull(message.getSubject()); assertNull(message.getSubject());
} }
public void testFilterMessageBodyWithMask() public void testFilterMessageBodyWithMask() {
{
// filter on the word "fox" and "dog" // filter on the word "fox" and "dog"
filter.setPatterns("fox,dog"); filter.setPatterns("fox,dog");
...@@ -153,4 +139,22 @@ public class ContentFilterTest extends TestCase ...@@ -153,4 +139,22 @@ public class ContentFilterTest extends TestCase
assertNull(message.getSubject()); assertNull(message.getSubject());
} }
public void testFilterWholeWords() {
filter.setPatterns("at"); //match every instance of "at" in string
filter.setMask("**");
Message message = new Message();
message.setBody("At noon the fat cats ate lunch at Rizzos");
boolean matched = filter.filter(message);
assertTrue(matched);
assertEquals("At noon the f** c**s **e lunch ** Rizzos", message.getBody());
filter.setPatterns("(?i)\\bat\\b"); //match only whole word instances of "at" ignoring case
message.setBody("At noon the fat cats ate lunch at Rizzos");
matched = filter.filter(message);
assertTrue(matched);
System.out.println(message.getBody());
assertEquals("** noon the fat cats ate lunch ** Rizzos", message.getBody());
}
} }
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment