Browse Source

various polish to previously mavenized projects to support newer ones

tags/V1_9_3RC1
Andy Clement 5 years ago
parent
commit
762b9c2872
1 changed files with 54 additions and 0 deletions
  1. 54
    0
      testing-util/src/main/java/org/aspectj/testing/util/TestUtil.java

+ 54
- 0
testing-util/src/main/java/org/aspectj/testing/util/TestUtil.java View File

import jdiff.util.Diff; import jdiff.util.Diff;
import jdiff.util.DiffNormalOutput; import jdiff.util.DiffNormalOutput;
import junit.framework.Assert; import junit.framework.Assert;
import junit.framework.AssertionFailedError;
import junit.framework.Test; import junit.framework.Test;
import junit.framework.TestCase; import junit.framework.TestCase;
import junit.framework.TestResult; import junit.framework.TestResult;
* not required to resolve this class. Also, the bytecode weaver is required to compare class files, but not to compare other files. * not required to resolve this class. Also, the bytecode weaver is required to compare class files, but not to compare other files.
*/ */
public final class TestUtil { public final class TestUtil {
private static final String SANDBOX_NAME = "ajcSandbox";
private static final boolean JAVA_5_VM; private static final boolean JAVA_5_VM;
private static final String ASPECTJRT_KEY = "aspectjrt"; private static final String ASPECTJRT_KEY = "aspectjrt";
private static final String TESTING_CLIENT_KEY = "testing-client"; private static final String TESTING_CLIENT_KEY = "testing-client";
return path.toString(); return path.toString();
} }


public static String aspectjrtClasspath() {
return TestUtil.aspectjrtPath().getPath();
}
/** /**
* @param input the String to parse for [on|off|true|false] * @param input the String to parse for [on|off|true|false]
* @throws IllegalArgumentException if input is bad * @throws IllegalArgumentException if input is bad
} }
} }
} }

public static File createEmptySandbox() {
File sandbox;

String os = System.getProperty("os.name");
File tempDir = null;
// AMC - I did this rather than use the JDK default as I hate having to go look
// in c:\documents and settings\......... for the results of a failed test.
if (os.startsWith("Windows")) {
tempDir = new File("N:\\temp");
if (!tempDir.exists()) {
tempDir = new File("C:\\temp");
if (!tempDir.exists()) {
tempDir.mkdir();
}
}
} else {
tempDir = new File("/tmp");
}
File sandboxRoot = new File(tempDir, SANDBOX_NAME);
if (!sandboxRoot.exists()) {
sandboxRoot.mkdir();
}

try {
File workspace = new File(".." + File.separator);
String workspaceName = workspace.getCanonicalPath();
int index = workspaceName.lastIndexOf(File.separator);
workspaceName = workspaceName.substring(index + 1);

File workspaceRoot = new File(sandboxRoot, workspaceName);
if (!workspaceRoot.exists()) {
workspaceRoot.mkdir();
}

FileUtil.deleteContents(workspaceRoot);

sandbox = File.createTempFile("ajcTest", ".tmp", workspaceRoot);
sandbox.delete();
sandbox.mkdir();

} catch (IOException ioEx) {
throw new AssertionFailedError("Unable to create sandbox directory for test");
}

return sandbox;
}


/** /**
* Capture PrintStream output to String[] (delimiting component String on println()), also showing any missed text. * Capture PrintStream output to String[] (delimiting component String on println()), also showing any missed text.

Loading…
Cancel
Save