JavaTXCompilerInJavaTX/test/plugindevelopment/TypeInsertSetEqualTest.java

49 lines
1.5 KiB
Java
Raw Normal View History

package plugindevelopment;
import java.io.File;
import java.io.IOException;
import java.util.Vector;
import junit.framework.TestCase;
import org.junit.Test;
2014-09-02 08:33:54 +00:00
import de.dhbwstuttgart.core.MyCompiler;
import de.dhbwstuttgart.core.MyCompilerAPI;
import de.dhbwstuttgart.typeinference.TypeinferenceResultSet;
import de.dhbwstuttgart.typeinference.parser.JavaParser.yyException;
import de.dhbwstuttgart.typeinference.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<73>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();
}
}
}