diff options
author | wisberg <wisberg> | 2005-01-27 04:16:55 +0000 |
---|---|---|
committer | wisberg <wisberg> | 2005-01-27 04:16:55 +0000 |
commit | 9b90a9bb03f9444d62f9d6dee3898caa4c55e02c (patch) | |
tree | 4abc4ade062b55f4032c137da774e8fe2a59faa3 | |
parent | 8cc7315ade97ee5e99d05cac7fd5ff22df130d36 (diff) | |
download | aspectj-9b90a9bb03f9444d62f9d6dee3898caa4c55e02c.tar.gz aspectj-9b90a9bb03f9444d62f9d6dee3898caa4c55e02c.zip |
tests for PR48650 partial workaround - ugh
-rw-r--r-- | tests/src/org/aspectj/systemtest/ajc150/AllTestsAspectJ150.java | 1 | ||||
-rw-r--r-- | tests/src/org/aspectj/systemtest/ajc150/SCCSFixTests.java | 73 |
2 files changed, 74 insertions, 0 deletions
diff --git a/tests/src/org/aspectj/systemtest/ajc150/AllTestsAspectJ150.java b/tests/src/org/aspectj/systemtest/ajc150/AllTestsAspectJ150.java index 9e38feb70..286832e3d 100644 --- a/tests/src/org/aspectj/systemtest/ajc150/AllTestsAspectJ150.java +++ b/tests/src/org/aspectj/systemtest/ajc150/AllTestsAspectJ150.java @@ -24,6 +24,7 @@ public class AllTestsAspectJ150 { suite.addTestSuite(MigrationTests.class); suite.addTest(Ajc150Tests.suite()); suite.addTestSuite(Ajc150TestsNoHarness.class); + suite.addTestSuite(SCCSFixTests.class); // These are binary weaving tests suite.addTest(AccBridgeMethods.suite()); diff --git a/tests/src/org/aspectj/systemtest/ajc150/SCCSFixTests.java b/tests/src/org/aspectj/systemtest/ajc150/SCCSFixTests.java new file mode 100644 index 000000000..46f319da0 --- /dev/null +++ b/tests/src/org/aspectj/systemtest/ajc150/SCCSFixTests.java @@ -0,0 +1,73 @@ +/******************************************************************************* + * Copyright (c) 2005 IBM Corporation and others. + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Common Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/cpl-v10.html + * + * Contributors: + * Wes Isberg - initial implementation + *******************************************************************************/ + +package org.aspectj.systemtest.ajc150; + +import java.io.File; + +import org.aspectj.tools.ajc.AjcTestCase; +import org.aspectj.tools.ajc.CompilationResult; +import org.aspectj.util.FileUtil; + +/** + * SCCS/CVS directory fix. + * Would add to Ajc150TestsNoHarness, but can't share basedir/setup, etc. + */ +public class SCCSFixTests extends AjcTestCase { + File baseDir; + File sourceroot; + + public void setUp() throws Exception { + super.setUp(); + baseDir = FileUtil.getTempDir("BugFixTests"); + sourceroot = new File(baseDir, "sourceroot"); + sourceroot.mkdirs(); + } + public void tearDown() { + FileUtil.deleteContents(baseDir); + } + /** + * @see org/aspectj/util/FileUtil.java 1.17 + * @see https://bugs.eclipse.org/bugs/show_bug.cgi?id=48650 + */ + public void testSkipCVS() { + doTestSkip("CVS"); + } + + /** + * @see org/aspectj/util/FileUtil.java 1.17 + * @see https://bugs.eclipse.org/bugs/show_bug.cgi?id=48650 + */ + public void testSkipSCCS() { + doTestSkip("SCCS"); + } + + /** + * Can't check in "CVS" or "SCCS" directories, + * so construct for each test. + */ + private void doTestSkip(String name) { + File dir = new File(sourceroot, name); + sourceroot.mkdirs(); + File file = new File(dir, "Error.java"); + FileUtil.writeAsString(file, "public class Error { here }"); + file = new File(sourceroot, "Main.java"); + FileUtil.writeAsString(file, MAIN); + String[] args = { "-sourceroots", sourceroot.getPath() }; + CompilationResult result = ajc(baseDir, args); + assertNoMessages(result); + RunResult r = run("Main"); + String m = r.getStdOut().trim(); + assertEquals("I ran", m); + } + private static final String MAIN = + "public class Main { public static void main(String[] a) {System.out.println(\"I ran\");}}"; +} |