You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

Java18PreviewFeaturesTests.java 2.6KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  1. /*******************************************************************************
  2. * Copyright (c) 2022 Contributors
  3. * All rights reserved. This program and the accompanying materials
  4. * are made available under the terms of the Eclipse Public License v 2.0
  5. * which accompanies this distribution, and is available at
  6. * https://www.eclipse.org/org/documents/epl-2.0/EPL-2.0.txt
  7. *******************************************************************************/
  8. package org.aspectj.systemtest.ajc199;
  9. import junit.framework.Test;
  10. import org.aspectj.apache.bcel.Constants;
  11. import org.aspectj.testing.XMLBasedAjcTestCase;
  12. import org.aspectj.testing.XMLBasedAjcTestCaseForJava18Only;
  13. /**
  14. * @author Alexander Kriegisch
  15. */
  16. public class Java18PreviewFeaturesTests extends XMLBasedAjcTestCaseForJava18Only {
  17. private static final Constants.ClassFileVersion classFileVersion = Constants.ClassFileVersion.of(18);
  18. public void testSwitchPatternMatchingCaseLabelDominatedByPrecedingError() {
  19. runTest("switch pattern matching error");
  20. }
  21. public void testSwitchPatternMatchingJava() {
  22. runTest("switch pattern matching java");
  23. checkVersion("SwitchPatternOK", classFileVersion.MAJOR, classFileVersion.PREVIEW_MINOR);
  24. }
  25. public void testSwitchPatternMatchingAspect() {
  26. runTest("switch pattern matching aspect");
  27. checkVersion("SwitchPatternAspect", classFileVersion.MAJOR, classFileVersion.PREVIEW_MINOR);
  28. checkVersion("Application", classFileVersion.MAJOR, classFileVersion.PREVIEW_MINOR);
  29. checkVersion("Shape", classFileVersion.MAJOR, classFileVersion.PREVIEW_MINOR);
  30. checkVersion("S", classFileVersion.MAJOR, classFileVersion.PREVIEW_MINOR);
  31. }
  32. public void testSwitchPatternMatchingPreview2Error1() {
  33. runTest("switch pattern matching preview 2 error 1");
  34. }
  35. public void testSwitchPatternMatchingPreview2Error2() {
  36. runTest("switch pattern matching preview 2 error 2");
  37. }
  38. public void testSwitchPatternMatchingPreview2Java() {
  39. runTest("switch pattern matching preview 2 java");
  40. checkVersion("SwitchPatternPreview2OK", classFileVersion.MAJOR, classFileVersion.PREVIEW_MINOR);
  41. }
  42. public void testSwitchPatternMatchingPreview2Aspect() {
  43. runTest("switch pattern matching preview 2 aspect");
  44. checkVersion("SwitchPatternPreview2Aspect", classFileVersion.MAJOR, classFileVersion.PREVIEW_MINOR);
  45. checkVersion("Application", classFileVersion.MAJOR, classFileVersion.PREVIEW_MINOR);
  46. }
  47. public static Test suite() {
  48. return XMLBasedAjcTestCase.loadSuite(Java18PreviewFeaturesTests.class);
  49. }
  50. @Override
  51. protected java.net.URL getSpecFile() {
  52. return getClassResource("ajc199.xml");
  53. }
  54. }