package com.limegroup.gnutella.filters; import junit.framework.Test; import org.jmock.Expectations; import org.jmock.Mockery; import org.limewire.util.BaseTestCase; import com.limegroup.gnutella.messages.PingRequest; import com.limegroup.gnutella.messages.QueryRequest; public class HashFilterTest extends BaseTestCase { public HashFilterTest(String name){ super(name); } public static Test suite() { return buildTestSuite(HashFilterTest.class); } QueryRequest query; PingRequest ping; HashFilter filter; Mockery context; @Override public void setUp() throws Exception { context = new Mockery(); query = context.mock(QueryRequest.class); ping = context.mock(PingRequest.class); filter = new HashFilter(); } public void testHasUrn() { context.checking(new Expectations() {{ one(query).hasQueryUrns(); will(returnValue(true)); }}); assertFalse(filter.allow(query)); context.assertIsSatisfied(); } public void testHasNoUrn() { context.checking(new Expectations() {{ one(query).hasQueryUrns(); will(returnValue(false)); }}); assertTrue(filter.allow(query)); context.assertIsSatisfied(); } public void testOtherMessagesAreIgnored() throws Exception { context.checking(new Expectations() {{ never(ping); }}); assertTrue(filter.allow(ping)); context.assertIsSatisfied(); } }