Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merge remote-tracking branch 'upstream/master' into dragonwell #845

Merged
merged 165 commits into from
Aug 7, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
165 commits
Select commit Hold shift + click to select a range
6e296a0
8326801: Bump update version for OpenJDK: jdk-11.0.24
GoeLin Feb 27, 2024
5045b54
8214400: Update hotspot application/jcstress jtreg tests wrappers to …
shipilev Feb 27, 2024
fe840ca
8314830: runtime/ErrorHandling/ tests ignore external VM flags
Feb 28, 2024
e5cc20c
8315726: Open source several AWT applet tests
Feb 28, 2024
c681c5a
8316053: Open some swing tests 3
Feb 28, 2024
2dee6fb
8294156: Allow PassFailJFrame.Builder to create test UI
Feb 28, 2024
0e94be6
8307955: Prefer to PTRACE_GETREGSET instead of PTRACE_GETREGS in meth…
zifeihan Feb 28, 2024
f2565a6
8324723: GHA: Upgrade some actions to avoid deprecated Node 16
shipilev Feb 28, 2024
61164ce
8305962: update jcstress to 0.16
shipilev Feb 28, 2024
0ae93db
8323717: Introduce test keyword for tests that need external dependen…
shipilev Feb 29, 2024
b183cd2
8314552: Fix javadoc tests to work with jtreg 7
shipilev Feb 29, 2024
a582e11
8281507: Two javac tests have bad jtreg `@clean` tags
shipilev Mar 4, 2024
f6e6eef
8326938: [11u] JDK-8214908 broke two CTW tests
shipilev Mar 4, 2024
a4a5c7f
8276125: RunThese24H.java SIGSEGV in JfrThreadGroup::thread_group_id
jia-wei-tang Mar 4, 2024
2a78f2f
Merge
GoeLin Mar 6, 2024
6c0a88d
8271142: package help is not displayed for missing X11/extensions/Xra…
lusou-zhangquan Mar 6, 2024
4ef8db8
8318580: "javax/swing/MultiMonitor/MultimonVImage.java failing with E…
Mar 7, 2024
bc14b9f
8326638: Crash in PhaseIdealLoop::remix_address_expressions due to un…
Mar 7, 2024
b425dff
8320303: Allow PassFailJFrame to accept single window creator
Mar 7, 2024
f3069d1
8325972: Add -x to bash for building with LOG=debug
Mar 7, 2024
7b7fbdf
8267938: (sctp) SCTP channel factory methods should check platform su…
theaoqi Mar 7, 2024
a26445d
8261404: Class.getReflectionFactory() is not thread-safe
Delawen Mar 11, 2024
fbac37b
8307083: Open source some drag and drop tests 3
Mar 11, 2024
9b40856
8317287: [macos14] InterJVMGetDropSuccessTest.java: Child VM: abnorma…
Mar 11, 2024
cf9aa9b
8306941: Open source several datatransfer and dnd AWT tests
Mar 11, 2024
eb5ef84
8315677: Open source few swing JFileChooser and other tests
Mar 11, 2024
e6cec8f
8325137: com/sun/management/ThreadMXBean/ThreadCpuTimeArray.java can …
Mar 11, 2024
c8ca55b
8314220: Configurable InlineCacheBuffer size
Mar 11, 2024
29f300e
8322511: [11u] JfrCheckpointThreadClosure::do_thread crashes when fet…
jia-wei-tang Mar 11, 2024
84ff9b3
8320342: Use PassFailJFrame for TruncatedPopupMenuTest.java
Mar 12, 2024
21b88db
8320113: [macos14] : ShapeNotSetSometimes.java fails intermittently o…
Mar 12, 2024
069fbd7
8326891: Prefer RPATH over RUNPATH for $ORIGIN rpaths in internal JDK…
Mar 12, 2024
5cf250f
8292716: Configure should check that jtreg is of the required version
GoeLin Mar 12, 2024
1b3c570
8290203: ProblemList vmTestbase/nsk/jvmti/scenarios/capability/CM03/c…
Mar 12, 2024
a097faa
8320129: "top" command during jtreg failure handler does not display …
Mar 13, 2024
7de6f3f
8314283: Support for NSS tests on aarch64 platforms
Mar 13, 2024
1d102e8
8248667: Need support for building native libraries located in the te…
Mar 13, 2024
0f09d0b
8324238: [macOS] java/awt/Frame/ShapeNotSetSometimes/ShapeNotSetSomet…
Mar 14, 2024
2921ad6
8321489: Update LCMS to 2.16
GoeLin Mar 14, 2024
d1bdb25
8322239: [macos] a11y : java.lang.NullPointerException is thrown when…
GoeLin Mar 14, 2024
7ed3c3e
8320943: Files/probeContentType/Basic.java fails on latest Windows 11…
Mar 15, 2024
cb1b9a6
8292717: Clean up checking of testing requirements in configure
GoeLin Mar 19, 2024
7482298
8325326: [PPC64] Don't relocate in case of allocation failure
TheRealMDoerr Mar 20, 2024
c5ba4b5
8326101: [PPC64] Need to bailout cleanly if creation of stubs fails w…
TheRealMDoerr Mar 20, 2024
ac9d090
8015739: Background of JInternalFrame is located out of JInternalFrame
GoeLin Mar 20, 2024
44825a0
8328524: [x86] StringRepeat.java failure on linux-x86: Could not rese…
GoeLin Mar 20, 2024
a46d444
Merge
GoeLin Mar 20, 2024
6bcb8ac
8248194: Need better support for running SA tests on core files
Mar 21, 2024
50d0503
8314495: Update to use jtreg 7.3.1
GoeLin Mar 21, 2024
12a2863
8315663: Open source misc awt tests
Mar 22, 2024
c782d4c
8312383: Log X509ExtendedKeyManager implementation class name in TLS/…
Mar 25, 2024
8c18317
8270199: Most SA tests are skipped on macosx-aarch64 because all exec…
Mar 25, 2024
f8225a4
8313206: PKCS11 tests silently skip execution
Mar 25, 2024
6aa7216
8324632: Update Zlib Data Compression Library to Version 1.3.1
GoeLin Mar 25, 2024
37cfd48
8328705: GHA: Cross-compilation jobs do not require build JDK
shipilev Mar 25, 2024
b7f78a3
8319436: Proxy.newProxyInstance throws NPE if loader is null and inte…
Mar 25, 2024
d98b460
8317507: C2 compilation fails with "Exceeded _node_regs array"
martinuy Mar 27, 2024
4117953
8273831: PrintServiceLookup spawns 2 threads in the current classload…
Mar 27, 2024
29a08f7
8210988: Improved handling of compiler warnings in the build
Mar 28, 2024
518e797
8326661: sun/java2d/cmm/ColorConvertOp/ColConvTest.java assumes profi…
Mar 28, 2024
741b340
8243010: Test support: Customizable Hex Printer
GoeLin Mar 28, 2024
5d4de36
8286705: GCC 12 reports use-after-free potential bugs
gnu-andrew Mar 29, 2024
979daf5
8264152: javax/net/ssl/DTLS/RespondToRetransmit.java timed out
GoeLin Mar 30, 2024
0073602
8297798: Timeout with DTLSOverDatagram test template
GoeLin Mar 30, 2024
b05024a
8310380: Handle problems in core-related tests on macOS when codesign…
Apr 1, 2024
d27c9ba
8328812: Update and move siphash license
Apr 1, 2024
e922114
8280546: Remove hard-coded 127.0.0.1 loopback address
GoeLin Apr 1, 2024
fa8f02e
8318727: Enable parallelism in vmTestbase/vm/gc/concurrent tests
Apr 2, 2024
8e46e37
8305942: Open source several AWT Focus related tests
Apr 2, 2024
1bbf93c
8305943: Open source few AWT Focus related tests
Apr 2, 2024
910eb0e
8306714: Open source few Swing event and AbstractAction tests
Apr 2, 2024
6808c5c
8320005: Allow loading of shared objects with .a extension on AIX
Apr 3, 2024
9ac4063
8299677: Formatter.format might take a long time to format an integer…
Apr 4, 2024
2f285fd
8323994: gtest runner repeats test name for every single gtest assertion
Apr 5, 2024
eca3696
8310923: Refactor Currency tests to use JUnit
Apr 5, 2024
2e46aad
8268974: GetJREPath() JLI function fails to locate libjava.so if not …
Apr 5, 2024
aa16bfe
8319128: sun/security/pkcs11 tests fail on OL 7.9 aarch64
Apr 9, 2024
21f04a2
8218917: KeyEvent.getModifiers() returns inconsistent values for ALT …
Apr 9, 2024
dd927ed
8305645: System Tray icons get corrupted when Windows primary monitor…
Apr 9, 2024
7d0de46
8061729: Update java/net tests to eliminate dependency on sun.net.www…
Apr 9, 2024
4daa077
8315834: Open source several Swing JSpinner related tests
Apr 9, 2024
4941b84
8316608: Enable parallelism in vmTestbase/gc/vector tests
roy-soumadipta Apr 11, 2024
8e6a71d
8299858: [Metrics] Swap memory limit reported incorrectly when too large
MBaesken Apr 15, 2024
f9a672a
8328540: test javax/swing/JSplitPane/4885629/bug4885629.java fails on…
Apr 16, 2024
06cca19
8324598: use mem_unit when working with sysinfo memory and swap relat…
MBaesken Apr 16, 2024
b39a4d2
8256660: Disable DTLS 1.0
GoeLin Apr 16, 2024
8b8774d
8326529: JFR: Test for CompilerCompile events fails due to time out
roberttoyonaga Apr 16, 2024
e090f5c
Merge
GoeLin Apr 17, 2024
85d891b
8316164: Opensource JMenuBar manual test
Apr 18, 2024
583477f
8316017: Refactor timeout handler in PassFailJFrame
Apr 18, 2024
6499067
8318599: HttpURLConnection cache issues leading to crashes in JGSS w/…
Apr 19, 2024
a33a174
8297449: Update JInternalFrame Metal Border code
Apr 19, 2024
215cf9b
8322783: prioritize /etc/os-release over /etc/SuSE-release in hs_err/…
MBaesken Apr 19, 2024
cc23139
8302512: Update IANA Language Subtag Registry to Version 2023-02-14
Apr 22, 2024
7af75fb
8304761: Update IANA Language Subtag Registry to Version 2023-03-22
Apr 23, 2024
358a35a
8326006: Allow TEST_VM_FLAGLESS to set flagless mode
Apr 23, 2024
00f8277
8316242: Opensource SwingGraphics manual test
Apr 23, 2024
0be4705
8315824: Open source several Swing Text/HTML related tests
Apr 23, 2024
e1662fb
8316154: Opensource JTextArea manual tests
Apr 23, 2024
3f12da5
8315741: Open source few swing JFormattedTextField and JPopupMenu tests
Apr 23, 2024
295a8cd
8163921: HttpURLConnection default Accept header is malformed accordi…
Apr 23, 2024
7491ed4
8302069: javax/management/remote/mandatory/notif/NotifReconnectDeadlo…
Apr 23, 2024
4ca2d02
8305874: Open source AWT Key, Text Event related tests
Apr 23, 2024
f1687ea
8306634: Open source AWT Event related tests
Apr 23, 2024
ff1b975
8315071: Modify TrayIconScalingTest.java, PrintLatinCJKTest.java to u…
Apr 23, 2024
e73d88f
8315609: Open source few more swing text/html tests
Apr 23, 2024
533b458
8293965: Code signing warnings after JDK-8293550
Apr 23, 2024
6cce290
8318854: [macos14] Running any AWT app prints Secure coding warning
Apr 25, 2024
1ea1852
8187759: Background not refreshed when painting over a transparent JF…
Apr 25, 2024
decacb8
8282017: sun/net/www/protocol/https/HttpsURLConnection/B6216082.java …
Apr 25, 2024
dabf4d1
8220202: Simplify/standardize method naming for HtmlTree
Apr 25, 2024
f3d0f2b
8306031: Update IANA Language Subtag Registry to Version 2023-04-13
Apr 26, 2024
7c04756
8159927: Add a test to verify JMOD files created in the images do not…
Apr 28, 2024
ac43e68
8255031: Update java/util/prefs/AddNodeChangeListener.java to report …
Apr 28, 2024
f29aa4d
8324733: [macos14] Problem list tests which fail due to macOS bug des…
Apr 28, 2024
9df5688
8327136: javax/management/remote/mandatory/notif/NotifReconnectDeadlo…
Apr 28, 2024
d8b297f
8306067: Open source AWT Graphics,GridBagLayout related tests
Apr 28, 2024
1e1688a
8294137: Review running times of java.math tests
Apr 28, 2024
f7d0522
8315889: Open source several Swing HTMLDocument related tests
Apr 28, 2024
81f2413
8318809: java/util/concurrent/ConcurrentLinkedQueue/WhiteBox.java sho…
Apr 28, 2024
9363095
8328194: Add a test to check default rendering engine
mrserb Apr 29, 2024
d42634b
8263940: NPE when creating default file system when default file syst…
Apr 29, 2024
137a8b9
8308021: Update IANA Language Subtag Registry to Version 2023-05-11
Apr 29, 2024
cabaf74
8305931: jdk/jfr/jcmd/TestJcmdDumpPathToGCRoots.java failed with "Exp…
roberttoyonaga Apr 30, 2024
1da8fd8
8295343: sun/security/pkcs11 tests fail on Linux RHEL 8.6 and newer
May 6, 2024
3f636f3
8310818: Refactor more Locale tests to use JUnit
May 6, 2024
b7822c3
8331643: [11u]: Bump GHA bootstrap JDK to 11.0.23
RealCLanger May 6, 2024
4202063
8293563: [macos-aarch64] SA core file tests failing with sun.jvm.hots…
RealCLanger May 7, 2024
c542dc9
8325579: Inconsistent behavior in com.sun.jndi.ldap.Connection::creat…
RealCLanger May 7, 2024
b9cb572
8313702: Update IANA Language Subtag Registry to Version 2023-08-02
May 8, 2024
6b225d5
8253980: javax/swing/plaf/synth/7158712/bug7158712.java fails on windows
May 8, 2024
4c81a1c
8283349: Robustness improvements to java/util/prefs/AddNodeChangeList…
May 8, 2024
665e1cd
8269258: java/net/httpclient/ManyRequestsLegacy.java failed with conn…
May 8, 2024
91fe4e6
8331790: [11u] Remove problemlist entries after backport of JDK-8228649
RealCLanger May 10, 2024
4b67c4e
8042380: Test javax/swing/JFileChooser/4524490/bug4524490.java fails …
May 10, 2024
6d3a41f
8316142: Enable parallelism in vmTestbase/nsk/monitoring/stress/lowme…
acmoraru May 10, 2024
4714685
8328825: Google CAInterop test failures
May 13, 2024
270f3cf
8321925: sun/security/mscapi/KeytoolChangeAlias.java fails with "Alia…
May 14, 2024
42f7042
8326201: [S390] Need to bailout cleanly if creation of stubs fails wh…
offamitkumar May 14, 2024
59224f7
8299023: TestPLABResize.java and TestPLABPromotion.java are failing i…
May 16, 2024
2ff4d4e
8318322: Update IANA Language Subtag Registry to Version 2023-10-16
May 16, 2024
ece9b2c
8326521: JFR: CompilerPhase event test fails on windows 32 bit
roberttoyonaga May 16, 2024
2a804f5
8297082: Remove sun/tools/jhsdb/BasicLauncherTest.java from problem list
RealCLanger May 16, 2024
1d6965f
8267796: vmTestbase/nsk/jvmti/scenarios/hotswap/HS201/hs201t002/TestD…
May 17, 2024
b8ee2aa
8326591: New test JmodExcludedFiles.java fails on Windows when --with…
May 21, 2024
b7596f3
8316138: Add GlobalSign 2 TLS root certificates
Delawen May 22, 2024
3533374
8312194: test/hotspot/jtreg/applications/ctw/modules/jdk_crypto_ec.ja…
May 23, 2024
8a489e5
8293887: AArch64 build failure with GCC 12 due to maybe-uninitialized…
May 28, 2024
47fd86c
8273153: Consolidate file_exists into os:file_exists
elifaslan1 May 28, 2024
15c9397
8326643: JDK server does not send a dummy change_cipher_spec record a…
TheRealMDoerr May 31, 2024
d3bd5ae
8331750: [11u] JDK-8259530 is not backported correctly to 11u
Jun 6, 2024
1e3e687
8334441: Mark tests in jdk_security_infra group as manual
Jun 25, 2024
6fb5b8a
8314794: Improve UTF8 String supports
Jun 5, 2024
fcfbef7
8319859: Better symbol storage
Jun 3, 2024
c08f0f6
8325600: Better symbol storage
Jun 19, 2024
31035f0
8320097: Improve Image transformations
Jul 2, 2024
4efcece
8322106: Enhance Pack 200 loading
May 10, 2024
806882b
8323231: Improve array management
martinuy Jan 24, 2024
0533bad
8323390: Enhance mask blit functionality
Jun 11, 2024
3d25b4a
8324559: Improve 2D image handling
Mar 15, 2024
89fd88e
8327413: Enhance compilation efficiency
martinuy May 6, 2024
69ee1d0
8303466: C2: failed: malformed control flow. Limit type made precise …
martinuy Jun 27, 2024
e3e7765
8320548: Improved loop handling
martinuy Jan 30, 2024
ff537af
8335973: [11u] Remove designator DEFAULT_PROMOTED_VERSION_PRE=ea for …
RealCLanger Jul 9, 2024
0d01d2b
Merge remote-tracking branch 'upstream/master' into dragonwell
Accelerator1996 Jul 18, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
6 changes: 2 additions & 4 deletions .github/actions/get-jtreg/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@ runs:

