Skip to content

Commit e181656

Browse files
committed
add unit test for remove value
1 parent 1109135 commit e181656

File tree

1 file changed

+49
-0
lines changed
  • analytics-kotlin-live/src/androidTest/java/com/segment/analytics/liveplugins/kotlin

1 file changed

+49
-0
lines changed

analytics-kotlin-live/src/androidTest/java/com/segment/analytics/liveplugins/kotlin/JSStorageTest.kt

Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -210,4 +210,53 @@ class JSStorageTest {
210210
assertEquals("native", retrievedArray[1].jsonPrimitive.content)
211211
assertEquals(false, retrievedArray[2].jsonPrimitive.content.toBoolean())
212212
}
213+
214+
@Test
215+
fun testJSStorageRemoveValue() {
216+
// 1. set from js and remove from js
217+
engine.sync {
218+
evaluate("""storage.setValue("jsJs", "value1")""")
219+
evaluate("""storage.removeValue("jsJs")""")
220+
}
221+
assertNull(exceptionThrown)
222+
assertNull(jsStorage.getValue("jsJs"))
223+
val jsJsValue = engine.await(true) {
224+
evaluate("""storage.getValue("jsJs")""")
225+
}
226+
assertNull(jsJsValue)
227+
228+
// 2. set from native and remove from native
229+
jsStorage.setValue("nativeNative", "value2")
230+
assertEquals("value2", jsStorage.getValue("nativeNative"))
231+
jsStorage.removeValue("nativeNative")
232+
assertNull(jsStorage.getValue("nativeNative"))
233+
val nativeNativeValue = engine.await {
234+
evaluate("""storage.getValue("nativeNative")""")
235+
}
236+
assertNull(nativeNativeValue)
237+
238+
// 3. set from js and remove from native
239+
engine.sync {
240+
evaluate("""storage.setValue("jsNative", "value3")""")
241+
}
242+
assertEquals("value3", jsStorage.getValue("jsNative"))
243+
jsStorage.removeValue("jsNative")
244+
assertNull(jsStorage.getValue("jsNative"))
245+
val jsNativeValue = engine.await(true) {
246+
evaluate("""storage.getValue("jsNative")""")
247+
}
248+
assertNull(jsNativeValue)
249+
250+
// 4. set from native and remove from js
251+
jsStorage.setValue("nativeJs", "value4")
252+
assertEquals("value4", jsStorage.getValue("nativeJs"))
253+
engine.sync {
254+
evaluate("""storage.removeValue("nativeJs")""")
255+
}
256+
assertNull(jsStorage.getValue("nativeJs"))
257+
val nativeJsValue = engine.await(true) {
258+
evaluate("""storage.getValue("nativeJs")""")
259+
}
260+
assertNull(nativeJsValue)
261+
}
213262
}

0 commit comments

Comments
 (0)