77import static org .mockito .ArgumentMatchers .any ;
88import static org .mockito .ArgumentMatchers .anyInt ;
99import static org .mockito .ArgumentMatchers .anyString ;
10+ import static org .mockito .ArgumentMatchers .argThat ;
1011import static org .mockito .ArgumentMatchers .eq ;
1112import static org .mockito .Mockito .doReturn ;
1213import static org .mockito .Mockito .mock ;
3031import com .instabug .library .Instabug ;
3132import com .instabug .library .InstabugColorTheme ;
3233import com .instabug .library .InstabugCustomTextPlaceHolder ;
34+ import com .instabug .library .IssueType ;
3335import com .instabug .library .LogLevel ;
3436import com .instabug .library .Platform ;
37+ import com .instabug .library .ReproConfigurations ;
38+ import com .instabug .library .ReproMode ;
3539import com .instabug .library .invocation .InstabugInvocationEvent ;
3640import com .instabug .library .model .NetworkLog ;
3741import com .instabug .library .ui .onboarding .WelcomeMessage ;
@@ -383,6 +387,7 @@ public void testSetDebugEnabled() {
383387 mInstabug .verify (() -> Instabug .setDebugEnabled (isEnabled ));
384388 }
385389
390+ @ SuppressWarnings ("deprecation" )
386391 @ Test
387392 public void testSetReproStepsMode () {
388393 String mode = "ReproStepsMode.enabled" ;
@@ -392,6 +397,28 @@ public void testSetReproStepsMode() {
392397 mInstabug .verify (() -> Instabug .setReproStepsState (State .ENABLED ));
393398 }
394399
400+ @ Test
401+ public void testSetReproStepsConfig () {
402+ String bug = "ReproStepsMode.enabled" ;
403+ String crash = "ReproStepsMode.disabled" ;
404+
405+ ReproConfigurations config = mock (ReproConfigurations .class );
406+ MockedConstruction <ReproConfigurations .Builder > mReproConfigurationsBuilder = mockConstruction (ReproConfigurations .Builder .class , (mock , context ) -> {
407+ when (mock .setIssueMode (anyInt (), anyInt ())).thenReturn (mock );
408+ when (mock .build ()).thenReturn (config );
409+ });
410+
411+ api .setReproStepsConfig (bug , crash );
412+
413+ ReproConfigurations .Builder builder = mReproConfigurationsBuilder .constructed ().get (0 );
414+
415+ verify (builder ).setIssueMode (IssueType .Bug , ReproMode .EnableWithScreenshots );
416+ verify (builder ).setIssueMode (IssueType .Crash , ReproMode .Disable );
417+ verify (builder ).build ();
418+
419+ mInstabug .verify (() -> Instabug .setReproConfigurations (config ));
420+ }
421+
395422 @ Test
396423 public void testReportScreenChange () {
397424 String screenName = "HomeScreen" ;
0 commit comments