1 #  Copyright (c) 2013, 2022, Oracle and/or its affiliates. All rights reserved.
  2 #  DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  3 #
  4 #  This code is free software; you can redistribute it and/or modify it
  5 #  under the terms of the GNU General Public License version 2 only, as
  6 #  published by the Free Software Foundation.
  7 #
  8 #  This code is distributed in the hope that it will be useful, but WITHOUT
  9 #  ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
 10 #  FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
 11 #  version 2 for more details (a copy is included in the LICENSE file that
 12 #  accompanied this code).
 13 #
 14 #  You should have received a copy of the GNU General Public License version
 15 #  2 along with this work; if not, write to the Free Software Foundation,
 16 #  Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
 17 #
 18 #  Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
 19 #  or visit www.oracle.com if you need additional information or have any
 20 #  questions.
 21 #
 22 
 23 ###############################################################################
 24 #
 25 # Tiered testing definitions
 26 #
 27 
 28 # When adding tests to tier1, make sure they end up in one of the tier1_partX groups
 29 tier1 = \
 30     :tier1_part1 \
 31     :tier1_part2 \
 32     :tier1_part3
 33 
 34 tier1_part1 = \
 35     :jdk_lang
 36 
 37 tier1_part2 = \
 38     :jdk_util
 39 
 40 tier1_part3 = \
 41     :jdk_math \
 42     :jdk_svc_sanity \
 43     :jdk_foreign \
 44     java/nio/Buffer \
 45     com/sun/crypto/provider/Cipher \
 46     sun/nio/cs/ISO8859x.java
 47 
 48 # When adding tests to tier2, make sure they end up in one of the tier2_partX groups
 49 tier2 = \
 50     :tier2_part1 \
 51     :tier2_part2 \
 52     :tier2_part3
 53 
 54 # com/sun/crypto/provider/Cipher is in tier1 because of JDK-8132855
 55 tier2_part1 = \
 56     :jdk_security \
 57     -com/sun/crypto/provider/Cipher
 58 
 59 # sun/nio/cs/ISO8859x.java and java/nio/Buffer are in tier1 because of JDK-8132854
 60 tier2_part2 = \
 61     :core_tools \
 62     :jdk_io \
 63     :jdk_nio \
 64     -java/nio/Buffer \
 65     -sun/nio/cs/ISO8859x.java \
 66     :jdk_other \
 67     :jdk_text \
 68     :jdk_time
 69 
 70 tier2_part3 = \
 71     :jdk_net
 72 
 73 tier3 = \
 74     :build \
 75     :jdk_vector \
 76     :jdk_rmi \
 77     :jdk_svc \
 78    -:jdk_svc_sanity \
 79    -:svc_tools
 80 
 81 # Everything not in other tiers
 82 tier4 = \
 83     / \
 84    -:tier1 \
 85    -:tier2 \
 86    -:tier3
 87 
 88 ###############################################################################
 89 #
 90 # Other test definitions; generally smaller granularity than tiers
 91 #
 92 
 93 # Build source checking
 94 build = \
 95     build
 96 
 97 # java.lang package and VM runtime support
 98 jdk_lang = \
 99     java/lang \
