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