@@ -10,10 +10,16 @@ import kotlin.test.*
10
10
11
11
expect val emulatorHost: String
12
12
expect val context: Any
13
- expect fun runTest (test : suspend () -> Unit )
13
+ expect fun runTest (skip : Boolean = false, test : suspend () -> Unit )
14
+ expect val currentPlatform: Platform
15
+
16
+ enum class Platform { Android , IOS , JS }
14
17
15
18
class FirebaseAuthTest {
16
19
20
+ // Skip the tests on iOS simulator due keychain exceptions
21
+ private val skip = currentPlatform == Platform .IOS
22
+
17
23
@BeforeTest
18
24
fun initializeFirebase () {
19
25
Firebase
@@ -35,14 +41,14 @@ class FirebaseAuthTest {
35
41
}
36
42
37
43
@Test
38
- fun testSignInWithUsernameAndPassword () = runTest {
44
+ fun testSignInWithUsernameAndPassword () = runTest(skip) {
39
45
val uid
= getTestUid(
" [email protected] " ,
" test123" )
40
46
val result
= Firebase .auth.signInWithEmailAndPassword(
" [email protected] " ,
" test123" )
41
47
assertEquals(uid, result.user!! .uid)
42
48
}
43
49
44
50
@Test
45
- fun testCreateUserWithEmailAndPassword () = runTest {
51
+ fun testCreateUserWithEmailAndPassword () = runTest(skip) {
46
52
val email = " test+${Random .nextInt(100000 )} @test.com"
47
53
val createResult = Firebase .auth.createUserWithEmailAndPassword(email, " test123" )
48
54
assertNotEquals(null , createResult.user?.uid)
@@ -57,7 +63,7 @@ class FirebaseAuthTest {
57
63
}
58
64
59
65
@Test
60
- fun testFetchSignInMethods () = runTest {
66
+ fun testFetchSignInMethods () = runTest(skip) {
61
67
val email = " test+${Random .nextInt(100000 )} @test.com"
62
68
var signInMethodResult = Firebase .auth.fetchSignInMethodsForEmail(email)
63
69
assertEquals(emptyList(), signInMethodResult)
@@ -69,7 +75,7 @@ class FirebaseAuthTest {
69
75
}
70
76
71
77
@Test
72
- fun testSendEmailVerification () = runTest {
78
+ fun testSendEmailVerification () = runTest(skip) {
73
79
val email = " test+${Random .nextInt(100000 )} @test.com"
74
80
val createResult = Firebase .auth.createUserWithEmailAndPassword(email, " test123" )
75
81
assertNotEquals(null , createResult.user?.uid)
@@ -79,7 +85,7 @@ class FirebaseAuthTest {
79
85
}
80
86
81
87
@Test
82
- fun sendPasswordResetEmail () = runTest {
88
+ fun sendPasswordResetEmail () = runTest(skip) {
83
89
val email = " test+${Random .nextInt(100000 )} @test.com"
84
90
val createResult = Firebase .auth.createUserWithEmailAndPassword(email, " test123" )
85
91
assertNotEquals(null , createResult.user?.uid)
@@ -90,7 +96,7 @@ class FirebaseAuthTest {
90
96
}
91
97
92
98
@Test
93
- fun testSignInWithCredential () = runTest {
99
+ fun testSignInWithCredential () = runTest(skip) {
94
100
val uid
= getTestUid(
" [email protected] " ,
" test123" )
95
101
val credential
= EmailAuthProvider .credential(
" [email protected] " ,
" test123" )
96
102
val result = Firebase .auth.signInWithCredential(credential)
0 commit comments