- name: 'Check cache for JTReg'
id: get-cached-jtreg
uses: actions/cache@v3
uses: actions/cache@v4
with:
path: jtreg/installed
key: jtreg-${{ steps.version.outputs.value }}
Expand All @@ -57,9 +57,7 @@ runs:
- name: 'Build JTReg'
run: |
# Build JTReg and move files to the proper locations
jdkPath="$(which java)"
javaHome=${jdkPath%%'/bin'*}
bash make/build.sh --jdk "$javaHome"
bash make/build.sh --jdk "$JAVA_HOME_11_X64"
mkdir ../installed
mv build/images/jtreg/* ../installed
working-directory: jtreg/src
Expand Down
2 changes: 1 addition & 1 deletion .jcheck/conf
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
[general]
project=jdk-updates
jbs=JDK
version=11.0.23
version=11.0.24

[checks]
error=author,committer,reviewers,merge,issues,executable,symlink,message,hg-tag,whitespace
Expand Down
20 changes: 13 additions & 7 deletions doc/testing.html
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
<meta name="generator" content="pandoc" />
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes" />
<title>Testing the JDK</title>
<style type="text/css">
<style>
code{white-space: pre-wrap;}
span.smallcaps{font-variant: small-caps;}
span.underline{text-decoration: underline;}
Expand All @@ -21,7 +21,7 @@
<header id="title-block-header">
<h1 class="title">Testing the JDK</h1>
</header>
<nav id="TOC">
<nav id="TOC" role="doc-toc">
<ul>
<li><a href="#using-the-run-test-framework">Using the run-test framework</a><ul>
<li><a href="#configuration">Configuration</a></li>
Expand All @@ -40,6 +40,7 @@ <h1 class="title">Testing the JDK</h1>
<li><a href="#notes-for-specific-tests">Notes for Specific Tests</a><ul>
<li><a href="#docker-tests">Docker Tests</a></li>
<li><a href="#client-ui-tests">Client UI Tests</a></li>
<li><a href="#pkcs11-tests">PKCS11 Tests</a></li>
</ul></li>
</ul>
</nav>
Expand All @@ -58,7 +59,7 @@ <h3 id="configuration">Configuration</h3>
<p>To be able to run JTReg tests, <code>configure</code> needs to know where to find the JTReg test framework. If it is not picked up automatically by configure, use the <code>--with-jtreg=&lt;path to jtreg home&gt;</code> option to point to the JTReg framework. Note that this option should point to the JTReg home, i.e. the top directory, containing <code>lib/jtreg.jar</code> etc. (An alternative is to set the <code>JT_HOME</code> environment variable to point to the JTReg home before running <code>configure</code>.)</p>
<h2 id="test-selection">Test selection</h2>
<p>All functionality is available using the run-test make target. In this use case, the test or tests to be executed is controlled using the <code>TEST</code> variable. To speed up subsequent test runs with no source code changes, run-test-only can be used instead, which do not depend on the source and test image build.</p>
<p>For some common top-level tests, direct make targets have been generated. This includes all JTReg test groups, the hotspot gtest, and custom tests (if present). This means that <code>make run-test-tier1</code> is equivalent to <code>make run-test TEST=&quot;tier1&quot;</code>, but the latter is more tab-completion friendly. For more complex test runs, the <code>run-test TEST=&quot;x&quot;</code> solution needs to be used.</p>
<p>For some common top-level tests, direct make targets have been generated. This includes all JTReg test groups, the hotspot gtest, and custom tests (if present). This means that <code>make run-test-tier1</code> is equivalent to <code>make run-test TEST="tier1"</code>, but the latter is more tab-completion friendly. For more complex test runs, the <code>run-test TEST="x"</code> solution needs to be used.</p>
<p>The test specifications given in <code>TEST</code> is parsed into fully qualified test descriptors, which clearly and unambigously show which tests will be run. As an example, <code>:tier1</code> will expand to <code>jtreg:$(TOPDIR)/test/hotspot/jtreg:tier1 jtreg:$(TOPDIR)/test/jdk:tier1 jtreg:$(TOPDIR)/test/langtools:tier1 jtreg:$(TOPDIR)/test/nashorn:tier1 jtreg:$(TOPDIR)/test/jaxp:tier1</code>. You can always submit a list of fully qualified test descriptors in the <code>TEST</code> variable if you want to shortcut the parser.</p>
<h3 id="common-test-groups">Common Test Groups</h3>
<p>Ideally, all tests are run for every change but this may not be practical due to the limited testing resources, the scope of the change, etc.</p>
Expand Down Expand Up @@ -101,8 +102,8 @@ <h2 id="test-results-and-summary">Test results and summary</h2>
<p>Additional work data is stored in <code>build/$BUILD/test-support/$TEST_ID</code>. For some frameworks, this directory might contain information that is useful in determining the cause of a failed test.</p>
<h2 id="test-suite-control">Test suite control</h2>
<p>It is possible to control various aspects of the test suites using make control variables.</p>
<p>These variables use a keyword=value approach to allow multiple values to be set. So, for instance, <code>JTREG=&quot;JOBS=1;TIMEOUT=8&quot;</code> will set the JTReg concurrency level to 1 and the timeout factor to 8. This is equivalent to setting <code>JTREG_JOBS=1 JTREG_TIMEOUT=8</code>, but using the keyword format means that the <code>JTREG</code> variable is parsed and verified for correctness, so <code>JTREG=&quot;TMIEOUT=8&quot;</code> would give an error, while <code>JTREG_TMIEOUT=8</code> would just pass unnoticed.</p>
<p>To separate multiple keyword=value pairs, use <code>;</code> (semicolon). Since the shell normally eats <code>;</code>, the recommended usage is to write the assignment inside qoutes, e.g. <code>JTREG=&quot;...;...&quot;</code>. This will also make sure spaces are preserved, as in <code>JTREG=&quot;VM_OPTIONS=-XshowSettings -Xlog:gc+ref=debug&quot;</code>.</p>
<p>These variables use a keyword=value approach to allow multiple values to be set. So, for instance, <code>JTREG="JOBS=1;TIMEOUT=8"</code> will set the JTReg concurrency level to 1 and the timeout factor to 8. This is equivalent to setting <code>JTREG_JOBS=1 JTREG_TIMEOUT=8</code>, but using the keyword format means that the <code>JTREG</code> variable is parsed and verified for correctness, so <code>JTREG="TMIEOUT=8"</code> would give an error, while <code>JTREG_TMIEOUT=8</code> would just pass unnoticed.</p>
<p>To separate multiple keyword=value pairs, use <code>;</code> (semicolon). Since the shell normally eats <code>;</code>, the recommended usage is to write the assignment inside qoutes, e.g. <code>JTREG="...;..."</code>. This will also make sure spaces are preserved, as in <code>JTREG="VM_OPTIONS=-XshowSettings -Xlog:gc+ref=debug"</code>.</p>
<p>(Other ways are possible, e.g. using backslash: <code>JTREG=JOBS=1\;TIMEOUT=8</code>. Also, as a special technique, the string <code>%20</code> will be replaced with space for certain options, e.g. <code>JTREG=VM_OPTIONS=-XshowSettings%20-Xlog:gc+ref=debug</code>. This can be useful if you have layers of scripts and have trouble getting proper quoting of command line arguments through.)</p>
<p>As far as possible, the names of the keywords have been standardized between test suites.</p>
<h3 id="general-keywords-test_opts">General keywords (TEST_OPTS)</h3>
Expand Down Expand Up @@ -152,7 +153,7 @@ <h4 id="run_problem_lists">RUN_PROBLEM_LISTS</h4>
<p>Set to <code>true</code> or <code>false</code>. If <code>true</code>, JTReg will use <code>-match:</code> option, otherwise <code>-exclude:</code> will be used. Default is <code>false</code>.</p>
<h4 id="options">OPTIONS</h4>
<p>Additional options to the JTReg test framework.</p>
<p>Use <code>JTREG=&quot;OPTIONS=--help all&quot;</code> to see all available JTReg options.</p>
<p>Use <code>JTREG="OPTIONS=--help all"</code> to see all available JTReg options.</p>
<h4 id="java_options-1">JAVA_OPTIONS</h4>
<p>Additional Java options to JTReg (<code>-javaoption</code>).</p>
<h4 id="vm_options-1">VM_OPTIONS</h4>
Expand All @@ -169,7 +170,7 @@ <h4 id="repeat">REPEAT</h4>
<p>Default is 1. Set to -1 to repeat indefinitely. This can be especially useful combined with <code>OPTIONS=--gtest_break_on_failure</code> to reproduce an intermittent problem.</p>
<h4 id="options-1">OPTIONS</h4>
<p>Additional options to the Gtest test framework.</p>
<p>Use <code>GTEST=&quot;OPTIONS=--help&quot;</code> to see all available Gtest options.</p>
<p>Use <code>GTEST="OPTIONS=--help"</code> to see all available Gtest options.</p>
<h4 id="aot_modules-2">AOT_MODULES</h4>
<p>Generate AOT modules before testing for the specified module, or set of modules. If multiple modules are specified, they should be separated by space (or, to help avoid quoting issues, the special value <code>%20</code>).</p>
<h2 id="notes-for-specific-tests">Notes for Specific Tests</h2>
Expand All @@ -178,6 +179,11 @@ <h3 id="docker-tests">Docker Tests</h3>
<pre><code>$ make run-test TEST=&quot;jtreg:test/hotspot/jtreg/containers/docker&quot;</code></pre>
<p>To run these tests correctly, additional parameters for the correct docker image are required on Ubuntu 18.04 by using <code>JAVA_OPTIONS</code>.</p>
<pre><code>$ make run-test TEST=&quot;jtreg:test/hotspot/jtreg/containers/docker&quot; JTREG=&quot;JAVA_OPTIONS=-Djdk.test.docker.image.name=ubuntu -Djdk.test.docker.image.version=latest&quot;</code></pre>
<h3 id="pkcs11-tests">PKCS11 Tests</h3>
<p>It is highly recommended to use the latest NSS version when running PKCS11 tests. Improper NSS version may lead to unexpected failures which are hard to diagnose. For example, sun/security/pkcs11/Secmod/AddTrustedCert.java may fail on Ubuntu 18.04 with the default NSS version in the system. To run these tests correctly, the system property <<code>jdk.test.lib.artifacts.&lt;NAME&gt;</code> is required on Ubuntu 18.04 to specify the alternative NSS lib directories.The<code>&lt;NAME&gt;</code> component should be replaced with the name element of the appropriate <code>@Artifact</code> class. (See<code>test/jdk/sun/security/pkcs11/PKCS11Test.java</code>)</p>
<p>For example:</p>
<pre><code>$ make test TEST=&quot;jtreg:sun/security/pkcs11/Secmod/AddTrustedCert.java&quot; JTREG=&quot;JAVA_OPTIONS=-Djdk.test.lib.artifacts.nsslib-linux_aarch64=/path/to/NSS-libs&quot</code></pre>
<p>For more notes about the PKCS11 tests, please refer to test/jdk/sun/security/pkcs11/README.</p>
<h3 id="client-ui-tests">Client UI Tests</h3>
<p>Some Client UI tests use key sequences which may be reserved by the operating system. Usually that causes the test failure. So it is highly recommended to disable system key shortcuts prior testing. The steps to access and disable system key shortcuts for various platforms are provided below.</p>
<h4 id="macos">MacOS</h4>
Expand Down
16 changes: 16 additions & 0 deletions doc/testing.md
Original file line number Diff line number Diff line change
Expand Up @@ -370,6 +370,22 @@ required on Ubuntu 18.04 by using `JAVA_OPTIONS`.

$ make run-test TEST="jtreg:test/hotspot/jtreg/containers/docker" JTREG="JAVA_OPTIONS=-Djdk.test.docker.image.name=ubuntu -Djdk.test.docker.image.version=latest"

### PKCS11 Tests

It is highly recommended to use the latest NSS version when running PKCS11 tests.
Improper NSS version may lead to unexpected failures which are hard to diagnose.
For example, sun/security/pkcs11/Secmod/AddTrustedCert.java may fail on Ubuntu
18.04 with the default NSS version in the system.
To run these tests correctly, the system property `jdk.test.lib.artifacts.<NAME>` is required on
Ubuntu 18.04 to specify the alternative NSS lib directory. The `<NAME>`
component should be replaced with the name element of the appropriate
`@Artifact` class. (See `test/jdk/sun/security/pkcs11/PKCS11Test.java`)
For example:

$ make test TEST="jtreg:sun/security/pkcs11/Secmod/AddTrustedCert.java" JTREG="JAVA_OPTIONS=-Djdk.test.lib.artifacts.nsslib-linux_aarch64=/path/to/NSS-libs"

For more notes about the PKCS11 tests, please refer to test/jdk/sun/security/pkcs11/README.

### Client UI Tests

Some Client UI tests use key sequences which may be reserved by the operating
Expand Down
22 changes: 20 additions & 2 deletions make/Main.gmk
Original file line number Diff line number Diff line change
Expand Up @@ -554,6 +554,18 @@ test-image-jdk-jtreg-native:
+($(CD) $(TOPDIR)/make/test && $(MAKE) $(MAKE_ARGS) -f JtregNativeJdk.gmk \
test-image-jdk-jtreg-native)

# Native files needed by the testlib
build-test-lib-native:
+($(CD) $(TOPDIR)/make/test && $(MAKE) $(MAKE_ARGS) -f BuildTestLibNative.gmk \
build-test-lib-native)

test-image-lib-native:
+($(CD) $(TOPDIR)/make/test && $(MAKE) $(MAKE_ARGS) -f BuildTestLibNative.gmk \
test-image-lib-native)

# Native files needed when testing the testlib itself
# ... build-test-libtest-jtreg-native etc not yet backported

build-test-hotspot-jtreg-graal:
+($(CD) $(TOPDIR)/make/test && $(MAKE) $(MAKE_ARGS) -f JtregGraalUnit.gmk \
build-test-hotspot-jtreg-graal)
Expand Down Expand Up @@ -596,7 +608,8 @@ endif

ALL_TARGETS += prepare-test-image build-test-hotspot-jtreg-native \
test-image-hotspot-jtreg-native build-test-jdk-jtreg-native \
test-image-jdk-jtreg-native build-test-lib build-test-failure-handler \
test-image-jdk-jtreg-native build-test-lib-native test-image-lib-native \
build-test-lib build-test-failure-handler \
test-failure-handler test-image-failure-handler test-image-hotspot-gtest \
test-image-hotspot-jtreg-graal build-test-hotspot-jtreg-graal \
run-test exploded-run-test
Expand Down Expand Up @@ -976,12 +989,16 @@ else

build-test-jdk-jtreg-native: buildtools-jdk java.base-libs

build-test-lib-native: buildtools-jdk java.base-libs

build-test-hotspot-jtreg-graal: exploded-image-optimize

test-image-hotspot-jtreg-native: build-test-hotspot-jtreg-native

test-image-jdk-jtreg-native: build-test-jdk-jtreg-native

test-image-lib-native: build-test-lib-native

test-image-hotspot-jtreg-graal: build-test-hotspot-jtreg-graal

test-image-hotspot-gtest: hotspot
Expand Down Expand Up @@ -1141,7 +1158,8 @@ endif

# This target builds the test image
test-image: prepare-test-image \
test-image-jdk-jtreg-native test-image-failure-handler \
test-image-jdk-jtreg-native test-image-lib-native \
test-image-failure-handler \
test-image-demos-jdk $(JVM_TEST_IMAGE_TARGETS)

################################################################################
Expand Down
14 changes: 7 additions & 7 deletions make/autoconf/configure.ac
Original file line number Diff line number Diff line change
Expand Up @@ -183,15 +183,14 @@ TOOLCHAIN_POST_DETECTION
TOOLCHAIN_SETUP_BUILD_COMPILERS
TOOLCHAIN_MISC_CHECKS

# Setup the JTReg Regression Test Harness.
TOOLCHAIN_SETUP_JTREG

# Setup Jib dependency tool
TOOLCHAIN_SETUP_JIB

# After toolchain setup, we need to process some flags to be able to continue.
FLAGS_POST_TOOLCHAIN

# Setup the tools needed to test the JDK (JTReg Regression Test Harness
# and the Jib dependency tool).
LIB_TESTS_SETUP_JTREG
LIB_TESTS_SETUP_JIB

# Now we can test some aspects on the target using configure macros.
PLATFORM_SETUP_OPENJDK_TARGET_BITS
PLATFORM_SETUP_OPENJDK_TARGET_ENDIANNESS
Expand Down Expand Up @@ -233,7 +232,8 @@ HOTSPOT_SETUP_JVM_FEATURES
###############################################################################

JDKOPT_DETECT_INTREE_EC
JDKOPT_ENABLE_DISABLE_FAILURE_HANDLER
LIB_TESTS_ENABLE_DISABLE_FAILURE_HANDLER

JDKOPT_ENABLE_DISABLE_GENERATE_CLASSLIST
JDKOPT_EXCLUDE_TRANSLATIONS
JDKOPT_ENABLE_DISABLE_MANPAGES
Expand Down
Loading
Loading