Removing description parameter in startLiveLocation method of SDK to avoid translated strings in beacon events

This commit is contained in:
Maxime NATUREL 2022-11-10 15:40:50 +01:00
parent 235b629130
commit 57e90aee83
6 changed files with 8 additions and 22 deletions

View file

@ -47,10 +47,9 @@ interface LocationSharingService {
/** /**
* Starts sharing live location in the room. * Starts sharing live location in the room.
* @param timeoutMillis timeout of the live in milliseconds * @param timeoutMillis timeout of the live in milliseconds
* @param description description of the live for text fallback
* @return the result of the update of the live * @return the result of the update of the live
*/ */
suspend fun startLiveLocationShare(timeoutMillis: Long, description: String): UpdateLiveLocationShareResult suspend fun startLiveLocationShare(timeoutMillis: Long): UpdateLiveLocationShareResult
/** /**
* Stops sharing live location in the room. * Stops sharing live location in the room.

View file

@ -73,7 +73,7 @@ internal class DefaultLocationSharingService @AssistedInject constructor(
return sendLiveLocationTask.execute(params) return sendLiveLocationTask.execute(params)
} }
override suspend fun startLiveLocationShare(timeoutMillis: Long, description: String): UpdateLiveLocationShareResult { override suspend fun startLiveLocationShare(timeoutMillis: Long): UpdateLiveLocationShareResult {
// Ensure to stop any active live before starting a new one // Ensure to stop any active live before starting a new one
if (checkIfExistingActiveLive()) { if (checkIfExistingActiveLive()) {
val result = stopLiveLocationShare() val result = stopLiveLocationShare()
@ -84,7 +84,6 @@ internal class DefaultLocationSharingService @AssistedInject constructor(
val params = StartLiveLocationShareTask.Params( val params = StartLiveLocationShareTask.Params(
roomId = roomId, roomId = roomId,
timeoutMillis = timeoutMillis, timeoutMillis = timeoutMillis,
description = description
) )
return startLiveLocationShareTask.execute(params) return startLiveLocationShareTask.execute(params)
} }

View file

@ -30,7 +30,6 @@ internal interface StartLiveLocationShareTask : Task<StartLiveLocationShareTask.
data class Params( data class Params(
val roomId: String, val roomId: String,
val timeoutMillis: Long, val timeoutMillis: Long,
val description: String,
) )
} }
@ -42,7 +41,7 @@ internal class DefaultStartLiveLocationShareTask @Inject constructor(
override suspend fun execute(params: StartLiveLocationShareTask.Params): UpdateLiveLocationShareResult { override suspend fun execute(params: StartLiveLocationShareTask.Params): UpdateLiveLocationShareResult {
val beaconContent = MessageBeaconInfoContent( val beaconContent = MessageBeaconInfoContent(
body = params.description, body = "Live location",
timeout = params.timeoutMillis, timeout = params.timeoutMillis,
isLive = true, isLive = true,
unstableTimestampMillis = clock.epochMillis() unstableTimestampMillis = clock.epochMillis()

View file

@ -53,7 +53,6 @@ private const val A_LATITUDE = 1.4
private const val A_LONGITUDE = 40.0 private const val A_LONGITUDE = 40.0
private const val AN_UNCERTAINTY = 5.0 private const val AN_UNCERTAINTY = 5.0
private const val A_TIMEOUT = 15_000L private const val A_TIMEOUT = 15_000L
private const val A_DESCRIPTION = "description"
private const val A_REASON = "reason" private const val A_REASON = "reason"
@ExperimentalCoroutinesApi @ExperimentalCoroutinesApi
@ -143,7 +142,7 @@ internal class DefaultLocationSharingServiceTest {
coEvery { stopLiveLocationShareTask.execute(any()) } returns UpdateLiveLocationShareResult.Success("stopped-event-id") coEvery { stopLiveLocationShareTask.execute(any()) } returns UpdateLiveLocationShareResult.Success("stopped-event-id")
coEvery { startLiveLocationShareTask.execute(any()) } returns UpdateLiveLocationShareResult.Success(AN_EVENT_ID) coEvery { startLiveLocationShareTask.execute(any()) } returns UpdateLiveLocationShareResult.Success(AN_EVENT_ID)
val result = defaultLocationSharingService.startLiveLocationShare(A_TIMEOUT, A_DESCRIPTION) val result = defaultLocationSharingService.startLiveLocationShare(A_TIMEOUT)
result shouldBeEqualTo UpdateLiveLocationShareResult.Success(AN_EVENT_ID) result shouldBeEqualTo UpdateLiveLocationShareResult.Success(AN_EVENT_ID)
val expectedCheckExistingParams = CheckIfExistingActiveLiveTask.Params( val expectedCheckExistingParams = CheckIfExistingActiveLiveTask.Params(
@ -157,7 +156,6 @@ internal class DefaultLocationSharingServiceTest {
val expectedStartParams = StartLiveLocationShareTask.Params( val expectedStartParams = StartLiveLocationShareTask.Params(
roomId = A_ROOM_ID, roomId = A_ROOM_ID,
timeoutMillis = A_TIMEOUT, timeoutMillis = A_TIMEOUT,
description = A_DESCRIPTION
) )
coVerify { startLiveLocationShareTask.execute(expectedStartParams) } coVerify { startLiveLocationShareTask.execute(expectedStartParams) }
} }
@ -168,7 +166,7 @@ internal class DefaultLocationSharingServiceTest {
val error = Throwable() val error = Throwable()
coEvery { stopLiveLocationShareTask.execute(any()) } returns UpdateLiveLocationShareResult.Failure(error) coEvery { stopLiveLocationShareTask.execute(any()) } returns UpdateLiveLocationShareResult.Failure(error)
val result = defaultLocationSharingService.startLiveLocationShare(A_TIMEOUT, A_DESCRIPTION) val result = defaultLocationSharingService.startLiveLocationShare(A_TIMEOUT)
result shouldBeEqualTo UpdateLiveLocationShareResult.Failure(error) result shouldBeEqualTo UpdateLiveLocationShareResult.Failure(error)
val expectedCheckExistingParams = CheckIfExistingActiveLiveTask.Params( val expectedCheckExistingParams = CheckIfExistingActiveLiveTask.Params(
@ -186,7 +184,7 @@ internal class DefaultLocationSharingServiceTest {
coEvery { checkIfExistingActiveLiveTask.execute(any()) } returns false coEvery { checkIfExistingActiveLiveTask.execute(any()) } returns false
coEvery { startLiveLocationShareTask.execute(any()) } returns UpdateLiveLocationShareResult.Success(AN_EVENT_ID) coEvery { startLiveLocationShareTask.execute(any()) } returns UpdateLiveLocationShareResult.Success(AN_EVENT_ID)
val result = defaultLocationSharingService.startLiveLocationShare(A_TIMEOUT, A_DESCRIPTION) val result = defaultLocationSharingService.startLiveLocationShare(A_TIMEOUT)
result shouldBeEqualTo UpdateLiveLocationShareResult.Success(AN_EVENT_ID) result shouldBeEqualTo UpdateLiveLocationShareResult.Success(AN_EVENT_ID)
val expectedCheckExistingParams = CheckIfExistingActiveLiveTask.Params( val expectedCheckExistingParams = CheckIfExistingActiveLiveTask.Params(
@ -196,7 +194,6 @@ internal class DefaultLocationSharingServiceTest {
val expectedStartParams = StartLiveLocationShareTask.Params( val expectedStartParams = StartLiveLocationShareTask.Params(
roomId = A_ROOM_ID, roomId = A_ROOM_ID,
timeoutMillis = A_TIMEOUT, timeoutMillis = A_TIMEOUT,
description = A_DESCRIPTION
) )
coVerify { startLiveLocationShareTask.execute(expectedStartParams) } coVerify { startLiveLocationShareTask.execute(expectedStartParams) }
} }

View file

@ -34,7 +34,6 @@ import org.matrix.android.sdk.test.fakes.FakeSendStateTask
private const val A_USER_ID = "user-id" private const val A_USER_ID = "user-id"
private const val A_ROOM_ID = "room-id" private const val A_ROOM_ID = "room-id"
private const val AN_EVENT_ID = "event-id" private const val AN_EVENT_ID = "event-id"
private const val A_DESCRIPTION = "description"
private const val A_TIMEOUT = 15_000L private const val A_TIMEOUT = 15_000L
private const val AN_EPOCH = 1655210176L private const val AN_EPOCH = 1655210176L
@ -60,7 +59,6 @@ internal class DefaultStartLiveLocationShareTaskTest {
val params = StartLiveLocationShareTask.Params( val params = StartLiveLocationShareTask.Params(
roomId = A_ROOM_ID, roomId = A_ROOM_ID,
timeoutMillis = A_TIMEOUT, timeoutMillis = A_TIMEOUT,
description = A_DESCRIPTION
) )
fakeClock.givenEpoch(AN_EPOCH) fakeClock.givenEpoch(AN_EPOCH)
fakeSendStateTask.givenExecuteRetryReturns(AN_EVENT_ID) fakeSendStateTask.givenExecuteRetryReturns(AN_EVENT_ID)
@ -69,7 +67,7 @@ internal class DefaultStartLiveLocationShareTaskTest {
result shouldBeEqualTo UpdateLiveLocationShareResult.Success(AN_EVENT_ID) result shouldBeEqualTo UpdateLiveLocationShareResult.Success(AN_EVENT_ID)
val expectedBeaconContent = MessageBeaconInfoContent( val expectedBeaconContent = MessageBeaconInfoContent(
body = A_DESCRIPTION, body = "Live location",
timeout = params.timeoutMillis, timeout = params.timeoutMillis,
isLive = true, isLive = true,
unstableTimestampMillis = AN_EPOCH unstableTimestampMillis = AN_EPOCH
@ -91,7 +89,6 @@ internal class DefaultStartLiveLocationShareTaskTest {
val params = StartLiveLocationShareTask.Params( val params = StartLiveLocationShareTask.Params(
roomId = A_ROOM_ID, roomId = A_ROOM_ID,
timeoutMillis = A_TIMEOUT, timeoutMillis = A_TIMEOUT,
description = A_DESCRIPTION
) )
fakeClock.givenEpoch(AN_EPOCH) fakeClock.givenEpoch(AN_EPOCH)
fakeSendStateTask.givenExecuteRetryReturns("") fakeSendStateTask.givenExecuteRetryReturns("")
@ -106,7 +103,6 @@ internal class DefaultStartLiveLocationShareTaskTest {
val params = StartLiveLocationShareTask.Params( val params = StartLiveLocationShareTask.Params(
roomId = A_ROOM_ID, roomId = A_ROOM_ID,
timeoutMillis = A_TIMEOUT, timeoutMillis = A_TIMEOUT,
description = A_DESCRIPTION
) )
fakeClock.givenEpoch(AN_EPOCH) fakeClock.givenEpoch(AN_EPOCH)
val error = Throwable() val error = Throwable()

View file

@ -21,7 +21,6 @@ import android.os.IBinder
import android.os.Parcelable import android.os.Parcelable
import androidx.core.app.NotificationManagerCompat import androidx.core.app.NotificationManagerCompat
import dagger.hilt.android.AndroidEntryPoint import dagger.hilt.android.AndroidEntryPoint
import im.vector.app.R
import im.vector.app.core.di.ActiveSessionHolder import im.vector.app.core.di.ActiveSessionHolder
import im.vector.app.core.services.VectorAndroidService import im.vector.app.core.services.VectorAndroidService
import im.vector.app.features.location.LocationData import im.vector.app.features.location.LocationData
@ -125,10 +124,7 @@ class LocationSharingAndroidService : VectorAndroidService(), LocationTracker.Ca
val updateLiveResult = session val updateLiveResult = session
.getRoom(roomArgs.roomId) .getRoom(roomArgs.roomId)
?.locationSharingService() ?.locationSharingService()
?.startLiveLocationShare( ?.startLiveLocationShare(roomArgs.durationMillis)
timeoutMillis = roomArgs.durationMillis,
description = getString(R.string.live_location_description)
)
updateLiveResult updateLiveResult
?.let { result -> ?.let { result ->