File tree Expand file tree Collapse file tree
src/org/openqa/selenium/chromium
test/org/openqa/selenium/chrome Expand file tree Collapse file tree Original file line number Diff line number Diff line change 2424import java .io .File ;
2525import java .io .IOException ;
2626import java .nio .file .Files ;
27- import java .util .ArrayList ;
28- import java .util .Arrays ;
29- import java .util .Base64 ;
30- import java .util .Collections ;
31- import java .util .HashMap ;
32- import java .util .List ;
33- import java .util .Map ;
34- import java .util .Set ;
35- import java .util .TreeMap ;
27+ import java .util .*;
3628import java .util .stream .Stream ;
3729import org .openqa .selenium .Capabilities ;
3830import org .openqa .selenium .SessionNotCreatedException ;
@@ -320,10 +312,13 @@ protected void mergeInPlace(Capabilities capabilities) {
320312 }
321313 addExtensions (options .extensionFiles );
322314 addEncodedExtensions (options .extensions );
323- if ( options . binary != null ) {
324- setBinary (options .binary );
325- }
315+
316+ Optional . ofNullable (options .binary ). ifPresent ( this :: setBinary );
317+
326318 options .experimentalOptions .forEach (this ::setExperimentalOption );
319+
320+ Optional .ofNullable (options .androidOptions )
321+ .ifPresent (opts -> opts .forEach (this ::setAndroidCapability ));
327322 }
328323 }
329324
Original file line number Diff line number Diff line change 2323import static org .assertj .core .api .InstanceOfAssertFactories .LIST ;
2424import static org .assertj .core .api .InstanceOfAssertFactories .MAP ;
2525import static org .assertj .core .api .InstanceOfAssertFactories .STRING ;
26+ import static org .junit .jupiter .api .Assertions .assertEquals ;
2627import static org .openqa .selenium .chromium .ChromiumDriverLogLevel .OFF ;
2728import static org .openqa .selenium .chromium .ChromiumDriverLogLevel .SEVERE ;
2829import static org .openqa .selenium .remote .CapabilityType .ACCEPT_INSECURE_CERTS ;
@@ -382,4 +383,18 @@ void shouldBeAbleToSetAnAndroidOption() {
382383 .extractingByKey ("androidActivity" )
383384 .isEqualTo ("com.cheese.nom" );
384385 }
386+
387+ @ Test
388+ void shouldBeAbleToMergeAnAndroidOption () {
389+ var original = new ChromeOptions ();
390+ original .setAndroidActivity ("co_activity" );
391+ original .setAndroidPackage ("co_package" );
392+ original .setExperimentalOption ("experimental" , "co_experimental" );
393+ original .addArguments ("--co_argument" );
394+
395+ var caps = new MutableCapabilities ();
396+ var merged = original .merge (caps );
397+
398+ assertEquals (original .asMap (), merged .asMap ());
399+ }
385400}
You can’t perform that action at this time.
0 commit comments