use of org.jboss.tools.hibernate.orm.test.utils.project.SimpleTestProjectWithMapping in project jbosstools-hibernate by jbosstools.
the class HQLEditorTest method testHQLEditorCodeCompletionWithTabs.
@Test
public void testHQLEditorCodeCompletionWithTabs() throws CoreException, NoSuchFieldException, IllegalAccessException {
cleanUpProject();
project = new SimpleTestProjectWithMapping(PROJ_NAME);
IPackageFragmentRoot sourceFolder = project.createSourceFolder();
IPackageFragment pf = sourceFolder.createPackageFragment(SimpleTestProject.PACKAGE_NAME, false, null);
ConsoleConfigUtils.customizeCfgXmlForPack(pf);
List<IPath> libs = new ArrayList<IPath>();
project.generateClassPath(libs, sourceFolder);
project.fullBuild();
// setup console configuration
IPath cfgFilePath = new Path(project.getIProject().getName() + File.separator + TestProject.SRC_FOLDER + File.separator + ConsoleConfigUtils.CFG_FILE_NAME);
ConsoleConfigUtils.createConsoleConfig(PROJ_NAME, cfgFilePath, CONSOLE_NAME);
ConsoleConfiguration cc = KnownConfigurations.getInstance().find(CONSOLE_NAME);
// $NON-NLS-1$
Assert.assertNotNull("Console Configuration not found", cc);
cc.build();
// $NON-NLS-1$
final String codeCompletionPlaceMarker = " from ";
final String query = // $NON-NLS-1$
"select\t \tt1." + codeCompletionPlaceMarker + project.getFullyQualifiedTestClassName() + // $NON-NLS-1$
" t1";
IEditorPart editorPart = HibernateConsolePlugin.getDefault().openScratchHQLEditor(CONSOLE_NAME, query);
// $NON-NLS-1$
Assert.assertTrue("Opened editor is not HQLEditor", editorPart instanceof HQLEditor);
HQLEditor editor = (HQLEditor) editorPart;
Assert.assertEquals(editor.getEditorText(), query);
QueryInputModel model = editor.getQueryInputModel();
Assert.assertTrue(model.getParameterCount() == 0);
editor.setConsoleConfigurationName(CONSOLE_NAME);
IDocument doc = editor.getDocumentProvider().getDocument(editor.getEditorInput());
HQLCompletionProcessor processor = new HQLCompletionProcessor(editor);
int position = query.indexOf(codeCompletionPlaceMarker);
ICompletionProposal[] proposals = processor.computeCompletionProposals(doc, position);
Assert.assertTrue(proposals.length > 0);
cc.reset();
}
use of org.jboss.tools.hibernate.orm.test.utils.project.SimpleTestProjectWithMapping in project jbosstools-hibernate by jbosstools.
the class CriteriaEditorTest method testCriteriaCodeCompletion.
@Test
public void testCriteriaCodeCompletion() throws CoreException, NoSuchFieldException, IllegalAccessException, IOException {
cleanUpProject();
project = new SimpleTestProjectWithMapping(PROJ_NAME);
IPackageFragmentRoot sourceFolder = project.createSourceFolder();
IPackageFragment pf = sourceFolder.createPackageFragment(SimpleTestProject.PACKAGE_NAME, false, null);
ConsoleConfigUtils.customizeCfgXmlForPack(pf);
List<IPath> libs = new ArrayList<IPath>();
project.generateClassPath(libs, sourceFolder);
project.fullBuild();
// setup console configuration
IPath cfgFilePath = new Path(project.getIProject().getName() + File.separator + TestProject.SRC_FOLDER + File.separator + ConsoleConfigUtils.CFG_FILE_NAME);
ConsoleConfigUtils.createConsoleConfig(PROJ_NAME, cfgFilePath, CONSOLE_NAME);
ConsoleConfiguration cc = KnownConfigurations.getInstance().find(CONSOLE_NAME);
// $NON-NLS-1$
Assert.assertNotNull("Console Configuration not found", cc);
cc.build();
String query = // $NON-NLS-1$
"Object o = new Object();\n" + // $NON-NLS-1$
"System.out.print(o.toString());";
IEditorPart editorPart = HibernateConsolePlugin.getDefault().openCriteriaEditor(CONSOLE_NAME, query);
// $NON-NLS-1$
Assert.assertTrue("Opened editor is not CriteriaEditor", editorPart instanceof CriteriaEditor);
CriteriaEditor editor = (CriteriaEditor) editorPart;
Assert.assertEquals(editor.getEditorText(), query);
QueryInputModel model = editor.getQueryInputModel();
Assert.assertTrue(model.getParameterCount() == 0);
editor.setConsoleConfigurationName(CONSOLE_NAME);
JavaCompletionProcessor processor = new JavaCompletionProcessor(editor);
// $NON-NLS-1$
int position = query.indexOf("toString()");
ICompletionProposal[] proposals = processor.computeCompletionProposals(null, position);
Assert.assertTrue(// $NON-NLS-1$
"Class java.lang.Object has at least 9 methods. But " + proposals.length + " code completion proposals where provided.", // $NON-NLS-1$
proposals.length >= 9);
cc.reset();
}
Aggregations