我想测试一个值是否正确保存到SharedPreferences
。
在我的代码中,我注入了SharedPreferences
,所以我保存了这样的值:
with(sharedPreferences.edit()) {
putString("testkey", "dummyValue")
apply()
}
在我的测试中:
val mockSharedPreferences = mock(SharedPreferences::class.java)
val mockEditor = mock(SharedPreferences.Editor::class.java)
`when`(sharedPreferences.edit()).thenReturn(mockEditor)
assert(mockSharedPreferences.getString("testkey") == "dummyValue")
问题是mockSharedPreferences返回null所以我还需要模拟/更改什么?
答案 0 :(得分:0)
如果返回true,则可以使用此代码保存您的值。
public String getUserId(){
SharedPreferences sharedPreferences=context.getSharedPreferences(USER_DETAILS, MODE_PRIVATE);
return sharedPreferences.getString(USER_ID,null);
}
如果你想获得代码下面的保存值是有帮助的。
by lazy