1 package expo.modules
2 
3 import com.google.common.truth.Truth
4 import org.junit.Assert
5 
assertThrowsnull6 inline fun <reified T : Throwable> assertThrows(expectedMessage: String? = null, block: () -> Any?) {
7   try {
8     block()
9   } catch (e: Throwable) {
10     Truth.assertThat(e).isInstanceOf(T::class.java)
11     expectedMessage?.let {
12       Truth.assertThat(e.localizedMessage).contains(it)
13     }
14     return
15   }
16 
17   Assert.fail("Provided block should throw.")
18 }
19 
20 @Suppress("NOTHING_TO_INLINE")
assertNotNullnull21 inline fun Any?.assertNotNull() {
22   Truth.assertThat(this).isNotNull()
23 }
24 
25 @Suppress("NOTHING_TO_INLINE")
assertNullnull26 inline fun Any?.assertNull() {
27   Truth.assertThat(this).isNull()
28 }
29