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