@@ -445,6 +445,25 @@ void waitForCompletion() {
445
445
}
446
446
}
447
447
448
+ private void verifyUserAgentString (String userAgentString ) {
449
+ final String fxVersion = System .getProperty ("javafx.runtime.version" );
450
+ final String numericStr = fxVersion .split ("[^0-9]" )[0 ];
451
+ final String fxVersionString = "JavaFX/" + numericStr ;
452
+ assertTrue ("UserAgentString does not contain " + fxVersionString , userAgentString .contains (fxVersionString ));
453
+
454
+ File webkitLicense = new File ("src/main/legal/webkit.md" );
455
+ assertTrue ("File does not exist: " + webkitLicense , webkitLicense .exists ());
456
+
457
+ try (final BufferedReader licenseText = new BufferedReader (new FileReader (webkitLicense ))) {
458
+ final String firstLine = licenseText .readLine ().trim ();
459
+ final String webkitVersion = firstLine .substring (firstLine .lastIndexOf (" " ) + 2 );
460
+ assertTrue ("webkitVersion should not be empty" , webkitVersion .length () > 0 );
461
+ assertTrue ("UserAgentString does not contain: " + webkitVersion , userAgentString .contains (webkitVersion ));
462
+ } catch (IOException ex ){
463
+ throw new AssertionError (ex );
464
+ }
465
+ }
466
+
448
467
/**
449
468
* @test
450
469
* @bug 8193207
@@ -453,22 +472,24 @@ void waitForCompletion() {
453
472
@ Test public void testUserAgentString () {
454
473
submit (() -> {
455
474
final String userAgentString = getEngine ().getUserAgent ();
456
- final String fxVersion = System .getProperty ("javafx.runtime.version" );
457
- final String numericStr = fxVersion .split ("[^0-9]" )[0 ];
458
- final String fxVersionString = "JavaFX/" + numericStr ;
459
- assertTrue ("UserAgentString does not contain " + fxVersionString , userAgentString .contains (fxVersionString ));
460
-
461
- File webkitLicense = new File ("src/main/legal/webkit.md" );
462
- assertTrue ("File does not exist: " + webkitLicense , webkitLicense .exists ());
463
-
464
- try (final BufferedReader licenseText = new BufferedReader (new FileReader (webkitLicense ))) {
465
- final String firstLine = licenseText .readLine ().trim ();
466
- final String webkitVersion = firstLine .substring (firstLine .lastIndexOf (" " ) + 2 );
467
- assertTrue ("webkitVersion should not be empty" , webkitVersion .length () > 0 );
468
- assertTrue ("UserAgentString does not contain: " + webkitVersion , userAgentString .contains (webkitVersion ));
469
- } catch (IOException ex ){
470
- throw new AssertionError (ex );
471
- }
475
+ verifyUserAgentString (userAgentString );
476
+ });
477
+ }
478
+
479
+ /**
480
+ * @test
481
+ * @bug 8275138
482
+ * Check UserAgentString from JavaScript for javafx runtime version and webkit version
483
+ */
484
+ @ Test public void testUserAgentStringJS () {
485
+ final WebEngine webEngine = createWebEngine ();
486
+ submit (() -> {
487
+ final JSObject window = (JSObject ) webEngine .executeScript ("window" );
488
+ assertNotNull (window );
489
+ webEngine .executeScript ("var userAgent = navigator.userAgent" );
490
+ String userAgentString = (String )window .getMember ("userAgent" );
491
+ assertNotNull (userAgentString );
492
+ verifyUserAgentString (userAgentString );
472
493
});
473
494
}
474
495
0 commit comments