[jbosstools-commits] JBoss Tools SVN: r42627 - in trunk/jsf/tests/org.jboss.tools.jsf.text.ext.test: .settings and 3 other directories.

jbosstools-commits at lists.jboss.org jbosstools-commits at lists.jboss.org
Tue Jul 17 20:27:15 EDT 2012


Author: scabanovich
Date: 2012-07-17 20:27:14 -0400 (Tue, 17 Jul 2012)
New Revision: 42627

Added:
   trunk/jsf/tests/org.jboss.tools.jsf.text.ext.test/.settings/
   trunk/jsf/tests/org.jboss.tools.jsf.text.ext.test/.settings/org.eclipse.jdt.core.prefs
   trunk/jsf/tests/org.jboss.tools.jsf.text.ext.test/projects/JSF2CompositeOpenOn/WebContent/params/
   trunk/jsf/tests/org.jboss.tools.jsf.text.ext.test/projects/JSF2CompositeOpenOn/WebContent/params/a.xhtml
   trunk/jsf/tests/org.jboss.tools.jsf.text.ext.test/projects/JSF2CompositeOpenOn/WebContent/params/b.xhtml
   trunk/jsf/tests/org.jboss.tools.jsf.text.ext.test/src/org/jboss/tools/jsf/text/ext/test/JSPELHyperlinkUIParamTest.java
Modified:
   trunk/jsf/tests/org.jboss.tools.jsf.text.ext.test/.classpath
   trunk/jsf/tests/org.jboss.tools.jsf.text.ext.test/src/org/jboss/tools/jsf/text/ext/test/JsfTextExtAllTests.java
Log:
JBIDE-12295
https://issues.jboss.org/browse/JBIDE-12295
Test is added.

Modified: trunk/jsf/tests/org.jboss.tools.jsf.text.ext.test/.classpath
===================================================================
--- trunk/jsf/tests/org.jboss.tools.jsf.text.ext.test/.classpath	2012-07-17 23:39:35 UTC (rev 42626)
+++ trunk/jsf/tests/org.jboss.tools.jsf.text.ext.test/.classpath	2012-07-18 00:27:14 UTC (rev 42627)
@@ -1,7 +1,7 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
-	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
-	<classpathentry kind="src" path="src"/>
-	<classpathentry kind="output" path="bin"/>
-</classpath>
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6"/>
+	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+	<classpathentry kind="src" path="src"/>
+	<classpathentry kind="output" path="bin"/>
+</classpath>

Added: trunk/jsf/tests/org.jboss.tools.jsf.text.ext.test/.settings/org.eclipse.jdt.core.prefs
===================================================================
--- trunk/jsf/tests/org.jboss.tools.jsf.text.ext.test/.settings/org.eclipse.jdt.core.prefs	                        (rev 0)
+++ trunk/jsf/tests/org.jboss.tools.jsf.text.ext.test/.settings/org.eclipse.jdt.core.prefs	2012-07-18 00:27:14 UTC (rev 42627)
@@ -0,0 +1,8 @@
+#Fri Sep 30 12:13:49 PDT 2011
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6
+org.eclipse.jdt.core.compiler.compliance=1.6
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+org.eclipse.jdt.core.compiler.source=1.6


Property changes on: trunk/jsf/tests/org.jboss.tools.jsf.text.ext.test/.settings/org.eclipse.jdt.core.prefs
___________________________________________________________________
Added: svn:mime-type
   + text/plain

Added: trunk/jsf/tests/org.jboss.tools.jsf.text.ext.test/projects/JSF2CompositeOpenOn/WebContent/params/a.xhtml
===================================================================
--- trunk/jsf/tests/org.jboss.tools.jsf.text.ext.test/projects/JSF2CompositeOpenOn/WebContent/params/a.xhtml	                        (rev 0)
+++ trunk/jsf/tests/org.jboss.tools.jsf.text.ext.test/projects/JSF2CompositeOpenOn/WebContent/params/a.xhtml	2012-07-18 00:27:14 UTC (rev 42627)
@@ -0,0 +1,12 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml"
+      xmlns:ui="http://java.sun.com/jsf/facelets"
+      xmlns:h="http://java.sun.com/jsf/html"
+      xmlns:f="http://java.sun.com/jsf/core">
+ 
+	<ui:composition template="/params/b.xhtml">
+		<ui:param name="myparam1" value="#{person}" />    
+		<ui:param name="myparam2" value="abc" />    
+	</ui:composition>
+	
+</html>
\ No newline at end of file

