You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@esme.apache.org by vd...@apache.org on 2009/12/13 23:22:03 UTC

svn commit: r890132 - in /incubator/esme/trunk/server/src: main/scala/org/apache/esme/actor/PopStatsActor.scala test/scala/org/apache/esme/actor/PopStatsActorTest.scala

Author: vdichev
Date: Sun Dec 13 22:22:03 2009
New Revision: 890132

URL: http://svn.apache.org/viewvc?rev=890132&view=rev
Log:
Increase timeouts for PopStatsActorTest, fix expiration bug.

Modified:
    incubator/esme/trunk/server/src/main/scala/org/apache/esme/actor/PopStatsActor.scala
    incubator/esme/trunk/server/src/test/scala/org/apache/esme/actor/PopStatsActorTest.scala

Modified: incubator/esme/trunk/server/src/main/scala/org/apache/esme/actor/PopStatsActor.scala
URL: http://svn.apache.org/viewvc/incubator/esme/trunk/server/src/main/scala/org/apache/esme/actor/PopStatsActor.scala?rev=890132&r1=890131&r2=890132&view=diff
==============================================================================
--- incubator/esme/trunk/server/src/main/scala/org/apache/esme/actor/PopStatsActor.scala (original)
+++ incubator/esme/trunk/server/src/main/scala/org/apache/esme/actor/PopStatsActor.scala Sun Dec 13 22:22:03 2009
@@ -101,7 +101,7 @@
       reply(topList)
       
       case Expire => {
-        val (live, expired) = queue.partition(_.when > now)
+        val (live, expired) = queue.partition(_.when + period > now)
         expired.foreach(stats -= _.id)
         ActorPing.schedule(this, Expire, refreshInterval)
         live

Modified: incubator/esme/trunk/server/src/test/scala/org/apache/esme/actor/PopStatsActorTest.scala
URL: http://svn.apache.org/viewvc/incubator/esme/trunk/server/src/test/scala/org/apache/esme/actor/PopStatsActorTest.scala?rev=890132&r1=890131&r2=890132&view=diff
==============================================================================
--- incubator/esme/trunk/server/src/test/scala/org/apache/esme/actor/PopStatsActorTest.scala (original)
+++ incubator/esme/trunk/server/src/test/scala/org/apache/esme/actor/PopStatsActorTest.scala Sun Dec 13 22:22:03 2009
@@ -30,27 +30,29 @@
 object PopStatsActorSpecsRunner extends ConsoleRunner(PopStatsActorSpecs)
 
 object PopStatsActorSpecs extends Specification {
+  val SendTimeout = 500
+  val ExpireTimeout = 3000
   
   "Popularity Stats" should {
     "Update top hits after inrcementing statistics" in {
-      PopStatsActor !? (100, PopStatsActor.StartStats(ResendStat, 2000, 1000))
+      PopStatsActor !? (SendTimeout, PopStatsActor.StartStats(ResendStat, ExpireTimeout, 1000))
 
-      PopStatsActor !? (100, PopStatsActor.IncrStats(ResendStat, 1))
-      val stats1 = PopStatsActor !? PopStatsActor.TopStats(ResendStat, 5, 2000)
+      PopStatsActor !? (SendTimeout, PopStatsActor.IncrStats(ResendStat, 1))
+      val stats1 = PopStatsActor !? PopStatsActor.TopStats(ResendStat, 5, ExpireTimeout)
       stats1 must beEqualTo(List(1 -> 1))
 
-      PopStatsActor !? (100, PopStatsActor.IncrStats(ResendStat, 3))
-      val stats2 = PopStatsActor !? PopStatsActor.TopStats(ResendStat, 5, 2000)
+      PopStatsActor !? (SendTimeout, PopStatsActor.IncrStats(ResendStat, 3))
+      val stats2 = PopStatsActor !? PopStatsActor.TopStats(ResendStat, 5, ExpireTimeout)
       stats2 must beEqualTo(List(3 -> 1, 1 -> 1))
 
-      PopStatsActor !? (100, PopStatsActor.IncrStats(ResendStat, 1))
-      val stats3 = PopStatsActor !? PopStatsActor.TopStats(ResendStat, 5, 2000)
+      PopStatsActor !? (SendTimeout, PopStatsActor.IncrStats(ResendStat, 1))
+      val stats3 = PopStatsActor !? PopStatsActor.TopStats(ResendStat, 5, ExpireTimeout)
       stats3 must beEqualTo(List(1 -> 2, 3 -> 1))
     }
     
     "Information should expire after timeout" in {
-      Thread.sleep(2000)
-      val stats = PopStatsActor !? PopStatsActor.TopStats(ResendStat, 5, 2000)
+      Thread.sleep(ExpireTimeout)
+      val stats = PopStatsActor !? PopStatsActor.TopStats(ResendStat, 5, ExpireTimeout)
       stats must beEqualTo(Nil)
     }
   }