diff options
Diffstat (limited to 'test/junit/com/sun/gluegen/PCPPTest.java')
-rw-r--r-- | test/junit/com/sun/gluegen/PCPPTest.java | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/test/junit/com/sun/gluegen/PCPPTest.java b/test/junit/com/sun/gluegen/PCPPTest.java new file mode 100644 index 0000000..c086c47 --- /dev/null +++ b/test/junit/com/sun/gluegen/PCPPTest.java @@ -0,0 +1,49 @@ +package com.sun.gluegen; + +import com.sun.gluegen.pcpp.PCPP; +import java.io.BufferedOutputStream; +import java.io.BufferedReader; +import java.io.ByteArrayOutputStream; +import java.io.FileNotFoundException; +import java.io.FileReader; +import java.io.IOException; +import java.util.Collections; +import org.junit.Test; +import static org.junit.Assert.*; + +/** + * serves mainly as entry point for debugging purposes. + * @author Michael Bien + */ +public class PCPPTest { + + @Test + public void pcppTest() throws FileNotFoundException, IOException { + + PCPP pp = new PCPP(Collections.<String>emptyList()); + ByteArrayOutputStream output = new ByteArrayOutputStream(); + pp.setOut(output); + + String filename = "pcpptest.h"; + String filepath = BuildUtil.path + "/" + filename; + + pp.run(new BufferedReader(new FileReader(filepath)), filename); + + String expected = "# 1 \"pcpptest.h\""+ + "# define CL_SCHAR_MIN (-127-1)"+ + " cl_char __attribute__(( aligned(2))) s[ 2];"+ + "# 7 \"pcpptest.h\""; + output.flush(); + String result = output.toString(); + output.close(); + + assertEquals(killWhitespace(expected), killWhitespace(result)); + + } + + private String killWhitespace(String a) { + return a.replaceAll("\\p{javaWhitespace}+", ""); + } + + +} |