Search in sources :

Example 1 with SimpleTestProjectWithMapping

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();
}
Also used : IPath(org.eclipse.core.runtime.IPath) Path(org.eclipse.core.runtime.Path) IPackageFragment(org.eclipse.jdt.core.IPackageFragment) ConsoleConfiguration(org.hibernate.console.ConsoleConfiguration) IPath(org.eclipse.core.runtime.IPath) ArrayList(java.util.ArrayList) IEditorPart(org.eclipse.ui.IEditorPart) IPackageFragmentRoot(org.eclipse.jdt.core.IPackageFragmentRoot) QueryInputModel(org.hibernate.console.QueryInputModel) SimpleTestProjectWithMapping(org.jboss.tools.hibernate.orm.test.utils.project.SimpleTestProjectWithMapping) HQLCompletionProcessor(org.hibernate.eclipse.hqleditor.HQLCompletionProcessor) ICompletionProposal(org.eclipse.jface.text.contentassist.ICompletionProposal) HQLEditor(org.hibernate.eclipse.hqleditor.HQLEditor) IDocument(org.eclipse.jface.text.IDocument) Test(org.junit.Test)

Example 2 with SimpleTestProjectWithMapping

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();
}
Also used : IPath(org.eclipse.core.runtime.IPath) Path(org.eclipse.core.runtime.Path) IPackageFragment(org.eclipse.jdt.core.IPackageFragment) ConsoleConfiguration(org.hibernate.console.ConsoleConfiguration) IPath(org.eclipse.core.runtime.IPath) ArrayList(java.util.ArrayList) IEditorPart(org.eclipse.ui.IEditorPart) IPackageFragmentRoot(org.eclipse.jdt.core.IPackageFragmentRoot) QueryInputModel(org.hibernate.console.QueryInputModel) SimpleTestProjectWithMapping(org.jboss.tools.hibernate.orm.test.utils.project.SimpleTestProjectWithMapping) CriteriaEditor(org.hibernate.eclipse.criteriaeditor.CriteriaEditor) ICompletionProposal(org.eclipse.jface.text.contentassist.ICompletionProposal) JavaCompletionProcessor(org.hibernate.eclipse.criteriaeditor.JavaCompletionProcessor) Test(org.junit.Test)

Aggregations

ArrayList (java.util.ArrayList)2 IPath (org.eclipse.core.runtime.IPath)2 Path (org.eclipse.core.runtime.Path)2 IPackageFragment (org.eclipse.jdt.core.IPackageFragment)2 IPackageFragmentRoot (org.eclipse.jdt.core.IPackageFragmentRoot)2 ICompletionProposal (org.eclipse.jface.text.contentassist.ICompletionProposal)2 IEditorPart (org.eclipse.ui.IEditorPart)2 ConsoleConfiguration (org.hibernate.console.ConsoleConfiguration)2 QueryInputModel (org.hibernate.console.QueryInputModel)2 SimpleTestProjectWithMapping (org.jboss.tools.hibernate.orm.test.utils.project.SimpleTestProjectWithMapping)2 Test (org.junit.Test)2 IDocument (org.eclipse.jface.text.IDocument)1 CriteriaEditor (org.hibernate.eclipse.criteriaeditor.CriteriaEditor)1 JavaCompletionProcessor (org.hibernate.eclipse.criteriaeditor.JavaCompletionProcessor)1 HQLCompletionProcessor (org.hibernate.eclipse.hqleditor.HQLCompletionProcessor)1 HQLEditor (org.hibernate.eclipse.hqleditor.HQLEditor)1