File tree Expand file tree Collapse file tree 2 files changed +25
-2
lines changed
main/java/com/mparticle/media Expand file tree Collapse file tree 2 files changed +25
-2
lines changed Original file line number Diff line number Diff line change @@ -85,8 +85,8 @@ class MediaSession protected constructor(builder: Builder) {
8585 var mediaSessionEndTimestamp: Long // Timestamp updated when any event is logged
8686 private set
8787 val mediaTimeSpent: Double
88- get() { // total seconds between media session start and end time
89- return ((this .mediaSessionEndTimestamp - mediaSessionStartTimestamp) / 1000 ).toDouble()
88+ get() { // total seconds between media session start and current timestamp
89+ return ((System .currentTimeMillis() - mediaSessionStartTimestamp) / 1000 ).toDouble()
9090 }
9191 val mediaContentTimeSpent: Double
9292 get() { // total seconds spent playing content
Original file line number Diff line number Diff line change @@ -539,6 +539,29 @@ class MediaSessionTest {
539539 }
540540 }
541541
542+ @Test
543+ fun testMediaTimeSpent () {
544+ val mparticle = MockMParticle ()
545+ val mediaSession = MediaSession .builder(mparticle) {
546+ title = " hello"
547+ mediaContentId = " 123"
548+ duration = 1000
549+ }
550+
551+ // logPlay is triggered to start media content time tracking.
552+ mediaSession.logPlay()
553+ // 1s delay added to account for the time spent on media content.
554+ Thread .sleep(1000 )
555+ mediaSession.logPause()
556+ // Another 1s delay added after logPause is triggered to
557+ // account for time spent on media session (total = 2s).
558+ Thread .sleep(1000 )
559+
560+ // mediaTimeSpent should be = 2s even though the last media event logged was 1s ago
561+ val testTimeSpent = mediaSession.mediaTimeSpent
562+ assertEquals(testTimeSpent, 2.0 )
563+ }
564+
542565 @Test
543566 fun testLogMediaContentEnd () {
544567 val mparticle = MockMParticle ()
You can’t perform that action at this time.
0 commit comments