100     -java/lang/management \
101     -java/lang/instrument \
102     sun/invoke \
103     sun/misc \
104     sun/reflect \
105     jdk/internal/reflect \
106     jdk/lambda \
107     jdk/internal/loader \
108     jdk/internal/misc \
109     jdk/internal/ref \
110     jdk/internal/jimage \
111     jdk/internal/math \
112     jdk/modules \
113     jdk/internal/vm \
114     jdk/modules \
115     jni/nullCaller \
116     valhalla
117 
118 # valhalla lworld tests
119 jdk_valhalla = \
120     java/lang/invoke \
121     valhalla \
122     java/lang/instrument/valhalla
123 
124 
125 # All of the java.util package
126 jdk_util = \
127     :jdk_util_other \
128     :jdk_collections \
129     :jdk_concurrent \
130     :jdk_stream
131 
132 # All util components not part of some other util category
133 jdk_util_other = \
134     java/util \
135     sun/util \
136     -:jdk_collections \
137     -:jdk_concurrent \
138     -:jdk_stream
139 
140 # All collections, core and concurrent
141 jdk_collections = \
142     :jdk_collections_core \
143     :jdk_concurrent
144 
145 # java.util.concurrent
146 # Includes concurrent collections plus other stuff
147 # Maintained by JSR-166 EG (Doug Lea et al)
148 jdk_concurrent = \
149     java/util/concurrent
150 
151 # Java Collections Framework core classes
152 jdk_collections_core = \
153     java/util/AbstractCollection \
154     java/util/AbstractList \
155     java/util/AbstractMap \
156     java/util/AbstractSequentialList \
157     java/util/ArrayDeque \
158     java/util/ArrayList \
159     java/util/Arrays \
160     java/util/BitSet \
161     java/util/Collection \
162     java/util/Collections \
163     java/util/Comparator \
164     java/util/Deque \
165     java/util/EnumMap \
166     java/util/EnumSet \
167     java/util/HashMap \
168     java/util/HashSet \
169     java/util/Hashtable \
170     java/util/IdentityHashMap \
171     java/util/Iterator \
172     java/util/LinkedHashMap \
173     java/util/LinkedHashSet \
174     java/util/LinkedList \
175     java/util/List \
176     java/util/Map \
177     java/util/NavigableMap \
178     java/util/PriorityQueue \
179     java/util/TimSort \
180     java/util/TreeMap \
181     java/util/Vector \
182     java/util/WeakHashMap
183 
184 # java.util.stream (JSR-335)
185 jdk_stream = \
186     java/util/Optional \
187     java/util/function \
188     java/util/stream
189 
190 jdk_math = \
191     java/math
192 
193 jdk_io = \
194     java/io
195 
196 jdk_nio = \
197     java/nio \
198     sun/nio \
199     jdk/nio
200 
201 jdk_net = \
202     java/net \
203     com/sun/net/httpserver \
204     sun/net \
205     jdk/net
206 
207 jdk_time = \
208     java/time
209 
210 jdk_rmi = \
211     java/rmi \
212     sun/rmi
213 
214 jdk_security1 = \
215     java/security
216 
217 jdk_security2 = \
218     javax/crypto \
219     javax/xml/crypto \
220     com/sun/crypto
221 
222 jdk_security3 = \
223     javax/security  \
224     -javax/security/auth/kerberos \
225     com/sun/jarsigner \
226     com/sun/security \
227     -com/sun/security/jgss \
228     com/sun/org/apache/xml/internal/security \
229     jdk/security \
230     sun/security \
231     -sun/security/krb5 \
232     -sun/security/jgss \
233     javax/net
234 
235 jdk_security4 = \
236     com/sun/security/jgss \
237     javax/security/auth/kerberos \
238     sun/security/krb5 \
239     sun/security/jgss
240 
241 jdk_security = \
242     :jdk_security1 \
243     :jdk_security2 \
244     :jdk_security3 \
245     :jdk_security4
246 
247 jdk_security_infra = \
248     security/infra/java/security/cert/CertPathValidator/certification
249 
250 jdk_text = \
251     java/text \
252     sun/text
253 
254 jdk_management = \
255     java/lang/management \
256     com/sun/management \
257     sun/management \
258     jdk/internal/agent
259 
260 jdk_instrument = \
261     java/lang/instrument
262 
263 jdk_jmx = \
264     javax/management \
265     com/sun/jmx
266 
267 jdk_jdi = \
268     com/sun/jdi
269 
270 jdk_native_sanity = \
271     native_sanity
272 
273 # java launcher specific tests.
274 jdk_launcher = \
275     tools/launcher \
276     sun/tools
277 
278 jdk_loom = \
279     com/sun/management/HotSpotDiagnosticMXBean/ \
280     java/lang/Thread \
281     java/lang/ThreadGroup \
282     java/lang/management/ThreadMXBean \
283     java/util/concurrent \
284     java/net/vthread \
285     java/nio/channels/vthread \
286     jdk/incubator/concurrent \
287     jdk/internal/misc/ThreadFlock \
288     jdk/internal/vm/Continuation \
289     jdk/jfr/threading
290 
291 #
292 # Tool (and tool API) tests are split into core and svc groups
293 #
294 core_tools = \
295     tools \
296     jdk/internal/jrtfs \
297     sun/tools/jrunscript
298 
299 svc_tools = \
300     com/sun/tools/attach \
301     sun/tools \
302     -sun/tools/jrunscript \
303     sun/jvmstat
304 
305 jdk_tools = \
306     :core_tools \
307     :svc_tools
308 
309 jdk_jfr = \
310     jdk/jfr
311 
312 #
313 # Catch-all for other areas with a small number of tests
314 #
315 jdk_other = \
316     java/sql \
317     javax/sql \
318     javax/transaction \
319     javax/rmi \
320     javax/naming \
321     javax/script \
322     javax/smartcardio \
323     javax/xml \
324     -javax/xml/crypto \
325     jdk/dynalink \
326     jdk/incubator/concurrent \
327     jdk/internal/jline \
328     com/sun/jndi \
329     lib/testlibrary
330 
331 #
332 # SCTP is its own group as it is highly sensitive to kernel/network config
333 #
334 jdk_sctp = \
335     com/sun/nio/sctp
336 
337 
338 #
339 # core group to run all core area tests
340 #
341 jdk_core = \
342     :jdk_lang \
343     :jdk_util \
344     :jdk_math \
345     :jdk_io \
346     :jdk_nio \
347     :jdk_net \
348     :jdk_rmi \
349     :jdk_time \
350     :jdk_security \
351     :jdk_text \
352     :core_tools \
353     :jdk_other
354 
355 #
356 # svc group to run all serviceability area tests
357 #
358 jdk_svc = \
359     :jdk_management \
360     :jdk_instrument \
361     :jdk_jmx \
362     :jdk_jdi \
363     :jdk_jfr \
364     :svc_tools
365 
366 jdk_foreign = \
367     java/foreign \
368     -java/foreign/TestMatrix.java
369 
370 jdk_vector = \
371     jdk/incubator/vector
372 
373 #############################
374 
375 #
376 # Client area groups
377 #
378 
379 jdk_awt = \
380     java/awt \
381     com/apple/eawt \
382     com/apple/laf \
383     sun/awt
384 
385 jdk_2d = \
386     javax/print \
387     sun/java2d
388 
389 jdk_beans = \
390     java/beans
391 
392 jdk_swing = \
393     javax/swing \
394     com/sun/java/swing
395 
396 jdk_sound = \
397     javax/sound
398 
399 jdk_imageio = \
400     javax/imageio
401 
402 jdk_accessibility = \
403     javax/accessibility \
404     com/sun/java/accessibility
405 
406 jfc_demo = \
407      demo/jfc
408 
409 jdk_editpad = \
410      jdk/editpad
411 
412 jdk_desktop = \
413     :jdk_desktop_part1 \
414     :jdk_desktop_part2 \
415     :jdk_desktop_part3
416 
417 jdk_desktop_part1 = \
418     :jdk_client_sanity \
419     :jdk_swing \
420     :jdk_2d \
421     :jdk_sound \
422     :jdk_imageio \
423     :jdk_editpad \
424     :jfc_demo \
425     :jdk_accessibility \
426     :jdk_beans
427 
428 jdk_desktop_part2 = \
429     :jdk_awt \
430     -java/awt/Component \
431     -java/awt/Modal \
432     -java/awt/datatransfer \
433     -java/awt/Window
434 
435 jdk_desktop_part3 = \
436     java/awt/Component \
437     java/awt/Modal \
438     java/awt/datatransfer \
439     java/awt/Window
440 
441 # SwingSet3 tests.
442 jdk_client_sanity = \
443     sanity/client/SwingSet
444 
445 # This test group represents a subset of tests which are expected to
446 # exercise most of the most commonly used code in Swing applications.
447 # New failures in this area may be a problem.
448 jdk_swing_core = \
449      :jdk_client_sanity \
450      javax/swing
451 
452 # The most commonly used printing APIs are included here along with swing core.
453 jdk_desktop_core = \
454     :jdk_swing_core \
455     java/awt/print
456 
457 ###############################################################################
458 #
459 # Serviceability sanity groups
460 #
461 # These groups specify a subset of Serviceability tests that are supposed to
462 # guard against breakage of Serviceability features by other component teams.
463 
464 jdk_svc_sanity = \
465     :jdk_management_sanity \
466     :jdk_instrument_sanity \
467     :jdk_jmx_sanity \
468     :jdk_jdi_sanity \
469     :jdk_jfr_sanity \
470     :svc_tools_sanity
471 
472 jdk_management_sanity =
473 
474 jdk_instrument_sanity =
475 
476 jdk_jmx_sanity =
477 
478 jdk_jdi_sanity = \
479     com/sun/jdi/AcceptTimeout.java \
480     com/sun/jdi/AccessSpecifierTest.java \
481     com/sun/jdi/AfterThreadDeathTest.java \
482     com/sun/jdi/ArrayRangeTest.java \
483     com/sun/jdi/ConstantPoolInfo.java \
484     com/sun/jdi/CountFilterTest.java \
485     com/sun/jdi/EarlyReturnNegativeTest.java \
486     com/sun/jdi/EarlyReturnTest.java \
487     com/sun/jdi/FieldWatchpoints.java \
488     com/sun/jdi/FramesTest.java \
489     com/sun/jdi/InstanceFilter.java \
490     com/sun/jdi/InterfaceMethodsTest.java \
491     com/sun/jdi/InvokeTest.java \
492     com/sun/jdi/LocalVariableEqual.java \
493     com/sun/jdi/LocationTest.java \
494     com/sun/jdi/ModificationWatchpoints.java \
495     com/sun/jdi/MonitorEventTest.java \
496     com/sun/jdi/MonitorFrameInfo.java \
497     com/sun/jdi/NullThreadGroupNameTest.java \
498     com/sun/jdi/PopAndStepTest.java \
499     com/sun/jdi/PopAsynchronousTest.java \
500     com/sun/jdi/ProcessAttachTest.java \
501     com/sun/jdi/ReferrersTest.java \
502     com/sun/jdi/RequestReflectionTest.java \
503     com/sun/jdi/ResumeOneThreadTest.java \
504     com/sun/jdi/RunToExit.java \
505     com/sun/jdi/SourceNameFilterTest.java \
506     com/sun/jdi/SuspendAfterDeath.java \
507     com/sun/jdi/VarargsTest.java \
508     com/sun/jdi/Vars.java \
509     com/sun/jdi/redefineMethod/RedefineTest.java \
510     com/sun/jdi/sde/MangleTest.java \
511     com/sun/jdi/sde/TemperatureTableTest.java
512 
513 jdk_jfr_sanity = \
514     jdk/jfr/api/recording/event/TestLoadEventAfterStart.java \
515     jdk/jfr/api/recording/state/TestState.java \
516     jdk/jfr/event/os/TestCPULoad.java \
517     jdk/jfr/event/allocation/TestObjectAllocationSampleEvent.java \
518     jdk/jfr/jcmd/TestJcmdStartStopDefault.java \
519     jdk/jfr/event/io/TestFileStreamEvents.java \
520     jdk/jfr/event/compiler/TestCompilerCompile.java \
521     jdk/jfr/event/gc/collection/TestGCGarbageCollectionEvent.java \
522     jdk/jfr/event/runtime/TestClassLoadEvent.java \
523     jdk/jfr/event/runtime/TestJavaBlockedEvent.java \
524     jdk/jfr/event/gc/collection/TestGCWithFasttime.java \
525     jdk/jfr/event/gc/configuration/TestGCConfigurationEvent.java \
526     jdk/jfr/event/metadata/TestDefaultConfigurations.java \
527     jdk/jfr/startupargs/TestDumpOnExit.java \
528     jdk/jfr/api/consumer/recordingstream/TestBasics.java
529 
530 svc_tools_sanity =
531 
532 #############################
533 #
534 # Stable test groups
535 #
536 
537 jdk_stable = \
538     :jdk_core \
539     :jdk_svc \
540     :jdk_beans \
541     :jdk_imageio \
542     :jdk_sound \
543     :jdk_sctp \
544     javax/accessibility \
545     com/sun/java/swing
546 
547 needs_g1gc = \
548   jdk/jfr/event/gc/refstat/TestRefStatEventWithG1ConcurrentMark.java \
549   jdk/jfr/event/gc/refstat/TestRefStatEventWithG1FullCollection.java \
550   jdk/jfr/event/gc/refstat/TestRefStatEventWithG1New.java \
551   jdk/jfr/event/gc/detailed/TestEvacuationFailedEvent.java \
552   jdk/jfr/event/gc/detailed/TestEvacuationInfoEvent.java \
553   jdk/jfr/event/gc/detailed/TestG1ConcurrentModeFailureEvent.java \
554   jdk/jfr/event/gc/collection/TestGCCauseWithG1ConcurrentMark.java \
555   jdk/jfr/event/gc/collection/TestGCCauseWithG1FullCollection.java \
556   jdk/jfr/event/gc/collection/TestYoungGarbageCollectionEventWithG1New.java \
557   jdk/jfr/event/gc/collection/TestGCEventMixedWithG1FullCollection.java \
558   jdk/jfr/event/gc/collection/TestGCEventMixedWithG1ConcurrentMark.java \
559   jdk/jfr/event/gc/collection/TestG1ParallelPhases.java \
560   jdk/jfr/event/gc/objectcount/TestObjectCountAfterGCEventWithG1FullCollection.java \
561   jdk/jfr/event/gc/objectcount/TestObjectCountAfterGCEventWithG1ConcurrentMark.java \
562   jdk/jfr/event/gc/heapsummary/TestHeapSummaryEventG1.java
563 
564 #  This set of tests will be executed in an ipv6 only environment
565 
566 jdk_ipv6_only = \
567     :jdk_net \
568     :jdk_nio_networkchannel
569 
570 jdk_nio_networkchannel = \
571     java/nio/channels/AsyncCloseAndInterrupt.java \
572     java/nio/channels/AsynchronousServerSocketChannel \
573     java/nio/channels/AsynchronousSocketChannel \
574     java/nio/channels/DatagramChannel \
575     java/nio/channels/ServerSocketChannel \
576     java/nio/channels/SocketChannel \
577     java/nio/channels/Selector \
578     java/nio/channels/etc
579 
580 jdk_core_manual = \
581     :jdk_core_manual_no_input \
582     :jdk_core_manual_no_input_security \
583     :jdk_core_manual_requires_human_input
584 
585 jdk_core_manual_no_input = \
586     java/net/HugeDataTransferTest.java \
587     java/net/httpclient/BodyProcessorInputStreamTest.java \
588     java/net/httpclient/HttpInputStreamTest.java \
589     java/nio/MappedByteBuffer/PmemTest.java \
590     java/rmi/registry/nonLocalRegistry/NonLocalRegistryTest.java \
591     java/util/zip/ZipFile/TestZipFile.java \
592     javax/net/ssl/compatibility/AlpnTest.java \
593     javax/net/ssl/compatibility/BasicConnectTest.java \
594     javax/net/ssl/compatibility/HrrTest.java \
595     javax/net/ssl/compatibility/SniTest.java \
596     jdk/nio/zipfs/TestLocOffsetFromZip64EF.java \
597     java/util/ArrayList/Bug8146568.java \
598     java/util/Vector/Bug8148174.java
599 
600 jdk_core_manual_no_input_security = \
601     com/sun/crypto/provider/Cipher/DES/PerformanceTest.java \
602     com/sun/security/auth/callback/TextCallbackHandler/Default.java \
603     com/sun/security/auth/callback/TextCallbackHandler/Password.java \
604     com/sun/security/sasl/gsskerb/AuthOnly.java \
605     com/sun/security/sasl/gsskerb/ConfSecurityLayer.java \
606     com/sun/security/sasl/gsskerb/NoSecurityLayer.java \
607     sun/security/provider/PolicyFile/GrantAllPermToExtWhenNoPolicy.java \
608     sun/security/provider/PolicyParser/ExtDirs.java \
609     sun/security/provider/PolicyParser/ExtDirsChange.java \
610     sun/security/provider/PolicyParser/ExtDirsDefaultPolicy.java \
611     sun/security/provider/PolicyParser/PrincipalExpansionError.java \
612     sun/security/smartcardio/TestChannel.java \
613     sun/security/smartcardio/TestConnect.java \
614     sun/security/smartcardio/TestConnectAgain.java \
615     sun/security/smartcardio/TestControl.java \
616     sun/security/smartcardio/TestDefault.java \
617     sun/security/smartcardio/TestDirect.java \
618     sun/security/smartcardio/TestExclusive.java \
619     sun/security/smartcardio/TestMultiplePresent.java \
620     sun/security/smartcardio/TestPresent.java \
621     sun/security/smartcardio/TestTransmit.java \
622     sun/security/tools/jarsigner/compatibility/Compatibility.java
623 
624 jdk_core_manual_requires_human_input = \
625     com/sun/jndi/dns/Test6991580.java \
626     java/util/TimeZone/DefaultTimeZoneTest.java \
627     sun/security/tools/keytool/i18n.java
628 
629 
630 # Test sets for running inside container environment
631 jdk_containers_extended = \
632     :jdk_io \
633     :jdk_nio \
634     :jdk_svc