From 968272f1b87279dcb38d75cc3aa7274b683cc9eb Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Sebastian=20K=C3=BCrten?= <sebastian@mobanisto.de>
Date: Fri, 1 Oct 2021 22:13:07 +0200
Subject: [PATCH] Add three different entry points to start with testing data

---
 ...tWithTemporaryAccount.kt => RunWithTemporaryAccount.kt} | 7 ++-----
 .../briar/desktop/TestDeterministicConversations.kt        | 5 +++++
 .../briarproject/briar/desktop/TestMixedConversations.kt   | 6 ++++++
 .../briarproject/briar/desktop/TestRandomConversations.kt  | 5 +++++
 4 files changed, 18 insertions(+), 5 deletions(-)
 rename src/test/kotlin/org/briarproject/briar/desktop/{TestWithTemporaryAccount.kt => RunWithTemporaryAccount.kt} (92%)
 create mode 100644 src/test/kotlin/org/briarproject/briar/desktop/TestDeterministicConversations.kt
 create mode 100644 src/test/kotlin/org/briarproject/briar/desktop/TestMixedConversations.kt
 create mode 100644 src/test/kotlin/org/briarproject/briar/desktop/TestRandomConversations.kt

diff --git a/src/test/kotlin/org/briarproject/briar/desktop/TestWithTemporaryAccount.kt b/src/test/kotlin/org/briarproject/briar/desktop/RunWithTemporaryAccount.kt
similarity index 92%
rename from src/test/kotlin/org/briarproject/briar/desktop/TestWithTemporaryAccount.kt
rename to src/test/kotlin/org/briarproject/briar/desktop/RunWithTemporaryAccount.kt
index 90671b19ca..e89c442918 100644
--- a/src/test/kotlin/org/briarproject/briar/desktop/TestWithTemporaryAccount.kt
+++ b/src/test/kotlin/org/briarproject/briar/desktop/RunWithTemporaryAccount.kt
@@ -20,7 +20,7 @@ import java.util.logging.Level.INFO
 import java.util.logging.LogManager
 import kotlin.io.path.absolute
 
-private class TestWithTemporaryAccount {
+internal class RunWithTemporaryAccount(val customization: BriarDesktopTestApp.() -> Unit) {
 
     @OptIn(ExperimentalComposeUiApi::class)
     fun run() = application {
@@ -54,8 +54,7 @@ private class TestWithTemporaryAccount {
         lifecycleManager.startServices(dbKey)
         lifecycleManager.waitForStartup()
 
-        app.getDeterministicTestDataCreator().createTestData(5, 20, 50)
-        app.getTestDataCreator().createTestData(5, 20, 50, 4, 4, 10)
+        customization(app)
 
         // Creating test data happens on a background thread. As we do not get notified about updates to the conact
         // list yet, we need to wait a moment in order for that to finish (hopefully).
@@ -86,5 +85,3 @@ private class TestWithTemporaryAccount {
         return dataDir
     }
 }
-
-fun main(args: Array<String>) = TestWithTemporaryAccount().run()
diff --git a/src/test/kotlin/org/briarproject/briar/desktop/TestDeterministicConversations.kt b/src/test/kotlin/org/briarproject/briar/desktop/TestDeterministicConversations.kt
new file mode 100644
index 0000000000..146c23a590
--- /dev/null
+++ b/src/test/kotlin/org/briarproject/briar/desktop/TestDeterministicConversations.kt
@@ -0,0 +1,5 @@
+package org.briarproject.briar.desktop
+
+fun main(args: Array<String>) = RunWithTemporaryAccount {
+    getDeterministicTestDataCreator().createTestData(5, 20, 50)
+}.run()
diff --git a/src/test/kotlin/org/briarproject/briar/desktop/TestMixedConversations.kt b/src/test/kotlin/org/briarproject/briar/desktop/TestMixedConversations.kt
new file mode 100644
index 0000000000..085a2d01cf
--- /dev/null
+++ b/src/test/kotlin/org/briarproject/briar/desktop/TestMixedConversations.kt
@@ -0,0 +1,6 @@
+package org.briarproject.briar.desktop
+
+fun main(args: Array<String>) = RunWithTemporaryAccount {
+    getDeterministicTestDataCreator().createTestData(5, 20, 50)
+    getTestDataCreator().createTestData(5, 20, 50, 4, 4, 10)
+}.run()
diff --git a/src/test/kotlin/org/briarproject/briar/desktop/TestRandomConversations.kt b/src/test/kotlin/org/briarproject/briar/desktop/TestRandomConversations.kt
new file mode 100644
index 0000000000..1daa1072fa
--- /dev/null
+++ b/src/test/kotlin/org/briarproject/briar/desktop/TestRandomConversations.kt
@@ -0,0 +1,5 @@
+package org.briarproject.briar.desktop
+
+fun main(args: Array<String>) = RunWithTemporaryAccount {
+    getTestDataCreator().createTestData(5, 20, 50, 4, 4, 10)
+}.run()
-- 
GitLab