[jbosstools-commits] JBoss Tools SVN: r6925 - in trunk/seam: plugins/org.jboss.tools.seam.ui/src/org/jboss/tools/seam/ui/widget/editor and 8 other directories.
jbosstools-commits at lists.jboss.org
jbosstools-commits at lists.jboss.org
Fri Mar 14 06:48:22 EDT 2008
Author: akazakov
Date: 2008-03-14 06:48:21 -0400 (Fri, 14 Mar 2008)
New Revision: 6925
Added:
trunk/seam/tests/org.jboss.tools.seam.ui.test/projects/TestSeamELContentAssist/WebContent/WEB-INF/classes/
trunk/seam/tests/org.jboss.tools.seam.ui.test/projects/TestSeamELContentAssist/build/
trunk/seam/tests/org.jboss.tools.seam.ui.test/projects/TestSeamELContentAssist/src/action/demo/TestComponentForVarAttributes.class
trunk/seam/tests/org.jboss.tools.seam.ui.test/projects/TestSeamELContentAssist/src/action/org/domain/TestSeamELContentAssist/session/Authenticator.class
trunk/seam/tests/org.jboss.tools.seam.ui.test/projects/TestSeamSettingsPreferencesPage/
trunk/seam/tests/org.jboss.tools.seam.ui.test/projects/TestSeamSettingsPreferencesPage/.classpath
trunk/seam/tests/org.jboss.tools.seam.ui.test/projects/TestSeamSettingsPreferencesPage/.project
trunk/seam/tests/org.jboss.tools.seam.ui.test/projects/TestSeamSettingsPreferencesPage/bin/
trunk/seam/tests/org.jboss.tools.seam.ui.test/projects/TestSeamSettingsPreferencesPage/src/
trunk/seam/tests/org.jboss.tools.seam.ui.test/src/org/jboss/tools/seam/ui/test/preferences/SeamSettingsPreferencesPageTest.java
Removed:
trunk/seam/tests/org.jboss.tools.seam.ui.test/projects/TestSeamELContentAssist/src/action/demo/TestComponentForVarAttributes.java
trunk/seam/tests/org.jboss.tools.seam.ui.test/projects/TestSeamELContentAssist/src/action/org/domain/TestSeamELContentAssist/session/Authenticator.java
trunk/seam/tests/org.jboss.tools.seam.ui.test/src/org/jboss/tools/seam/ui/test/widget/
Modified:
trunk/seam/plugins/org.jboss.tools.seam.ui/src/org/jboss/tools/seam/ui/preferences/SeamSettingsPreferencePage.java
trunk/seam/plugins/org.jboss.tools.seam.ui/src/org/jboss/tools/seam/ui/widget/editor/CheckBoxFieldEditor.java
trunk/seam/tests/org.jboss.tools.seam.ui.test/src/org/jboss/tools/seam/ui/test/SeamUiAllTests.java
Log:
http://jira.jboss.com/jira/browse/JBIDE-1322 Added JUnit tests
Modified: trunk/seam/plugins/org.jboss.tools.seam.ui/src/org/jboss/tools/seam/ui/preferences/SeamSettingsPreferencePage.java
===================================================================
--- trunk/seam/plugins/org.jboss.tools.seam.ui/src/org/jboss/tools/seam/ui/preferences/SeamSettingsPreferencePage.java 2008-03-13 21:47:51 UTC (rev 6924)
+++ trunk/seam/plugins/org.jboss.tools.seam.ui/src/org/jboss/tools/seam/ui/preferences/SeamSettingsPreferencePage.java 2008-03-14 10:48:21 UTC (rev 6925)
@@ -133,6 +133,7 @@
}
}
});
+ suportSeam = warSeamProject!=null;
registerEditor(seamSupportCheckBox, generalGroup);
IFieldEditor seamRuntimeEditor =
@@ -294,8 +295,8 @@
registerEditor(testSourceFolderEditor, testGroup);
registerEditor(testPackageEditor, testGroup);
- setEnabledSeamSuport(warSeamProject!=null);
setRuntimeIsSelected(getSeamRuntimeName().length()>0);
+ setEnabledSeamSuport(isSeamSupported());
validate();
@@ -421,6 +422,7 @@
private boolean warning;
private void validate() {
+
warning = false;
if(!isSeamSupported()) {
@@ -638,10 +640,14 @@
}
}
- private String getValue(String editorName) {
+ public String getValue(String editorName) {
return editorRegistry.get(editorName).getValue().toString();
}
+ public IFieldEditor getEditor(String editorName) {
+ return editorRegistry.get(editorName);
+ }
+
private boolean isSeamSupported() {
return suportSeam;
}
@@ -700,7 +706,7 @@
private void setEnabledGroups(boolean enabled) {
for (Group group : groups) {
- group.setEnabled(enabled);
+ group.setEnabled(enabled);
}
}
Modified: trunk/seam/plugins/org.jboss.tools.seam.ui/src/org/jboss/tools/seam/ui/widget/editor/CheckBoxFieldEditor.java
===================================================================
--- trunk/seam/plugins/org.jboss.tools.seam.ui/src/org/jboss/tools/seam/ui/widget/editor/CheckBoxFieldEditor.java 2008-03-13 21:47:51 UTC (rev 6924)
+++ trunk/seam/plugins/org.jboss.tools.seam.ui/src/org/jboss/tools/seam/ui/widget/editor/CheckBoxFieldEditor.java 2008-03-14 10:48:21 UTC (rev 6925)
@@ -15,6 +15,7 @@
import java.beans.PropertyChangeListener;
import org.eclipse.core.runtime.Assert;
+import org.eclipse.swt.widgets.Button;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Control;
import org.jboss.tools.seam.ui.widget.field.CheckBoxField;
@@ -34,7 +35,6 @@
*/
public CheckBoxFieldEditor(String name, String label, Object defaultValue) {
super(name, label, defaultValue);
- // TODO Auto-generated constructor stub
}
/* (non-Javadoc)
@@ -42,7 +42,6 @@
*/
@Override
public Object[] getEditorControls(Object composite) {
- // TODO Auto-generated method stub
return new Control[] {createCheckBoxControl((Composite)composite)};
}
@@ -77,7 +76,6 @@
*/
@Override
public boolean isEditable() {
- // TODO Auto-generated method stub
return false;
}
@@ -85,8 +83,6 @@
* @see org.jboss.tools.seam.ui.internal.project.facet.IFieldEditor#save(java.lang.Object)
*/
public void save(Object object) {
- // TODO Auto-generated method stub
-
}
/* (non-Javadoc)
@@ -94,13 +90,16 @@
*/
@Override
public void setEditable(boolean ediatble) {
- // TODO Auto-generated method stub
+ }
+ @Override
+ public void setValue(Object newValue) {
+ ((Button)checkBoxControl).setSelection(Boolean.parseBoolean(newValue.toString()));
+ super.setValue(newValue);
}
@Override
public void doFillIntoGrid(Object parent) {
-
}
public void propertyChange(PropertyChangeEvent evt) {
@@ -112,8 +111,6 @@
*/
@Override
public int getNumberOfControls() {
- // TODO Auto-generated method stub
return 1;
}
-
-}
+}
\ No newline at end of file
Added: trunk/seam/tests/org.jboss.tools.seam.ui.test/projects/TestSeamELContentAssist/src/action/demo/TestComponentForVarAttributes.class
===================================================================
(Binary files differ)
Property changes on: trunk/seam/tests/org.jboss.tools.seam.ui.test/projects/TestSeamELContentAssist/src/action/demo/TestComponentForVarAttributes.class
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Deleted: trunk/seam/tests/org.jboss.tools.seam.ui.test/projects/TestSeamELContentAssist/src/action/demo/TestComponentForVarAttributes.java
===================================================================
--- trunk/seam/tests/org.jboss.tools.seam.ui.test/projects/TestSeamELContentAssist/src/action/demo/TestComponentForVarAttributes.java 2008-03-13 21:47:51 UTC (rev 6924)
+++ trunk/seam/tests/org.jboss.tools.seam.ui.test/projects/TestSeamELContentAssist/src/action/demo/TestComponentForVarAttributes.java 2008-03-14 10:48:21 UTC (rev 6925)
@@ -1,5 +0,0 @@
-package demo;
-
-public class TestComponentForVarAttributes {
-
-}
\ No newline at end of file
Added: trunk/seam/tests/org.jboss.tools.seam.ui.test/projects/TestSeamELContentAssist/src/action/org/domain/TestSeamELContentAssist/session/Authenticator.class
===================================================================
(Binary files differ)
Property changes on: trunk/seam/tests/org.jboss.tools.seam.ui.test/projects/TestSeamELContentAssist/src/action/org/domain/TestSeamELContentAssist/session/Authenticator.class
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Deleted: trunk/seam/tests/org.jboss.tools.seam.ui.test/projects/TestSeamELContentAssist/src/action/org/domain/TestSeamELContentAssist/session/Authenticator.java
===================================================================
--- trunk/seam/tests/org.jboss.tools.seam.ui.test/projects/TestSeamELContentAssist/src/action/org/domain/TestSeamELContentAssist/session/Authenticator.java 2008-03-13 21:47:51 UTC (rev 6924)
+++ trunk/seam/tests/org.jboss.tools.seam.ui.test/projects/TestSeamELContentAssist/src/action/org/domain/TestSeamELContentAssist/session/Authenticator.java 2008-03-14 10:48:21 UTC (rev 6925)
@@ -1,26 +0,0 @@
-package org.domain.TestSeamELContentAssist.session;
-
-import org.jboss.seam.annotations.In;
-import org.jboss.seam.annotations.Logger;
-import org.jboss.seam.annotations.Name;
-import org.jboss.seam.log.Log;
-import org.jboss.seam.security.Identity;
-
-
- at Name("authenticator")
-public class Authenticator
-{
- @Logger Log log;
-
- @In Identity identity;
-
- public boolean authenticate()
- {
- log.info("authenticating #{} #0", identity.getUsername());
- //write your authentication logic here,
- //return true if the authentication was
- //successful, false otherwise
- identity.addRole("admin");
- return true;
- }
-}
Added: trunk/seam/tests/org.jboss.tools.seam.ui.test/projects/TestSeamSettingsPreferencesPage/.classpath
===================================================================
--- trunk/seam/tests/org.jboss.tools.seam.ui.test/projects/TestSeamSettingsPreferencesPage/.classpath (rev 0)
+++ trunk/seam/tests/org.jboss.tools.seam.ui.test/projects/TestSeamSettingsPreferencesPage/.classpath 2008-03-14 10:48:21 UTC (rev 6925)
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+ <classpathentry kind="src" path="src"/>
+ <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
+ <classpathentry kind="output" path="bin"/>
+</classpath>
Added: trunk/seam/tests/org.jboss.tools.seam.ui.test/projects/TestSeamSettingsPreferencesPage/.project
===================================================================
--- trunk/seam/tests/org.jboss.tools.seam.ui.test/projects/TestSeamSettingsPreferencesPage/.project (rev 0)
+++ trunk/seam/tests/org.jboss.tools.seam.ui.test/projects/TestSeamSettingsPreferencesPage/.project 2008-03-14 10:48:21 UTC (rev 6925)
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>TestSeamSettingsPreferencesPage</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ <buildCommand>
+ <name>org.eclipse.jdt.core.javabuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ </buildSpec>
+ <natures>
+ <nature>org.eclipse.jdt.core.javanature</nature>
+ </natures>
+</projectDescription>
Modified: trunk/seam/tests/org.jboss.tools.seam.ui.test/src/org/jboss/tools/seam/ui/test/SeamUiAllTests.java
===================================================================
--- trunk/seam/tests/org.jboss.tools.seam.ui.test/src/org/jboss/tools/seam/ui/test/SeamUiAllTests.java 2008-03-13 21:47:51 UTC (rev 6924)
+++ trunk/seam/tests/org.jboss.tools.seam.ui.test/src/org/jboss/tools/seam/ui/test/SeamUiAllTests.java 2008-03-14 10:48:21 UTC (rev 6925)
@@ -19,28 +19,32 @@
import org.jboss.tools.seam.ui.test.ca.SeamELContentAssistTest;
import org.jboss.tools.seam.ui.test.hyperlink.SeamViewHyperlinkPartitionerTest;
import org.jboss.tools.seam.ui.test.preferences.SeamPreferencesPageTest;
+import org.jboss.tools.seam.ui.test.preferences.SeamSettingsPreferencesPageTest;
import org.jboss.tools.seam.ui.test.view.SeamComponentsViewAllTests;
import org.jboss.tools.seam.ui.test.wizard.OpenSeamComponentDialogTest;
import org.jboss.tools.seam.ui.test.wizard.SeamFormNewWizardTest;
import org.jboss.tools.seam.ui.test.wizard.SeamProjectNewWizardTest;
+import org.jboss.tools.test.util.ProjectImportTestSetup;
/**
* @author eskimo
*
*/
public class SeamUiAllTests {
-
+
public static Test suite() {
TestSuite suite = new TestSuite("Seam UI tests");
- suite.addTestSuite(OpenSeamComponentDialogTest.class);
- suite.addTest(SeamComponentsViewAllTests.suite());
- suite.addTestSuite(SeamProjectNewWizardTest.class);
- suite.addTestSuite(SeamFormNewWizardTest.class);
- suite.addTestSuite(SeamPreferencesPageTest.class);
- suite.addTestSuite(SeamViewHyperlinkPartitionerTest.class);
- suite.addTestSuite(SeamELContentAssistTest.class);
- suite.addTestSuite(SeamELContentAssistJbide1676Test.class);
- suite.addTestSuite(SeamELContentAssistJbide1645Test.class);
+// suite.addTestSuite(OpenSeamComponentDialogTest.class);
+// suite.addTest(SeamComponentsViewAllTests.suite());
+// suite.addTestSuite(SeamProjectNewWizardTest.class);
+// suite.addTestSuite(SeamFormNewWizardTest.class);
+// suite.addTestSuite(SeamPreferencesPageTest.class);
+// suite.addTestSuite(SeamViewHyperlinkPartitionerTest.class);
+// suite.addTestSuite(SeamELContentAssistTest.class);
+// suite.addTestSuite(SeamELContentAssistJbide1676Test.class);
+// suite.addTestSuite(SeamELContentAssistJbide1645Test.class);
+// suite.addTestSuite(SeamSettingsPreferencesPageTest.class);
+ suite.addTest(new ProjectImportTestSetup(new TestSuite(SeamSettingsPreferencesPageTest.class), "org.jboss.tools.seam.ui.test", "projects/TestSeamSettingsPreferencesPage", "TestSeamSettingsPreferencesPage"));
return suite;
}
-}
+}
\ No newline at end of file
Added: trunk/seam/tests/org.jboss.tools.seam.ui.test/src/org/jboss/tools/seam/ui/test/preferences/SeamSettingsPreferencesPageTest.java
===================================================================
--- trunk/seam/tests/org.jboss.tools.seam.ui.test/src/org/jboss/tools/seam/ui/test/preferences/SeamSettingsPreferencesPageTest.java (rev 0)
+++ trunk/seam/tests/org.jboss.tools.seam.ui.test/src/org/jboss/tools/seam/ui/test/preferences/SeamSettingsPreferencesPageTest.java 2008-03-14 10:48:21 UTC (rev 6925)
@@ -0,0 +1,131 @@
+ /*******************************************************************************
+ * Copyright (c) 2007 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.seam.ui.test.preferences;
+
+import java.io.File;
+import java.io.IOException;
+import java.net.URL;
+
+import junit.framework.TestCase;
+
+import org.eclipse.core.resources.IProject;
+import org.eclipse.core.resources.IResource;
+import org.eclipse.core.resources.IncrementalProjectBuilder;
+import org.eclipse.core.resources.ResourcesPlugin;
+import org.eclipse.core.runtime.FileLocator;
+import org.eclipse.core.runtime.Platform;
+import org.eclipse.core.runtime.preferences.IEclipsePreferences;
+import org.eclipse.jface.preference.PreferenceDialog;
+import org.jboss.tools.seam.core.ISeamProject;
+import org.jboss.tools.seam.core.SeamCorePlugin;
+import org.jboss.tools.seam.core.project.facet.SeamRuntime;
+import org.jboss.tools.seam.core.project.facet.SeamRuntimeManager;
+import org.jboss.tools.seam.core.project.facet.SeamVersion;
+import org.jboss.tools.seam.internal.core.project.facet.ISeamFacetDataModelProperties;
+import org.jboss.tools.seam.ui.preferences.SeamPreferencesMessages;
+import org.jboss.tools.seam.ui.preferences.SeamSettingsPreferencePage;
+import org.jboss.tools.seam.ui.widget.editor.IFieldEditor;
+import org.jboss.tools.test.util.WorkbenchUtils;
+import org.jboss.tools.test.util.xpl.EditorTestHelper;
+import org.osgi.framework.Bundle;
+
+/**
+ * @author Alexey Kazakov
+ */
+public class SeamSettingsPreferencesPageTest extends TestCase {
+
+ IProject project = null;
+ static String PROJECT_NAME = "TestSeamSettingsPreferencesPage";
+ static String MODEL_PACKAGE_NAME = "org.jboss.model";
+ static String ACTION_PACKAGE_NAME = "org.jboss.action";
+ static String TEST_PACKAGE_NAME = "org.jboss.test";
+ static String RUNTIME_NAME = "Seam 1.2.0 Seam Settings Page Test";
+
+ public SeamSettingsPreferencesPageTest() {
+ super("Seam Settings Preferences Page Tests");
+ }
+
+ protected void setUp() throws Exception {
+ IResource project = ResourcesPlugin.getWorkspace().getRoot().findMember(PROJECT_NAME);
+ assertNotNull(PROJECT_NAME + " project is not imported.", project);
+ this.project = project.getProject();
+ this.project.build(IncrementalProjectBuilder.FULL_BUILD, null);
+ EditorTestHelper.joinBackgroundActivities();
+ }
+
+ public void testSettingsPage() throws Exception {
+ PreferenceDialog dialog = WorkbenchUtils.createPropertyDialog("org.jboss.tools.seam.ui.propertyPages.SeamSettingsPreferencePage", project);
+ dialog.setBlockOnOpen(false);
+ dialog.open();
+ try {
+ SeamSettingsPreferencePage page = (SeamSettingsPreferencePage)dialog.getSelectedPage();
+ IFieldEditor seamSuport = page.getEditor(SeamPreferencesMessages.SEAM_SETTINGS_PREFERENCE_PAGE_SEAM_SUPPORT);
+ System.out.println("set true");
+ seamSuport.setValue("true");
+ System.out.println("end");
+
+ Bundle seamCoreTest = Platform.getBundle("org.jboss.tools.seam.core.test");
+ URL seamUrl = null;
+ try {
+ seamUrl = FileLocator.resolve(seamCoreTest.getEntry("/seam/seam-1.2.0"));
+ } catch (IOException e) {
+ fail("Can't resolve org.jboss.tools.seam.core.test/seam/seam-1.2.0");
+ }
+ File folder = new File(seamUrl.getPath());
+ SeamRuntimeManager manager = SeamRuntimeManager.getInstance();
+ assertNotNull("Cannot obtainSeamRuntimeManager instance", manager);
+ manager.addRuntime(RUNTIME_NAME, folder.getAbsolutePath(), SeamVersion.SEAM_1_2, true);
+
+ IFieldEditor seamRuntime = page.getEditor(ISeamFacetDataModelProperties.SEAM_RUNTIME_NAME);
+ SeamRuntime newRuntime = manager.findRuntimeByName(RUNTIME_NAME);
+ assertNotNull("New runtime was not added to SeamRuntimeManager.", newRuntime);
+ seamRuntime.setValue(newRuntime.getName());
+
+ IFieldEditor viewFolder = page.getEditor(ISeamFacetDataModelProperties.WEB_CONTENTS_FOLDER);
+ viewFolder.setValue("/" + PROJECT_NAME);
+
+ IFieldEditor modelPackageName = page.getEditor(ISeamFacetDataModelProperties.ENTITY_BEAN_PACKAGE_NAME);
+ modelPackageName.setValue(MODEL_PACKAGE_NAME);
+
+ IFieldEditor sessionPackageName = page.getEditor(ISeamFacetDataModelProperties.SESSION_BEAN_PACKAGE_NAME);
+ sessionPackageName.setValue(ACTION_PACKAGE_NAME);
+
+ IFieldEditor createTest = page.getEditor(ISeamFacetDataModelProperties.TEST_CREATING);
+ createTest.setValue("true");
+
+ IFieldEditor testPackageName = page.getEditor(ISeamFacetDataModelProperties.TEST_CASES_PACKAGE_NAME);
+ testPackageName.setValue(TEST_PACKAGE_NAME);
+
+ assertTrue("Settings page is not valid: " + page.getErrorMessage(), page.okToLeave());
+ page.performOk();
+ } finally {
+ dialog.close();
+ }
+
+ EditorTestHelper.joinBackgroundActivities();
+
+ ISeamProject seamProject = SeamCorePlugin.getSeamProject(project, false);
+ assertNotNull("Can't load seam project. It seems seam nature was not added to rpoject by seam settings page.", seamProject);
+
+ IEclipsePreferences pref = SeamCorePlugin.getSeamPreferences(project);
+ assertEquals("Seam settings version 1.1 property is not set", pref.get(ISeamFacetDataModelProperties.SEAM_SETTINGS_VERSION, ""), ISeamFacetDataModelProperties.SEAM_SETTINGS_VERSION_1_1);
+ assertEquals("Seam runtime property is not set", pref.get(ISeamFacetDataModelProperties.SEAM_RUNTIME_NAME, ""), RUNTIME_NAME);
+ assertEquals("Seam deployment type property is not set", pref.get(ISeamFacetDataModelProperties.JBOSS_AS_DEPLOY_AS, ""), ISeamFacetDataModelProperties.DEPLOY_AS_WAR);
+ assertEquals("Model package name property is not set", pref.get(ISeamFacetDataModelProperties.ENTITY_BEAN_PACKAGE_NAME, ""), MODEL_PACKAGE_NAME);
+ assertEquals("Model source folder property is not set", pref.get(ISeamFacetDataModelProperties.ENTITY_BEAN_SOURCE_FOLDER, ""), "/" + PROJECT_NAME + "/src");
+ assertEquals("Action package name property is not set", pref.get(ISeamFacetDataModelProperties.SESSION_BEAN_PACKAGE_NAME, ""), ACTION_PACKAGE_NAME);
+ assertEquals("Action source folder property is not set", pref.get(ISeamFacetDataModelProperties.SESSION_BEAN_SOURCE_FOLDER, ""), "/" + PROJECT_NAME + "/src");
+ assertEquals("Seam 'create tests' property is not set", pref.get(ISeamFacetDataModelProperties.TEST_CREATING, ""), "true");
+ assertEquals("Test project property is not set", pref.get(ISeamFacetDataModelProperties.SEAM_TEST_PROJECT, ""), PROJECT_NAME);
+ assertEquals("Test package name property is not set", pref.get(ISeamFacetDataModelProperties.TEST_CASES_PACKAGE_NAME, ""), TEST_PACKAGE_NAME);
+ assertEquals("Test source folder property is not set", pref.get(ISeamFacetDataModelProperties.TEST_SOURCE_FOLDER, ""), "/" + PROJECT_NAME + "/src");
+ }
+}
\ No newline at end of file
More information about the jbosstools-commits
mailing list