JavaTXCompilerInJavaTX/test/plugindevelopment/TypeInsertSetEqualTest.java

49 lines
1.4 KiB
Java

package plugindevelopment;
import java.io.File;
import java.io.IOException;
import java.util.Vector;
import junit.framework.TestCase;
import mycompiler.MyCompiler;
import mycompiler.MyCompilerAPI;
import mycompiler.myparser.JavaParser.yyException;
import mycompiler.mytypereconstruction.TypeinferenceResultSet;
import org.junit.Test;
import typinferenz.typedeployment.TypeInsertSet;
public class TypeInsertSetEqualTest {
private static final String TEST_FILE = "TypeInsertSetEqualTest.jav";
@Test
public void run(){
String inferedSource = "";
MyCompilerAPI compiler = MyCompiler.getAPI();
try {
compiler.parse(new File(TypeInsertTester.rootDirectory + TEST_FILE));
Vector<TypeinferenceResultSet> results = compiler.typeReconstruction();
//TestCase.assertTrue("Es darf nicht mehr als eine Lösungsmöglichkeit geben und nicht "+results.size(), results.size()==1);
Vector<TypeInsertSet> insertSets = new Vector<TypeInsertSet>();
for(TypeinferenceResultSet result : results){
TypeInsertSet point = result.getTypeInsertionPoints();
if(!insertSets.contains(point))insertSets.add(point);
//TestCase.assertTrue("Es muss mindestens ein TypeInsertSet vorhanden sein", points.size()>0);
}
if(insertSets.size()!=1){
TestCase.fail("Es darf nur ein TypeInsertSet geben und nicht "+insertSets.size());
}
} catch (IOException | yyException e) {
e.printStackTrace();
TestCase.fail();
}
}
}