import java.util.concurrent.atomic.AtomicInteger;
+import net.pterodactylus.sone.core.SoneModificationDetector.LockableFingerprintProvider;
import net.pterodactylus.sone.data.Sone;
import com.google.common.base.Ticker;
+import org.junit.Before;
import org.junit.Test;
/**
public class SoneModificationDetectorTest {
private final Ticker ticker = mock(Ticker.class);
- private final Sone sone = mock(Sone.class);
- private final Core core = mock(Core.class);
private final AtomicInteger insertionDelay = new AtomicInteger(60);
private final SoneModificationDetector soneModificationDetector;
+ private final LockableFingerprintProvider lockableFingerprintProvider = mock(LockableFingerprintProvider.class);
public SoneModificationDetectorTest() {
- when(sone.getFingerprint()).thenReturn("original");
- soneModificationDetector = new SoneModificationDetector(ticker, core, sone, insertionDelay);
+ when(lockableFingerprintProvider.getFingerprint()).thenReturn("original");
+ when(lockableFingerprintProvider.isLocked()).thenReturn(false);
+ soneModificationDetector = new SoneModificationDetector(ticker, lockableFingerprintProvider, insertionDelay);
}
private void modifySone() {
}
private void modifySone(String uniqueValue) {
- when(sone.getFingerprint()).thenReturn("modified" + uniqueValue);
+ when(lockableFingerprintProvider.getFingerprint()).thenReturn("modified" + uniqueValue);
}
private void passTime(int seconds) {
}
private void lockSone() {
- when(core.isLocked(sone)).thenReturn(true);
+ when(lockableFingerprintProvider.isLocked()).thenReturn(true);
}
private void unlockSone() {
- when(core.isLocked(sone)).thenReturn(false);
+ when(lockableFingerprintProvider.isLocked()).thenReturn(false);
+ }
+
+ @Before
+ public void setupOriginalFingerprint() {
+ soneModificationDetector.setFingerprint("original");
}
@Test
public void normalConstructorCanBeCalled() {
- new SoneModificationDetector(core, sone, insertionDelay);
+ new SoneModificationDetector(lockableFingerprintProvider, insertionDelay);
}
@Test