[jbosstools-commits] JBoss Tools SVN: r42618 - in trunk/cdi/tests/org.jboss.tools.cdi.seam3.bot.test/src/org/jboss/tools/cdi/seam3/bot/test: tests and 1 other directory.
jbosstools-commits at lists.jboss.org
jbosstools-commits at lists.jboss.org
Tue Jul 17 08:28:03 EDT 2012
Author: jjankovi
Date: 2012-07-17 08:28:03 -0400 (Tue, 17 Jul 2012)
New Revision: 42618
Added:
trunk/cdi/tests/org.jboss.tools.cdi.seam3.bot.test/src/org/jboss/tools/cdi/seam3/bot/test/tests/SeamConfigCodeCompletionTest.java
Modified:
trunk/cdi/tests/org.jboss.tools.cdi.seam3.bot.test/src/org/jboss/tools/cdi/seam3/bot/test/CDISeam3AllBotTests.java
Log:
new test SeamConfigCodeCompletionTest implemented and added into test suite
Modified: trunk/cdi/tests/org.jboss.tools.cdi.seam3.bot.test/src/org/jboss/tools/cdi/seam3/bot/test/CDISeam3AllBotTests.java
===================================================================
--- trunk/cdi/tests/org.jboss.tools.cdi.seam3.bot.test/src/org/jboss/tools/cdi/seam3/bot/test/CDISeam3AllBotTests.java 2012-07-17 12:27:25 UTC (rev 42617)
+++ trunk/cdi/tests/org.jboss.tools.cdi.seam3.bot.test/src/org/jboss/tools/cdi/seam3/bot/test/CDISeam3AllBotTests.java 2012-07-17 12:28:03 UTC (rev 42618)
@@ -23,6 +23,7 @@
import org.jboss.tools.cdi.seam3.bot.test.tests.RequiresAnnotationTest;
import org.jboss.tools.cdi.seam3.bot.test.tests.ResourceOpenOnTest;
import org.jboss.tools.cdi.seam3.bot.test.tests.SeamConfigClassBaseOpenOnTest;
+import org.jboss.tools.cdi.seam3.bot.test.tests.SeamConfigCodeCompletionTest;
import org.jboss.tools.cdi.seam3.bot.test.tests.SeamConfigEEOpenOnTest;
import org.jboss.tools.cdi.seam3.bot.test.tests.SeamConfigInjectOpenOnTest;
import org.jboss.tools.cdi.seam3.bot.test.tests.SeamConfigValidationTest;
@@ -52,7 +53,8 @@
SeamConfigClassBaseOpenOnTest.class,
SeamConfigEEOpenOnTest.class,
SeamConfigInjectOpenOnTest.class,
- SeamConfigValidationTest.class
+ SeamConfigValidationTest.class,
+ SeamConfigCodeCompletionTest.class,
})
public class CDISeam3AllBotTests extends AbstractTestSuite {
Added: trunk/cdi/tests/org.jboss.tools.cdi.seam3.bot.test/src/org/jboss/tools/cdi/seam3/bot/test/tests/SeamConfigCodeCompletionTest.java
===================================================================
--- trunk/cdi/tests/org.jboss.tools.cdi.seam3.bot.test/src/org/jboss/tools/cdi/seam3/bot/test/tests/SeamConfigCodeCompletionTest.java (rev 0)
+++ trunk/cdi/tests/org.jboss.tools.cdi.seam3.bot.test/src/org/jboss/tools/cdi/seam3/bot/test/tests/SeamConfigCodeCompletionTest.java 2012-07-17 12:28:03 UTC (rev 42618)
@@ -0,0 +1,244 @@
+/*******************************************************************************
+ * Copyright (c) 2010-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.cdi.seam3.bot.test.tests;
+
+import java.util.Arrays;
+import java.util.List;
+
+import org.jboss.tools.cdi.bot.test.CDIConstants;
+import org.jboss.tools.cdi.seam3.bot.test.base.Seam3TestBase;
+import org.jboss.tools.cdi.seam3.bot.test.util.SeamLibrary;
+import org.jboss.tools.ui.bot.ext.helper.ContentAssistHelper;
+import org.junit.BeforeClass;
+import org.junit.Test;
+
+/**
+ *
+ * @author jjankovi
+ *
+ */
+public class SeamConfigCodeCompletionTest extends Seam3TestBase {
+
+ private static String projectName = "seamConfigCodeCompletion";
+ private static final String SEAM_CONFIG = "seam-beans.xml";
+
+ @BeforeClass
+ public static void setup() {
+ importSeam3ProjectWithLibrary(projectName, SeamLibrary.SOLDER_3_1);
+ openSeamConfig();
+ }
+
+ /**
+ * In context of <beans> ... </beans>
+ * Suggest all classes in available packages.
+ */
+ @Test
+ public void testClassesCodeCompletion() {
+
+ List<String> expectedProposalList = Arrays.asList("r:Envelope - test","r:Report - test");
+ ContentAssistHelper.checkContentAssistContent(bot,
+ SEAM_CONFIG, "<r:Report >", -1, 0, expectedProposalList, false);
+
+ }
+
+ /**
+ * In context of <beans> ... </beans>
+ * Suggest all annotation types in available packages.
+ */
+ @Test
+ public void testAnnotationsCodeCompletion() {
+
+ List<String> expectedProposalList = Arrays.asList("r:Q1 - test","r:S1 - test");
+ ContentAssistHelper.checkContentAssistContent(bot,
+ SEAM_CONFIG, "<r:Report >", -1, 0, expectedProposalList, false);
+
+ }
+
+ /**
+ * In context of tag header <r:Report | >
+ Suggest all fields available if Report is class;
+ */
+ @Test
+ public void testClassInFieldsCodeCompletion() {
+
+ List<String> expectedProposalList = Arrays.asList("annotatedValue");
+ ContentAssistHelper.checkContentAssistContent(bot,
+ SEAM_CONFIG, "<r:Report >", 10, 0, expectedProposalList, false);
+
+ }
+
+ /**
+ * In context of tag header <r:Report | >
+ Suggest all methods available if Report is annotation type.
+ */
+ @Test
+ public void testAnnotationInMethodsCodeCompletion() {
+
+ List<String> expectedProposalList = Arrays.asList("someMethod");
+ ContentAssistHelper.checkContentAssistContent(bot,
+ SEAM_CONFIG, "<r:S1 >", 6, 0, expectedProposalList, false);
+
+ }
+
+ /**
+ * In context of tag content <r:Report> | </r:Report>
+ Suggest <s:replaces/> and <s:modifies/> if Report is class;
+ */
+ @Test
+ public void testReplacesModifiesCodeCompletion() {
+
+ List<String> expectedProposalList = Arrays.asList("s:replaces", "s:modifies");
+ ContentAssistHelper.checkContentAssistContent(bot,
+ SEAM_CONFIG, "<r:Report >", 11, 0, expectedProposalList, false);
+
+ }
+
+ /**
+ * In context of tag content <r:Report> | </r:Report>
+ Suggest <s:parameters> if Report is class;
+ */
+ @Test
+ public void testParametersCodeCompletion() {
+
+ List<String> expectedProposalList = Arrays.asList("s:parameters");
+ ContentAssistHelper.checkContentAssistContent(bot,
+ SEAM_CONFIG, "<r:Report >", 11, 0, expectedProposalList, false);
+
+ }
+
+ /**
+ * In context of tag content <r:Report> | </r:Report>
+ Suggest all fields and methods available if Report is class;
+ */
+ @Test
+ public void testClassFieldsAndMethodsCodeCompletion() {
+
+ List<String> expectedProposalList = Arrays.asList("r:value", "r:someMethod");
+ ContentAssistHelper.checkContentAssistContent(bot,
+ SEAM_CONFIG, "<r:Envelope >", 13, 0, expectedProposalList, false);
+
+ }
+
+ /**
+ * In context of tag content <r:Report> | </r:Report>
+ Suggest all methods available if Report is annotation type;
+ */
+ @Test
+ public void testAnnotationMethodsCodeCompletion() {
+
+ List<String> expectedProposalList = Arrays.asList("r:someMethod");
+ ContentAssistHelper.checkContentAssistContent(bot,
+ SEAM_CONFIG, "<r:S1 >", 7, 0, expectedProposalList, false);
+
+ }
+
+ /**
+ * In context of tag content <r:Report> | </r:Report>
+ Suggest all annotation types in available packages.
+ */
+ @Test
+ public void testAnnotationsInPackageCodeCompletion() {
+
+ List<String> expectedProposalList = Arrays.asList("r:Q1 - test", "r:S1 - test");
+ ContentAssistHelper.checkContentAssistContent(bot,
+ SEAM_CONFIG, "<r:Report >", 11, 0, expectedProposalList, false);
+
+ }
+
+ /**
+ In context of <r:Report> <r:address> | </r:address> </r:Report>
+ Suggest <s:value> if 'address' is class field or annotation type method;
+ */
+ @Test
+ public void testValueCodeCompletion() {
+
+ List<String> expectedProposalList = Arrays.asList("s:value");
+ ContentAssistHelper.checkContentAssistContent(bot,
+ SEAM_CONFIG, "<r:annotatedValue>", 18, 0, expectedProposalList, false);
+
+ }
+
+ /**
+ In context of <r:Report> <r:address> | </r:address> </r:Report>
+ Suggest <s:entry> if 'address' is class field or annotation type method (maybe we should check that it is map);
+ */
+ @Test
+ public void testEntryCodeCompletion() {
+
+ List<String> expectedProposalList = Arrays.asList("s:entry");
+ ContentAssistHelper.checkContentAssistContent(bot,
+ SEAM_CONFIG, "<r:annotatedValue>", 18, 0, expectedProposalList, false);
+
+ }
+
+ /**
+ In context of <r:Report> <r:address> | </r:address> </r:Report>
+ Suggest <s:parameters> if 'address' is class method;
+ */
+ @Test
+ public void testMethodParametersCodeCompletion() {
+
+ List<String> expectedProposalList = Arrays.asList("s:parameters");
+ ContentAssistHelper.checkContentAssistContent(bot,
+ SEAM_CONFIG, "<r:someMethod>", 14, 0, expectedProposalList, false);
+
+ }
+
+ /**
+ In context of <s:entry> | </s:entry>
+ Suggest <s:value> and <s:key>
+ */
+ @Test
+ public void testValueAndKeyCodeCompletion() {
+
+ List<String> expectedProposalList = Arrays.asList("s:key", "s:value");
+ ContentAssistHelper.checkContentAssistContent(bot,
+ SEAM_CONFIG, "<s:entry>", 9, 0, expectedProposalList, false);
+
+ }
+
+ /**
+ In context of <s:value> | </s:value> or <s:key> | </s:key>
+ Suggest all classes in available packages since value may be set as an inline bean.
+ */
+ @Test
+ public void testInlineBeanCompletion() {
+
+ List<String> expectedProposalList = Arrays.asList("r:Report - test",
+ "r:Envelope - test", "r:Q1 - test", "r:S1 - test");
+ ContentAssistHelper.checkContentAssistContent(bot,
+ SEAM_CONFIG, "<s:value>", 9, 0, expectedProposalList, false);
+
+ ContentAssistHelper.checkContentAssistContent(bot,
+ SEAM_CONFIG, "<s:key>", 7, 0, expectedProposalList, false);
+
+ }
+
+ /**
+ In context of xmlns:*="|"
+ Suggest "urn:java:" with available packages.
+ */
+ @Test
+ public void testAvailablePackagesCompletion() {
+
+ List<String> expectedProposalList = Arrays.asList("test", "org", "com");
+ ContentAssistHelper.checkContentAssistContent(bot,
+ SEAM_CONFIG, "xmlns:s=\"", 9, 0, expectedProposalList, false);
+
+ }
+
+ private static void openSeamConfig() {
+ packageExplorer.openFile(projectName, CDIConstants.WEBCONTENT,
+ CDIConstants.WEB_INF, SEAM_CONFIG);
+ bot.cTabItem("Source").activate();
+ }
+
+}
More information about the jbosstools-commits
mailing list