Skip to content

Commit 904133d

Browse files
committed
fix unit test
1 parent 3fd0d07 commit 904133d

File tree

2 files changed

+34
-2
lines changed

2 files changed

+34
-2
lines changed

firebase-crashlytics/src/androidTest/java/com/google/firebase/crashlytics/internal/metadata/MetaDataStoreTest.java

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -160,6 +160,34 @@ public void testUpdateSessionId_notPersistUserIdToNewSessionIfNoUserIdSet() {
160160
.isFalse();
161161
}
162162

163+
@Test
164+
public void testUpdateSessionId_notPersistCustomKeysToNewSessionIfNoCustomKeysSet() {
165+
UserMetadata userMetadata = new UserMetadata(SESSION_ID_1, fileStore, worker);
166+
userMetadata.setNewSession(SESSION_ID_2);
167+
assertThat(fileStore.getSessionFile(SESSION_ID_2, UserMetadata.KEYDATA_FILENAME).exists())
168+
.isFalse();
169+
}
170+
171+
@Test
172+
public void testUpdateSessionId_persistCustomKeysToNewSessionIfCustomKeysSet() {
173+
UserMetadata userMetadata = new UserMetadata(SESSION_ID_1, fileStore, worker);
174+
final Map<String, String> keys =
175+
new HashMap<String, String>() {
176+
{
177+
put(KEY_1, VALUE_1);
178+
put(KEY_2, VALUE_2);
179+
put(KEY_3, VALUE_3);
180+
}
181+
};
182+
userMetadata.setCustomKeys(keys);
183+
userMetadata.setNewSession(SESSION_ID_2);
184+
assertThat(fileStore.getSessionFile(SESSION_ID_2, UserMetadata.KEYDATA_FILENAME).exists())
185+
.isTrue();
186+
187+
MetaDataStore metaDataStore = new MetaDataStore(fileStore);
188+
assertThat(metaDataStore.readKeyData(SESSION_ID_2)).isEqualTo(keys);
189+
}
190+
163191
@Test
164192
public void testUpdateSessionId_persistUserIdToNewSessionIfUserIdSet() {
165193
String userId = "ThemisWang";

firebase-crashlytics/src/main/java/com/google/firebase/crashlytics/internal/metadata/UserMetadata.java

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -97,8 +97,12 @@ public void setNewSession(String sessionId) {
9797
synchronized (sessionIdentifier) {
9898
sessionIdentifier = sessionId;
9999
Map<String, String> keyData = customKeys.getKeys();
100-
metaDataStore.writeUserData(sessionIdentifier, getUserId());
101-
metaDataStore.writeKeyData(sessionIdentifier, keyData);
100+
if (getUserId() != null) {
101+
metaDataStore.writeUserData(sessionId, getUserId());
102+
}
103+
if (!keyData.isEmpty()) {
104+
metaDataStore.writeKeyData(sessionId, keyData);
105+
}
102106
// TODO(themis): adding feature rollouts later
103107
}
104108
}

0 commit comments

Comments
 (0)