Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 494b1bce authored by Ling Ma's avatar Ling Ma Committed by Jack Yu
Browse files

Allow 0 ms window for serverside manipulation

Test: atest
Bug: 222031425
Merged-In: Id68f8f14c33d55dc9d0a031cf5876c260d3f42ce
Change-Id: Id68f8f14c33d55dc9d0a031cf5876c260d3f42ce
parent fa0b1de1
Loading
Loading
Loading
Loading
+3 −3
Original line number Diff line number Diff line
@@ -32,10 +32,10 @@ public class SlidingWindowEventCounter {
    private final int mNumOccurrences;
    private final LongArrayQueue mTimestampQueueMillis;

    public SlidingWindowEventCounter(@IntRange(from = 1) final long windowSizeMillis,
    public SlidingWindowEventCounter(@IntRange(from = 0) final long windowSizeMillis,
            @IntRange(from = 2) final int numOccurrences) {
        if (windowSizeMillis <= 0) {
            throw new IllegalArgumentException("windowSizeMillis must be greater than 0");
        if (windowSizeMillis < 0) {
            throw new IllegalArgumentException("windowSizeMillis must be greater or equal to 0");
        }
        if (numOccurrences <= 1) {
            throw new IllegalArgumentException("numOccurrences must be greater than 1");
+6 −0
Original line number Diff line number Diff line
@@ -75,5 +75,11 @@ public class SlidingWindowEventCounterTest {
        counter.addOccurrence(mInitialTime + 101);
        counter.addOccurrence(mInitialTime + 102);
        assertFalse(counter.isInWindow());

        counter = new SlidingWindowEventCounter(0, 2);
        counter.addOccurrence(mInitialTime);
        counter.addOccurrence(mInitialTime);
        assertTrue(counter.isInWindow());
        assertFalse(counter.addOccurrence(mInitialTime + 1));
    }
}