Added: trunk/jsf/tests/org.jboss.tools.jsf.text.ext.test/projects/JSF2CompositeOpenOn/WebContent/params/b.xhtml
===================================================================
--- trunk/jsf/tests/org.jboss.tools.jsf.text.ext.test/projects/JSF2CompositeOpenOn/WebContent/params/b.xhtml	                        (rev 0)
+++ trunk/jsf/tests/org.jboss.tools.jsf.text.ext.test/projects/JSF2CompositeOpenOn/WebContent/params/b.xhtml	2012-07-18 00:27:14 UTC (rev 42627)
@@ -0,0 +1,10 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml"
+      xmlns:ui="http://java.sun.com/jsf/facelets"
+      xmlns:h="http://java.sun.com/jsf/html"
+      xmlns:f="http://java.sun.com/jsf/core">
+ <body>
+ #{myparam1}
+ #{myparam2}
+ </body>
+</html>
\ No newline at end of file

Added: trunk/jsf/tests/org.jboss.tools.jsf.text.ext.test/src/org/jboss/tools/jsf/text/ext/test/JSPELHyperlinkUIParamTest.java
===================================================================
--- trunk/jsf/tests/org.jboss.tools.jsf.text.ext.test/src/org/jboss/tools/jsf/text/ext/test/JSPELHyperlinkUIParamTest.java	                        (rev 0)
+++ trunk/jsf/tests/org.jboss.tools.jsf.text.ext.test/src/org/jboss/tools/jsf/text/ext/test/JSPELHyperlinkUIParamTest.java	2012-07-18 00:27:14 UTC (rev 42627)
@@ -0,0 +1,105 @@
+/******************************************************************************* 
+ * Copyright (c) 2012 Red Hat, Inc. 
+ * Distributed under license by Red Hat, Inc. All rights reserved. 
+ * This program is made available under the terms of the 
+ * Eclipse Public License v1.0 which accompanies this distribution, 
+ * and is available at http://www.eclipse.org/legal/epl-v10.html 
+ * 
+ * Contributors: 
+ * Red Hat, Inc. - initial API and implementation 
+ ******************************************************************************/ 
+package org.jboss.tools.jsf.text.ext.test;
+
+import junit.framework.TestCase;
+
+import org.eclipse.core.resources.IProject;
+import org.eclipse.core.resources.ResourcesPlugin;
+import org.eclipse.core.runtime.Path;
+import org.eclipse.jface.text.BadLocationException;
+import org.eclipse.jface.text.FindReplaceDocumentAdapter;
+import org.eclipse.jface.text.IDocument;
+import org.eclipse.jface.text.IRegion;
+import org.eclipse.jface.text.Region;
+import org.eclipse.jface.text.hyperlink.IHyperlink;
+import org.eclipse.jface.text.source.ISourceViewer;
+import org.eclipse.ui.IEditorPart;
+import org.eclipse.ui.PartInitException;
+import org.eclipse.ui.PlatformUI;
+import org.jboss.tools.jst.jsp.jspeditor.JSPMultiPageEditor;
+import org.jboss.tools.jst.text.ext.hyperlink.ELHyperlinkDetector;
+import org.jboss.tools.jst.web.kb.PageContextFactory;
+import org.jboss.tools.test.util.WorkbenchUtils;
+
+/**
+ * 
+ * 
+ * @author Viacheslav Kabanovich
+ */
+public class JSPELHyperlinkUIParamTest  extends TestCase {
+	private static final String PROJECT_NAME = "JSF2CompositeOpenOn";
+	public IProject project = null;
+	private ELHyperlinkDetector elHyperlinkDetector = new ELHyperlinkDetector();
+
+	protected void setUp() {
+		project = ResourcesPlugin.getWorkspace().getRoot().getProject(
+				PROJECT_NAME);
+		PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage().closeAllEditors(false);
+	}
+	
+	protected void tearDown() {
+		PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage().closeAllEditors(false);
+	}
+
+	public JSPELHyperlinkUIParamTest() {
+		super("JSP UI Param OpenOn test");
+	}
+
+	
+	public void testJSPELHyperlinkUIParam() throws PartInitException, BadLocationException {
+		//Activate page, include model is lazy.
+		PageContextFactory.createPageContext(project.getFile(new Path("/WebContent/params/a.xhtml")));
+		String pageName = PROJECT_NAME+"/WebContent/params/b.xhtml";
+		String textToFind = "myparam1";
+		String[] resultEditor = new String[]{"a.xhtml", "Person.java"};
+		try {
+			doJSPELHyperlinkUIParam(pageName, textToFind, resultEditor);
+		} finally {
+			WorkbenchUtils.closeAllEditors();
+		}
+		textToFind = "myparam2";
+		resultEditor = new String[]{"a.xhtml", "String.java"};
+		try {
+			doJSPELHyperlinkUIParam(pageName, textToFind, resultEditor);
+		} finally {
+			WorkbenchUtils.closeAllEditors();
+		}
+	}
+	
+	private void doJSPELHyperlinkUIParam(String pageName, String template, String... editorName) throws BadLocationException {
+		IEditorPart editor = WorkbenchUtils.openEditor(pageName);
+		assertTrue(editor instanceof JSPMultiPageEditor);
+		JSPMultiPageEditor jspMultyPageEditor = (JSPMultiPageEditor) editor;
+		ISourceViewer viewer = jspMultyPageEditor.getSourceEditor().getTextViewer(); 
+		assertNotNull("Viewer couldn't be found for " + pageName, viewer);
+		IDocument document = viewer.getDocument();
+		IRegion reg = new FindReplaceDocumentAdapter(document).find(0,
+				template, true, true, false, false);
+		assertNotNull("Text: "+ template +" not found",reg);
+		
+		IHyperlink[] links = elHyperlinkDetector.detectHyperlinks(viewer, new Region(reg.getOffset() + reg.getLength() - 1, 0), true); 
+		
+		assertNotNull("Hyperlinks for EL:#{" + template + "} are not found",links);
+		
+		assertTrue("Hyperlinks for EL: #{" + template + "} are not found",links.length!=0);
+		
+		for(int i = 0; i < links.length; i++){
+			IHyperlink link = links[i];
+			assertNotNull(link.toString());
+			
+			link.open();
+			
+			IEditorPart resultEditor = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage().getActiveEditor();
+			assertEquals("Link " + i + " leads to a wrong editor.", editorName[i], resultEditor.getTitle());
+		}
+	}
+}
\ No newline at end of file


