LockedSyncSpoolModelTest.kt

1.2 KB · raw

1package com.peachpasswords.sync23import org.junit.Assert.assertThrows4import org.junit.Test56class LockedSyncSpoolModelTest {7    @Test fun cumulative_inbox_counts_are_bounded_when_state_is_rebuilt() {8        val entries = (0..SyncLimits.MAX_ENTRY_COUNT).associate { index ->9            "entry-$index" to LockedSyncCachedEntry(1, "AA==")10        }11        val tombstones = (0..SyncLimits.MAX_TOMBSTONE_COUNT).associate { index ->12            "tombstone-$index" to 1L13        }1415        assertThrows(IllegalArgumentException::class.java) { state(inboxEntries = entries) }16        assertThrows(IllegalArgumentException::class.java) { state(inboxTombstones = tombstones) }17    }1819    private fun state(20        inboxEntries: Map<String, LockedSyncCachedEntry> = emptyMap(),21        inboxTombstones: Map<String, Long> = emptyMap(),22    ) = LockedSyncSpool(23        vaultId = "a".repeat(64),24        deviceId = "device",25        deviceName = "Android",26        localVersion = 1,27        longTermPublicKeyHex = "b".repeat(64),28        signingPublicKeyHex = "d".repeat(64),29        entries = emptyMap(),30        tombstones = emptyMap(),31        inboxEntries = inboxEntries,32        inboxTombstones = inboxTombstones,33    )34}