Skip to content

Commit d7fc1a1

Browse files
author
sm-deployer
authored
Merge pull request #500 from salemove/feature/MOB-1957_hide_bubble_on_call_visualizer_end
2 parents 82153f1 + efef505 commit d7fc1a1

14 files changed

+168
-21
lines changed

widgetssdk/src/main/java/com/glia/widgets/call/CallController.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@
2525
import com.glia.widgets.core.engagement.domain.GliaEndEngagementUseCase;
2626
import com.glia.widgets.core.engagement.domain.GliaOnEngagementEndUseCase;
2727
import com.glia.widgets.core.engagement.domain.GliaOnEngagementUseCase;
28-
import com.glia.widgets.core.engagement.domain.IsCallVisualizerUseCase;
28+
import com.glia.widgets.core.callvisualizer.domain.IsCallVisualizerUseCase;
2929
import com.glia.widgets.core.engagement.domain.ShouldShowMediaEngagementViewUseCase;
3030
import com.glia.widgets.core.engagement.domain.model.EngagementStateEvent;
3131
import com.glia.widgets.core.engagement.domain.model.EngagementStateEventVisitor;

widgetssdk/src/main/java/com/glia/widgets/callvisualizer/CallVisualizerRepository.kt

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
package com.glia.widgets.callvisualizer
22

3+
import com.glia.androidsdk.Engagement
34
import com.glia.androidsdk.GliaException
45
import com.glia.androidsdk.IncomingEngagementRequest
56
import com.glia.androidsdk.comms.Media
@@ -27,6 +28,10 @@ class CallVisualizerRepository(private val gliaCore: GliaCore) {
2728
Logger.d(TAG, "CallVisualizerRepository initialized")
2829
}
2930

31+
fun listenForEngagementEnd(engagement: OmnibrowseEngagement, engagementEnded: Runnable) {
32+
engagement.on(Engagement.Events.END, engagementEnded)
33+
}
34+
3035
fun addVisitorContext(visitorContext: String) {
3136
this.visitorContext = visitorContext;
3237
}
@@ -69,4 +74,13 @@ class CallVisualizerRepository(private val gliaCore: GliaCore) {
6974
}
7075
}
7176
}
77+
78+
fun unregisterEngagementEndListener(engagementEnded: Runnable) {
79+
gliaCore.currentEngagement.ifPresent { engagement: Engagement ->
80+
engagement.off(
81+
Engagement.Events.END,
82+
engagementEnded
83+
)
84+
}
85+
}
7286
}

widgetssdk/src/main/java/com/glia/widgets/callvisualizer/controller/CallVisualizerController.kt

Lines changed: 36 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,25 +1,43 @@
11
package com.glia.widgets.callvisualizer.controller
22

33
import com.glia.androidsdk.comms.MediaUpgradeOffer
4+
import com.glia.androidsdk.engagement.Survey
5+
import com.glia.androidsdk.omnibrowse.OmnibrowseEngagement
46
import com.glia.widgets.callvisualizer.CallVisualizerCallback
57
import com.glia.widgets.callvisualizer.CallVisualizerRepository
68
import com.glia.widgets.callvisualizer.domain.IsCallOrChatScreenActiveUseCase
9+
import com.glia.widgets.core.callvisualizer.domain.GliaOnCallVisualizerEndUseCase
10+
import com.glia.widgets.core.callvisualizer.domain.GliaOnCallVisualizerUseCase
711
import com.glia.widgets.core.dialog.DialogController
12+
import com.glia.widgets.core.survey.OnSurveyListener
13+
import com.glia.widgets.core.survey.domain.GliaSurveyUseCase
14+
import com.glia.widgets.di.Dependencies
815
import com.glia.widgets.helper.Logger
916
import com.glia.widgets.helper.Utils
1017