Property changes on: trunk/jsf/tests/org.jboss.tools.jsf.text.ext.test/src/org/jboss/tools/jsf/text/ext/test/JSPELHyperlinkUIParamTest.java
___________________________________________________________________
Added: svn:mime-type
   + text/plain

Modified: trunk/jsf/tests/org.jboss.tools.jsf.text.ext.test/src/org/jboss/tools/jsf/text/ext/test/JsfTextExtAllTests.java
===================================================================
--- trunk/jsf/tests/org.jboss.tools.jsf.text.ext.test/src/org/jboss/tools/jsf/text/ext/test/JsfTextExtAllTests.java	2012-07-17 23:39:35 UTC (rev 42626)
+++ trunk/jsf/tests/org.jboss.tools.jsf.text.ext.test/src/org/jboss/tools/jsf/text/ext/test/JsfTextExtAllTests.java	2012-07-18 00:27:14 UTC (rev 42627)
@@ -30,7 +30,8 @@
 				JSF2MessagesOpenOnTest.class,
 				JSF2CSSStylesheetOpenOnTest.class,
 				JSF2CCAttrsOpenOnTest.class,
-				JSF2XMLOpenOnTest.class),
+				JSF2XMLOpenOnTest.class,
+				JSPELHyperlinkUIParamTest.class),
 			"org.jboss.tools.jsf.text.ext.test",
 			new String[]{"projects/JSF2CompositeOpenOn"},
 			new String[]{"JSF2CompositeOpenOn"}));



More information about the jbosstools-commits mailing list