Package qwickie.hyperlink

Source Code of qwickie.hyperlink.WicketHyperlinkTest

package qwickie.hyperlink;

import static org.junit.Assert.assertEquals;

import org.eclipse.core.resources.IProject;
import org.eclipse.core.resources.IResource;
import org.eclipse.core.resources.ResourcesPlugin;
import org.eclipse.jface.text.ITextSelection;
import org.eclipse.jface.text.Region;
import org.eclipse.ui.ISelectionService;
import org.eclipse.ui.IWorkbench;
import org.eclipse.ui.IWorkbenchPage;
import org.eclipse.ui.PartInitException;
import org.eclipse.ui.PlatformUI;
import org.eclipse.ui.ide.IDE;
import org.eclipse.ui.ide.ResourceUtil;
import org.junit.Before;
import org.junit.Test;

public class WicketHyperlinkTest {
  private final IProject project = ResourcesPlugin.getWorkspace().getRoot().getProject("testproject");

  @Before
  public void setUp() throws Exception {
  }

  @Test
  public void testWicketHyperlink() {
    long start = System.nanoTime();

    final Region region = new Region(1, 10);
    WicketHyperlink wh = new WicketHyperlink(region, "panel", "ext");
    assertEquals(wh.getHyperlinkText(), "Open ext file and jump to wicket:id \"panel\"");
    assertEquals(wh.toString(), "WicketHyperlink for wicket:id \"panel\" to ext file");
    assertEquals(wh.getHyperlinkRegion(), region);

    System.out.println("testWicketHyperlink:\t\t" + (System.nanoTime() - start));
  }

  @Test
  public void testWicketHyperlinkOpenHTML() throws PartInitException {
    long start = System.nanoTime();

    final IWorkbench workbench = PlatformUI.getWorkbench();
    final IWorkbenchPage activePage = workbench.getActiveWorkbenchWindow().getActivePage();
    IDE.openEditor(activePage, project.getFile("/src/main/java/org/qwickie/test/project/issue45/mobile/RegistrationPage.java"), true);

    final Region region = new Region(21 * 25, 1);
    WicketHyperlink wh = new WicketHyperlink(region, "test", "html");
    wh.open();
    final ISelectionService selectionService = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getSelectionService();
    final ITextSelection selection = (ITextSelection) selectionService.getSelection();
    assertEquals("test", selection.getText());
    assertEquals(7, selection.getStartLine());
    assertEquals(7, selection.getEndLine());
    final IResource resource = ResourceUtil.getResource(PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage().getActiveEditor().getEditorInput());
    assertEquals("RegistrationPage.html", resource.getName());

    activePage.closeAllEditors(false);

    System.out.println("testWicketHyperlinkOpenHTML:\t" + (System.nanoTime() - start));
  }

  @Test
  public void testWicketHyperlinkOpenJava() throws PartInitException {
    long start = System.nanoTime();

    final IWorkbench workbench = PlatformUI.getWorkbench();
    final IWorkbenchPage activePage = workbench.getActiveWorkbenchWindow().getActivePage();
    IDE.openEditor(activePage, project.getFile("/src/main/resources/org/qwickie/test/project/issue45/mobile/RegistrationPage.html"), true);

    final Region region = new Region(263, 1);
    WicketHyperlink wh = new WicketHyperlink(region, "test", "java");
    wh.open();
    final ISelectionService selectionService = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getSelectionService();
    final ITextSelection selection = (ITextSelection) selectionService.getSelection();
    assertEquals("test", selection.getText());
    assertEquals(21, selection.getStartLine());
    assertEquals(21, selection.getEndLine());
    final IResource resource = ResourceUtil.getResource(PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage().getActiveEditor().getEditorInput());
    assertEquals("RegistrationPage.java", resource.getName());

    activePage.closeAllEditors(false);

    System.out.println("testWicketHyperlinkOpenJava:\t" + (System.nanoTime() - start));
  }

  @Test
  public void testWicketHyperlinkCreateProps() throws PartInitException {
    long start = System.nanoTime();

    final IWorkbench workbench = PlatformUI.getWorkbench();
    final IWorkbenchPage activePage = workbench.getActiveWorkbenchWindow().getActivePage();
    IDE.openEditor(activePage, project.getFile("/src/main/java/org/qwickie/test/project/getstring/GetString.java"), true);

    final Region region = new Region(763, 1);
    WicketHyperlink wh = new WicketHyperlink(region, "firstname", "properties");

    wh.open();
    final ISelectionService selectionService = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getSelectionService();
    final ITextSelection selection = (ITextSelection) selectionService.getSelection();
    assertEquals("Your first name", selection.getText());
    assertEquals(0, selection.getStartLine());
    assertEquals(0, selection.getEndLine());
    final IResource resource = ResourceUtil.getResource(PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage().getActiveEditor().getEditorInput());
    assertEquals("wicket-package.properties", resource.getName());

    activePage.closeAllEditors(false);

    System.out.println("testWicketHyperlinkCreateProps:\t" + (System.nanoTime() - start));
  }

  @Test
  public void testWicketHyperlinkDetector() {
    long start = System.nanoTime();

    //    QWickieJavaHyperlinkDetector detector = new QWickieJavaHyperlinkDetector();
    //    detector.setContext(project);
    //    TextViewer textViewer = new TextViewer(new Shell(), 0);
    //    textViewer.setDocument(javaDocument);
    //    Region region = new Region(100, 10);
    //    final IHyperlink[] hyperlinks = detector.detectHyperlinks(textViewer, region, false);

    System.out.println("testWicketHyperlinkDetector:\t" + (System.nanoTime() - start));
  }

}
TOP

Related Classes of qwickie.hyperlink.WicketHyperlinkTest

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.