use of com.rockwellcollins.atc.tcg.extensions.TcgExtractor in project AGREE by loonwerks.
the class TestCaseGeneratorMenuListener method addViewTestCaseMenu.
private void addViewTestCaseMenu(IMenuManager manager, AnalysisResult result) {
final Counterexample cex = getCounterexample(result);
TcgExtractorRegistry tcgReg = (TcgExtractorRegistry) ExtensionRegistry.getRegistry(ExtensionRegistry.TCG_EXTRACTOR_EXT_ID);
List<TcgExtractor> extractors = tcgReg.getTcgExtractors();
if (cex != null) {
final String cexType = getCounterexampleType(result);
final Layout layout = linker.getLayout(result.getParent());
final Renaming renaming = linker.getRenaming(result.getParent());
final Map<String, EObject> refMap = ((TcgRenaming) renaming).getTcgRefMap();
final Counterexample translatedCex = AgreeMenuListener.translateCounterexampleArrayIndices(cex);
MenuManager sub = new MenuManager("View " + cexType + "Test Case in");
manager.add(sub);
sub.add(new Action("Console") {
@Override
public void run() {
viewCexConsole(translatedCex, layout, refMap, (TcgRenaming) renaming);
}
});
sub.add(new Action("Eclipse") {
@Override
public void run() {
viewCexEclipse(translatedCex, layout, refMap);
}
});
sub.add(new Action("Spreadsheet") {
@Override
public void run() {
viewCexSpreadsheet(translatedCex, layout);
}
});
// send counterexamples to external plugins
PropertyResult pr = (PropertyResult) result;
EObject property = refMap.get(pr.getName());
ComponentImplementation compImpl = linker.getComponent(result.getParent());
for (TcgExtractor ex : extractors) {
sub.add(new Action(ex.getDisplayText()) {
@Override
public void run() {
ex.receiveCex(compImpl, property, translatedCex, refMap);
}
});
}
}
}
use of com.rockwellcollins.atc.tcg.extensions.TcgExtractor in project AGREE by loonwerks.
the class TestSuiteMenuListener method addViewTestCaseMenu.
private void addViewTestCaseMenu(IMenuManager manager, TestCase testCase) {
final Counterexample cex = testCase.getCex();
TcgExtractorRegistry tcgReg = (TcgExtractorRegistry) ExtensionRegistry.getRegistry(ExtensionRegistry.TCG_EXTRACTOR_EXT_ID);
List<TcgExtractor> extractors = tcgReg.getTcgExtractors();
if (cex != null) {
/*
* TODO: getCounterexampleType?
*/
// final String cexType = getCounterexampleType(result);
final String cexType = "";
final Layout layout = linker.getLayout(result);
final Renaming renaming = linker.getRenaming(result);
final Map<String, EObject> refMap = ((TcgRenaming) linker.getRenaming(result)).getTcgRefMap();
final Counterexample translatedCex = AgreeMenuListener.translateCounterexampleArrayIndices(cex);
MenuManager sub = new MenuManager("View " + cexType + "Test Case in");
manager.add(sub);
sub.add(new Action("Console") {
@Override
public void run() {
viewCexConsole(translatedCex, layout, refMap, (TcgRenaming) renaming);
}
});
sub.add(new Action("Eclipse") {
@Override
public void run() {
viewCexEclipse(translatedCex, layout, refMap);
}
});
sub.add(new Action("Spreadsheet") {
@Override
public void run() {
viewCexSpreadsheet(translatedCex, layout);
}
});
// send counterexamples to external plugins
EObject property = refMap.get(testCase.getName());
ComponentImplementation compImpl = linker.getComponent(result);
for (TcgExtractor ex : extractors) {
sub.add(new Action(ex.getDisplayText()) {
@Override
public void run() {
ex.receiveCex(compImpl, property, translatedCex, refMap);
}
});
}
}
}
Aggregations