1118
class CallVisualizerController(
1219
private val callVisualizerRepository: CallVisualizerRepository,
1320
private val dialogController: DialogController,
14-
val isCallOrChatScreenActiveUseCase: IsCallOrChatScreenActiveUseCase
15-
) : CallVisualizerCallback {
21+
val isCallOrChatScreenActiveUseCase: IsCallOrChatScreenActiveUseCase,
22+
private val surveyUseCase: GliaSurveyUseCase,
23+
private val onCallVisualizerUseCase: GliaOnCallVisualizerUseCase,
24+
private val onCallVisualizerEndUseCase: GliaOnCallVisualizerEndUseCase
25+
) : CallVisualizerCallback,
26+
GliaOnCallVisualizerUseCase.Listener,
27+
GliaOnCallVisualizerEndUseCase.Listener, OnSurveyListener {
1628
companion object {
1729
private val TAG = CallVisualizerController::class.java.simpleName
1830
}
1931

2032
fun init() {
2133
Logger.d(TAG, "CallVisualizerController initialized")
2234
callVisualizerRepository.init(this)
35+
registerCallVisualizerListeners()
36+
}
37+
38+
private fun registerCallVisualizerListeners() {
39+
onCallVisualizerUseCase.execute(this) // newEngagementLoaded() callback
40+
onCallVisualizerEndUseCase.execute(this) // engagementEnded callback
2341
}
2442

2543
override fun onOneWayMediaUpgradeRequest(mediaUpgradeOffer: MediaUpgradeOffer, operatorName: String) {
@@ -31,4 +49,20 @@ class CallVisualizerController(
3149
val formattedOperatorName = Utils.formatOperatorName(operatorName)
3250
dialogController.showUpgradeVideoDialog1Way(mediaUpgradeOffer, formattedOperatorName)
3351
}
52+
53+
override fun onSurveyLoaded(survey: Survey?) {
54+
// Call Visualizer doesn't suppose to have a Survey,
55+
// so just destroying controllers
56+
surveyUseCase.unregisterListener(this)
57+
Dependencies.getControllerFactory().destroyControllers()
58+
}
59+
60+
override fun newEngagementLoaded(engagement: OmnibrowseEngagement) {
61+
surveyUseCase.registerListener(this)
62+
}
63+
64+
override fun engagementEnded() {
65+
// Beware, this function is called before onSurveyLoaded()
66+
// No need to do anything currently
67+
}
3468
}
Lines changed: 67 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,67 @@
1+
package com.glia.widgets.core.callvisualizer.domain
2+
3+
import com.glia.androidsdk.Engagement
4+
import com.glia.androidsdk.omnibrowse.OmnibrowseEngagement
5+
import com.glia.widgets.callvisualizer.CallVisualizerRepository
6+
import com.glia.widgets.core.notification.domain.RemoveCallNotificationUseCase
7+
import com.glia.widgets.core.notification.domain.RemoveScreenSharingNotificationUseCase
8+
import com.glia.widgets.core.operator.GliaOperatorMediaRepository
9+
import com.glia.widgets.core.survey.GliaSurveyRepository
10+
import com.glia.widgets.core.visitor.GliaVisitorMediaRepository
11+
12+
class GliaOnCallVisualizerEndUseCase(
13+
private val repository: CallVisualizerRepository,
14+
private val operatorMediaRepository: GliaOperatorMediaRepository,
15+
private val callVisualizerUseCase: GliaOnCallVisualizerUseCase,
16+
private val removeCallNotificationUseCase: RemoveCallNotificationUseCase,
17+
private val removeScreenSharingNotificationUseCase: RemoveScreenSharingNotificationUseCase,
18+
private val surveyRepository: GliaSurveyRepository,
19+
private val gliaVisitorMediaRepository: GliaVisitorMediaRepository
20+
) : GliaOnCallVisualizerUseCase.Listener {
21+
22+
interface Listener {
23+
fun engagementEnded()
24+
}
25+
26+
inner class EndCallVisualizerRunnable(private val engagement: Engagement) : Runnable {
27+
override fun run() {
28+
surveyRepository.onEngagementEnded(engagement)
29+
listener?.engagementEnded()
30+
operatorMediaRepository.stopListening(engagement)
31+
removeScreenSharingNotificationUseCase.execute()
32+
removeCallNotificationUseCase.execute()
33+
gliaVisitorMediaRepository.onEngagementEnded(engagement)
34+
}
35+
}
36+
37+
private var listener: Listener? = null
38+
39+
private var endCallVisualizerRunnable: Runnable? = null
40+
41+
fun execute(listener: Listener) {
42+
if (this.listener === listener) {
43+
// Already listening
44+
return
45+
}
46+
this.listener = listener
47+
callVisualizerUseCase.execute(this)
48+
}
49+
50+
fun unregisterListener(listener: Listener) {
51+
if (this.listener == listener) {
52+
endCallVisualizerRunnable?.let { repository.unregisterEngagementEndListener(it) }
53+
callVisualizerUseCase.unregisterListener(this)
54+
endCallVisualizerRunnable = null
55+
this.listener = null
56+
}
57+
}
58+
59+
override fun newEngagementLoaded(engagement: OmnibrowseEngagement) {
60+
EndCallVisualizerRunnable(engagement).let {
61+
repository.listenForEngagementEnd(
62+
engagement,
63+
it
64+
)
65+
}
66+
}
67+
}

widgetssdk/src/main/java/com/glia/widgets/core/engagement/domain/GliaOnCallVisualizerUseCase.kt renamed to widgetssdk/src/main/java/com/glia/widgets/core/callvisualizer/domain/GliaOnCallVisualizerUseCase.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package com.glia.widgets.core.engagement.domain
1+
package com.glia.widgets.core.callvisualizer.domain
22

33
import com.glia.androidsdk.omnibrowse.OmnibrowseEngagement
44
import com.glia.widgets.core.engagement.GliaEngagementRepository
@@ -21,7 +21,7 @@ class GliaOnCallVisualizerUseCase(
2121

2222
private var listener: Listener? = null
2323
fun execute(listener: Listener) {
24-
if (this.listener === listener) {
24+
if (this.listener == listener) {
2525
// Already listening
2626
return
2727
}

widgetssdk/src/main/java/com/glia/widgets/core/engagement/domain/IsCallVisualizerUseCase.kt renamed to widgetssdk/src/main/java/com/glia/widgets/core/callvisualizer/domain/IsCallVisualizerUseCase.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package com.glia.widgets.core.engagement.domain
1+
package com.glia.widgets.core.callvisualizer.domain
22

33
import com.glia.widgets.core.engagement.GliaEngagementRepository
44

widgetssdk/src/main/java/com/glia/widgets/core/chathead/domain/ResolveChatHeadNavigationUseCase.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
import com.glia.widgets.core.engagement.GliaEngagementRepository;
44
import com.glia.widgets.core.engagement.GliaEngagementTypeRepository;
5-
import com.glia.widgets.core.engagement.domain.IsCallVisualizerUseCase;
5+
import com.glia.widgets.core.callvisualizer.domain.IsCallVisualizerUseCase;
66
import com.glia.widgets.core.queue.GliaQueueRepository;
77
import com.glia.widgets.core.queue.model.GliaQueueingState;
88
import com.glia.widgets.di.Dependencies;

widgetssdk/src/main/java/com/glia/widgets/core/notification/domain/ShowVideoCallNotificationUseCase.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
package com.glia.widgets.core.notification.domain;
22

3-
import com.glia.widgets.core.engagement.domain.IsCallVisualizerUseCase;
3+
import com.glia.widgets.core.callvisualizer.domain.IsCallVisualizerUseCase;
44
import com.glia.widgets.core.notification.device.INotificationManager;
55

66
public class ShowVideoCallNotificationUseCase {

widgetssdk/src/main/java/com/glia/widgets/di/ControllerFactory.java

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -239,6 +239,7 @@ public ServiceChatHeadController getChatHeadController() {
239239
useCaseFactory.createOnEngagementUseCase(),
240240
useCaseFactory.createOnCallVisualizerUseCase(),
241241
useCaseFactory.createOnEngagementEndUseCase(),
242+
useCaseFactory.createOnCallVisualizerEndUseCase(),
242243
messagesNotSeenHandler,
243244
useCaseFactory.createAddVisitorMediaStateListenerUseCase(),
244245
useCaseFactory.createRemoveVisitorMediaStateListenerUseCase(),
@@ -278,7 +279,10 @@ public CallVisualizerController getCallVisualizerController() {
278279
callVisualizerController = new CallVisualizerController(
279280
repositoryFactory.getCallVisualizerRepository(),
280281
dialogController,
281-
useCaseFactory.createIsCallOrChatScreenActiveUseCase()
282+
useCaseFactory.createIsCallOrChatScreenActiveUseCase(),
283+
useCaseFactory.getGliaSurveyUseCase(),
284+
useCaseFactory.createOnCallVisualizerUseCase(),
285+
useCaseFactory.createOnCallVisualizerEndUseCase()
282286
);
283287
}
284288
return callVisualizerController;

widgetssdk/src/main/java/com/glia/widgets/di/UseCaseFactory.java

Lines changed: 15 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@
1818
import com.glia.widgets.chat.domain.CustomCardShouldShowUseCase;
1919
import com.glia.widgets.chat.domain.SiteInfoUseCase;
2020
import com.glia.widgets.chat.domain.UpdateFromCallScreenUseCase;
21+
import com.glia.widgets.core.callvisualizer.domain.GliaOnCallVisualizerEndUseCase;
2122
import com.glia.widgets.core.callvisualizer.domain.VisitorCodeViewBuilderUseCase;
2223
import com.glia.widgets.core.chathead.ChatHeadManager;
2324
import com.glia.widgets.core.chathead.domain.IsDisplayApplicationChatHeadUseCase;
@@ -33,10 +34,10 @@
3334
import com.glia.widgets.core.engagement.domain.GetOperatorFlowableUseCase;
3435
import com.glia.widgets.core.engagement.domain.GetOperatorUseCase;
3536
import com.glia.widgets.core.engagement.domain.GliaEndEngagementUseCase;
36-
import com.glia.widgets.core.engagement.domain.GliaOnCallVisualizerUseCase;
37+
import com.glia.widgets.core.callvisualizer.domain.GliaOnCallVisualizerUseCase;
3738
import com.glia.widgets.core.engagement.domain.GliaOnEngagementEndUseCase;
3839
import com.glia.widgets.core.engagement.domain.GliaOnEngagementUseCase;
39-
import com.glia.widgets.core.engagement.domain.IsCallVisualizerUseCase;
40+
import com.glia.widgets.core.callvisualizer.domain.IsCallVisualizerUseCase;
4041
import com.glia.widgets.core.engagement.domain.MapOperatorUseCase;
4142
import com.glia.widgets.core.mediaupgradeoffer.domain.AddMediaUpgradeOfferCallbackUseCase;
4243
import com.glia.widgets.core.mediaupgradeoffer.domain.RemoveMediaUpgradeOfferCallbackUseCase;
@@ -482,4 +483,16 @@ public GliaOnCallVisualizerUseCase createOnCallVisualizerUseCase() {
482483
repositoryFactory.getGliaEngagementStateRepository()
483484
);
484485
}
486+
487+
public GliaOnCallVisualizerEndUseCase createOnCallVisualizerEndUseCase() {
488+
return new GliaOnCallVisualizerEndUseCase(
489+
repositoryFactory.getCallVisualizerRepository(),
490+
repositoryFactory.getGliaOperatorMediaRepository(),
491+
createOnCallVisualizerUseCase(),
492+
removeCallNotificationUseCase,
493+
removeScreenSharingNotificationUseCase,
494+
repositoryFactory.getGliaSurveyRepository(),
495+
repositoryFactory.getGliaVisitorMediaRepository()
496+
);
497+
}
485498
}

widgetssdk/src/main/java/com/glia/widgets/view/head/ChatHeadView.kt

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ import com.glia.widgets.call.Configuration
1919
import com.glia.widgets.callvisualizer.EndScreenSharingActivity
2020
import com.glia.widgets.chat.ChatActivity
2121
import com.glia.widgets.core.configuration.GliaSdkConfiguration
22-
import com.glia.widgets.core.engagement.domain.IsCallVisualizerUseCase
22+
import com.glia.widgets.core.callvisualizer.domain.IsCallVisualizerUseCase
2323
import com.glia.widgets.databinding.ChatHeadViewBinding
2424
import com.glia.widgets.di.Dependencies
2525
import com.glia.widgets.view.configuration.ChatHeadConfiguration
@@ -151,9 +151,11 @@ class ChatHeadView @JvmOverloads constructor(
151151
userImageTheme?.placeholderColor.also(binding.placeholderView::applyImageColorTheme)
152152
}
153153

154-
override fun navigateToChat() = context.startActivity(
155-
getNavigationIntent(context, ChatActivity::class.java, sdkConfiguration!!)
156-
)
154+
override fun navigateToChat() {
155+
sdkConfiguration?.let {
156+
context.startActivity(getNavigationIntent(context, ChatActivity::class.java, it))
157+
}
158+
}
157159

158160
override fun navigateToCall() {
159161
val activityConfig =

widgetssdk/src/main/java/com/glia/widgets/view/head/controller/ApplicationChatHeadLayoutController.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
import com.glia.widgets.core.engagement.domain.GetOperatorFlowableUseCase;
99
import com.glia.widgets.core.engagement.domain.GliaOnEngagementEndUseCase;
1010
import com.glia.widgets.core.engagement.domain.GliaOnEngagementUseCase;
11-
import com.glia.widgets.core.engagement.domain.IsCallVisualizerUseCase;
11+
import com.glia.widgets.core.callvisualizer.domain.IsCallVisualizerUseCase;
1212
import com.glia.widgets.core.visitor.VisitorMediaUpdatesListener;
1313
import com.glia.widgets.core.visitor.domain.AddVisitorMediaStateListenerUseCase;
1414
import com.glia.widgets.core.visitor.domain.RemoveVisitorMediaStateListenerUseCase;

widgetssdk/src/main/java/com/glia/widgets/view/head/controller/ServiceChatHeadController.java

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -9,18 +9,18 @@
99
import com.glia.androidsdk.omnibrowse.OmnibrowseEngagement;
1010
import com.glia.androidsdk.omnicore.OmnicoreEngagement;
1111
import com.glia.widgets.UiTheme;
12+
import com.glia.widgets.core.callvisualizer.domain.GliaOnCallVisualizerEndUseCase;
1213
import com.glia.widgets.core.chathead.domain.ResolveChatHeadNavigationUseCase;
1314
import com.glia.widgets.core.chathead.domain.ToggleChatHeadServiceUseCase;
1415
import com.glia.widgets.core.configuration.GliaSdkConfiguration;
1516
import com.glia.widgets.core.engagement.domain.GetOperatorFlowableUseCase;
16-
import com.glia.widgets.core.engagement.domain.GliaOnCallVisualizerUseCase;
17+
import com.glia.widgets.core.callvisualizer.domain.GliaOnCallVisualizerUseCase;
1718
import com.glia.widgets.core.engagement.domain.GliaOnEngagementEndUseCase;
1819
import com.glia.widgets.core.engagement.domain.GliaOnEngagementUseCase;
19-
import com.glia.widgets.core.engagement.domain.IsCallVisualizerUseCase;
20+
import com.glia.widgets.core.callvisualizer.domain.IsCallVisualizerUseCase;
2021
import com.glia.widgets.core.visitor.VisitorMediaUpdatesListener;
2122
import com.glia.widgets.core.visitor.domain.AddVisitorMediaStateListenerUseCase;
2223
import com.glia.widgets.core.visitor.domain.RemoveVisitorMediaStateListenerUseCase;
23-
import com.glia.widgets.di.Dependencies;
2424
import com.glia.widgets.helper.Logger;
2525
import com.glia.widgets.helper.Utils;
2626
import com.glia.widgets.view.MessagesNotSeenHandler;
@@ -40,6 +40,7 @@ public class ServiceChatHeadController
4040
private final GliaOnEngagementUseCase gliaOnEngagementUseCase;
4141
private final GliaOnCallVisualizerUseCase gliaOnCallVisualizerUseCase;
4242
private final GliaOnEngagementEndUseCase gliaOnEngagementEndUseCase;
43+
private final GliaOnCallVisualizerEndUseCase gliaOnCallVisualizerEndUseCase;
4344
private final MessagesNotSeenHandler messagesNotSeenHandler;
4445
private final AddVisitorMediaStateListenerUseCase addVisitorMediaStateListenerUseCase;
4546
private final RemoveVisitorMediaStateListenerUseCase removeVisitorMediaStateListenerUseCase;
@@ -75,6 +76,7 @@ public ServiceChatHeadController(
7576
GliaOnEngagementUseCase gliaOnEngagementUseCase,
7677
GliaOnCallVisualizerUseCase gliaOnCallVisualizerUseCase,
7778
GliaOnEngagementEndUseCase onEngagementEndUseCase,
79+
GliaOnCallVisualizerEndUseCase onCallVisualizerEndUseCase,
7880
MessagesNotSeenHandler messagesNotSeenHandler,
7981
AddVisitorMediaStateListenerUseCase addVisitorMediaStateListenerUseCase,
8082
RemoveVisitorMediaStateListenerUseCase removeVisitorMediaStateListenerUseCase,
@@ -87,6 +89,7 @@ public ServiceChatHeadController(
8789
this.gliaOnEngagementUseCase = gliaOnEngagementUseCase;
8890
this.gliaOnCallVisualizerUseCase = gliaOnCallVisualizerUseCase;
8991
this.gliaOnEngagementEndUseCase = onEngagementEndUseCase;
92+
this.gliaOnCallVisualizerEndUseCase = onCallVisualizerEndUseCase;
9093
this.messagesNotSeenHandler = messagesNotSeenHandler;
9194
this.chatHeadPosition = chatHeadPosition;
9295
this.addVisitorMediaStateListenerUseCase = addVisitorMediaStateListenerUseCase;
@@ -213,7 +216,8 @@ private void newEngagementLoaded(OmnibrowseEngagement engagement) {
213216
throwable -> Logger.e(TAG, "getOperatorFlowableUseCase error: " + throwable.getMessage())
214217
);
215218
engagementDisposables.add(operatorDisposable);
216-
gliaOnEngagementEndUseCase.execute(this::engagementEnded);
219+
// To recieve callback to engagementEnded() after Call Visualizer engagement ends
220+
gliaOnCallVisualizerEndUseCase.execute(this::engagementEnded);
217221
updateChatHeadView();
218222
}
219223

widgetssdk/src/test/java/com/glia/widgets/callvisualizer/ActivityWatcherForCallVisualizerTest.kt

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,10 +10,13 @@ import com.glia.widgets.call.CallActivity
1010
import com.glia.widgets.callvisualizer.controller.CallVisualizerController
1111
import com.glia.widgets.callvisualizer.domain.IsCallOrChatScreenActiveUseCase
1212
import com.glia.widgets.chat.ChatActivity
13+
import com.glia.widgets.core.callvisualizer.domain.GliaOnCallVisualizerEndUseCase
14+
import com.glia.widgets.core.callvisualizer.domain.GliaOnCallVisualizerUseCase
1315
import com.glia.widgets.core.dialog.Dialog
1416
import com.glia.widgets.core.dialog.DialogController
1517
import com.glia.widgets.core.dialog.model.DialogState
1618
import com.glia.widgets.core.screensharing.ScreenSharingController
19+
import com.glia.widgets.core.survey.domain.GliaSurveyUseCase
1720
import com.glia.widgets.view.head.controller.ServiceChatHeadController
1821
import junit.framework.TestCase.assertNull
1922
import org.junit.Assert.assertNotNull
@@ -33,10 +36,16 @@ internal class ActivityWatcherForCallVisualizerTest {
3336
fun setUp() {
3437
val callVisualizerRepository = mock(CallVisualizerRepository::class.java)
3538
val dialogController = mock(DialogController::class.java)
39+
val surveyUseCase = mock(GliaSurveyUseCase::class.java)
40+
val onCallVisualizerUseCase = mock(GliaOnCallVisualizerUseCase::class.java)
41+
val onCallVisualizerEndUseCase = mock(GliaOnCallVisualizerEndUseCase::class.java)
3642
val callVisualizerController = CallVisualizerController(
3743
callVisualizerRepository,
3844
dialogController,
39-
IsCallOrChatScreenActiveUseCase()
45+
IsCallOrChatScreenActiveUseCase(),
46+
surveyUseCase,
47+
onCallVisualizerUseCase,
48+
onCallVisualizerEndUseCase
4049
)
4150
val serviceChatHeadController = mock(ServiceChatHeadController::class.java)
4251
val screenSharingController = mock(ScreenSharingController::class.java)

0 commit comments

Comments
 (0)