Author: vmassol
Date: 2008-02-12 12:01:57 +0100 (Tue, 12 Feb 2008)
New Revision: 7535
Modified:
xwiki-platform/core/trunk/xwiki-observation/src/main/java/org/xwiki/observation/event/filter/RegexEventFilter.java
xwiki-platform/core/trunk/xwiki-observation/src/test/java/org/xwiki/observation/ObservationManagerTest.java
Log:
XWIKI-1522: Rewrite the notification mechanism
* Fixed RegexEventFilter and added a unit test for it
Merged from 1.2 branch (rev 7534)
Modified:
xwiki-platform/core/trunk/xwiki-observation/src/main/java/org/xwiki/observation/event/filter/RegexEventFilter.java
===================================================================
---
xwiki-platform/core/trunk/xwiki-observation/src/main/java/org/xwiki/observation/event/filter/RegexEventFilter.java
2008-02-12 10:59:35 UTC (rev 7534)
+++
xwiki-platform/core/trunk/xwiki-observation/src/main/java/org/xwiki/observation/event/filter/RegexEventFilter.java
2008-02-12 11:01:57 UTC (rev 7535)
@@ -23,7 +23,7 @@
import java.util.regex.Pattern;
import java.util.regex.Matcher;
-public class RegexEventFilter
+public class RegexEventFilter implements EventFilter
{
private String filter;
private Pattern pattern;
Modified:
xwiki-platform/core/trunk/xwiki-observation/src/test/java/org/xwiki/observation/ObservationManagerTest.java
===================================================================
---
xwiki-platform/core/trunk/xwiki-observation/src/test/java/org/xwiki/observation/ObservationManagerTest.java
2008-02-12 10:59:35 UTC (rev 7534)
+++
xwiki-platform/core/trunk/xwiki-observation/src/test/java/org/xwiki/observation/ObservationManagerTest.java
2008-02-12 11:01:57 UTC (rev 7535)
@@ -23,10 +23,14 @@
import junit.framework.TestCase;
import org.xwiki.observation.event.DocumentSaveEvent;
import org.xwiki.observation.event.Event;
+import org.xwiki.observation.event.filter.RegexEventFilter;
import org.xwiki.observation.internal.DefaultObservationManager;
public class ObservationManagerTest extends TestCase
{
+ private ObservationManager manager;
+ private TestListener listener;
+
public class TestListener implements EventListener
{
public boolean hasListenerBeenCalled = false;
@@ -40,14 +44,25 @@
}
}
- public void testNotify()
+ protected void setUp()
{
- ObservationManager manager = new DefaultObservationManager();
- TestListener listener = new TestListener();
+ this.manager = new DefaultObservationManager();
+ this.listener = new TestListener();
+ }
+
+ public void testNotifyWhenUsingDocumentSaveEvent()
+ {
manager.addListener(new DocumentSaveEvent("SomeDocument"), listener);
manager.notify(new DocumentSaveEvent("SomeDocument"), "some source",
"some data");
assertTrue("Listener has not been called",
listener.hasListenerBeenCalled);
}
+ public void testNotifyWhenUsingDocumentSaveEventWithFilter()
+ {
+ manager.addListener(new DocumentSaveEvent(new
RegexEventFilter(".*Doc.*")), listener);
+
+ manager.notify(new DocumentSaveEvent("SomeDocument"), "some source",
"some data");
+ assertTrue("Listener has not been called",
listener.hasListenerBeenCalled);
+ }
}
_______________________________________________
notifications mailing list
[email protected]
http://lists.xwiki.org/mailman/listinfo/notifications