diff options
| author | Jonatan Rhodin <jonatan.rhodin@mullvad.net> | 2024-06-19 23:36:20 +0200 |
|---|---|---|
| committer | Jonatan Rhodin <jonatan.rhodin@mullvad.net> | 2024-06-24 11:22:18 +0200 |
| commit | 25777abfc70d8080d13e6cbcb1d57ab26e30f66b (patch) | |
| tree | 922d7545fc45144be0f7c0d0849528e791ad6e63 /android/app/src | |
| parent | 116e3aa5334e1ed006d5bfc566df7061a68ecd51 (diff) | |
| download | mullvadvpn-25777abfc70d8080d13e6cbcb1d57ab26e30f66b.tar.xz mullvadvpn-25777abfc70d8080d13e6cbcb1d57ab26e30f66b.zip | |
Add unit test for changelog parsing
Diffstat (limited to 'android/app/src')
| -rw-r--r-- | android/app/src/test/kotlin/net/mullvad/mullvadvpn/repository/ChangelogRepositoryTest.kt | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/android/app/src/test/kotlin/net/mullvad/mullvadvpn/repository/ChangelogRepositoryTest.kt b/android/app/src/test/kotlin/net/mullvad/mullvadvpn/repository/ChangelogRepositoryTest.kt new file mode 100644 index 0000000000..4df5c101a7 --- /dev/null +++ b/android/app/src/test/kotlin/net/mullvad/mullvadvpn/repository/ChangelogRepositoryTest.kt @@ -0,0 +1,38 @@ +package net.mullvad.mullvadvpn.repository + +import android.content.SharedPreferences +import io.mockk.every +import io.mockk.mockk +import net.mullvad.mullvadvpn.lib.common.test.assertLists +import net.mullvad.mullvadvpn.util.IChangelogDataProvider +import org.junit.jupiter.api.Test + +class ChangelogRepositoryTest { + + private val mockedPreferences: SharedPreferences = mockk() + private val mockDataProvider: IChangelogDataProvider = mockk() + + private val changelogRepository = + ChangelogRepository(preferences = mockedPreferences, dataProvider = mockDataProvider) + + @Test + fun `when given a changelog text should return a list of correctly formatted strings`() { + // Arrange + val testChangelog = + "- Added very nice new feature with a very long descriptive message\n" + + " about how it works...\n" + + "- Fixed super bad leak." + val expectedResult = + listOf( + "Added very nice new feature with a very long descriptive message about how it works...", + "Fixed super bad leak." + ) + every { mockDataProvider.getChangelog() } returns testChangelog + + // Act + val result = changelogRepository.getLastVersionChanges() + + // Assert + assertLists(expectedResult, result) + } +} |
