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