aboutsummaryrefslogtreecommitdiff
path: root/app/src/test/java/invalid/lena/scrcpy/CrashlogTest.java
diff options
context:
space:
mode:
authorLena <lena@omega>2026-08-01 00:00:00 +0000
committerLena <lena@omega>2026-08-01 00:00:00 +0000
commit852a8a00273c9128efeed0217a8e5d3fcd8bf780 (patch)
treec72f959731fa3c7c809cf1a0222363b6c9c9b03b /app/src/test/java/invalid/lena/scrcpy/CrashlogTest.java
parentf379b93d52bf0dbd3816ec3f64d165314771d2a6 (diff)
downloadscrcpy-android-852a8a00273c9128efeed0217a8e5d3fcd8bf780.tar.gz
app: harden mirroring lifecycle and state
Diffstat (limited to 'app/src/test/java/invalid/lena/scrcpy/CrashlogTest.java')
-rw-r--r--app/src/test/java/invalid/lena/scrcpy/CrashlogTest.java36
1 files changed, 36 insertions, 0 deletions
diff --git a/app/src/test/java/invalid/lena/scrcpy/CrashlogTest.java b/app/src/test/java/invalid/lena/scrcpy/CrashlogTest.java
new file mode 100644
index 0000000..41c05a1
--- /dev/null
+++ b/app/src/test/java/invalid/lena/scrcpy/CrashlogTest.java
@@ -0,0 +1,36 @@
+package invalid.lena.scrcpy;
+
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertFalse;
+import static org.junit.Assert.assertTrue;
+
+import org.junit.Rule;
+import org.junit.Test;
+import org.junit.rules.TemporaryFolder;
+
+import java.io.File;
+import java.nio.file.Files;
+
+public class CrashlogTest {
+
+ @Rule
+ public TemporaryFolder dir = new TemporaryFolder();
+
+ @Test
+ public void pruneKeepsNewestCrashlogsOnly() throws Exception {
+ for (int i = 0; i < 7; i++) {
+ File file = new File(dir.getRoot(), "crash-" + i + ".log");
+ Files.write(file.toPath(), new byte[]{(byte) i});
+ assertTrue(file.setLastModified(1_000L + i));
+ }
+ File unrelated = dir.newFile("notes.txt");
+
+ Crashlog.prune(dir.getRoot(), 5);
+
+ File[] logs = dir.getRoot().listFiles((parent, name) -> name.endsWith(".log"));
+ assertEquals(5, logs.length);
+ assertFalse(new File(dir.getRoot(), "crash-0.log").exists());
+ assertFalse(new File(dir.getRoot(), "crash-1.log").exists());
+ assertTrue(unrelated.exists());
+ }
+}