Author: akazakov
Date: 2010-09-21 12:02:47 -0400 (Tue, 21 Sep 2010)
New Revision: 25066
Added:
trunk/jsf/tests/org.jboss.tools.jsf.test/src/org/jboss/tools/jsf/kb/test/JsfKbAllTests.java
Modified:
trunk/jsf/tests/org.jboss.tools.jsf.test/META-INF/MANIFEST.MF
trunk/jsf/tests/org.jboss.tools.jsf.test/src/org/jboss/tools/jsf/kb/test/FaceletsKbModelTest.java
Log:
JBIDE-7113
https://jira.jboss.org/browse/JBIDE-7113
Modified: trunk/jsf/tests/org.jboss.tools.jsf.test/META-INF/MANIFEST.MF
===================================================================
--- trunk/jsf/tests/org.jboss.tools.jsf.test/META-INF/MANIFEST.MF 2010-09-21 16:01:58 UTC
(rev 25065)
+++ trunk/jsf/tests/org.jboss.tools.jsf.test/META-INF/MANIFEST.MF 2010-09-21 16:02:47 UTC
(rev 25066)
@@ -25,8 +25,9 @@
org.eclipse.ui.ide,
org.eclipse.ltk.core.refactoring,
org.eclipse.wst.validation,
- org.jboss.tools.common.el.core;bundle-version="3.2.0",
- org.jboss.tools.jst.jsp;bundle-version="3.2.0"
+ org.jboss.tools.common.el.core,
+ org.jboss.tools.jst.jsp,
+ org.jboss.tools.common.model.test
Bundle-Activator: org.jboss.tools.jsf.plugin.JsfTestPlugin
Bundle-ActivationPolicy: lazy
Bundle-Localization: plugin
Modified:
trunk/jsf/tests/org.jboss.tools.jsf.test/src/org/jboss/tools/jsf/kb/test/FaceletsKbModelTest.java
===================================================================
---
trunk/jsf/tests/org.jboss.tools.jsf.test/src/org/jboss/tools/jsf/kb/test/FaceletsKbModelTest.java 2010-09-21
16:01:58 UTC (rev 25065)
+++
trunk/jsf/tests/org.jboss.tools.jsf.test/src/org/jboss/tools/jsf/kb/test/FaceletsKbModelTest.java 2010-09-21
16:02:47 UTC (rev 25066)
@@ -12,12 +12,18 @@
import java.util.List;
+import junit.framework.TestCase;
+
import org.eclipse.core.resources.IFile;
import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.resources.IncrementalProjectBuilder;
-import org.eclipse.core.runtime.NullProgressMonitor;
+import org.eclipse.core.resources.ResourcesPlugin;
+import org.jboss.tools.common.el.core.resolver.ELContext;
+import org.jboss.tools.common.text.TextProposal;
import org.jboss.tools.jst.web.kb.IKbProject;
+import org.jboss.tools.jst.web.kb.KbQuery;
+import org.jboss.tools.jst.web.kb.KbQuery.Type;
+import org.jboss.tools.jst.web.kb.PageContextFactory;
+import org.jboss.tools.jst.web.kb.PageProcessor;
import org.jboss.tools.jst.web.kb.internal.scanner.LoadedDeclarations;
import org.jboss.tools.jst.web.kb.internal.scanner.ScannerException;
import org.jboss.tools.jst.web.kb.internal.scanner.XMLScanner;
@@ -25,30 +31,27 @@
import org.jboss.tools.test.util.JUnitUtils;
import org.jboss.tools.test.util.TestProjectProvider;
-import junit.framework.TestCase;
-
public class FaceletsKbModelTest extends TestCase {
+ private IProject testProject;
TestProjectProvider provider = null;
- IProject project = null;
boolean makeCopy = true;
public FaceletsKbModelTest() {
super("Kb Model Test");
}
- public void setUp() throws Exception {
- provider = new TestProjectProvider("org.jboss.tools.jsf.test",
- null,"TestKbModel" ,true);
- project = provider.getProject();
- project.refreshLocal(IResource.DEPTH_INFINITE, new NullProgressMonitor());
- this.project.build(IncrementalProjectBuilder.FULL_BUILD, null);
+ protected void setUp() throws Exception {
+ if(testProject==null) {
+ testProject =
ResourcesPlugin.getWorkspace().getRoot().getProject("TestKbModel");
+ assertNotNull("Can't load TestKbModel", testProject); //$NON-NLS-1$
+ }
}
private IKbProject getKbProject() {
IKbProject kbProject = null;
try {
- kbProject = (IKbProject)project.getNature(IKbProject.NATURE_ID);
+ kbProject = (IKbProject)testProject.getNature(IKbProject.NATURE_ID);
} catch (Exception e) {
JUnitUtils.fail("Cannot get seam nature.",e);
}
@@ -58,7 +61,7 @@
public void testTldXMLScanner() {
IKbProject kbProject = getKbProject();
- IFile f = project.getFile("WebContent/WEB-INF/faces-config.xml");
+ IFile f = testProject.getFile("WebContent/WEB-INF/faces-config.xml");
assertNotNull(f);
XMLScanner scanner = new XMLScanner();
List<ITagLibrary> ls = null;
@@ -72,7 +75,7 @@
assertTrue(ls.get(0).getComponents().length > 0);
ls = null;
- f = project.getFile("WebContent/facelet-taglib.xml");
+ f = testProject.getFile("WebContent/facelet-taglib.xml");
assertNotNull(f);
try {
LoadedDeclarations ds = scanner.parse(f, kbProject);
@@ -84,7 +87,7 @@
assertTrue(ls.get(0).getComponents().length > 0);
ls = null;
- f = project.getFile("WebContent/facelet-taglib2.xml");
+ f = testProject.getFile("WebContent/facelet-taglib2.xml");
assertNotNull(f);
try {
LoadedDeclarations ds = scanner.parse(f, kbProject);
@@ -96,9 +99,106 @@
assertTrue(ls.get(0).getComponents().length > 0);
}
+ /**
+ *
https://jira.jboss.org/jira/browse/JBIDE-6284
+ */
+ public void testFFacet() {
+ IFile file = testProject.getFile("WebContent/pages/inputUserName.xhtml");
+ ELContext context = PageContextFactory.createPageContext(file);
+ KbQuery query = new KbQuery();
+ query.setMask(true);
+ query.setOffset(356);
+ query.setType(Type.TAG_NAME);
+ query.setPrefix("f");
+
query.setUri("http://java.sun.com/jsf/core");
+ query.setValue("f:facet");
+
+ TextProposal[] proposals = PageProcessor.getInstance().getProposals(query, context);
+ for (TextProposal proposal : proposals) {
+ if("<f:facet
name=\"\">".equals(proposal.getReplacementString())) {
+ return;
+ }
+ }
+ fail("Can't find <f:facet name=\"\"> proposal.");
+ }
+
+ /**
+ *
https://jira.jboss.org/jira/browse/JBIDE-5231
+ */
+ public void testSeamPdf() {
+ IFile file =
testProject.getFile("WebContent/pages/testSeamPdfAndMail.xhtml");
+ ELContext context = PageContextFactory.createPageContext(file);
+ KbQuery query = new KbQuery();
+ query.setMask(true);
+ query.setOffset(356);
+ query.setType(Type.ATTRIBUTE_NAME);
+ query.setParentTags(new String[]{"p:document"});
+ query.setPrefix("p");
+
query.setUri("http://jboss.com/products/seam/pdf");
+ query.setValue("ori");
+
+ TextProposal[] proposals = PageProcessor.getInstance().getProposals(query, context);
+ for (TextProposal proposal : proposals) {
+ if("orientation".equals(proposal.getReplacementString())) {
+ return;
+ }
+ }
+ fail("Can't find <p:document orientation=\"\">
proposal.");
+ }
+
+ /**
+ *
https://jira.jboss.org/jira/browse/JBIDE-5198
+ */
+ public void testSeamMail() {
+ IFile file =
testProject.getFile("WebContent/pages/testSeamPdfAndMail.xhtml");
+ ELContext context = PageContextFactory.createPageContext(file);
+ KbQuery query = new KbQuery();
+ query.setMask(true);
+ query.setOffset(356);
+ query.setType(Type.ATTRIBUTE_NAME);
+ query.setParentTags(new String[]{"m:message"});
+ query.setPrefix("m");
+
query.setUri("http://jboss.com/products/seam/mail");
+ query.setValue("pre");
+
+ TextProposal[] proposals = PageProcessor.getInstance().getProposals(query, context);
+ for (TextProposal proposal : proposals) {
+ if("precedence".equals(proposal.getReplacementString())) {
+ return;
+ }
+ }
+ fail("Can't find <m:message precedence=\"\">
proposal.");
+ }
+
+ /**
+ *
https://jira.jboss.org/jira/browse/JBIDE-3875
+ */
+ public void testFacetNames() {
+ IFile file = testProject.getFile("WebContent/pages/facetname.xhtml");
+ ELContext context = PageContextFactory.createPageContext(file);
+ KbQuery query = new KbQuery();
+ query.setMask(true);
+ query.setOffset(302);
+ query.setType(Type.ATTRIBUTE_VALUE);
+ query.setPrefix("f");
+
query.setUri("http://java.sun.com/jsf/core");
+ query.setValue("h");
+ query.setParentTags(new String[]{"rich:page", "f:facet"});
+ query.setParent("name");
+ query.setStringQuery("h");
+
+ TextProposal[] proposals = PageProcessor.getInstance().getProposals(query, context);
+ for (TextProposal proposal : proposals) {
+ if("header".equals(proposal.getReplacementString())) {
+ return;
+ }
+ }
+ fail("Can't find \"header\" proposal.");
+ }
+
protected void tearDown() throws Exception {
if(provider != null) {
provider.dispose();
}
}
-}
+}
\ No newline at end of file
Added:
trunk/jsf/tests/org.jboss.tools.jsf.test/src/org/jboss/tools/jsf/kb/test/JsfKbAllTests.java
===================================================================
---
trunk/jsf/tests/org.jboss.tools.jsf.test/src/org/jboss/tools/jsf/kb/test/JsfKbAllTests.java
(rev 0)
+++
trunk/jsf/tests/org.jboss.tools.jsf.test/src/org/jboss/tools/jsf/kb/test/JsfKbAllTests.java 2010-09-21
16:02:47 UTC (rev 25066)
@@ -0,0 +1,33 @@
+/*******************************************************************************
+ * Copyright (c) 2010 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.kb.test;
+
+import junit.framework.Test;
+import junit.framework.TestSuite;
+
+import org.jboss.tools.common.model.util.test.XProjectImportTestSetUp;
+import org.jboss.tools.test.util.ProjectImportTestSetup;
+
+/**
+ * @author Alexey Kazakov
+ */
+public class JsfKbAllTests {
+
+ public static Test suite() {
+ TestSuite suite = new TestSuite(JsfKbAllTests.class.getName());
+ suite.addTestSuite(FaceletsKbModelTest.class);
+ ProjectImportTestSetup testSetup = new XProjectImportTestSetUp(suite,
+ "org.jboss.tools.jsf.test",
+ new String[]{"projects/TestKbModel"},
+ new String[]{"TestKbModel"});
+ return testSetup;
+ }
+}
\ No newline at end of file
Property changes on:
trunk/jsf/tests/org.jboss.tools.jsf.test/src/org/jboss/tools/jsf/kb/test/JsfKbAllTests.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain