From a226d25dc6ea306aed389b81bd47a6a536bf7be9 Mon Sep 17 00:00:00 2001
From: str4d <str4d@mail.i2p>
Date: Wed, 29 Feb 2012 05:01:21 +0000
Subject: [PATCH] Test getters etc. in RateStat

---
 core/java/test/net/i2p/stat/RateStatTest.java | 26 ++++++++++++++++++-
 1 file changed, 25 insertions(+), 1 deletion(-)

diff --git a/core/java/test/net/i2p/stat/RateStatTest.java b/core/java/test/net/i2p/stat/RateStatTest.java
index a3869bdc6d..fe02a9b086 100644
--- a/core/java/test/net/i2p/stat/RateStatTest.java
+++ b/core/java/test/net/i2p/stat/RateStatTest.java
@@ -6,6 +6,30 @@ import junit.framework.TestCase;
 
 
 public class RateStatTest extends TestCase {
+    public void testGettersEtc() throws Exception{
+        long emptyArray[] = new long[0];
+        RateStat rs = new RateStat("test", "test RateStat getters etc", "tests", emptyArray);
+
+        // Test basic getters
+        assertEquals("test", rs.getName());
+        assertEquals("tests", rs.getGroupName());
+        assertEquals("test RateStat getters etc", rs.getDescription());
+
+        // There should be no periods, so other getters should return defaults
+        // TODO: Fix this so it checks that the array is empty rather than comparing objects
+        //assertEquals(rs.getPeriods(), emptyArray);
+        assertEquals(0.0, rs.getLifetimeAverageValue());
+        assertEquals(0, rs.getLifetimeEventCount());
+        assertNull(rs.getRate(2000));
+
+        // Test adding and removing a period
+        assertFalse(rs.containsRate(1000));
+        rs.addRate(1000);
+        assertTrue(rs.containsRate(1000));
+        rs.removeRate(1000);
+        assertFalse(rs.containsRate(1000));
+    }
+
     public void testRateStat() throws Exception{
         RateStat rs = new RateStat("moo", "moo moo moo", "cow trueisms", new long[] { 60 * 1000, 60 * 60 * 1000,
                                                                                      24 * 60 * 60 * 1000});
@@ -30,4 +54,4 @@ public class RateStatTest extends TestCase {
         assertEquals(rs, loadedRs);
         
     }
-}
\ No newline at end of file
+}
-- 
GitLab