From f02b689ce095f803f658ff9d30076c223a808cc0 Mon Sep 17 00:00:00 2001 From: Maxime NATUREL Date: Tue, 4 Oct 2022 18:00:14 +0200 Subject: [PATCH] Adding unit tests for mapper --- .../MyDeviceLastSeenInfoEntityMapper.kt | 1 - .../MyDeviceLastSeenInfoEntityMapperTest.kt | 39 ++++++++++++++++++- 2 files changed, 37 insertions(+), 3 deletions(-) diff --git a/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/crypto/store/db/mapper/MyDeviceLastSeenInfoEntityMapper.kt b/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/crypto/store/db/mapper/MyDeviceLastSeenInfoEntityMapper.kt index e1cb5d78bd..b81883fb38 100644 --- a/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/crypto/store/db/mapper/MyDeviceLastSeenInfoEntityMapper.kt +++ b/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/crypto/store/db/mapper/MyDeviceLastSeenInfoEntityMapper.kt @@ -22,7 +22,6 @@ import javax.inject.Inject internal class MyDeviceLastSeenInfoEntityMapper @Inject constructor() { - // TODO add unit tests fun map(entity: MyDeviceLastSeenInfoEntity): DeviceInfo { return DeviceInfo( deviceId = entity.deviceId, diff --git a/matrix-sdk-android/src/test/java/org/matrix/android/sdk/internal/crypto/store/db/mapper/MyDeviceLastSeenInfoEntityMapperTest.kt b/matrix-sdk-android/src/test/java/org/matrix/android/sdk/internal/crypto/store/db/mapper/MyDeviceLastSeenInfoEntityMapperTest.kt index a27f430edc..8515427e8e 100644 --- a/matrix-sdk-android/src/test/java/org/matrix/android/sdk/internal/crypto/store/db/mapper/MyDeviceLastSeenInfoEntityMapperTest.kt +++ b/matrix-sdk-android/src/test/java/org/matrix/android/sdk/internal/crypto/store/db/mapper/MyDeviceLastSeenInfoEntityMapperTest.kt @@ -25,6 +25,7 @@ private const val A_DEVICE_ID = "device-id" private const val AN_IP_ADDRESS = "ip-address" private const val A_TIMESTAMP = 123L private const val A_DISPLAY_NAME = "display-name" +private const val A_USER_AGENT = "user-agent" class MyDeviceLastSeenInfoEntityMapperTest { @@ -32,21 +33,55 @@ class MyDeviceLastSeenInfoEntityMapperTest { @Test fun `given an entity when mapping to model then all fields are correctly mapped`() { + // Given val entity = MyDeviceLastSeenInfoEntity( deviceId = A_DEVICE_ID, lastSeenIp = AN_IP_ADDRESS, lastSeenTs = A_TIMESTAMP, - displayName = A_DISPLAY_NAME + displayName = A_DISPLAY_NAME, + lastSeenUserAgent = A_USER_AGENT, ) val expectedDeviceInfo = DeviceInfo( deviceId = A_DEVICE_ID, lastSeenIp = AN_IP_ADDRESS, lastSeenTs = A_TIMESTAMP, - displayName = A_DISPLAY_NAME + displayName = A_DISPLAY_NAME, + unstableLastSeenUserAgent = A_USER_AGENT, ) + // When val deviceInfo = myDeviceLastSeenInfoEntityMapper.map(entity) + // Then deviceInfo shouldBeEqualTo expectedDeviceInfo } + + @Test + fun `given a device info when mapping to entity then all fields are correctly mapped`() { + // Given + val deviceInfo = DeviceInfo( + deviceId = A_DEVICE_ID, + lastSeenIp = AN_IP_ADDRESS, + lastSeenTs = A_TIMESTAMP, + displayName = A_DISPLAY_NAME, + unstableLastSeenUserAgent = A_USER_AGENT, + ) + val expectedEntity = MyDeviceLastSeenInfoEntity( + deviceId = A_DEVICE_ID, + lastSeenIp = AN_IP_ADDRESS, + lastSeenTs = A_TIMESTAMP, + displayName = A_DISPLAY_NAME, + lastSeenUserAgent = A_USER_AGENT + ) + + // When + val entity = myDeviceLastSeenInfoEntityMapper.map(deviceInfo) + + // Then + entity.deviceId shouldBeEqualTo expectedEntity.deviceId + entity.lastSeenIp shouldBeEqualTo expectedEntity.lastSeenIp + entity.lastSeenTs shouldBeEqualTo expectedEntity.lastSeenTs + entity.displayName shouldBeEqualTo expectedEntity.displayName + entity.lastSeenUserAgent shouldBeEqualTo expectedEntity.lastSeenUserAgent + } }