Skip to content

Commit 5bc55e1

Browse files
committed
RUM-10363: Apply suggested changes
1 parent d6bd044 commit 5bc55e1

File tree

15 files changed

+39
-34
lines changed

15 files changed

+39
-34
lines changed

dd-sdk-android-core/src/test/kotlin/com/datadog/android/core/DatadogCoreTest.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ import com.datadog.tools.unit.extensions.TestConfigurationExtension
3939
import com.datadog.tools.unit.extensions.config.TestConfiguration
4040
import com.datadog.tools.unit.forge.aThrowable
4141
import com.datadog.tools.unit.forge.exhaustiveAttributes
42-
import com.datadog.tools.unit.stub.StubTimeProvider
42+
import com.datadog.android.internal.tests.stub.StubTimeProvider
4343
import com.google.gson.JsonObject
4444
import fr.xgouchet.elmyr.Forge
4545
import fr.xgouchet.elmyr.annotation.AdvancedForgery

dd-sdk-android-core/src/test/kotlin/com/datadog/android/core/internal/data/upload/RotatingDnsResolverTest.kt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -132,6 +132,8 @@ internal class RotatingDnsResolverTest {
132132
// the real use case where we have a small number of addresses to rotate
133133
fakeInetAddresses = forge.aList(size = forge.anInt(min = 1, max = 3)) { mock() }
134134
whenever(mockDelegate.lookup(fakeHostname)) doReturn fakeInetAddresses
135+
// just wait the TTL time to make sure all threads are concurrently accessing the lookup
136+
Thread.sleep(TEST_TTL_MS.inWholeMilliseconds)
135137

136138
var exceptionThrown: Exception? = null
137139

dd-sdk-android-core/src/test/kotlin/com/datadog/android/core/internal/persistence/file/advanced/MoveDataMigrationOperationTest.kt

Lines changed: 15 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -150,37 +150,39 @@ internal class MoveDataMigrationOperationTest {
150150
}
151151

152152
@Test
153-
fun `M not wait for real delay W run() {move fails once, time provider mocked}`() {
153+
fun `M try 3 times maximum W run() {move always fails}`() {
154154
// Given
155155
whenever(mockFileMover.moveFiles(fakeFromDirectory, fakeToDirectory))
156-
.doReturn(false, true)
156+
.doReturn(false)
157157

158158
// When
159-
val duration = measureTimeMillis {
160-
testedOperation.run()
161-
}
159+
testedOperation.run()
162160

163161
// Then
164-
verify(mockFileMover, times(2)).moveFiles(fakeFromDirectory, fakeToDirectory)
165-
assertThat(duration).isLessThan(100L)
162+
verify(mockFileMover, times(3)).moveFiles(fakeFromDirectory, fakeToDirectory)
166163
}
167164

168165
@Test
169-
fun `M try 3 times maximum W run() {move always fails}`() {
166+
fun `M retry with 500ms delay W run() {move fails once}`() {
170167
// Given
168+
whenever(mockTimeProvider.getDeviceElapsedTimeNs()).thenAnswer { System.nanoTime() }
171169
whenever(mockFileMover.moveFiles(fakeFromDirectory, fakeToDirectory))
172-
.doReturn(false)
170+
.doReturn(false, true)
173171

174172
// When
175-
testedOperation.run()
173+
val duration = measureTimeMillis {
174+
testedOperation.run()
175+
}
176176

177177
// Then
178-
verify(mockFileMover, times(3)).moveFiles(fakeFromDirectory, fakeToDirectory)
178+
verify(mockFileMover, times(2)).moveFiles(fakeFromDirectory, fakeToDirectory)
179+
assertThat(duration).isBetween(500L, 550L)
179180
}
180181

181182
@Test
182-
fun `M not wait for real delay W run() {move always fails, time provider mocked}`() {
183+
fun `M retry with 500ms delay W run() {move always fails}`() {
183184
// Given
185+
whenever(mockTimeProvider.getDeviceElapsedTimeNs()).thenAnswer { System.nanoTime() }
184186
whenever(mockFileMover.moveFiles(fakeFromDirectory, fakeToDirectory))
185187
.doReturn(false)
186188

@@ -191,7 +193,7 @@ internal class MoveDataMigrationOperationTest {
191193

192194
// Then
193195
verify(mockFileMover, times(3)).moveFiles(fakeFromDirectory, fakeToDirectory)
194-
assertThat(duration).isLessThan(100L)
196+
assertThat(duration).isBetween(1000L, 1100L)
195197
}
196198

197199
companion object {

dd-sdk-android-core/src/test/kotlin/com/datadog/android/core/internal/persistence/file/batch/BatchFileOrchestratorTest.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ import com.datadog.android.core.internal.persistence.file.FileOrchestrator
1414
import com.datadog.android.core.internal.persistence.file.FilePersistenceConfig
1515
import com.datadog.android.utils.forge.Configurator
1616
import com.datadog.android.utils.verifyLog
17-
import com.datadog.tools.unit.stub.StubTimeProvider
17+
import com.datadog.android.internal.tests.stub.StubTimeProvider
1818
import fr.xgouchet.elmyr.Forge
1919
import fr.xgouchet.elmyr.annotation.IntForgery
2020
import fr.xgouchet.elmyr.annotation.LongForgery

dd-sdk-android-core/src/test/kotlin/com/datadog/android/error/internal/DatadogExceptionHandlerTest.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ import com.datadog.tools.unit.annotations.TestConfigurationsProvider
3030
import com.datadog.tools.unit.extensions.TestConfigurationExtension
3131
import com.datadog.tools.unit.extensions.config.TestConfiguration
3232
import com.datadog.tools.unit.setStaticValue
33-
import com.datadog.tools.unit.stub.StubTimeProvider
33+
import com.datadog.android.internal.tests.stub.StubTimeProvider
3434
import fr.xgouchet.elmyr.Forge
3535
import fr.xgouchet.elmyr.annotation.Forgery
3636
import fr.xgouchet.elmyr.annotation.LongForgery

tools/unit/src/main/kotlin/com/datadog/tools/unit/stub/StubTimeProvider.kt renamed to dd-sdk-android-internal/src/testFixtures/kotlin/com/datadog/android/internal/tests/stub/StubTimeProvider.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
* Copyright 2016-Present Datadog, Inc.
55
*/
66

7-
package com.datadog.tools.unit.stub
7+
package com.datadog.android.internal.tests.stub
88

99
import com.datadog.android.internal.time.TimeProvider
1010

features/dd-sdk-android-logs/src/test/kotlin/com/datadog/android/log/internal/logger/DatadogLogHandlerTest.kt

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -206,7 +206,7 @@ internal class DatadogLogHandlerTest {
206206
.hasThreadName(Thread.currentThread().name)
207207
.hasStatus(fakeLevel.asLogStatus())
208208
.hasMessage(fakeMessage)
209-
.hasDateAround(fakeTimestamp)
209+
.hasDate(fakeTimestamp.toIsoFormattedTimestamp())
210210
.hasNetworkInfo(fakeDatadogContext.networkInfo)
211211
.hasUserInfo(fakeDatadogContext.userInfo)
212212
.hasBuildId(fakeDatadogContext.appBuildId)
@@ -286,7 +286,7 @@ internal class DatadogLogHandlerTest {
286286
.hasThreadName(Thread.currentThread().name)
287287
.hasStatus(fakeLevel.asLogStatus())
288288
.hasMessage(fakeMessage)
289-
.hasDateAround(fakeTimestamp)
289+
.hasDate(fakeTimestamp.toIsoFormattedTimestamp())
290290
.hasNetworkInfo(fakeDatadogContext.networkInfo)
291291
.hasUserInfo(fakeDatadogContext.userInfo)
292292
.hasAccountInfo(fakeDatadogContext.accountInfo)
@@ -350,7 +350,7 @@ internal class DatadogLogHandlerTest {
350350
.hasThreadName(Thread.currentThread().name)
351351
.hasStatus(fakeLevel.asLogStatus())
352352
.hasMessage(fakeMessage)
353-
.hasDateAround(fakeTimestamp)
353+
.hasDate(fakeTimestamp.toIsoFormattedTimestamp())
354354
.hasNetworkInfo(fakeDatadogContext.networkInfo)
355355
.hasUserInfo(fakeDatadogContext.userInfo)
356356
.hasAccountInfo(fakeDatadogContext.accountInfo)
@@ -674,7 +674,7 @@ internal class DatadogLogHandlerTest {
674674
.hasThreadName(threadName)
675675
.hasStatus(fakeLevel.asLogStatus())
676676
.hasMessage(fakeMessage)
677-
.hasDateAround(fakeTimestamp)
677+
.hasDate(fakeTimestamp.toIsoFormattedTimestamp())
678678
.hasNetworkInfo(fakeDatadogContext.networkInfo)
679679
.hasUserInfo(fakeDatadogContext.userInfo)
680680
.hasAccountInfo(fakeDatadogContext.accountInfo)
@@ -736,7 +736,7 @@ internal class DatadogLogHandlerTest {
736736
.hasThreadName(Thread.currentThread().name)
737737
.hasStatus(fakeLevel.asLogStatus())
738738
.hasMessage(fakeMessage)
739-
.hasDateAround(fakeTimestamp)
739+
.hasDate(fakeTimestamp.toIsoFormattedTimestamp())
740740
.doesNotHaveNetworkInfo()
741741
.hasUserInfo(fakeDatadogContext.userInfo)
742742
.hasAccountInfo(fakeDatadogContext.accountInfo)
@@ -803,7 +803,7 @@ internal class DatadogLogHandlerTest {
803803
.hasThreadName(Thread.currentThread().name)
804804
.hasStatus(fakeLevel.asLogStatus())
805805
.hasMessage(fakeMessage)
806-
.hasDateAround(fakeTimestamp)
806+
.hasDate(fakeTimestamp.toIsoFormattedTimestamp())
807807
.doesNotHaveNetworkInfo()
808808
.hasUserInfo(fakeDatadogContext.userInfo)
809809
.hasAccountInfo(fakeDatadogContext.accountInfo)
@@ -1110,7 +1110,7 @@ internal class DatadogLogHandlerTest {
11101110
.hasLoggerName(fakeLoggerName)
11111111
.hasStatus(fakeLevel.asLogStatus())
11121112
.hasMessage(fakeMessage)
1113-
.hasDateAround(fakeTimestamp)
1113+
.hasDate(fakeTimestamp.toIsoFormattedTimestamp())
11141114
.hasNetworkInfo(fakeDatadogContext.networkInfo)
11151115
.hasUserInfo(fakeDatadogContext.userInfo)
11161116
.hasAccountInfo(fakeDatadogContext.accountInfo)

features/dd-sdk-android-rum/src/test/kotlin/com/datadog/android/rum/internal/domain/scope/RumSessionScopeTest.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ import com.datadog.android.rum.internal.vitals.VitalMonitor
3434
import com.datadog.android.rum.metric.interactiontonextview.LastInteractionIdentifier
3535
import com.datadog.android.rum.metric.networksettled.InitialResourceIdentifier
3636
import com.datadog.android.rum.utils.forge.Configurator
37-
import com.datadog.tools.unit.stub.StubTimeProvider
37+
import com.datadog.android.internal.tests.stub.StubTimeProvider
3838
import fr.xgouchet.elmyr.Forge
3939
import fr.xgouchet.elmyr.annotation.BoolForgery
4040
import fr.xgouchet.elmyr.annotation.FloatForgery

features/dd-sdk-android-rum/src/test/kotlin/com/datadog/android/rum/internal/instrumentation/MainLooperLongTaskStrategyTest.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ import com.datadog.tools.unit.extensions.TestConfigurationExtension
1616
import com.datadog.tools.unit.extensions.config.TestConfiguration
1717
import com.datadog.tools.unit.getStaticValue
1818
import com.datadog.tools.unit.setStaticValue
19-
import com.datadog.tools.unit.stub.StubTimeProvider
19+
import com.datadog.android.internal.tests.stub.StubTimeProvider
2020
import fr.xgouchet.elmyr.Forge
2121
import fr.xgouchet.elmyr.annotation.IntForgery
2222
import fr.xgouchet.elmyr.annotation.LongForgery

features/dd-sdk-android-session-replay/src/test/kotlin/com/datadog/android/sessionreplay/internal/resources/ResourceDataStoreManagerTest.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -73,7 +73,7 @@ internal class ResourceDataStoreManagerTest {
7373
@StringForgery
7474
lateinit var fakeHash: String
7575

76-
@LongForgery(min = 0L)
76+
@LongForgery(min = DATASTORE_EXPIRATION_NS + 1)
7777
var fakeCurrentTimeNs: Long = 0L
7878

7979
@BeforeEach

0 commit comments

Comments
 (0)