gatein SVN: r4442 - in components/wsrp/trunk: api/src/main/java/org/gatein/wsrp/api and 11 other directories.
by do-not-reply@jboss.org
Author: chris.laprun(a)jboss.com
Date: 2010-09-30 08:12:57 -0400 (Thu, 30 Sep 2010)
New Revision: 4442
Added:
components/wsrp/trunk/api/src/main/java/org/gatein/wsrp/api/context/
components/wsrp/trunk/api/src/main/java/org/gatein/wsrp/api/context/ConsumerStructureProvider.java
components/wsrp/trunk/api/src/main/java/org/gatein/wsrp/api/context/ProducerContext.java
components/wsrp/trunk/api/src/main/java/org/gatein/wsrp/api/session/
components/wsrp/trunk/api/src/main/java/org/gatein/wsrp/api/session/SessionEvent.java
components/wsrp/trunk/api/src/main/java/org/gatein/wsrp/api/session/SessionEventBroadcaster.java
components/wsrp/trunk/api/src/main/java/org/gatein/wsrp/api/session/SessionEventListener.java
Removed:
components/wsrp/trunk/api/src/main/java/org/gatein/wsrp/api/PortalStructureProvider.java
components/wsrp/trunk/api/src/main/java/org/gatein/wsrp/api/SessionEvent.java
components/wsrp/trunk/api/src/main/java/org/gatein/wsrp/api/SessionEventBroadcaster.java
components/wsrp/trunk/api/src/main/java/org/gatein/wsrp/api/SessionEventListener.java
Modified:
components/wsrp/trunk/admin-gui/src/main/java/org/gatein/wsrp/admin/ui/ConsumerBean.java
components/wsrp/trunk/consumer/src/main/java/org/gatein/wsrp/WSRPConsumer.java
components/wsrp/trunk/consumer/src/main/java/org/gatein/wsrp/consumer/WSRPConsumerImpl.java
components/wsrp/trunk/consumer/src/main/java/org/gatein/wsrp/consumer/handlers/SessionHandler.java
components/wsrp/trunk/consumer/src/main/java/org/gatein/wsrp/consumer/migration/InMemoryMigrationService.java
components/wsrp/trunk/consumer/src/main/java/org/gatein/wsrp/consumer/migration/MigrationService.java
components/wsrp/trunk/consumer/src/main/java/org/gatein/wsrp/consumer/registry/AbstractConsumerRegistry.java
components/wsrp/trunk/consumer/src/main/java/org/gatein/wsrp/consumer/registry/ConsumerRegistry.java
components/wsrp/trunk/consumer/src/test/java/org/gatein/wsrp/test/support/MockConsumerRegistry.java
components/wsrp/trunk/consumer/src/test/java/org/gatein/wsrp/test/support/MockWSRPConsumer.java
components/wsrp/trunk/producer/pom.xml
components/wsrp/trunk/producer/src/main/java/org/gatein/wsrp/producer/WSRPProducer.java
components/wsrp/trunk/producer/src/main/java/org/gatein/wsrp/producer/WSRPProducerImpl.java
components/wsrp/trunk/producer/src/main/java/org/gatein/wsrp/producer/v1/WSRP1Producer.java
Log:
- GTNWSRP-77: Moved session-related API to a session package and added context package to gather APIs related to the context in which the WSRP runs. Renamed PortalStructureProvider to ConsumerStructureProvider to be more explicit.
- GTNWSRP-44: Add hook for producer to retrieve list of supported locales from host portal.
Modified: components/wsrp/trunk/admin-gui/src/main/java/org/gatein/wsrp/admin/ui/ConsumerBean.java
===================================================================
--- components/wsrp/trunk/admin-gui/src/main/java/org/gatein/wsrp/admin/ui/ConsumerBean.java 2010-09-30 11:19:34 UTC (rev 4441)
+++ components/wsrp/trunk/admin-gui/src/main/java/org/gatein/wsrp/admin/ui/ConsumerBean.java 2010-09-30 12:12:57 UTC (rev 4442)
@@ -30,7 +30,7 @@
import org.gatein.pc.api.PortletInvokerException;
import org.gatein.wsrp.WSRPConsumer;
import org.gatein.wsrp.WSRPUtils;
-import org.gatein.wsrp.api.PortalStructureProvider;
+import org.gatein.wsrp.api.context.ConsumerStructureProvider;
import org.gatein.wsrp.consumer.EndpointConfigurationInfo;
import org.gatein.wsrp.consumer.ProducerInfo;
import org.gatein.wsrp.consumer.RegistrationInfo;
@@ -615,7 +615,7 @@
}
ImportInfo info = consumer.importPortlets(currentExport.getExport(), WSRPUtils.transform(portletsToImport, SELECTABLE_TO_HANDLE));
- PortalStructureProvider structureProvider = consumer.getMigrationService().getStructureProvider();
+ ConsumerStructureProvider structureProvider = consumer.getMigrationService().getStructureProvider();
int importCount = 0;
for (SelectablePortletHandle importedPortlet : portletsToImport)
{
@@ -682,9 +682,9 @@
private boolean selected;
private String page;
private String window;
- private PortalStructureProvider provider;
+ private ConsumerStructureProvider provider;
- public SelectablePortletHandle(String handle, PortalStructureProvider provider)
+ public SelectablePortletHandle(String handle, ConsumerStructureProvider provider)
{
this.handle = handle;
this.provider = provider;
@@ -772,7 +772,7 @@
private List<FailedPortletsDisplay> failedPortlets;
private List<SelectablePortletHandle> exportedPortlets;
- public ExportInfoDisplay(ExportInfo export, Locale locale, PortalStructureProvider provider)
+ public ExportInfoDisplay(ExportInfo export, Locale locale, ConsumerStructureProvider provider)
{
this.export = export;
this.locale = locale;
Deleted: components/wsrp/trunk/api/src/main/java/org/gatein/wsrp/api/PortalStructureProvider.java
===================================================================
--- components/wsrp/trunk/api/src/main/java/org/gatein/wsrp/api/PortalStructureProvider.java 2010-09-30 11:19:34 UTC (rev 4441)
+++ components/wsrp/trunk/api/src/main/java/org/gatein/wsrp/api/PortalStructureProvider.java 2010-09-30 12:12:57 UTC (rev 4442)
@@ -1,41 +0,0 @@
-/*
- * JBoss, a division of Red Hat
- * Copyright 2010, Red Hat Middleware, LLC, and individual
- * contributors as indicated by the @authors tag. See the
- * copyright.txt in the distribution for a full listing of
- * individual contributors.
- *
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
-
-package org.gatein.wsrp.api;
-
-import org.gatein.pc.api.PortletContext;
-
-import java.util.List;
-
-/**
- * @author <a href="mailto:chris.laprun@jboss.com">Chris Laprun</a>
- * @version $Revision$
- */
-public interface PortalStructureProvider
-{
- List<String> getPageIdentifiers();
-
- List<String> getWindowIdentifiersFor(String pageId);
-
- void assignPortletToWindow(PortletContext portletContext, String windowId, String pageId);
-}
Deleted: components/wsrp/trunk/api/src/main/java/org/gatein/wsrp/api/SessionEvent.java
===================================================================
--- components/wsrp/trunk/api/src/main/java/org/gatein/wsrp/api/SessionEvent.java 2010-09-30 11:19:34 UTC (rev 4441)
+++ components/wsrp/trunk/api/src/main/java/org/gatein/wsrp/api/SessionEvent.java 2010-09-30 12:12:57 UTC (rev 4442)
@@ -1,42 +0,0 @@
-/******************************************************************************
- * JBoss, a division of Red Hat *
- * Copyright 2009, Red Hat Middleware, LLC, and individual *
- * contributors as indicated by the @authors tag. See the *
- * copyright.txt in the distribution for a full listing of *
- * individual contributors. *
- * *
- * This is free software; you can redistribute it and/or modify it *
- * under the terms of the GNU Lesser General Public License as *
- * published by the Free Software Foundation; either version 2.1 of *
- * the License, or (at your option) any later version. *
- * *
- * This software is distributed in the hope that it will be useful, *
- * but WITHOUT ANY WARRANTY; without even the implied warranty of *
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU *
- * Lesser General Public License for more details. *
- * *
- * You should have received a copy of the GNU Lesser General Public *
- * License along with this software; if not, write to the Free *
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA *
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org. *
- ******************************************************************************/
-
-package org.gatein.wsrp.api;
-
-import javax.servlet.http.HttpSession;
-
-/**
- * @author <a href="mailto:chris.laprun@jboss.com">Chris Laprun</a>
- * @version $Revision$
- */
-public interface SessionEvent
-{
- enum SessionEventType
- {
- SESSION_CREATED, SESSION_DESTROYED
- }
-
- SessionEventType getType();
-
- HttpSession getSession();
-}
Deleted: components/wsrp/trunk/api/src/main/java/org/gatein/wsrp/api/SessionEventBroadcaster.java
===================================================================
--- components/wsrp/trunk/api/src/main/java/org/gatein/wsrp/api/SessionEventBroadcaster.java 2010-09-30 11:19:34 UTC (rev 4441)
+++ components/wsrp/trunk/api/src/main/java/org/gatein/wsrp/api/SessionEventBroadcaster.java 2010-09-30 12:12:57 UTC (rev 4442)
@@ -1,37 +0,0 @@
-/******************************************************************************
- * JBoss, a division of Red Hat *
- * Copyright 2009, Red Hat Middleware, LLC, and individual *
- * contributors as indicated by the @authors tag. See the *
- * copyright.txt in the distribution for a full listing of *
- * individual contributors. *
- * *
- * This is free software; you can redistribute it and/or modify it *
- * under the terms of the GNU Lesser General Public License as *
- * published by the Free Software Foundation; either version 2.1 of *
- * the License, or (at your option) any later version. *
- * *
- * This software is distributed in the hope that it will be useful, *
- * but WITHOUT ANY WARRANTY; without even the implied warranty of *
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU *
- * Lesser General Public License for more details. *
- * *
- * You should have received a copy of the GNU Lesser General Public *
- * License along with this software; if not, write to the Free *
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA *
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org. *
- ******************************************************************************/
-
-package org.gatein.wsrp.api;
-
-/**
- * @author <a href="mailto:chris.laprun@jboss.com">Chris Laprun</a>
- * @version $Revision$
- */
-public interface SessionEventBroadcaster
-{
- public void registerListener(String listenerId, SessionEventListener listener);
-
- public void unregisterListener(String listenerId);
-
- public void notifyListenersOf(SessionEvent event);
-}
Deleted: components/wsrp/trunk/api/src/main/java/org/gatein/wsrp/api/SessionEventListener.java
===================================================================
--- components/wsrp/trunk/api/src/main/java/org/gatein/wsrp/api/SessionEventListener.java 2010-09-30 11:19:34 UTC (rev 4441)
+++ components/wsrp/trunk/api/src/main/java/org/gatein/wsrp/api/SessionEventListener.java 2010-09-30 12:12:57 UTC (rev 4442)
@@ -1,33 +0,0 @@
-/******************************************************************************
- * JBoss, a division of Red Hat *
- * Copyright 2009, Red Hat Middleware, LLC, and individual *
- * contributors as indicated by the @authors tag. See the *
- * copyright.txt in the distribution for a full listing of *
- * individual contributors. *
- * *
- * This is free software; you can redistribute it and/or modify it *
- * under the terms of the GNU Lesser General Public License as *
- * published by the Free Software Foundation; either version 2.1 of *
- * the License, or (at your option) any later version. *
- * *
- * This software is distributed in the hope that it will be useful, *
- * but WITHOUT ANY WARRANTY; without even the implied warranty of *
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU *
- * Lesser General Public License for more details. *
- * *
- * You should have received a copy of the GNU Lesser General Public *
- * License along with this software; if not, write to the Free *
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA *
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org. *
- ******************************************************************************/
-
-package org.gatein.wsrp.api;
-
-/**
- * @author <a href="mailto:chris.laprun@jboss.com">Chris Laprun</a>
- * @version $Revision$
- */
-public interface SessionEventListener
-{
- void onSessionEvent(SessionEvent event);
-}
Added: components/wsrp/trunk/api/src/main/java/org/gatein/wsrp/api/context/ConsumerStructureProvider.java
===================================================================
--- components/wsrp/trunk/api/src/main/java/org/gatein/wsrp/api/context/ConsumerStructureProvider.java (rev 0)
+++ components/wsrp/trunk/api/src/main/java/org/gatein/wsrp/api/context/ConsumerStructureProvider.java 2010-09-30 12:12:57 UTC (rev 4442)
@@ -0,0 +1,41 @@
+/*
+ * JBoss, a division of Red Hat
+ * Copyright 2010, Red Hat Middleware, LLC, and individual
+ * contributors as indicated by the @authors tag. See the
+ * copyright.txt in the distribution for a full listing of
+ * individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+
+package org.gatein.wsrp.api.context;
+
+import org.gatein.pc.api.PortletContext;
+
+import java.util.List;
+
+/**
+ * @author <a href="mailto:chris.laprun@jboss.com">Chris Laprun</a>
+ * @version $Revision$
+ */
+public interface ConsumerStructureProvider
+{
+ List<String> getPageIdentifiers();
+
+ List<String> getWindowIdentifiersFor(String pageId);
+
+ void assignPortletToWindow(PortletContext portletContext, String windowId, String pageId);
+}
Added: components/wsrp/trunk/api/src/main/java/org/gatein/wsrp/api/context/ProducerContext.java
===================================================================
--- components/wsrp/trunk/api/src/main/java/org/gatein/wsrp/api/context/ProducerContext.java (rev 0)
+++ components/wsrp/trunk/api/src/main/java/org/gatein/wsrp/api/context/ProducerContext.java 2010-09-30 12:12:57 UTC (rev 4442)
@@ -0,0 +1,36 @@
+/*
+ * JBoss, a division of Red Hat
+ * Copyright 2010, Red Hat Middleware, LLC, and individual
+ * contributors as indicated by the @authors tag. See the
+ * copyright.txt in the distribution for a full listing of
+ * individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+
+package org.gatein.wsrp.api.context;
+
+import java.util.List;
+import java.util.Locale;
+
+/**
+ * @author <a href="mailto:chris.laprun@jboss.com">Chris Laprun</a>
+ * @version $Revision$
+ */
+public interface ProducerContext
+{
+ List<Locale> getSupportedLocales();
+}
Copied: components/wsrp/trunk/api/src/main/java/org/gatein/wsrp/api/session/SessionEvent.java (from rev 4428, components/wsrp/trunk/api/src/main/java/org/gatein/wsrp/api/SessionEvent.java)
===================================================================
--- components/wsrp/trunk/api/src/main/java/org/gatein/wsrp/api/session/SessionEvent.java (rev 0)
+++ components/wsrp/trunk/api/src/main/java/org/gatein/wsrp/api/session/SessionEvent.java 2010-09-30 12:12:57 UTC (rev 4442)
@@ -0,0 +1,42 @@
+/*
+ * JBoss, a division of Red Hat
+ * Copyright 2010, Red Hat Middleware, LLC, and individual
+ * contributors as indicated by the @authors tag. See the
+ * copyright.txt in the distribution for a full listing of
+ * individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+
+package org.gatein.wsrp.api.session;
+
+import javax.servlet.http.HttpSession;
+
+/**
+ * @author <a href="mailto:chris.laprun@jboss.com">Chris Laprun</a>
+ * @version $Revision$
+ */
+public interface SessionEvent
+{
+ enum SessionEventType
+ {
+ SESSION_CREATED, SESSION_DESTROYED
+ }
+
+ SessionEventType getType();
+
+ HttpSession getSession();
+}
Copied: components/wsrp/trunk/api/src/main/java/org/gatein/wsrp/api/session/SessionEventBroadcaster.java (from rev 4428, components/wsrp/trunk/api/src/main/java/org/gatein/wsrp/api/SessionEventBroadcaster.java)
===================================================================
--- components/wsrp/trunk/api/src/main/java/org/gatein/wsrp/api/session/SessionEventBroadcaster.java (rev 0)
+++ components/wsrp/trunk/api/src/main/java/org/gatein/wsrp/api/session/SessionEventBroadcaster.java 2010-09-30 12:12:57 UTC (rev 4442)
@@ -0,0 +1,37 @@
+/*
+ * JBoss, a division of Red Hat
+ * Copyright 2010, Red Hat Middleware, LLC, and individual
+ * contributors as indicated by the @authors tag. See the
+ * copyright.txt in the distribution for a full listing of
+ * individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+
+package org.gatein.wsrp.api.session;
+
+/**
+ * @author <a href="mailto:chris.laprun@jboss.com">Chris Laprun</a>
+ * @version $Revision$
+ */
+public interface SessionEventBroadcaster
+{
+ public void registerListener(String listenerId, SessionEventListener listener);
+
+ public void unregisterListener(String listenerId);
+
+ public void notifyListenersOf(SessionEvent event);
+}
Copied: components/wsrp/trunk/api/src/main/java/org/gatein/wsrp/api/session/SessionEventListener.java (from rev 4428, components/wsrp/trunk/api/src/main/java/org/gatein/wsrp/api/SessionEventListener.java)
===================================================================
--- components/wsrp/trunk/api/src/main/java/org/gatein/wsrp/api/session/SessionEventListener.java (rev 0)
+++ components/wsrp/trunk/api/src/main/java/org/gatein/wsrp/api/session/SessionEventListener.java 2010-09-30 12:12:57 UTC (rev 4442)
@@ -0,0 +1,33 @@
+/*
+ * JBoss, a division of Red Hat
+ * Copyright 2010, Red Hat Middleware, LLC, and individual
+ * contributors as indicated by the @authors tag. See the
+ * copyright.txt in the distribution for a full listing of
+ * individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+
+package org.gatein.wsrp.api.session;
+
+/**
+ * @author <a href="mailto:chris.laprun@jboss.com">Chris Laprun</a>
+ * @version $Revision$
+ */
+public interface SessionEventListener
+{
+ void onSessionEvent(SessionEvent event);
+}
Modified: components/wsrp/trunk/consumer/src/main/java/org/gatein/wsrp/WSRPConsumer.java
===================================================================
--- components/wsrp/trunk/consumer/src/main/java/org/gatein/wsrp/WSRPConsumer.java 2010-09-30 11:19:34 UTC (rev 4441)
+++ components/wsrp/trunk/consumer/src/main/java/org/gatein/wsrp/WSRPConsumer.java 2010-09-30 12:12:57 UTC (rev 4442)
@@ -26,7 +26,7 @@
import org.gatein.pc.api.PortletInvoker;
import org.gatein.pc.api.PortletInvokerException;
import org.gatein.pc.api.invocation.PortletInvocation;
-import org.gatein.wsrp.api.SessionEventListener;
+import org.gatein.wsrp.api.session.SessionEventListener;
import org.gatein.wsrp.consumer.ProducerInfo;
import org.gatein.wsrp.consumer.RefreshResult;
import org.gatein.wsrp.consumer.handlers.ProducerSessionInformation;
Modified: components/wsrp/trunk/consumer/src/main/java/org/gatein/wsrp/consumer/WSRPConsumerImpl.java
===================================================================
--- components/wsrp/trunk/consumer/src/main/java/org/gatein/wsrp/consumer/WSRPConsumerImpl.java 2010-09-30 11:19:34 UTC (rev 4441)
+++ components/wsrp/trunk/consumer/src/main/java/org/gatein/wsrp/consumer/WSRPConsumerImpl.java 2010-09-30 12:12:57 UTC (rev 4442)
@@ -46,7 +46,7 @@
import org.gatein.wsrp.WSRPConsumer;
import org.gatein.wsrp.WSRPTypeFactory;
import org.gatein.wsrp.WSRPUtils;
-import org.gatein.wsrp.api.SessionEvent;
+import org.gatein.wsrp.api.session.SessionEvent;
import org.gatein.wsrp.consumer.handlers.InvocationDispatcher;
import org.gatein.wsrp.consumer.handlers.ProducerSessionInformation;
import org.gatein.wsrp.consumer.handlers.SessionHandler;
Modified: components/wsrp/trunk/consumer/src/main/java/org/gatein/wsrp/consumer/handlers/SessionHandler.java
===================================================================
--- components/wsrp/trunk/consumer/src/main/java/org/gatein/wsrp/consumer/handlers/SessionHandler.java 2010-09-30 11:19:34 UTC (rev 4441)
+++ components/wsrp/trunk/consumer/src/main/java/org/gatein/wsrp/consumer/handlers/SessionHandler.java 2010-09-30 12:12:57 UTC (rev 4442)
@@ -29,8 +29,8 @@
import org.gatein.pc.api.PortletInvokerException;
import org.gatein.pc.api.invocation.PortletInvocation;
import org.gatein.wsrp.WSRPTypeFactory;
-import org.gatein.wsrp.api.SessionEvent;
-import org.gatein.wsrp.api.SessionEventListener;
+import org.gatein.wsrp.api.session.SessionEvent;
+import org.gatein.wsrp.api.session.SessionEventListener;
import org.gatein.wsrp.consumer.WSRPConsumerImpl;
import org.gatein.wsrp.consumer.portlet.info.WSRPPortletInfo;
import org.gatein.wsrp.handler.RequestHeaderClientHandler;
Modified: components/wsrp/trunk/consumer/src/main/java/org/gatein/wsrp/consumer/migration/InMemoryMigrationService.java
===================================================================
--- components/wsrp/trunk/consumer/src/main/java/org/gatein/wsrp/consumer/migration/InMemoryMigrationService.java 2010-09-30 11:19:34 UTC (rev 4441)
+++ components/wsrp/trunk/consumer/src/main/java/org/gatein/wsrp/consumer/migration/InMemoryMigrationService.java 2010-09-30 12:12:57 UTC (rev 4442)
@@ -24,7 +24,7 @@
package org.gatein.wsrp.consumer.migration;
import org.gatein.common.util.ParameterValidation;
-import org.gatein.wsrp.api.PortalStructureProvider;
+import org.gatein.wsrp.api.context.ConsumerStructureProvider;
import java.util.ArrayList;
import java.util.List;
@@ -38,14 +38,14 @@
public class InMemoryMigrationService implements MigrationService
{
private SortedMap<Long, ExportInfo> exportInfos;
- private PortalStructureProvider structureProvider;
+ private ConsumerStructureProvider structureProvider;
- public PortalStructureProvider getStructureProvider()
+ public ConsumerStructureProvider getStructureProvider()
{
return structureProvider;
}
- public void setStructureProvider(PortalStructureProvider structureProvider)
+ public void setStructureProvider(ConsumerStructureProvider structureProvider)
{
this.structureProvider = structureProvider;
}
Modified: components/wsrp/trunk/consumer/src/main/java/org/gatein/wsrp/consumer/migration/MigrationService.java
===================================================================
--- components/wsrp/trunk/consumer/src/main/java/org/gatein/wsrp/consumer/migration/MigrationService.java 2010-09-30 11:19:34 UTC (rev 4441)
+++ components/wsrp/trunk/consumer/src/main/java/org/gatein/wsrp/consumer/migration/MigrationService.java 2010-09-30 12:12:57 UTC (rev 4442)
@@ -23,7 +23,7 @@
package org.gatein.wsrp.consumer.migration;
-import org.gatein.wsrp.api.PortalStructureProvider;
+import org.gatein.wsrp.api.context.ConsumerStructureProvider;
import java.util.List;
@@ -33,9 +33,9 @@
*/
public interface MigrationService
{
- PortalStructureProvider getStructureProvider();
+ ConsumerStructureProvider getStructureProvider();
- void setStructureProvider(PortalStructureProvider structureProvider);
+ void setStructureProvider(ConsumerStructureProvider structureProvider);
List<ExportInfo> getAvailableExportInfos();
Modified: components/wsrp/trunk/consumer/src/main/java/org/gatein/wsrp/consumer/registry/AbstractConsumerRegistry.java
===================================================================
--- components/wsrp/trunk/consumer/src/main/java/org/gatein/wsrp/consumer/registry/AbstractConsumerRegistry.java 2010-09-30 11:19:34 UTC (rev 4441)
+++ components/wsrp/trunk/consumer/src/main/java/org/gatein/wsrp/consumer/registry/AbstractConsumerRegistry.java 2010-09-30 12:12:57 UTC (rev 4442)
@@ -29,7 +29,7 @@
import org.gatein.pc.federation.FederatedPortletInvoker;
import org.gatein.pc.federation.FederatingPortletInvoker;
import org.gatein.wsrp.WSRPConsumer;
-import org.gatein.wsrp.api.SessionEventBroadcaster;
+import org.gatein.wsrp.api.session.SessionEventBroadcaster;
import org.gatein.wsrp.consumer.ConsumerException;
import org.gatein.wsrp.consumer.ProducerInfo;
import org.gatein.wsrp.consumer.WSRPConsumerImpl;
Modified: components/wsrp/trunk/consumer/src/main/java/org/gatein/wsrp/consumer/registry/ConsumerRegistry.java
===================================================================
--- components/wsrp/trunk/consumer/src/main/java/org/gatein/wsrp/consumer/registry/ConsumerRegistry.java 2010-09-30 11:19:34 UTC (rev 4441)
+++ components/wsrp/trunk/consumer/src/main/java/org/gatein/wsrp/consumer/registry/ConsumerRegistry.java 2010-09-30 12:12:57 UTC (rev 4442)
@@ -1,6 +1,6 @@
/*
* JBoss, a division of Red Hat
- * Copyright 2009, Red Hat Middleware, LLC, and individual
+ * Copyright 2010, Red Hat Middleware, LLC, and individual
* contributors as indicated by the @authors tag. See the
* copyright.txt in the distribution for a full listing of
* individual contributors.
@@ -25,7 +25,7 @@
import org.gatein.pc.federation.FederatingPortletInvoker;
import org.gatein.wsrp.WSRPConsumer;
-import org.gatein.wsrp.api.SessionEventBroadcaster;
+import org.gatein.wsrp.api.session.SessionEventBroadcaster;
import org.gatein.wsrp.consumer.ConsumerException;
import org.gatein.wsrp.consumer.ProducerInfo;
import org.gatein.wsrp.consumer.migration.MigrationService;
Modified: components/wsrp/trunk/consumer/src/test/java/org/gatein/wsrp/test/support/MockConsumerRegistry.java
===================================================================
--- components/wsrp/trunk/consumer/src/test/java/org/gatein/wsrp/test/support/MockConsumerRegistry.java 2010-09-30 11:19:34 UTC (rev 4441)
+++ components/wsrp/trunk/consumer/src/test/java/org/gatein/wsrp/test/support/MockConsumerRegistry.java 2010-09-30 12:12:57 UTC (rev 4442)
@@ -1,32 +1,32 @@
-/******************************************************************************
- * JBoss, a division of Red Hat *
- * Copyright 2009, Red Hat Middleware, LLC, and individual *
- * contributors as indicated by the @authors tag. See the *
- * copyright.txt in the distribution for a full listing of *
- * individual contributors. *
- * *
- * This is free software; you can redistribute it and/or modify it *
- * under the terms of the GNU Lesser General Public License as *
- * published by the Free Software Foundation; either version 2.1 of *
- * the License, or (at your option) any later version. *
- * *
- * This software is distributed in the hope that it will be useful, *
- * but WITHOUT ANY WARRANTY; without even the implied warranty of *
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU *
- * Lesser General Public License for more details. *
- * *
- * You should have received a copy of the GNU Lesser General Public *
- * License along with this software; if not, write to the Free *
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA *
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org. *
- ******************************************************************************/
+/*
+ * JBoss, a division of Red Hat
+ * Copyright 2010, Red Hat Middleware, LLC, and individual
+ * contributors as indicated by the @authors tag. See the
+ * copyright.txt in the distribution for a full listing of
+ * individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
package org.gatein.wsrp.test.support;
import org.gatein.common.util.ParameterValidation;
import org.gatein.pc.federation.FederatingPortletInvoker;
import org.gatein.wsrp.WSRPConsumer;
-import org.gatein.wsrp.api.SessionEventBroadcaster;
+import org.gatein.wsrp.api.session.SessionEventBroadcaster;
import org.gatein.wsrp.consumer.ConsumerException;
import org.gatein.wsrp.consumer.EndpointConfigurationInfo;
import org.gatein.wsrp.consumer.ProducerInfo;
Modified: components/wsrp/trunk/consumer/src/test/java/org/gatein/wsrp/test/support/MockWSRPConsumer.java
===================================================================
--- components/wsrp/trunk/consumer/src/test/java/org/gatein/wsrp/test/support/MockWSRPConsumer.java 2010-09-30 11:19:34 UTC (rev 4441)
+++ components/wsrp/trunk/consumer/src/test/java/org/gatein/wsrp/test/support/MockWSRPConsumer.java 2010-09-30 12:12:57 UTC (rev 4442)
@@ -34,7 +34,7 @@
import org.gatein.pc.api.state.PropertyChange;
import org.gatein.pc.api.state.PropertyMap;
import org.gatein.wsrp.WSRPConsumer;
-import org.gatein.wsrp.api.SessionEvent;
+import org.gatein.wsrp.api.session.SessionEvent;
import org.gatein.wsrp.consumer.ProducerInfo;
import org.gatein.wsrp.consumer.RefreshResult;
import org.gatein.wsrp.consumer.handlers.ProducerSessionInformation;
Modified: components/wsrp/trunk/producer/pom.xml
===================================================================
--- components/wsrp/trunk/producer/pom.xml 2010-09-30 11:19:34 UTC (rev 4441)
+++ components/wsrp/trunk/producer/pom.xml 2010-09-30 12:12:57 UTC (rev 4442)
@@ -21,7 +21,8 @@
~ 02110-1301 USA, or see the FSF site: http://www.fsf.org.
-->
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<parent>
<groupId>org.gatein.wsrp</groupId>
<artifactId>wsrp-parent</artifactId>
@@ -41,6 +42,10 @@
<groupId>org.gatein.wsrp</groupId>
<artifactId>wsrp-common</artifactId>
</dependency>
+ <dependency>
+ <groupId>org.gatein.wsrp</groupId>
+ <artifactId>wsrp-integration-api</artifactId>
+ </dependency>
<dependency>
<groupId>org.gatein.common</groupId>
Modified: components/wsrp/trunk/producer/src/main/java/org/gatein/wsrp/producer/WSRPProducer.java
===================================================================
--- components/wsrp/trunk/producer/src/main/java/org/gatein/wsrp/producer/WSRPProducer.java 2010-09-30 11:19:34 UTC (rev 4441)
+++ components/wsrp/trunk/producer/src/main/java/org/gatein/wsrp/producer/WSRPProducer.java 2010-09-30 12:12:57 UTC (rev 4442)
@@ -26,6 +26,7 @@
import org.gatein.exports.ExportManager;
import org.gatein.pc.api.PortletInvoker;
import org.gatein.registration.RegistrationManager;
+import org.gatein.wsrp.api.context.ProducerContext;
import org.gatein.wsrp.producer.config.ProducerConfigurationChangeListener;
import org.gatein.wsrp.producer.config.ProducerConfigurationService;
@@ -98,4 +99,8 @@
* @param exportManager the ExportManager to be used by this WSRPProducer
*/
void setExportManager(ExportManager exportManager);
+
+ ProducerContext getProducerContext();
+
+ void setProducerContext(ProducerContext producerContext);
}
Modified: components/wsrp/trunk/producer/src/main/java/org/gatein/wsrp/producer/WSRPProducerImpl.java
===================================================================
--- components/wsrp/trunk/producer/src/main/java/org/gatein/wsrp/producer/WSRPProducerImpl.java 2010-09-30 11:19:34 UTC (rev 4441)
+++ components/wsrp/trunk/producer/src/main/java/org/gatein/wsrp/producer/WSRPProducerImpl.java 2010-09-30 12:12:57 UTC (rev 4442)
@@ -34,6 +34,8 @@
import org.gatein.registration.RegistrationLocal;
import org.gatein.registration.RegistrationManager;
import org.gatein.wsrp.WSRPConstants;
+import org.gatein.wsrp.WSRPUtils;
+import org.gatein.wsrp.api.context.ProducerContext;
import org.gatein.wsrp.producer.config.ProducerConfiguration;
import org.gatein.wsrp.producer.config.ProducerConfigurationService;
import org.gatein.wsrp.producer.config.ProducerRegistrationRequirements;
@@ -150,6 +152,9 @@
/** export manager */
private ExportManager exportManager;
+ /** producer context */
+ private ProducerContext producerContext;
+
private boolean started = false;
// On-demand class holder Singleton pattern (multi-thread safe)
@@ -360,6 +365,16 @@
this.exportManager = exportManger;
}
+ public ProducerContext getProducerContext()
+ {
+ return producerContext;
+ }
+
+ public void setProducerContext(ProducerContext producerContext)
+ {
+ this.producerContext = producerContext;
+ }
+
public ExportManager getExportManager()
{
if (exportManager == null)
@@ -384,9 +399,9 @@
registrationRequirements.addRegistrationPropertyChangeListener(registrationManager);
registrationManager.setPolicy(registrationRequirements.getPolicy());
-
+
registrationManager.getPolicy().addPortletContextChangeListener(registrationManager);
-
+
started = true;
}
}
@@ -512,7 +527,14 @@
public List<String> getSupportedLocales()
{
- return WSRPConstants.getDefaultLocales(); // todo: avoid hardcoding this at some point...
+ if (producerContext != null)
+ {
+ return WSRPUtils.convertLocalesToRFC3066LanguageTags(producerContext.getSupportedLocales());
+ }
+ else
+ {
+ return WSRPConstants.getDefaultLocales();
+ }
}
public void usingStrictModeChangedTo(boolean strictMode)
Modified: components/wsrp/trunk/producer/src/main/java/org/gatein/wsrp/producer/v1/WSRP1Producer.java
===================================================================
--- components/wsrp/trunk/producer/src/main/java/org/gatein/wsrp/producer/v1/WSRP1Producer.java 2010-09-30 11:19:34 UTC (rev 4441)
+++ components/wsrp/trunk/producer/src/main/java/org/gatein/wsrp/producer/v1/WSRP1Producer.java 2010-09-30 12:12:57 UTC (rev 4442)
@@ -26,6 +26,7 @@
import org.gatein.exports.ExportManager;
import org.gatein.pc.api.PortletInvoker;
import org.gatein.registration.RegistrationManager;
+import org.gatein.wsrp.api.context.ProducerContext;
import org.gatein.wsrp.producer.ProducerHolder;
import org.gatein.wsrp.producer.WSRPProducer;
import org.gatein.wsrp.producer.config.ProducerConfigurationService;
@@ -180,6 +181,16 @@
producer.setExportManager(exportManager);
}
+ public ProducerContext getProducerContext()
+ {
+ return producer.getProducerContext();
+ }
+
+ public void setProducerContext(ProducerContext producerContext)
+ {
+ producer.setProducerContext(producerContext);
+ }
+
public V1ServiceDescription getServiceDescription(V1GetServiceDescription gs) throws V1InvalidRegistration, V1OperationFailed
{
try
14 years, 2 months
gatein SVN: r4441 - portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/candidate.
by do-not-reply@jboss.org
Author: hangnguyen
Date: 2010-09-30 07:19:34 -0400 (Thu, 30 Sep 2010)
New Revision: 4441
Added:
portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/candidate/Test_POR_01_002_SignInByAdminAccount.html
portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/candidate/Test_POR_01_003_SignInByNormalAccount.html
portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/candidate/Test_POR_01_004_SignInWithBlankUserNameAndPassword.html
portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/candidate/Test_POR_01_005_SignInByUnregisteredUserName.html
portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/candidate/Test_POR_01_008_SignInByClickTheseAcoountOnHomepage.html
portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/candidate/Test_POR_06_002_ChangeSkinForUser.html
portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/candidate/Test_POR_07_002_ChangeLanguage.html
portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/candidate/Test_POR_07_003_CheckDisplayLanguageOfPortalInPublicMode.html
portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/candidate/Test_POR_07_004_CheckDisplayLanguageOfPortalInPrivateModeWithDemoAccount.html
portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/candidate/Test_POR_07_006_CheckDisplayLanguageOfPortalAfterChangeLanguageInOrganization.html
Log:
TESTVN-1635 - Manage folders in selegen with GTNPORTAL product
Added: portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/candidate/Test_POR_01_002_SignInByAdminAccount.html
===================================================================
--- portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/candidate/Test_POR_01_002_SignInByAdminAccount.html (rev 0)
+++ portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/candidate/Test_POR_01_002_SignInByAdminAccount.html 2010-09-30 11:19:34 UTC (rev 4441)
@@ -0,0 +1,72 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head profile="http://selenium-ide.openqa.org/profiles/test-case">
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+<link rel="selenium.base" href="" />
+<title>Test_POR_01_002_SignInByAdminAccount</title>
+</head>
+<body>
+<table cellpadding="1" cellspacing="1" border="1">
+<thead>
+<tr><td rowspan="1" colspan="3">Test_POR_01_002_SignInByAdminAccount</td></tr>
+</thead><tbody>
+<tr>
+ <td>open</td>
+ <td>/portal/public/classic/</td>
+ <td></td>
+</tr>
+<tr>
+ <td>windowMaximize</td>
+ <td></td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>--Login by Admin account--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Sign in</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>username</td>
+ <td>root</td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>username</td>
+ <td>root</td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>password</td>
+ <td>gtn</td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>//div[@id='UIPortalLoginFormAction']/div/div/div</td>
+ <td></td>
+</tr>
+<tr>
+ <td>verifyTextPresent</td>
+ <td>Root Root</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=Sign out</td>
+ <td></td>
+</tr>
+<tr>
+ <td>verifyTextPresent</td>
+ <td>Sign in</td>
+ <td></td>
+</tr>
+
+</tbody></table>
+</body>
+</html>
Added: portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/candidate/Test_POR_01_003_SignInByNormalAccount.html
===================================================================
--- portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/candidate/Test_POR_01_003_SignInByNormalAccount.html (rev 0)
+++ portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/candidate/Test_POR_01_003_SignInByNormalAccount.html 2010-09-30 11:19:34 UTC (rev 4441)
@@ -0,0 +1,112 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head profile="http://selenium-ide.openqa.org/profiles/test-case">
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+<link rel="selenium.base" href="" />
+<title>Test_POR_01_003_SignInByNormalAccount</title>
+</head>
+<body>
+<table cellpadding="1" cellspacing="1" border="1">
+<thead>
+<tr><td rowspan="1" colspan="3">Test_POR_01_003_SignInByNormalAccount</td></tr>
+</thead><tbody>
+<tr>
+ <td>open</td>
+ <td>/portal/public/classic/</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>--Login by Demo account--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>windowMaximize</td>
+ <td></td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Sign in</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>username</td>
+ <td></td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>username</td>
+ <td>demo</td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>password</td>
+ <td>gtn</td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>//div[@id='UIPortalLoginFormAction']/div/div/div</td>
+ <td></td>
+</tr>
+<tr>
+ <td>verifyText</td>
+ <td>link=Demo gtn</td>
+ <td>Demo gtn</td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=Sign out</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>--Login by Mary account--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Sign in</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Sign in</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>username</td>
+ <td></td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>username</td>
+ <td>mary</td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>password</td>
+ <td>gtn</td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>//div[@id='UIPortalLoginFormAction']/div/div/div</td>
+ <td></td>
+</tr>
+<tr>
+ <td>verifyText</td>
+ <td>link=Mary Kelly</td>
+ <td>Mary Kelly</td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=Sign out</td>
+ <td></td>
+</tr>
+
+</tbody></table>
+</body>
+</html>
Added: portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/candidate/Test_POR_01_004_SignInWithBlankUserNameAndPassword.html
===================================================================
--- portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/candidate/Test_POR_01_004_SignInWithBlankUserNameAndPassword.html (rev 0)
+++ portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/candidate/Test_POR_01_004_SignInWithBlankUserNameAndPassword.html 2010-09-30 11:19:34 UTC (rev 4441)
@@ -0,0 +1,112 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head profile="http://selenium-ide.openqa.org/profiles/test-case">
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+<link rel="selenium.base" href="" />
+<title>Test_POR_01_004_SignInWithBlankUserNameAndPassword</title>
+</head>
+<body>
+<table cellpadding="1" cellspacing="1" border="1">
+<thead>
+<tr><td rowspan="1" colspan="3">Test_POR_01_004_SignInWithBlankUserNameAndPassword</td></tr>
+</thead><tbody>
+<tr>
+ <td>open</td>
+ <td>/portal/public/classic/</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>--Sign in with blank password</td>
+ <td></td>
+</tr>
+<tr>
+ <td>windowMaximize</td>
+ <td></td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Sign in</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>username</td>
+ <td>root</td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>username</td>
+ <td>root</td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>//div[@id='UIPortalLoginFormAction']/div/div/div/</td>
+ <td></td>
+</tr>
+<tr>
+ <td>open</td>
+ <td>/portal/public/classic/</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>--Sign in with blank username</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Sign in</td>
+ <td></td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>password</td>
+ <td>gtn</td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>//div[@id='UIPortalLoginFormAction']/div/div/div/</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>username</td>
+ <td>root</td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>username</td>
+ <td>root</td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>password</td>
+ <td>gtn</td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[@id='UIPortalLoginFormAction']/table/tbody/tr/td/div/div/div//a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[@id='UIPortalLoginFormAction']/table/tbody/tr/td/div/div/div//a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Sign out</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=Sign out</td>
+ <td></td>
+</tr>
+
+</tbody></table>
+</body>
+</html>
Added: portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/candidate/Test_POR_01_005_SignInByUnregisteredUserName.html
===================================================================
--- portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/candidate/Test_POR_01_005_SignInByUnregisteredUserName.html (rev 0)
+++ portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/candidate/Test_POR_01_005_SignInByUnregisteredUserName.html 2010-09-30 11:19:34 UTC (rev 4441)
@@ -0,0 +1,97 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head profile="http://selenium-ide.openqa.org/profiles/test-case">
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+<link rel="selenium.base" href="" />
+<title>Test_POR_01_005_SignInByUnregisteredUserName</title>
+</head>
+<body>
+<table cellpadding="1" cellspacing="1" border="1">
+<thead>
+<tr><td rowspan="1" colspan="3">Test_POR_01_005_SignInByUnregisteredUserName</td></tr>
+</thead><tbody>
+<tr>
+ <td>open</td>
+ <td>/portal/public/classic/</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAt</td>
+ <td>link=Sign in</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>username</td>
+ <td></td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>username</td>
+ <td>POR_01_005</td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>password</td>
+ <td>POR_01_005</td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>//div[@id='UIPortalLoginFormAction']/div/div/div/</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>password</td>
+ <td></td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>password</td>
+ <td>POR_01_005</td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=Sign in</td>
+ <td></td>
+</tr>
+<tr>
+ <td>verifyTextPresent</td>
+ <td>Sign in failed. Wrong username or password.</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForValue</td>
+ <td>username</td>
+ <td>POR_01_005</td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>username</td>
+ <td>root</td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>password</td>
+ <td>gtn</td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=Sign in</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Sign out</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=Sign out</td>
+ <td></td>
+</tr>
+
+</tbody></table>
+</body>
+</html>
Added: portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/candidate/Test_POR_01_008_SignInByClickTheseAcoountOnHomepage.html
===================================================================
--- portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/candidate/Test_POR_01_008_SignInByClickTheseAcoountOnHomepage.html (rev 0)
+++ portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/candidate/Test_POR_01_008_SignInByClickTheseAcoountOnHomepage.html 2010-09-30 11:19:34 UTC (rev 4441)
@@ -0,0 +1,117 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head profile="http://selenium-ide.openqa.org/profiles/test-case">
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+<link rel="selenium.base" href="" />
+<title>Test_POR_01_008_SignInByClickTheseAcoountOnHomepage</title>
+</head>
+<body>
+<table cellpadding="1" cellspacing="1" border="1">
+<thead>
+<tr><td rowspan="1" colspan="3">Test_POR_01_008_SignInByClickTheseAcoountOnHomepage</td></tr>
+</thead><tbody>
+<tr>
+ <td>open</td>
+ <td>/portal/public/classic/</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Sign In by Click These Account on Home page --</td>
+ <td></td>
+</tr>
+<tr>
+ <td>windowMaximize</td>
+ <td></td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=Administrator</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Root Root</td>
+ <td></td>
+</tr>
+<tr>
+ <td>verifyText</td>
+ <td>link=Root Root</td>
+ <td>Root Root</td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=Sign out</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=Manager</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=John Anthony</td>
+ <td></td>
+</tr>
+<tr>
+ <td>verifyText</td>
+ <td>link=John Anthony</td>
+ <td>John Anthony</td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Sign out</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=User</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Mary Kelly</td>
+ <td></td>
+</tr>
+<tr>
+ <td>verifyText</td>
+ <td>link=Mary Kelly</td>
+ <td>Mary Kelly</td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=Sign out</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Demo</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Demo gtn</td>
+ <td></td>
+</tr>
+<tr>
+ <td>verifyText</td>
+ <td>link=Demo gtn</td>
+ <td>Demo gtn</td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Sign out</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=Sign out</td>
+ <td></td>
+</tr>
+
+</tbody></table>
+</body>
+</html>
Added: portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/candidate/Test_POR_06_002_ChangeSkinForUser.html
===================================================================
--- portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/candidate/Test_POR_06_002_ChangeSkinForUser.html (rev 0)
+++ portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/candidate/Test_POR_06_002_ChangeSkinForUser.html 2010-09-30 11:19:34 UTC (rev 4441)
@@ -0,0 +1,187 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head profile="http://selenium-ide.openqa.org/profiles/test-case">
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+<link rel="selenium.base" href="" />
+<title>Test_POR_06_002_ChangeSkinForUser</title>
+</head>
+<body>
+<table cellpadding="1" cellspacing="1" border="1">
+<thead>
+<tr><td rowspan="1" colspan="3">Test_POR_06_002_ChangeSkinForUser</td></tr>
+</thead><tbody>
+<tr>
+ <td>open</td>
+ <td>/portal/public/classic/</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Change skin for user--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>windowMaximize</td>
+ <td></td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Sign in</td>
+ <td></td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>username</td>
+ <td>root</td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>password</td>
+ <td>gtn</td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>//div[@id='UIPortalLoginFormAction']/div/div/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Change to Simple skin--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Change Skin</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Change Skin</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[@id='UITabContent']/div/div/div[1]/div[2]/div[2]/div/div/div</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[@id='UITabContent']/div/div/div[1]/div[2]/div[2]/div/div/div</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=Apply</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForText</td>
+ <td>//div[@id='UIBreadcumbsPortlet']/div[1]/div/div/div/div[1]</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=Sign out</td>
+ <td></td>
+</tr>
+<tr>
+ <td>verifyTitle</td>
+ <td>Home Page</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Check displaying skin when sign out-- </td>
+ <td></td>
+</tr>
+<tr>
+ <td>open</td>
+ <td>/portal/public/classic/</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Sign in again--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>windowMaximize</td>
+ <td></td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Sign in</td>
+ <td></td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>username</td>
+ <td>root</td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>password</td>
+ <td>gtn</td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>//div[@id='UIPortalLoginFormAction']/div/div/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Check displaying skin when sign in again--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>verifyTitle</td>
+ <td>Home Page</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Return to Default skin --</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Change Skin</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Change Skin</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[@id='UITabContent']/div/div/div[1]/div[2]/div[1]/div/div/div</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[@id='UITabContent']/div/div/div[1]/div[2]/div[1]/div/div/div</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=Apply</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForText</td>
+ <td>//div[@id='UIBreadcumbsPortlet']/div[1]/div/div/div/a</td>
+ <td>Home</td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=Sign out</td>
+ <td></td>
+</tr>
+
+</tbody></table>
+</body>
+</html>
Added: portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/candidate/Test_POR_07_002_ChangeLanguage.html
===================================================================
--- portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/candidate/Test_POR_07_002_ChangeLanguage.html (rev 0)
+++ portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/candidate/Test_POR_07_002_ChangeLanguage.html 2010-09-30 11:19:34 UTC (rev 4441)
@@ -0,0 +1,202 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head profile="http://selenium-ide.openqa.org/profiles/test-case">
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+<link rel="selenium.base" href="" />
+<title>Test_POR_07_002_ChangeLanguage</title>
+</head>
+<body>
+<table cellpadding="1" cellspacing="1" border="1">
+<thead>
+<tr><td rowspan="1" colspan="3">Test_POR_07_002_ChangeLanguage</td></tr>
+</thead><tbody>
+<tr>
+ <td>open</td>
+ <td>/portal/public/classic/</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Change language --</td>
+ <td></td>
+</tr>
+<tr>
+ <td>windowMaximize</td>
+ <td></td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Sign in</td>
+ <td></td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>username</td>
+ <td>root</td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>password</td>
+ <td>gtn</td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>//div[@id='UIPortalLoginFormAction']/div/div/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Change language -- </td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Change Language</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Change Language</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[@id='UITabContent']/div/div/div/div/div/div[4]/div[2]</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[@id='UITabContent']/div/div/div/div/div/div[4]/div[2]</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=Apply</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForTextPresent</td>
+ <td>Accueil</td>
+ <td></td>
+</tr>
+<tr>
+ <td>verifyTextPresent</td>
+ <td>Accueil</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=Déconnexion</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Check displaying language when sign out--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForTextPresent</td>
+ <td>Home</td>
+ <td></td>
+</tr>
+<tr>
+ <td>verifyTextPresent</td>
+ <td>Home</td>
+ <td></td>
+</tr>
+<tr>
+ <td>open</td>
+ <td>/portal/public/classic/</td>
+ <td></td>
+</tr>
+<tr>
+ <td>windowMaximize</td>
+ <td></td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Sign in</td>
+ <td></td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>username</td>
+ <td>root</td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>password</td>
+ <td>gtn</td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>//div[@id='UIPortalLoginFormAction']/div/div/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Check displaying language when sign in again--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForTextPresent</td>
+ <td>Accueil</td>
+ <td></td>
+</tr>
+<tr>
+ <td>verifyTextPresent</td>
+ <td>Accueil</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Change language to English--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Changer la langue</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Changer la langue</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[@id='UITabContent']/div/div/div/div/div/div[2]/div[2]</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[@id='UITabContent']/div/div/div/div/div/div[2]/div[2]</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=Appliquer</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForTextPresent</td>
+ <td>Home</td>
+ <td></td>
+</tr>
+<tr>
+ <td>verifyTextPresent</td>
+ <td>Home</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=Sign out</td>
+ <td></td>
+</tr>
+
+</tbody></table>
+</body>
+</html>
Added: portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/candidate/Test_POR_07_003_CheckDisplayLanguageOfPortalInPublicMode.html
===================================================================
--- portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/candidate/Test_POR_07_003_CheckDisplayLanguageOfPortalInPublicMode.html (rev 0)
+++ portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/candidate/Test_POR_07_003_CheckDisplayLanguageOfPortalInPublicMode.html 2010-09-30 11:19:34 UTC (rev 4441)
@@ -0,0 +1,92 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head profile="http://selenium-ide.openqa.org/profiles/test-case">
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+<link rel="selenium.base" href="" />
+<title>Test_POR_07_003_CheckDisplayLanguageOfPortalInPublicMode</title>
+</head>
+<body>
+<table cellpadding="1" cellspacing="1" border="1">
+<thead>
+<tr><td rowspan="1" colspan="3">Test_POR_07_003_CheckDisplayLanguageOfPortalInPublicMode</td></tr>
+</thead><tbody>
+<tr>
+ <td>open</td>
+ <td>/portal/public/classic/</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-Change Language from English to Vietnamese-</td>
+ <td></td>
+</tr>
+<tr>
+ <td>windowMaximize</td>
+ <td></td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Change Language</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Change Language</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Vietnamese</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Vietnamese</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Apply</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=Apply</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-Change Language from Vietnamese to English -</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Thay đổi ngôn ngữ</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Tiếng Anh</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Tiếng Anh</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Áp dụng</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=Áp dụng</td>
+ <td></td>
+</tr>
+
+</tbody></table>
+</body>
+</html>
Added: portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/candidate/Test_POR_07_004_CheckDisplayLanguageOfPortalInPrivateModeWithDemoAccount.html
===================================================================
--- portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/candidate/Test_POR_07_004_CheckDisplayLanguageOfPortalInPrivateModeWithDemoAccount.html (rev 0)
+++ portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/candidate/Test_POR_07_004_CheckDisplayLanguageOfPortalInPrivateModeWithDemoAccount.html 2010-09-30 11:19:34 UTC (rev 4441)
@@ -0,0 +1,742 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head profile="http://selenium-ide.openqa.org/profiles/test-case">
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+<link rel="selenium.base" href="" />
+<title>Test_POR_07_004_CheckDisplayLanguageOfPortalInPrivateModeWithDemoAccount</title>
+</head>
+<body>
+<table cellpadding="1" cellspacing="1" border="1">
+<thead>
+<tr><td rowspan="1" colspan="3">Test_POR_07_004_CheckDisplayLanguageOfPortalInPrivateModeWithDemoAccount</td></tr>
+</thead><tbody>
+<tr>
+ <td>open</td>
+ <td>/portal/public/classic</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>--ChangeLanguagePrivateMode by root--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>windowMaximize</td>
+ <td></td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Sign in</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>username</td>
+ <td></td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>username</td>
+ <td>root</td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>password</td>
+ <td>gtn</td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>//div[@id='UIPortalLoginFormAction']/div/div/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Change Language</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Change Language</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>--Change language from English to French--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=French</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=French</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=Apply</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>--Verify</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForTextPresent</td>
+ <td>Accueil</td>
+ <td></td>
+</tr>
+<tr>
+ <td>verifyTextPresent</td>
+ <td>Accueil</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Déconnexion</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Déconnexion</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>--Login in with new language--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>open</td>
+ <td>/portal/public/classic</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Sign in</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Sign in</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>username</td>
+ <td></td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>username</td>
+ <td>root</td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>password</td>
+ <td>gtn</td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>//div[@id='UIPortalLoginFormAction']/div/div/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>--Verify</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForTextPresent</td>
+ <td>Accueil</td>
+ <td></td>
+</tr>
+<tr>
+ <td>verifyTextPresent</td>
+ <td>Accueil</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Déconnexion</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Déconnexion</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>--Sign in again to change language to English--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>open</td>
+ <td>/portal/public/classic</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Sign in</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>username</td>
+ <td></td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>username</td>
+ <td>root</td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>password</td>
+ <td>gtn</td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>//div[@id='UIPortalLoginFormAction']/div/div/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>--Change back to English</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Changer la langue</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Anglais</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Anglais</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=Appliquer</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForTextPresent</td>
+ <td>Home</td>
+ <td></td>
+</tr>
+<tr>
+ <td>verifyTextPresent</td>
+ <td>Home</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=Sign out</td>
+ <td></td>
+</tr>
+<tr>
+ <td>refreshAndWait</td>
+ <td></td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>--ChangeLanguagePrivateMode by john--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>open</td>
+ <td>/portal/public/classic</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Sign in</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>username</td>
+ <td></td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>username</td>
+ <td>john</td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>password</td>
+ <td>gtn</td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>xpath=//div[@id='UIPortalLoginFormAction']/div/div/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Change Language</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAt</td>
+ <td>link=Change Language</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>--Change language from English to German--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=German</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=German</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Apply</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=Apply</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>--Verify</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForTextPresent</td>
+ <td>Startseite</td>
+ <td></td>
+</tr>
+<tr>
+ <td>verifyTextPresent</td>
+ <td>Startseite</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Abmelden</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Abmelden</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>--Login in with new language--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>open</td>
+ <td>/portal/public/classic</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Sign in</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Sign in</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>username</td>
+ <td></td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>username</td>
+ <td>john</td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>password</td>
+ <td>gtn</td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>//div[@id='UIPortalLoginFormAction']/div/div/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>--Verify</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForTextPresent</td>
+ <td>Startseite</td>
+ <td></td>
+</tr>
+<tr>
+ <td>verifyTextPresent</td>
+ <td>Startseite</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Abmelden</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Abmelden</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>--Sign in again to change language to English--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>open</td>
+ <td>/portal/public/classic</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Sign in</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>username</td>
+ <td></td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>username</td>
+ <td>john</td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>password</td>
+ <td>gtn</td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>//div[@id='UIPortalLoginFormAction']/div/div/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>--Change back to English</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Sprache wechseln</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Sprache wechseln</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Englisch</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Englisch</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=Anwenden</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForTextPresent</td>
+ <td>Home</td>
+ <td></td>
+</tr>
+<tr>
+ <td>verifyTextPresent</td>
+ <td>Home</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=Sign out</td>
+ <td></td>
+</tr>
+<tr>
+ <td>refreshAndWait</td>
+ <td></td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>--ChangeLanguagePrivateMode by demo--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>open</td>
+ <td>/portal/public/classic</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Sign in</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>username</td>
+ <td></td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>username</td>
+ <td>demo</td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>password</td>
+ <td>gtn</td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>xpath=//div[@id='UIPortalLoginFormAction']/div/div/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Change Language</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Change Language</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>--Change language from English to Italian--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Italian</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Italian</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=Apply</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>--Verify</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForTextPresent</td>
+ <td>Home</td>
+ <td></td>
+</tr>
+<tr>
+ <td>verifyTextPresent</td>
+ <td>Home</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Uscita</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Uscita</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>--Login in with new language--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>open</td>
+ <td>/portal/public/classic</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Sign in</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Sign in</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>username</td>
+ <td></td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>username</td>
+ <td>demo</td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>password</td>
+ <td>gtn</td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>//div[@id='UIPortalLoginFormAction']/div/div/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Uscita</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Uscita</td>
+ <td></td>
+</tr>
+<tr>
+ <td>pause</td>
+ <td>1000</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>--Verify</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForTextPresent</td>
+ <td>Home</td>
+ <td></td>
+</tr>
+<tr>
+ <td>verifyTextPresent</td>
+ <td>Home</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>--Sign in again to change language to English--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>open</td>
+ <td>/portal/public/classic</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Sign in</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>username</td>
+ <td></td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>username</td>
+ <td>demo</td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>password</td>
+ <td>gtn</td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[@id='UIPortalLoginFormAction']/div/div/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>--Change back to English</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Cambia Lingua</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Cambia Lingua</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Inglese</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Inglese</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=Applica</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForTextPresent</td>
+ <td>Home</td>
+ <td></td>
+</tr>
+<tr>
+ <td>verifyTextPresent</td>
+ <td>Home</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=Sign out</td>
+ <td></td>
+</tr>
+
+</tbody></table>
+</body>
+</html>
Added: portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/candidate/Test_POR_07_006_CheckDisplayLanguageOfPortalAfterChangeLanguageInOrganization.html
===================================================================
--- portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/candidate/Test_POR_07_006_CheckDisplayLanguageOfPortalAfterChangeLanguageInOrganization.html (rev 0)
+++ portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/candidate/Test_POR_07_006_CheckDisplayLanguageOfPortalAfterChangeLanguageInOrganization.html 2010-09-30 11:19:34 UTC (rev 4441)
@@ -0,0 +1,252 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head profile="http://selenium-ide.openqa.org/profiles/test-case">
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+<link rel="selenium.base" href="" />
+<title>Test_POR_07_006_CheckDisplayLanguageOfPortalAfterChangeLanguageInOrganization</title>
+</head>
+<body>
+<table cellpadding="1" cellspacing="1" border="1">
+<thead>
+<tr><td rowspan="1" colspan="3">Test_POR_07_006_CheckDisplayLanguageOfPortalAfterChangeLanguageInOrganization</td></tr>
+</thead><tbody>
+<tr>
+ <td>open</td>
+ <td>/portal/public/classic/</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Check display language of portal after change language in Organization portlet--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>windowMaximize</td>
+ <td></td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Sign in</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>username</td>
+ <td></td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>username</td>
+ <td>root</td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>password</td>
+ <td>gtn</td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>//div[@id='UIPortalLoginFormAction']/div/div/div</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Go to user and group management--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=Users and groups management</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Choose an user in list --</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[@id='UIListUsersGird']/table/tbody/tr[3]/td[5]/div/img[1]</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Choose User Profile tab--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[@id='UIUserManagement']/div[1]/div/div/div/div/div/div/div/div/div[2]/div/div/div/div</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[@id='UIUserManagement']/div[1]/div/div/div/div/div/div/div/div/div[2]/div/div/div/div</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>user.language</td>
+ <td></td>
+</tr>
+<tr>
+ <td>select</td>
+ <td>user.language</td>
+ <td>label=Vietnamese</td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForTextPresent</td>
+ <td>The user profile has been updated.</td>
+ <td></td>
+</tr>
+<tr>
+ <td>verifyTextPresent</td>
+ <td>The user profile has been updated.</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[3]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[3]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Sign out</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=Sign out</td>
+ <td></td>
+</tr>
+<tr>
+ <td>open</td>
+ <td>/portal/public/classic/</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Sign In portal by account which edited above--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Sign in</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>username</td>
+ <td></td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>username</td>
+ <td>mary</td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>password</td>
+ <td>gtn</td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>//div[@id='UIPortalLoginFormAction']/div/div/div</td>
+ <td></td>
+</tr>
+<tr>
+ <td>verifyTextPresent</td>
+ <td>Trang chủ</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=Đăng xuất</td>
+ <td></td>
+</tr>
+<tr>
+ <td>open</td>
+ <td>/portal/public/classic/</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Change language of user to English--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Sign in</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>username</td>
+ <td></td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>username</td>
+ <td>mary</td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>password</td>
+ <td>gtn</td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>//div[@id='UIPortalLoginFormAction']/div/div/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Thay đổi ngôn ngữ</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Thay đổi ngôn ngữ</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Tiếng Anh</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Tiếng Anh</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=Áp dụng</td>
+ <td></td>
+</tr>
+<tr>
+ <td>verifyTextPresent</td>
+ <td>Home</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=Sign out</td>
+ <td></td>
+</tr>
+
+</tbody></table>
+</body>
+</html>
14 years, 2 months
gatein SVN: r4440 - portal/trunk/testsuite/testdefinitions.
by do-not-reply@jboss.org
Author: hangnguyen
Date: 2010-09-30 07:12:01 -0400 (Thu, 30 Sep 2010)
New Revision: 4440
Modified:
portal/trunk/testsuite/testdefinitions/GateIn_v3.1.0_MainFunctions_TestDefinition.ods
Log:
Update GateIn_v3.1.0_MainFunctions_TestDefinition.ods
Modified: portal/trunk/testsuite/testdefinitions/GateIn_v3.1.0_MainFunctions_TestDefinition.ods
===================================================================
(Binary files differ)
14 years, 2 months
gatein SVN: r4439 - portal/trunk/testsuite/testdefinitions.
by do-not-reply@jboss.org
Author: hangnguyen
Date: 2010-09-30 06:12:51 -0400 (Thu, 30 Sep 2010)
New Revision: 4439
Added:
portal/trunk/testsuite/testdefinitions/GateIn_v3.1.0_SmokeTests_TestDefinition.ods
Log:
TESTVN-1646 - Smoke tests in TCM format for GateIn product
Added: portal/trunk/testsuite/testdefinitions/GateIn_v3.1.0_SmokeTests_TestDefinition.ods
===================================================================
(Binary files differ)
Property changes on: portal/trunk/testsuite/testdefinitions/GateIn_v3.1.0_SmokeTests_TestDefinition.ods
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
14 years, 2 months
gatein SVN: r4438 - portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/NewSnifftest.
by do-not-reply@jboss.org
Author: hangnguyen
Date: 2010-09-30 03:33:11 -0400 (Thu, 30 Sep 2010)
New Revision: 4438
Modified:
portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/NewSnifftest/Test_SNF_PRL_42_ChangeContainerWhenEditLayoutForGroupPage.html
portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/NewSnifftest/Test_SNF_PRL_57_ChangeContainerWhenEditLayoutForUserPage.html
portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/NewSnifftest/Test_SNF_PRL_62_ManagePageOfGroup.html
Log:
TestVN-356:Clean and Improve existing Selenium for GateIn
Modified: portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/NewSnifftest/Test_SNF_PRL_42_ChangeContainerWhenEditLayoutForGroupPage.html
===================================================================
--- portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/NewSnifftest/Test_SNF_PRL_42_ChangeContainerWhenEditLayoutForGroupPage.html 2010-09-29 14:51:45 UTC (rev 4437)
+++ portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/NewSnifftest/Test_SNF_PRL_42_ChangeContainerWhenEditLayoutForGroupPage.html 2010-09-30 07:33:11 UTC (rev 4438)
@@ -417,6 +417,11 @@
<td></td>
</tr>
<tr>
+ <td>waitForElementPresent</td>
+ <td>//a[@class='NodeIcon DefaultPageIcon' and @title='Test_SNF_PRL_42']</td>
+ <td></td>
+</tr>
+<tr>
<td>mouseDownRight</td>
<td>//a[@class='NodeIcon DefaultPageIcon' and @title='Test_SNF_PRL_42']</td>
<td></td>
Modified: portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/NewSnifftest/Test_SNF_PRL_57_ChangeContainerWhenEditLayoutForUserPage.html
===================================================================
--- portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/NewSnifftest/Test_SNF_PRL_57_ChangeContainerWhenEditLayoutForUserPage.html 2010-09-29 14:51:45 UTC (rev 4437)
+++ portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/NewSnifftest/Test_SNF_PRL_57_ChangeContainerWhenEditLayoutForUserPage.html 2010-09-30 07:33:11 UTC (rev 4438)
@@ -342,8 +342,13 @@
<td></td>
</tr>
<tr>
+ <td>waitForElementPresent</td>
+ <td>//div/div/div/div/div/div[2]/div/div/div/div/div[1]/div/div/div[2]/div/div/div/div[1]/div</td>
+ <td></td>
+</tr>
+<tr>
<td>mouseOver</td>
- <td>//div[2]/div/div/div/div[2]/div/div/div[2]/div/div/div/div/div/div/div[2]</td>
+ <td>//div/div/div/div/div/div[2]/div/div/div/div/div[1]/div/div/div[2]/div/div/div/div[1]/div</td>
<td>Test_SNF_PRL_57</td>
</tr>
<tr>
Modified: portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/NewSnifftest/Test_SNF_PRL_62_ManagePageOfGroup.html
===================================================================
--- portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/NewSnifftest/Test_SNF_PRL_62_ManagePageOfGroup.html 2010-09-29 14:51:45 UTC (rev 4437)
+++ portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/NewSnifftest/Test_SNF_PRL_62_ManagePageOfGroup.html 2010-09-30 07:33:11 UTC (rev 4438)
@@ -302,6 +302,26 @@
<td></td>
</tr>
<tr>
+ <td>waitForElementPresent</td>
+ <td>searchTerm</td>
+ <td></td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>searchTerm</td>
+ <td>Test_SNF_PRL_62_edit</td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//form[@id='UIPageSearch']/div[2]/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//form[@id='UIPageSearch']/div[2]/a</td>
+ <td></td>
+</tr>
+<tr>
<td>echo</td>
<td>-- Delete page --</td>
<td></td>
14 years, 2 months
gatein SVN: r4437 - in portal/branches/wci: component/web/security/src/main/java/org/exoplatform/web/security and 12 other directories.
by do-not-reply@jboss.org
Author: alain_defrance
Date: 2010-09-29 10:51:45 -0400 (Wed, 29 Sep 2010)
New Revision: 4437
Added:
portal/branches/wci/portlet/exoadmin/src/main/java/org/exoplatform/account/webui/component/RegisterPortletApplicationController.java
portal/branches/wci/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_POR_14_01_043_CheckShowSiteEditorMenu.html
portal/branches/wci/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_POR_20_014_CreateUserSameNameDifferentUser.html
portal/branches/wci/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/candidate/Test_POR_14_01_044_CheckWhenHaveRightToEditPage.html
portal/branches/wci/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/candidate/Test_POR_14_01_045_CheckWhenUserDoesNotHaveRightToEditPage.html
portal/branches/wci/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/candidate/Test_POR_18_009_CheckDisplayPageCreatedInPageManagement.html
portal/branches/wci/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/candidate/Test_PRL_03_04_005_CheckExistingOfPagesInDeletedGroup.html
portal/branches/wci/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/issues/Test_PRL_05_02_003_ChangeAcessRightOnCategoryFromPublicToBeLimitedByGroup.html
Removed:
portal/branches/wci/component/web/security/src/main/java/org/exoplatform/web/security/CaptchaServlet.java
portal/branches/wci/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/ko/
portal/branches/wci/webui/portal/src/main/java/org/exoplatform/portal/application/localization/BaseHttpRequestWrapper.java
Modified:
portal/branches/wci/examples/portal/war/src/main/webapp/WEB-INF/web.xml
portal/branches/wci/pom.xml
portal/branches/wci/portlet/exoadmin/src/main/webapp/WEB-INF/portlet.xml
portal/branches/wci/testsuite/selenium-snifftests/src/main/java/org/exoplatform/portal/selenium/SeleniumTestCaseGenerator.java
portal/branches/wci/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/NewSnifftest/Test_SNF_PRL_28_EditPortalConfig.html
portal/branches/wci/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_POR_07_006_CheckDisplayLanguageOfPortalAfterChangeLanguageInOrganization.html
portal/branches/wci/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_POR_09_002_CreateNewPortalWithValidValue.html
portal/branches/wci/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_POR_09_005_CreateNewPortalWithNameStartsWithDash.html
portal/branches/wci/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_POR_09_007_CreateNewPortalWithSpecialCharsInName.html
portal/branches/wci/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_POR_09_010_CreateNewPortalWithNameLessThan3Chars.html
portal/branches/wci/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_POR_09_011_CreateNewPortalWithNameOver30Chars.html
portal/branches/wci/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_POR_09_012_CheckDisplayingLanguageAndSkinAfterCreatingNewPortal.html
portal/branches/wci/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_POR_09_013_CreateNewPortalWithoutAssigningAnyRight.html
portal/branches/wci/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_POR_09_014_CreateNewPortalWithoutAssigningEditRight.html
portal/branches/wci/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_POR_09_015_CreateNewPortalWithoutAssigningAccessRight.html
portal/branches/wci/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_POR_09_022_CheckAddNewPortalWhenUserDoesNotHaveRigtToCreateNewPortal.html
portal/branches/wci/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_POR_09_023_CreateNewPortalNameStartWithDot.html
portal/branches/wci/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/design/Test_POR_14_01_045_CheckWhenUserDoesNotHaveRightToEditPage.html
portal/branches/wci/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/design/Test_PRL_03_04_005_CheckExistingOfPagesInDeletedGroup.html
portal/branches/wci/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/issues/Test_PRL_02_03_005_CheckEditingPassWordInCommunityManagement.html
portal/branches/wci/web/portal/src/main/webapp/WEB-INF/web.xml
portal/branches/wci/webui/portal/src/main/java/org/exoplatform/portal/application/localization/HttpRequestWrapper.java
portal/branches/wci/webui/portal/src/main/java/org/exoplatform/portal/webui/CaptchaValidator.java
portal/branches/wci/webui/portal/src/main/java/org/exoplatform/portal/webui/UICaptcha.java
Log:
merged from trunk 4436
Deleted: portal/branches/wci/component/web/security/src/main/java/org/exoplatform/web/security/CaptchaServlet.java
===================================================================
--- portal/branches/wci/component/web/security/src/main/java/org/exoplatform/web/security/CaptchaServlet.java 2010-09-29 14:41:48 UTC (rev 4436)
+++ portal/branches/wci/component/web/security/src/main/java/org/exoplatform/web/security/CaptchaServlet.java 2010-09-29 14:51:45 UTC (rev 4437)
@@ -1,88 +0,0 @@
-/******************************************************************************
- * JBoss by Red Hat *
- * Copyright 2010, Red Hat Middleware, LLC, and individual *
- * contributors as indicated by the @authors tag. See the *
- * copyright.txt in the distribution for a full listing of *
- * individual contributors. *
- * *
- * This is free software; you can redistribute it and/or modify it *
- * under the terms of the GNU Lesser General Public License as *
- * published by the Free Software Foundation; either version 2.1 of *
- * the License, or (at your option) any later version. *
- * *
- * This software is distributed in the hope that it will be useful, *
- * but WITHOUT ANY WARRANTY; without even the implied warranty of *
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU *
- * Lesser General Public License for more details. *
- * *
- * You should have received a copy of the GNU Lesser General Public *
- * License along with this software; if not, write to the Free *
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA *
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org. *
- ******************************************************************************/
-package org.exoplatform.web.security;
-
-import static nl.captcha.Captcha.NAME;
-
-import java.io.IOException;
-
-import javax.servlet.ServletException;
-import javax.servlet.http.HttpServlet;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
-import javax.servlet.http.HttpSession;
-
-import nl.captcha.Captcha;
-import nl.captcha.servlet.CaptchaServletUtil;
-
-/**
- * @author <a href="mailto:theute@redhat.com">Thomas Heute</a>
- * @version $Revision$
- */
-public class CaptchaServlet extends HttpServlet
-{
-
- private static final long serialVersionUID = 1L;
-
- private static final String PARAM_HEIGHT = "height";
-
- private static final String PARAM_WIDTH = "width";
-
- protected int _width = 200;
-
- protected int _height = 50;
-
- @Override
- public void init() throws ServletException
- {
- if (getInitParameter(PARAM_HEIGHT) != null)
- {
- _height = Integer.valueOf(getInitParameter(PARAM_HEIGHT));
- }
-
- if (getInitParameter(PARAM_WIDTH) != null)
- {
- _width = Integer.valueOf(getInitParameter(PARAM_WIDTH));
- }
- }
-
- @Override
- public void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException
- {
- HttpSession session = req.getSession();
- Captcha captcha;
- if (session.getAttribute(NAME) == null)
- {
- captcha = new Captcha.Builder(_width, _height).addText().gimp().addNoise().addBackground().build();
-
- session.setAttribute(NAME, captcha);
- CaptchaServletUtil.writeImage(resp, captcha.getImage());
-
- return;
- }
-
- captcha = (Captcha) session.getAttribute(NAME);
- CaptchaServletUtil.writeImage(resp, captcha.getImage());
- }
-
-}
Modified: portal/branches/wci/examples/portal/war/src/main/webapp/WEB-INF/web.xml
===================================================================
--- portal/branches/wci/examples/portal/war/src/main/webapp/WEB-INF/web.xml 2010-09-29 14:41:48 UTC (rev 4436)
+++ portal/branches/wci/examples/portal/war/src/main/webapp/WEB-INF/web.xml 2010-09-29 14:51:45 UTC (rev 4437)
@@ -186,24 +186,6 @@
<load-on-startup>0</load-on-startup>
</servlet>
- <servlet>
- <servlet-name>StickyCaptcha</servlet-name>
- <servlet-class>org.exoplatform.web.security.CaptchaServlet</servlet-class>
- <init-param>
- <param-name>width</param-name>
- <param-value>200</param-value>
- </init-param>
- <init-param>
- <param-name>height</param-name>
- <param-value>75</param-value>
- </init-param>
- </servlet>
-
- <servlet-mapping>
- <servlet-name>StickyCaptcha</servlet-name>
- <url-pattern>/captcha</url-pattern>
- </servlet-mapping>
-
<!-- ================================================================= -->
<servlet-mapping>
<servlet-name>InitiateLoginServlet</servlet-name>
Modified: portal/branches/wci/pom.xml
===================================================================
--- portal/branches/wci/pom.xml 2010-09-29 14:41:48 UTC (rev 4436)
+++ portal/branches/wci/pom.xml 2010-09-29 14:51:45 UTC (rev 4437)
@@ -48,7 +48,7 @@
<org.gatein.wci.version>2.1.0-Alpha01-SNAPSHOT</org.gatein.wci.version>
<org.gatein.pc.version>2.2.0-Beta03</org.gatein.pc.version>
<org.picketlink.idm>1.1.5.GA</org.picketlink.idm>
- <org.gatein.wsrp.version>2.0.0-Alpha02</org.gatein.wsrp.version>
+ <org.gatein.wsrp.version>2.0.0-Alpha03</org.gatein.wsrp.version>
<org.gatein.mop.version>1.0.3-GA</org.gatein.mop.version>
<org.slf4j.version>1.5.6</org.slf4j.version>
<rhino.version>1.6R5</rhino.version>
Copied: portal/branches/wci/portlet/exoadmin/src/main/java/org/exoplatform/account/webui/component/RegisterPortletApplicationController.java (from rev 4436, portal/trunk/portlet/exoadmin/src/main/java/org/exoplatform/account/webui/component/RegisterPortletApplicationController.java)
===================================================================
--- portal/branches/wci/portlet/exoadmin/src/main/java/org/exoplatform/account/webui/component/RegisterPortletApplicationController.java (rev 0)
+++ portal/branches/wci/portlet/exoadmin/src/main/java/org/exoplatform/account/webui/component/RegisterPortletApplicationController.java 2010-09-29 14:51:45 UTC (rev 4437)
@@ -0,0 +1,99 @@
+/*
+ * Copyright (C) 2010 eXo Platform SAS.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+
+package org.exoplatform.account.webui.component;
+
+import nl.captcha.Captcha;
+import nl.captcha.servlet.CaptchaServletUtil;
+import org.exoplatform.webui.application.portlet.PortletApplicationController;
+
+import javax.portlet.PortletException;
+import javax.portlet.PortletSession;
+import javax.portlet.ResourceRequest;
+import javax.portlet.ResourceResponse;
+import javax.portlet.ResourceServingPortlet;
+import java.awt.image.BufferedImage;
+import java.io.IOException;
+
+import static nl.captcha.Captcha.NAME;
+
+/**
+ * @author <a href="mailto:julien.viet@exoplatform.com">Julien Viet</a>
+ * @version $Revision$
+ */
+public class RegisterPortletApplicationController extends PortletApplicationController implements ResourceServingPortlet
+{
+
+ private static final String PARAM_HEIGHT = "height";
+
+ private static final String PARAM_WIDTH = "width";
+
+ protected int _width = 200;
+
+ protected int _height = 50;
+
+ @Override
+ public void init() throws PortletException
+ {
+ if (getInitParameter(PARAM_HEIGHT) != null)
+ {
+ _height = Integer.valueOf(getInitParameter(PARAM_HEIGHT));
+ }
+
+ if (getInitParameter(PARAM_WIDTH) != null)
+ {
+ _width = Integer.valueOf(getInitParameter(PARAM_WIDTH));
+ }
+ }
+
+ public void serveResource(ResourceRequest req, ResourceResponse resp)
+ throws PortletException, java.io.IOException
+ {
+ PortletSession session = req.getPortletSession();
+ Captcha captcha;
+ if (session.getAttribute(NAME) == null)
+ {
+ captcha = new Captcha.Builder(_width, _height).addText().gimp().addNoise().addBackground().build();
+
+
+ session.setAttribute(NAME, captcha);
+ writeImage(resp, captcha.getImage());
+
+ return;
+ }
+
+ captcha = (Captcha)session.getAttribute(NAME);
+ writeImage(resp, captcha.getImage());
+
+ }
+
+ public static void writeImage(ResourceResponse response, BufferedImage bi)
+ {
+ response.setProperty("Cache-Control", "private,no-cache,no-store");
+ response.setContentType("image/png"); // PNGs allow for transparency. JPGs do not.
+ try
+ {
+ CaptchaServletUtil.writeImage(response.getPortletOutputStream(), bi);
+ }
+ catch (IOException e)
+ {
+ e.printStackTrace();
+ }
+ }
+}
Modified: portal/branches/wci/portlet/exoadmin/src/main/webapp/WEB-INF/portlet.xml
===================================================================
--- portal/branches/wci/portlet/exoadmin/src/main/webapp/WEB-INF/portlet.xml 2010-09-29 14:41:48 UTC (rev 4436)
+++ portal/branches/wci/portlet/exoadmin/src/main/webapp/WEB-INF/portlet.xml 2010-09-29 14:51:45 UTC (rev 4437)
@@ -85,12 +85,20 @@
<description xml:lang="EN">Register Portlet</description>
<portlet-name>RegisterPortlet</portlet-name>
<display-name xml:lang="EN">Register Portlet</display-name>
- <portlet-class>org.exoplatform.webui.application.portlet.PortletApplicationController</portlet-class>
+ <portlet-class>org.exoplatform.account.webui.component.RegisterPortletApplicationController</portlet-class>
<init-param>
<name>webui.configuration</name>
<value>/WEB-INF/conf/portlet/exoadmin/RegisterPortlet/webui/configuration.xml</value>
</init-param>
+ <init-param>
+ <name>width</name>
+ <value>200</value>
+ </init-param>
+ <init-param>
+ <name>height</name>
+ <value>75</value>
+ </init-param>
<expiration-cache>0</expiration-cache>
<supports>
Modified: portal/branches/wci/testsuite/selenium-snifftests/src/main/java/org/exoplatform/portal/selenium/SeleniumTestCaseGenerator.java
===================================================================
--- portal/branches/wci/testsuite/selenium-snifftests/src/main/java/org/exoplatform/portal/selenium/SeleniumTestCaseGenerator.java 2010-09-29 14:41:48 UTC (rev 4436)
+++ portal/branches/wci/testsuite/selenium-snifftests/src/main/java/org/exoplatform/portal/selenium/SeleniumTestCaseGenerator.java 2010-09-29 14:51:45 UTC (rev 4437)
@@ -194,7 +194,7 @@
sb.append("(selenium.isTextPresent(\"");
sb.append(param2);
sb.append("\"));\n");
- } else if (param1.equals("click") || param1.equals("mouseDown") || param1.equals("doubleClick") || param1.equals("mouseDownRight")|| param1.equals("mouseUp")
+ } else if (param1.equals("click") ||param1.equals("contextMenu") || param1.equals("mouseDown") || param1.equals("doubleClick") || param1.equals("mouseDownRight")|| param1.equals("mouseUp")
|| param1.equals("open") || param1.equals("selectFrame") || param1.equals("selectWindow")) {
sb.append("selenium.");
sb.append(param1);
Modified: portal/branches/wci/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/NewSnifftest/Test_SNF_PRL_28_EditPortalConfig.html
===================================================================
--- portal/branches/wci/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/NewSnifftest/Test_SNF_PRL_28_EditPortalConfig.html 2010-09-29 14:41:48 UTC (rev 4436)
+++ portal/branches/wci/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/NewSnifftest/Test_SNF_PRL_28_EditPortalConfig.html 2010-09-29 14:51:45 UTC (rev 4437)
@@ -262,8 +262,8 @@
<td></td>
</tr>
<tr>
- <td>assertLocation</td>
- <td>http://localhost:8080/portal/private/Test_SNF_PRL_28/</td>
+ <td>waitForElementPresent</td>
+ <td>link=Site</td>
<td></td>
</tr>
<tr>
@@ -403,11 +403,6 @@
</tr>
<tr>
<td>echo</td>
- <td>-- https://jira.jboss.org/browse/GTNPORTAL-1389--</td>
- <td></td>
-</tr>
-<tr>
- <td>echo</td>
<td>-- Delete portal --</td>
<td></td>
</tr>
Modified: portal/branches/wci/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_POR_07_006_CheckDisplayLanguageOfPortalAfterChangeLanguageInOrganization.html
===================================================================
--- portal/branches/wci/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_POR_07_006_CheckDisplayLanguageOfPortalAfterChangeLanguageInOrganization.html 2010-09-29 14:41:48 UTC (rev 4436)
+++ portal/branches/wci/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_POR_07_006_CheckDisplayLanguageOfPortalAfterChangeLanguageInOrganization.html 2010-09-29 14:51:45 UTC (rev 4437)
@@ -92,11 +92,6 @@
<td></td>
</tr>
<tr>
- <td>waitForElementPresent</td>
- <td>user.language</td>
- <td></td>
-</tr>
-<tr>
<td>select</td>
<td>user.language</td>
<td>label=Vietnamese</td>
@@ -107,21 +102,31 @@
<td></td>
</tr>
<tr>
- <td>waitForElementPresent</td>
- <td>//div[3]/div/div/div/div/div[2]</td>
+ <td>waitForTextPresent</td>
+ <td>The user profile has been updated.</td>
<td></td>
</tr>
<tr>
- <td>verifyText</td>
- <td>//div[3]/div/div/div/div/div[2]</td>
+ <td>verifyTextPresent</td>
<td>The user profile has been updated.</td>
+ <td></td>
</tr>
<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[3]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div/a</td>
+ <td></td>
+</tr>
+<tr>
<td>click</td>
- <td>//div[2]/div[2]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div/a</td>
+ <td>//div[3]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div/a</td>
<td></td>
</tr>
<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Sign out</td>
+ <td></td>
+</tr>
+<tr>
<td>clickAndWait</td>
<td>link=Sign out</td>
<td></td>
@@ -218,12 +223,12 @@
</tr>
<tr>
<td>waitForElementPresent</td>
- <td>//div[@id='UITabContent']/div/div/div/div/div/div[2]/div[2]</td>
+ <td>link=Tiếng Anh</td>
<td></td>
</tr>
<tr>
<td>click</td>
- <td>//div[@id='UITabContent']/div/div/div/div/div/div[2]/div[2]</td>
+ <td>link=Tiếng Anh</td>
<td></td>
</tr>
<tr>
Modified: portal/branches/wci/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_POR_09_002_CreateNewPortalWithValidValue.html
===================================================================
--- portal/branches/wci/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_POR_09_002_CreateNewPortalWithValidValue.html 2010-09-29 14:41:48 UTC (rev 4436)
+++ portal/branches/wci/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_POR_09_002_CreateNewPortalWithValidValue.html 2010-09-29 14:51:45 UTC (rev 4437)
@@ -146,8 +146,12 @@
<td>//div[@id='UIMaskWorkspace']//div[@class='TabsContainer']/div[4]//div[@class='MiddleTab']</td>
<td></td>
</tr>
-<!--=============-->
<tr>
+ <td>echo</td>
+ <td>-- Access Permission Setting --</td>
+ <td></td>
+</tr>
+<tr>
<td>waitForElementPresent</td>
<td>link=Add Permission</td>
<td></td>
@@ -187,8 +191,12 @@
<td>link=exact:*</td>
<td></td>
</tr>
-<!--------------------------->
<tr>
+ <td>echo</td>
+ <td>-- Edit Permission Setting --</td>
+ <td></td>
+</tr>
+<tr>
<td>waitForElementPresent</td>
<td>link=Edit Permission Setting</td>
<td></td>
@@ -279,16 +287,26 @@
<td></td>
</tr>
<tr>
- <td>clickAndWait</td>
+ <td>click</td>
<td>link=Delete</td>
<td></td>
</tr>
<tr>
+ <td>waitForConfirmationPresent</td>
+ <td></td>
+ <td></td>
+</tr>
+<tr>
<td>assertConfirmation</td>
<td>Are you sure you want to delete this portal?</td>
<td></td>
</tr>
<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Sign out</td>
+ <td></td>
+</tr>
+<tr>
<td>clickAndWait</td>
<td>link=Sign out</td>
<td></td>
Modified: portal/branches/wci/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_POR_09_005_CreateNewPortalWithNameStartsWithDash.html
===================================================================
--- portal/branches/wci/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_POR_09_005_CreateNewPortalWithNameStartsWithDash.html 2010-09-29 14:41:48 UTC (rev 4436)
+++ portal/branches/wci/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_POR_09_005_CreateNewPortalWithNameStartsWithDash.html 2010-09-29 14:51:45 UTC (rev 4437)
@@ -4,12 +4,12 @@
<head profile="http://selenium-ide.openqa.org/profiles/test-case">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<link rel="selenium.base" href="" />
-<title>Test_POR_09_005_CreateNewPortalWithNameStartsWithDashDot</title>
+<title>Test_POR_09_005_CreateNewPortalWithNameStartsWithDash</title>
</head>
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
-<tr><td rowspan="1" colspan="3">Test_POR_09_005_CreateNewPortalWithNameStartsWithDashDot</td></tr>
+<tr><td rowspan="1" colspan="3">Test_POR_09_005_CreateNewPortalWithNameStartsWithDash</td></tr>
</thead><tbody>
<tr>
<td>open</td>
@@ -213,12 +213,12 @@
</tr>
<tr>
<td>waitForElementPresent</td>
- <td>//div[3]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div</td>
+ <td>//div[6]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div</td>
<td></td>
</tr>
<tr>
<td>click</td>
- <td>//div[3]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div</td>
+ <td>//div[6]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div</td>
<td></td>
</tr>
<tr>
@@ -232,6 +232,11 @@
<td></td>
</tr>
<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Sign out</td>
+ <td></td>
+</tr>
+<tr>
<td>clickAndWait</td>
<td>link=Sign out</td>
<td></td>
Modified: portal/branches/wci/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_POR_09_007_CreateNewPortalWithSpecialCharsInName.html
===================================================================
--- portal/branches/wci/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_POR_09_007_CreateNewPortalWithSpecialCharsInName.html 2010-09-29 14:41:48 UTC (rev 4436)
+++ portal/branches/wci/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_POR_09_007_CreateNewPortalWithSpecialCharsInName.html 2010-09-29 14:51:45 UTC (rev 4437)
@@ -218,12 +218,12 @@
</tr>
<tr>
<td>waitForElementPresent</td>
- <td>//div[3]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div/a</td>
+ <td>//div[6]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div</td>
<td></td>
</tr>
<tr>
<td>click</td>
- <td>//div[3]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div/a</td>
+ <td>//div[6]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div</td>
<td></td>
</tr>
<tr>
@@ -237,6 +237,11 @@
<td></td>
</tr>
<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Sign out</td>
+ <td></td>
+</tr>
+<tr>
<td>clickAndWait</td>
<td>link=Sign out</td>
<td></td>
Modified: portal/branches/wci/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_POR_09_010_CreateNewPortalWithNameLessThan3Chars.html
===================================================================
--- portal/branches/wci/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_POR_09_010_CreateNewPortalWithNameLessThan3Chars.html 2010-09-29 14:41:48 UTC (rev 4436)
+++ portal/branches/wci/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_POR_09_010_CreateNewPortalWithNameLessThan3Chars.html 2010-09-29 14:51:45 UTC (rev 4437)
@@ -213,12 +213,12 @@
</tr>
<tr>
<td>waitForElementPresent</td>
- <td>//div[3]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div/a</td>
+ <td>//div[6]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div/a</td>
<td></td>
</tr>
<tr>
<td>click</td>
- <td>//div[3]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div/a</td>
+ <td>//div[6]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div/a</td>
<td></td>
</tr>
<tr>
@@ -232,6 +232,11 @@
<td></td>
</tr>
<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Sign out</td>
+ <td></td>
+</tr>
+<tr>
<td>clickAndWait</td>
<td>link=Sign out</td>
<td></td>
Modified: portal/branches/wci/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_POR_09_011_CreateNewPortalWithNameOver30Chars.html
===================================================================
--- portal/branches/wci/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_POR_09_011_CreateNewPortalWithNameOver30Chars.html 2010-09-29 14:41:48 UTC (rev 4436)
+++ portal/branches/wci/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_POR_09_011_CreateNewPortalWithNameOver30Chars.html 2010-09-29 14:51:45 UTC (rev 4437)
@@ -213,12 +213,12 @@
</tr>
<tr>
<td>waitForElementPresent</td>
- <td>//div[3]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div/a</td>
+ <td>//div[6]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div/a</td>
<td></td>
</tr>
<tr>
<td>click</td>
- <td>//div[3]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div/a</td>
+ <td>//div[6]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div/a</td>
<td></td>
</tr>
<tr>
@@ -232,6 +232,11 @@
<td></td>
</tr>
<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Sign out</td>
+ <td></td>
+</tr>
+<tr>
<td>clickAndWait</td>
<td>link=Sign out</td>
<td></td>
Modified: portal/branches/wci/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_POR_09_012_CheckDisplayingLanguageAndSkinAfterCreatingNewPortal.html
===================================================================
--- portal/branches/wci/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_POR_09_012_CheckDisplayingLanguageAndSkinAfterCreatingNewPortal.html 2010-09-29 14:41:48 UTC (rev 4436)
+++ portal/branches/wci/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_POR_09_012_CheckDisplayingLanguageAndSkinAfterCreatingNewPortal.html 2010-09-29 14:51:45 UTC (rev 4437)
@@ -292,10 +292,15 @@
<td></td>
</tr>
<tr>
- <td>click</td>
+ <td>waitForElementPresent</td>
<td>link=Sign out</td>
<td></td>
</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=Sign out</td>
+ <td></td>
+</tr>
</tbody></table>
</body>
Modified: portal/branches/wci/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_POR_09_013_CreateNewPortalWithoutAssigningAnyRight.html
===================================================================
--- portal/branches/wci/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_POR_09_013_CreateNewPortalWithoutAssigningAnyRight.html 2010-09-29 14:41:48 UTC (rev 4436)
+++ portal/branches/wci/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_POR_09_013_CreateNewPortalWithoutAssigningAnyRight.html 2010-09-29 14:51:45 UTC (rev 4437)
@@ -133,12 +133,12 @@
</tr>
<tr>
<td>waitForElementPresent</td>
- <td>//div[3]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div</td>
+ <td>//div[6]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div/a</td>
<td></td>
</tr>
<tr>
<td>click</td>
- <td>//div[3]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div</td>
+ <td>//div[6]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div/a</td>
<td></td>
</tr>
<tr>
Modified: portal/branches/wci/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_POR_09_014_CreateNewPortalWithoutAssigningEditRight.html
===================================================================
--- portal/branches/wci/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_POR_09_014_CreateNewPortalWithoutAssigningEditRight.html 2010-09-29 14:41:48 UTC (rev 4436)
+++ portal/branches/wci/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_POR_09_014_CreateNewPortalWithoutAssigningEditRight.html 2010-09-29 14:51:45 UTC (rev 4437)
@@ -183,12 +183,12 @@
</tr>
<tr>
<td>waitForElementPresent</td>
- <td>//div[3]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div/a</td>
+ <td>//div[6]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div/a</td>
<td></td>
</tr>
<tr>
<td>click</td>
- <td>//div[3]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div/a</td>
+ <td>//div[6]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div/a</td>
<td></td>
</tr>
<tr>
@@ -202,6 +202,11 @@
<td></td>
</tr>
<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Sign out</td>
+ <td></td>
+</tr>
+<tr>
<td>clickAndWait</td>
<td>link=Sign out</td>
<td></td>
Modified: portal/branches/wci/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_POR_09_015_CreateNewPortalWithoutAssigningAccessRight.html
===================================================================
--- portal/branches/wci/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_POR_09_015_CreateNewPortalWithoutAssigningAccessRight.html 2010-09-29 14:41:48 UTC (rev 4436)
+++ portal/branches/wci/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_POR_09_015_CreateNewPortalWithoutAssigningAccessRight.html 2010-09-29 14:51:45 UTC (rev 4437)
@@ -178,22 +178,22 @@
</tr>
<tr>
<td>waitForTextPresent</td>
- <td>The "Access Permission Setting" list can not be empty. </td>
+ <td>The "Access Permission Setting" list can not be empty.</td>
<td></td>
</tr>
<tr>
<td>verifyTextPresent</td>
- <td>The "Access Permission Setting" list can not be empty. </td>
+ <td>The "Access Permission Setting" list can not be empty.</td>
<td></td>
</tr>
<tr>
<td>waitForElementPresent</td>
- <td>//div[3]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div/a</td>
+ <td>//div[6]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div/a</td>
<td></td>
</tr>
<tr>
<td>click</td>
- <td>//div[3]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div/a</td>
+ <td>//div[6]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div/a</td>
<td></td>
</tr>
<tr>
@@ -207,6 +207,11 @@
<td></td>
</tr>
<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Sign out</td>
+ <td></td>
+</tr>
+<tr>
<td>clickAndWait</td>
<td>link=Sign out</td>
<td></td>
Modified: portal/branches/wci/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_POR_09_022_CheckAddNewPortalWhenUserDoesNotHaveRigtToCreateNewPortal.html
===================================================================
--- portal/branches/wci/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_POR_09_022_CheckAddNewPortalWhenUserDoesNotHaveRigtToCreateNewPortal.html 2010-09-29 14:41:48 UTC (rev 4436)
+++ portal/branches/wci/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_POR_09_022_CheckAddNewPortalWhenUserDoesNotHaveRigtToCreateNewPortal.html 2010-09-29 14:51:45 UTC (rev 4437)
@@ -138,15 +138,20 @@
</tr>
<tr>
<td>waitForElementPresent</td>
- <td>//div[3]/div/div/div[1]/div/div/div/div/div/div/div/div[2]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div/a</td>
+ <td>//div[3]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div/a</td>
<td></td>
</tr>
<tr>
<td>click</td>
- <td>//div[3]/div/div/div[1]/div/div/div/div/div/div/div/div[2]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div/a</td>
+ <td>//div[3]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div/a</td>
<td></td>
</tr>
<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Sign out</td>
+ <td></td>
+</tr>
+<tr>
<td>clickAndWait</td>
<td>link=Sign out</td>
<td></td>
@@ -298,15 +303,20 @@
</tr>
<tr>
<td>waitForElementPresent</td>
- <td>//div[4]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div</td>
+ <td>//div[5]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div/a</td>
<td></td>
</tr>
<tr>
<td>click</td>
- <td>//div[4]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div</td>
+ <td>//div[5]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div/a</td>
<td></td>
</tr>
<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Sign out</td>
+ <td></td>
+</tr>
+<tr>
<td>clickAndWait</td>
<td>link=Sign out</td>
<td></td>
Modified: portal/branches/wci/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_POR_09_023_CreateNewPortalNameStartWithDot.html
===================================================================
--- portal/branches/wci/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_POR_09_023_CreateNewPortalNameStartWithDot.html 2010-09-29 14:41:48 UTC (rev 4436)
+++ portal/branches/wci/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_POR_09_023_CreateNewPortalNameStartWithDot.html 2010-09-29 14:51:45 UTC (rev 4437)
@@ -198,22 +198,22 @@
</tr>
<tr>
<td>waitForTextPresent</td>
- <td>Only alpha, digit, dash and underscore characters allowed for the field "Portal Name :". </td>
+ <td>Only alpha, digit, dash and underscore characters allowed for the field "Portal Name :".</td>
<td></td>
</tr>
<tr>
<td>verifyTextPresent</td>
- <td>Only alpha, digit, dash and underscore characters allowed for the field "Portal Name :". </td>
+ <td>Only alpha, digit, dash and underscore characters allowed for the field "Portal Name :".</td>
<td></td>
</tr>
<tr>
<td>waitForElementPresent</td>
- <td>//div[3]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div</td>
+ <td>//div[6]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div/a</td>
<td></td>
</tr>
<tr>
<td>click</td>
- <td>//div[3]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div</td>
+ <td>//div[6]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div/a</td>
<td></td>
</tr>
<tr>
@@ -227,6 +227,11 @@
<td></td>
</tr>
<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Sign out</td>
+ <td></td>
+</tr>
+<tr>
<td>clickAndWait</td>
<td>link=Sign out</td>
<td></td>
Copied: portal/branches/wci/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_POR_14_01_043_CheckShowSiteEditorMenu.html (from rev 4436, portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_POR_14_01_043_CheckShowSiteEditorMenu.html)
===================================================================
--- portal/branches/wci/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_POR_14_01_043_CheckShowSiteEditorMenu.html (rev 0)
+++ portal/branches/wci/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_POR_14_01_043_CheckShowSiteEditorMenu.html 2010-09-29 14:51:45 UTC (rev 4437)
@@ -0,0 +1,822 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head profile="http://selenium-ide.openqa.org/profiles/test-case">
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+<link rel="selenium.base" href="" />
+<title>Test_POR_14_01_043_CheckShowSiteEditorMenu</title>
+</head>
+<body>
+<table cellpadding="1" cellspacing="1" border="1">
+<thead>
+<tr><td rowspan="1" colspan="3">Test_POR_14_01_043_CheckShowSiteEditorMenu</td></tr>
+</thead><tbody>
+<tr>
+ <td>open</td>
+ <td>/portal/public/classic/</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Check show Site Editor menu --</td>
+ <td></td>
+</tr>
+<tr>
+ <td>windowMaximize</td>
+ <td></td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Sign in</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>username</td>
+ <td></td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>username</td>
+ <td>root</td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>password</td>
+ <td>gtn</td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>//div[@id='UIPortalLoginFormAction']/div/div/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Go to New Staff--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=New Staff</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>username</td>
+ <td></td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>username</td>
+ <td>Test_POR_14_043</td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>password</td>
+ <td>Test_POR_14_043</td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>Confirmpassword</td>
+ <td>Test_POR_14_043</td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>firstName</td>
+ <td>Test_POR_14_043</td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>lastName</td>
+ <td>Test_POR_14_043</td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>email</td>
+ <td>Test_POR_14_043(a)gmail.com</td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Choose User Profile--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[@id='UIAccountPortlet']/div[1]/div/div/div/div/div/div/div/div/div[2]/div/div/div/div</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[@id='UIAccountPortlet']/div[1]/div/div/div/div/div/div/div/div/div[2]/div/div/div/div</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>user.language</td>
+ <td></td>
+</tr>
+<tr>
+ <td>select</td>
+ <td>user.language</td>
+ <td>label=Vietnamese</td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForTextPresent</td>
+ <td>You have registered a new account.</td>
+ <td></td>
+</tr>
+<tr>
+ <td>verifyTextPresent</td>
+ <td>You have registered a new account.</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[3]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[3]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>--Select User and group managent in menu--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Users and groups management</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=Users and groups management</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Choose Group Management --</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>xpath=//div[@id='UIOrganizationPortlet']//div[@class='ManagementIconContainer']/a[@class='GroupButton']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>xpath=//div[@id='UIOrganizationPortlet']//div[@class='ManagementIconContainer']/a[@class='GroupButton']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-select group from the tree-</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Platform</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Platform</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Administrators</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Administrators</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//form[@id='UIGroupMembershipForm']/div[2]/div/table/tbody/tr[1]/td[2]/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>verifyText</td>
+ <td>//form[@id='UIGroupMembershipForm']/div[2]/div/table/tbody/tr[1]/td[2]/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//form[@id='UIGroupMembershipForm']/div[2]/div/table/tbody/tr[1]/td[2]/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>Test_POR_14_043</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>Test_POR_14_043</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>--Click add button--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>xpath=//form[@id='UIUserSelector']//div[@class='UIAction']//a[@class='ActionButton LightBlueStyle']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>xpath=//form[@id='UIUserSelector']//div[@class='UIAction']//a[@class='ActionButton LightBlueStyle']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>membership</td>
+ <td></td>
+</tr>
+<tr>
+ <td>select</td>
+ <td>membership</td>
+ <td>label=manager</td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>--Page Management--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Page Management</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=Page Management</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>--Add new page--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>xpath=//div[@id='UIPageBrowser']/div[2]/table/tbody/tr/td/div/div/div/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>xpath=//div[@id='UIPageBrowser']/div[2]/table/tbody/tr/td/div/div/div/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>ownerType</td>
+ <td></td>
+</tr>
+<tr>
+ <td>select</td>
+ <td>ownerType</td>
+ <td>label=portal</td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>name</td>
+ <td></td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>name</td>
+ <td>Test_POR_14_043</td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>title</td>
+ <td>Test_POR_14_043</td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Page Layout--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>xpath=//div[@id='UIPortalApplication']/div[@id='UIMaskWorkspace']/div[@class='MiddleLeftDecorator']//div[@class='TabsContainer']/div[2]//div[@class='MiddleTab']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>xpath=//div[@id='UIPortalApplication']/div[@id='UIMaskWorkspace']/div[@class='MiddleLeftDecorator']//div[@class='TabsContainer']/div[2]//div[@class='MiddleTab']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Permission Setting--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>xpath=//div[@id='UIPortalApplication']/div[@id='UIMaskWorkspace']/div[@class='MiddleLeftDecorator']//div[@class='TabsContainer']/div[3]//div[@class='MiddleTab']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>xpath=//div[@id='UIPortalApplication']/div[@id='UIMaskWorkspace']/div[@class='MiddleLeftDecorator']//div[@class='TabsContainer']/div[3]//div[@class='MiddleTab']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAt</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Add new node--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=Site</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Edit Navigation</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Edit Navigation</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Add Node</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Add Node</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>name</td>
+ <td></td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>name</td>
+ <td>Test_POR_14_043</td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>label</td>
+ <td>Test_POR_14_043</td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Choose Page Selector--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>xpath=//div[@class='CenterHorizontalTabs']//div[@class='NormalTab']//div[@class='MiddleTab']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>xpath=//div[@class='CenterHorizontalTabs']//div[@class='NormalTab']//div[@class='MiddleTab']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Search and Select Page</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Search and Select Page</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>--Select page created from page lists--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//img[@title='Select Page']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//img[@title='Select Page']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Save to finish add new node--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Save to close Navigation Management--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>--Sign out--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=Sign out</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>--Sign In with new accout--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>open</td>
+ <td>/portal/public/classic/</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Sign in</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAt</td>
+ <td>link=Sign in</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>username</td>
+ <td></td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>username</td>
+ <td>Test_POR_14_043</td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>password</td>
+ <td>Test_POR_14_043</td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>xpath=//div[@id='UIPortalLoginFormAction']/div/div/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>//div[@id='PortalNavigationTopContainer']/div[1]/div/div/div/div/div/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>mouseOver</td>
+ <td>link=Site Editor</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>--Sign out--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=Đăng xuất</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>--Sign In by root--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>open</td>
+ <td>/portal/public/classic/</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Sign in</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Sign in</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>username</td>
+ <td></td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>username</td>
+ <td>root</td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>password</td>
+ <td>gtn</td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>xpath=//div[@id='UIPortalLoginFormAction']//a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>- Go to Manage page again--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Page Management</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Page Management</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Search page created above--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>searchTerm</td>
+ <td></td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>searchTerm</td>
+ <td>Test_POR_14_043</td>
+</tr>
+<tr>
+ <td>select</td>
+ <td>searchOption</td>
+ <td>label=Title</td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>xpath=//form[@id='UIPageSearch']/div[2]/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>xpath=//form[@id='UIPageSearch']/div[2]/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>--Delete page--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>xpath=//img[@title='Delete Page']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>xpath=//img[@title='Delete Page']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>assertConfirmation</td>
+ <td>Do you want to delete this page?</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>xpath=//div[@id='UIPortalApplication']/div[@class='UIPopupWindow UIDragObject']//div[@class='MiddleLeftSideDecorator']//div[@class='UIPopupMessages']/div[@class='MessageActionBar']//a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>xpath=//div[@id='UIPortalApplication']/div[@class='UIPopupWindow UIDragObject']//div[@class='MiddleLeftSideDecorator']//div[@class='UIPopupMessages']/div[@class='MessageActionBar']//a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Go to User and Group managent--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Users and groups management</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Users and groups management</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Choose user management --</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[@id='UIOrganizationPortlet']/div[2]/div[1]/div/div/div/div/div/div/a[1]/div[1]</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[@id='UIOrganizationPortlet']/div[2]/div[1]/div/div/div/div/div/div/a[1]/div[1]</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>searchTerm</td>
+ <td></td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>searchTerm</td>
+ <td>Test_POR_14_043</td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>xpath=//form[@id='UISearchForm']/div[2]/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>xpath=//form[@id='UISearchForm']/div[2]/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>xpath=//img[@alt='DeleteUser']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>xpath=//img[@alt='DeleteUser']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>assertConfirmation</td>
+ <td>Are you sure you want to delete Test_POR_14_043 user?</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForTextPresent</td>
+ <td>No result found.</td>
+ <td></td>
+</tr>
+<tr>
+ <td>verifyTextPresent</td>
+ <td>No result found.</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[5]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[5]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Go to Site --</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=Site</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Edit Navigation</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Edit Navigation</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[@id='UINavigationNodeSelector']/div/div/div/div[2]/div/div/div[8]/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[@id='UINavigationNodeSelector']/div/div/div/div[2]/div/div/div[8]/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>mouseDownRight</td>
+ <td>//a[@class='NodeIcon DefaultPageIcon NodeSelected' and @title='Test_POR_14_043']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Delete Node</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Delete Node</td>
+ <td></td>
+</tr>
+<tr>
+ <td>assertConfirmation</td>
+ <td>Are you sure you want to delete this node?</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Sign out</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=Sign out</td>
+ <td></td>
+</tr>
+
+</tbody></table>
+</body>
+</html>
Copied: portal/branches/wci/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_POR_20_014_CreateUserSameNameDifferentUser.html (from rev 4436, portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_POR_20_014_CreateUserSameNameDifferentUser.html)
===================================================================
--- portal/branches/wci/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_POR_20_014_CreateUserSameNameDifferentUser.html (rev 0)
+++ portal/branches/wci/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_POR_20_014_CreateUserSameNameDifferentUser.html 2010-09-29 14:51:45 UTC (rev 4437)
@@ -0,0 +1,677 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head profile="http://selenium-ide.openqa.org/profiles/test-case">
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+<link rel="selenium.base" href="" />
+<title>Test_POR_20_014_CreateUserSameNameDifferentUser</title>
+</head>
+<body>
+<table cellpadding="1" cellspacing="1" border="1">
+<thead>
+<tr><td rowspan="1" colspan="3">Test_POR_20_014_CreateUserSameNameDifferentUser</td></tr>
+</thead><tbody>
+<tr>
+ <td>open</td>
+ <td>/portal/public/classic/</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Create new user --</td>
+ <td></td>
+</tr>
+<tr>
+ <td>windowMaximize</td>
+ <td></td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Sign in</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>username</td>
+ <td></td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>username</td>
+ <td>root</td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>password</td>
+ <td>gtn</td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>xpath=//div[@id='UIPortalLoginFormAction']//a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=New Staff</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=New Staff</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>username</td>
+ <td></td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>username</td>
+ <td>Test_POR_20_014</td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>password</td>
+ <td>Test_POR_20_014</td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>Confirmpassword</td>
+ <td>Test_POR_20_014</td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>firstName</td>
+ <td>Test_POR_20_014</td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>lastName</td>
+ <td>Test_POR_20_014</td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>email</td>
+ <td>Test_POR_20_014(a)yahoo.com</td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Choose User Profile tab --</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[3]/div/div/div[1]/div/div/div/div/div/div/div/div[1]/div/div/div/div/div/div/div/div/div[2]/div/div/div/div</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[3]/div/div/div[1]/div/div/div/div/div/div/div/div[1]/div/div/div/div/div/div/div/div/div[2]/div/div/div/div</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>user.language</td>
+ <td></td>
+</tr>
+<tr>
+ <td>select</td>
+ <td>user.language</td>
+ <td>label=English</td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForTextPresent</td>
+ <td>You have registered a new account.</td>
+ <td></td>
+</tr>
+<tr>
+ <td>verifyTextPresent</td>
+ <td>You have registered a new account.</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[3]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[3]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>--Select User and group managent in menu--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Users and groups management</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Users and groups management</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>xpath=//div[@id='UIOrganizationPortlet']//div[@class='ManagementIconContainer']/a[@class='GroupButton']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>xpath=//div[@id='UIOrganizationPortlet']//div[@class='ManagementIconContainer']/a[@class='GroupButton']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-select group from the tree-</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Platform</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Platform</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Administrators</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Administrators</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>xpath=//td[2]/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>xpath=//td[2]/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>Test_POR_20_014</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>Test_POR_20_014</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>--Click add button--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>xpath=//form[@id='UIUserSelector']//div[@class='UIAction']//a[@class='ActionButton LightBlueStyle']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>xpath=//form[@id='UIUserSelector']//div[@class='UIAction']//a[@class='ActionButton LightBlueStyle']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>membership</td>
+ <td></td>
+</tr>
+<tr>
+ <td>select</td>
+ <td>membership</td>
+ <td>label=manager</td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=Sign out</td>
+ <td></td>
+</tr>
+<tr>
+ <td>open</td>
+ <td>/portal/public/classic</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>--Create new page for new user--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Sign in</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>username</td>
+ <td></td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>username</td>
+ <td>Test_POR_20_014</td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>password</td>
+ <td>Test_POR_20_014</td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>xpath=//div[@id='UIPortalLoginFormAction']/div/div/div</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>--Select Page Mangement on menu item--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Page Management</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Page Management</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>xpath=//div[@id='UIPageBrowser']/div[2]/table/tbody/tr/td/div/div/div/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>xpath=//div[@id='UIPageBrowser']/div[2]/table/tbody/tr/td/div/div/div/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>name</td>
+ <td></td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>name</td>
+ <td>Test_POR_20_014</td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>title</td>
+ <td>Test_POR_20_014</td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Page Layout tab --</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[5]/div[2]/div/div/div/div/div/div/div/div/div/div/div/div[2]/div/div/div/div</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[5]/div[2]/div/div/div/div/div/div/div/div/div/div/div/div[2]/div/div/div/div</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Sign out</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=Sign out</td>
+ <td></td>
+</tr>
+<tr>
+ <td>open</td>
+ <td>/portal/public/classic</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>--Create new page for root--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Sign in</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>username</td>
+ <td></td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>username</td>
+ <td>root</td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>password</td>
+ <td>gtn</td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>xpath=//div[@id='UIPortalLoginFormAction']/div/div/div</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>--Select Page Mangement on menu item--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Page Management</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Page Management</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>xpath=//div[@id='UIPageBrowser']/div[2]/table/tbody/tr/td/div/div/div/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>xpath=//div[@id='UIPageBrowser']/div[2]/table/tbody/tr/td/div/div/div/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>name</td>
+ <td></td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>name</td>
+ <td>Test_POR_20_014</td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>title</td>
+ <td>Test_POR_20_014</td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Page Layout tab --</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[5]/div[2]/div/div/div/div/div/div/div/div/div/div/div/div[2]/div/div/div/div</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[5]/div[2]/div/div/div/div/div/div/div/div/div/div/div/div[2]/div/div/div/div</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>--Search new page created--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>searchTerm</td>
+ <td></td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>searchTerm</td>
+ <td>Test_POR_20_014</td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>searchOption</td>
+ <td></td>
+</tr>
+<tr>
+ <td>select</td>
+ <td>searchOption</td>
+ <td>label=Title</td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>xpath=//form[@id='UIPageSearch']/div[2]/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>xpath=//form[@id='UIPageSearch']/div[2]/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>--Delete page of new user--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>xpath=//img[@title='Delete Page']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>xpath=//img[@title='Delete Page']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForConfirmationPresent</td>
+ <td></td>
+ <td></td>
+</tr>
+<tr>
+ <td>assertConfirmation</td>
+ <td>Do you want to delete this page?</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>xpath=//div[@id='UIPortalApplication']/div[@class='UIPopupWindow UIDragObject']//div[@class='MiddleLeftSideDecorator']//div[@class='UIPopupMessages']/div[@class='MessageActionBar']//a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>xpath=//div[@id='UIPortalApplication']/div[@class='UIPopupWindow UIDragObject']//div[@class='MiddleLeftSideDecorator']//div[@class='UIPopupMessages']/div[@class='MessageActionBar']//a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>--Delete page of root--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>xpath=//img[@title='Delete Page']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>xpath=//img[@title='Delete Page']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForConfirmationPresent</td>
+ <td></td>
+ <td></td>
+</tr>
+<tr>
+ <td>assertConfirmation</td>
+ <td>Do you want to delete this page?</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>xpath=//div[@id='UIPortalApplication']/div[@class='UIPopupWindow UIDragObject']//div[@class='MiddleLeftSideDecorator']//div[@class='UIPopupMessages']/div[@class='MessageActionBar']//a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>xpath=//div[@id='UIPortalApplication']/div[@class='UIPopupWindow UIDragObject']//div[@class='MiddleLeftSideDecorator']//div[@class='UIPopupMessages']/div[@class='MessageActionBar']//a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Choose User and group management --</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=Users and groups management</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[@id='UIOrganizationPortlet']/div[2]/div[1]/div/div/div/div/div/div/a[1]/div[1]</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[@id='UIOrganizationPortlet']/div[2]/div[1]/div/div/div/div/div/div/a[1]/div[1]</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Search user --</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>searchTerm</td>
+ <td></td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>searchTerm</td>
+ <td>Test_POR_20_014</td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//form[@id='UISearchForm']/div[2]/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//form[@id='UISearchForm']/div[2]/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Delete user --</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//img[@alt='DeleteUser']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//img[@alt='DeleteUser']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>assertConfirmation</td>
+ <td>Are you sure you want to delete Test_POR_20_014 user?</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForTextPresent</td>
+ <td>No result found.</td>
+ <td></td>
+</tr>
+<tr>
+ <td>verifyTextPresent</td>
+ <td>No result found.</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[5]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[5]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Sign out</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=Sign out</td>
+ <td></td>
+</tr>
+
+</tbody></table>
+</body>
+</html>
Copied: portal/branches/wci/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/candidate/Test_POR_14_01_044_CheckWhenHaveRightToEditPage.html (from rev 4436, portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/candidate/Test_POR_14_01_044_CheckWhenHaveRightToEditPage.html)
===================================================================
--- portal/branches/wci/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/candidate/Test_POR_14_01_044_CheckWhenHaveRightToEditPage.html (rev 0)
+++ portal/branches/wci/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/candidate/Test_POR_14_01_044_CheckWhenHaveRightToEditPage.html 2010-09-29 14:51:45 UTC (rev 4437)
@@ -0,0 +1,777 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head profile="http://selenium-ide.openqa.org/profiles/test-case">
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+<link rel="selenium.base" href="" />
+<title>Test_POR_14_01_044_CheckWhenHaveRightToEditPage</title>
+</head>
+<body>
+<table cellpadding="1" cellspacing="1" border="1">
+<thead>
+<tr><td rowspan="1" colspan="3">Test_POR_14_01_044_CheckWhenHaveRightToEditPage</td></tr>
+</thead><tbody>
+<tr>
+ <td>open</td>
+ <td>/portal/public/classic/</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>Check when user does not have right to edit page --</td>
+ <td></td>
+</tr>
+<tr>
+ <td>windowMaximize</td>
+ <td></td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Sign in</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>username</td>
+ <td></td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>username</td>
+ <td>root</td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>password</td>
+ <td>gtn</td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>//div[@id='UIPortalLoginFormAction']/div/div/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Add new user--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=New Staff</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>username</td>
+ <td></td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>username</td>
+ <td>POR_TEST_14_01_045</td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>password</td>
+ <td>POR_TEST_14_01_045</td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>Confirmpassword</td>
+ <td>POR_TEST_14_01_045</td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>firstName</td>
+ <td>POR_TEST_14_01_045</td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>lastName</td>
+ <td>POR_TEST_14_01_045</td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>email</td>
+ <td>POR_TEST_14_01_045(a)gmail.com</td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[3]/div/div/div[1]/div/div/div/div/div/div/div/div[2]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[3]/div/div/div[1]/div/div/div/div/div/div/div/div[2]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Add user into group with membership is member--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=Users and groups management</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Group Management</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Group Management</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Platform</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Platform</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Administrators</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Administrators</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>--Click Search User--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>pause</td>
+ <td>2000</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>username</td>
+ <td></td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>username</td>
+ <td>POR_TEST_14_01_045</td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Create new page for portal--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Page Management</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=Page Management</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[@id='UIPageBrowser']/div[2]/table/tbody/tr/td/div/div/div/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[@id='UIPageBrowser']/div[2]/table/tbody/tr/td/div/div/div/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>ownerType</td>
+ <td></td>
+</tr>
+<tr>
+ <td>select</td>
+ <td>ownerType</td>
+ <td>label=portal</td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//option[@value='portal']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>name</td>
+ <td>POR_TEST_14_01_045</td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>title</td>
+ <td>POR_TEST_14_01_045</td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Add new node & select added page for that node--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Site</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=Site</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Edit Navigation</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Edit Navigation</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[@id='UINavigationManagement']/div[3]/table/tbody/tr/td[1]/div/div/div/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[@id='UINavigationManagement']/div[3]/table/tbody/tr/td[1]/div/div/div/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>name</td>
+ <td></td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>name</td>
+ <td>POR_TEST_14_01_045</td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>label</td>
+ <td>POR_TEST_14_01_045</td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[2]/div/div/div/div/div/div[1]/div/div/div/div/div/div/div/div/div[2]/div/div/div/div</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Search and Select Page</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Search and Select Page</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//img[@title='Select Page']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//img[@title='Select Page']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//td[2]/div/div/div/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//td[2]/div/div/div/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- edit permission for portal's page--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Page Management</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=Page Management</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>searchTerm</td>
+ <td></td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>searchTerm</td>
+ <td>POR_TEST_14_01_045</td>
+</tr>
+<tr>
+ <td>select</td>
+ <td>searchOption</td>
+ <td>label=Title</td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//form[@id='UIPageSearch']/div[2]/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//form[@id='UIPageSearch']/div[2]/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- https://jira.jboss.org/browse/GTNPORTAL-1304 --</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//img[@title='Edit Page']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//img[@title='Edit Page']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=View Page properties</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=View Page properties</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Choose Permission Setting --</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[5]/div[2]/div/div/div/div/div/div/div/div/div/div/div/div[2]/div/div/div/div</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[5]/div[2]/div/div/div/div/div/div/div/div/div/div/div/div[2]/div/div/div/div</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Choose Edit Permission Setting tab--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Edit Permission Setting</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Edit Permission Setting</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Change permission for this page--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Select Permission</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Select Permission</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Platform</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Platform</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Administrators</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Administrators</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=manager</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=manager</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Close Page Editor--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[@id='UIPageEditor']/div[1]/div/div/div/a[2]</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[@id='UIPageEditor']/div[1]/div/div/div/a[2]</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Sign out</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=Sign out</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Login with new user--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>open</td>
+ <td>/portal/public/classic/</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Sign in</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Sign in</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>username</td>
+ <td></td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>username</td>
+ <td>POR_TEST_14_01_045</td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>password</td>
+ <td>POR_TEST_14_01_045</td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>//div[@id='UIPortalLoginFormAction']/div/div/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- View new node--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>//div[@id='PortalNavigationTopContainer']/div[3]/div/div/div/div/div/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>mouseOver</td>
+ <td>link=Site Editor</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=Sign out</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Delete this node--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>open</td>
+ <td>/portal/public/classic/</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Sign in</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Sign in</td>
+ <td></td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>username</td>
+ <td>root</td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>password</td>
+ <td>gtn</td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>//div[@id='UIPortalLoginFormAction']/div/div/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=Site</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Edit Navigation</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Edit Navigation</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//a[@class='NodeIcon DefaultPageIcon' and @title='POR_TEST_14_01_045']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>mouseDownRight</td>
+ <td>//a[@class='NodeIcon DefaultPageIcon' and @title='POR_TEST_14_01_045']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Delete Node</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Delete Node</td>
+ <td></td>
+</tr>
+<tr>
+ <td>assertConfirmation</td>
+ <td>Are you sure you want to delete this node?</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Delete page--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=Page Management</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>searchTerm</td>
+ <td></td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>searchTerm</td>
+ <td>POR_TEST_14_01_045</td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//form[@id='UIPageSearch']/div[2]/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//form[@id='UIPageSearch']/div[2]/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- https://jira.jboss.org/browse/GTNPORTAL-1304--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//img[@title='Delete Page']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//img[@title='Delete Page']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForConfirmationPresent</td>
+ <td></td>
+ <td></td>
+</tr>
+<tr>
+ <td>assertConfirmation</td>
+ <td>Do you want to delete this page?</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[4]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[4]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Delete user--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=Users and groups management</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>searchTerm</td>
+ <td></td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>searchTerm</td>
+ <td>POR_TEST_14_01_045</td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//form[@id='UISearchForm']/div[2]/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//form[@id='UISearchForm']/div[2]/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//img[@alt='DeleteUser']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//img[@alt='DeleteUser']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForConfirmationPresent</td>
+ <td></td>
+ <td></td>
+</tr>
+<tr>
+ <td>assertConfirmation</td>
+ <td>Are you sure you want to delete POR_TEST_14_01_045 user?</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=Sign out</td>
+ <td></td>
+</tr>
+
+</tbody></table>
+</body>
+</html>
Copied: portal/branches/wci/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/candidate/Test_POR_14_01_045_CheckWhenUserDoesNotHaveRightToEditPage.html (from rev 4436, portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/candidate/Test_POR_14_01_045_CheckWhenUserDoesNotHaveRightToEditPage.html)
===================================================================
--- portal/branches/wci/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/candidate/Test_POR_14_01_045_CheckWhenUserDoesNotHaveRightToEditPage.html (rev 0)
+++ portal/branches/wci/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/candidate/Test_POR_14_01_045_CheckWhenUserDoesNotHaveRightToEditPage.html 2010-09-29 14:51:45 UTC (rev 4437)
@@ -0,0 +1,842 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head profile="http://selenium-ide.openqa.org/profiles/test-case">
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+<link rel="selenium.base" href="" />
+<title>Test_POR_14_01_045_CheckWhenUserDoesNotHaveRightToEditPage</title>
+</head>
+<body>
+<table cellpadding="1" cellspacing="1" border="1">
+<thead>
+<tr><td rowspan="1" colspan="3">Test_POR_14_01_045_CheckWhenUserDoesNotHaveRightToEditPage</td></tr>
+</thead><tbody>
+<tr>
+ <td>open</td>
+ <td>/portal/public/classic/</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Check when user have right to edit layout of page --</td>
+ <td></td>
+</tr>
+<tr>
+ <td>windowMaximize</td>
+ <td></td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Sign in</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>username</td>
+ <td></td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>username</td>
+ <td>root</td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>password</td>
+ <td>gtn</td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>//div[@id='UIPortalLoginFormAction']/div/div/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Add new user--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=New Staff</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>username</td>
+ <td></td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>username</td>
+ <td>TEST_POR_14_01_045</td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>password</td>
+ <td>TEST_POR_14_01_045</td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>Confirmpassword</td>
+ <td>TEST_POR_14_01_045</td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>firstName</td>
+ <td>TEST_POR_14_01_045</td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>lastName</td>
+ <td>TEST_POR_14_01_045</td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>email</td>
+ <td>TEST_POR_14_01_045(a)gmail.com</td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Choose User Profile --</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[3]/div/div/div[1]/div/div/div/div/div/div/div/div[1]/div/div/div/div/div/div/div/div/div[2]/div/div/div/div</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[3]/div/div/div[1]/div/div/div/div/div/div/div/div[1]/div/div/div/div/div/div/div/div/div[2]/div/div/div/div</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>user.language</td>
+ <td></td>
+</tr>
+<tr>
+ <td>select</td>
+ <td>user.language</td>
+ <td>label=English</td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForTextPresent</td>
+ <td>You have registered a new account.</td>
+ <td></td>
+</tr>
+<tr>
+ <td>verifyTextPresent</td>
+ <td>You have registered a new account.</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[3]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[3]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Add user into group--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=Users and groups management</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Group Management</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Group Management</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Platform</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Platform</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Administrators</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Administrators</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>username</td>
+ <td></td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>username</td>
+ <td>TEST_POR_14_01_045</td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Create new page for portal--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=Page Management</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[@id='UIPageBrowser']/div[2]/table/tbody/tr/td/div/div/div/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[@id='UIPageBrowser']/div[2]/table/tbody/tr/td/div/div/div/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>ownerType</td>
+ <td></td>
+</tr>
+<tr>
+ <td>select</td>
+ <td>ownerType</td>
+ <td>label=portal</td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>name</td>
+ <td></td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>name</td>
+ <td>TEST_POR_14_01_045</td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>title</td>
+ <td>TEST_POR_14_01_045</td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Add new node & select added page for that node--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=Site</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Edit Navigation</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Edit Navigation</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[@id='UINavigationManagement']/div[3]/table/tbody/tr/td[1]/div/div/div/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[@id='UINavigationManagement']/div[3]/table/tbody/tr/td[1]/div/div/div/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>name</td>
+ <td></td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>name</td>
+ <td>TEST_POR_14_01_045</td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>label</td>
+ <td>TEST_POR_14_01_045</td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Choose Page selector --</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[2]/div/div/div/div/div/div[1]/div/div/div/div/div/div/div/div/div[2]/div/div/div/div</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[2]/div/div/div/div/div/div[1]/div/div/div/div/div/div/div/div/div[2]/div/div/div/div</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Search and Select Page</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Search and Select Page</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//img[@title='Select Page']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//img[@title='Select Page']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//td[2]/div/div/div/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//td[2]/div/div/div/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- edit permission for portal's page--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=Page Management</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>searchTerm</td>
+ <td></td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>searchTerm</td>
+ <td>TEST_POR_14_01_045</td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>searchOption</td>
+ <td></td>
+</tr>
+<tr>
+ <td>select</td>
+ <td>searchOption</td>
+ <td>label=Title</td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//form[@id='UIPageSearch']/div[2]/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//form[@id='UIPageSearch']/div[2]/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Edit page --</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//img[@title='Edit Page']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//img[@title='Edit Page']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=View Page properties</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=View Page properties</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Choose Page Template --</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[5]/div[2]/div/div/div/div/div/div/div/div/div/div/div/div[2]/div/div/div/div</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[5]/div[2]/div/div/div/div/div/div/div/div/div/div/div/div[2]/div/div/div/div</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Choose Permision Setting --</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[2]/div/div/div/div/div/div/div/div/div/div/div/div[3]/div/div/div/div</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[2]/div/div/div/div/div/div/div/div/div/div/div/div[3]/div/div/div/div</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Edit Permission Setting</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Select Permission</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Select Permission</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Platform</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Platform</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Administrators</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Administrators</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=manager</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=manager</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[@id='UIPageEditor']/div[1]/div/div/div/a[2]</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[@id='UIPageEditor']/div[1]/div/div/div/a[2]</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=Sign out</td>
+ <td></td>
+</tr>
+<tr>
+ <td>open</td>
+ <td>/portal/public/classic/</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Login with new user--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Sign in</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Sign in</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>username</td>
+ <td></td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>username</td>
+ <td>TEST_POR_14_01_045</td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>password</td>
+ <td>TEST_POR_14_01_045</td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>//div[@id='UIPortalLoginFormAction']/div/div/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- View page --</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>//div[@id='PortalNavigationTopContainer']/div[3]/div/div/div/div/div/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>mouseOver</td>
+ <td>link=Site Editor</td>
+ <td>Site Editor</td>
+</tr>
+<tr>
+ <td>verifyText</td>
+ <td>link=Add New Page</td>
+ <td>Add New Page</td>
+</tr>
+<tr>
+ <td>verifyTextNotPresent</td>
+ <td>Edit Page</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Sign out</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=Sign out</td>
+ <td></td>
+</tr>
+<tr>
+ <td>open</td>
+ <td>/portal/public/classic/</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Sign in</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>username</td>
+ <td></td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>username</td>
+ <td>root</td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>password</td>
+ <td>gtn</td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>//div[@id='UIPortalLoginFormAction']/div/div/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Delete this node--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=Site</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Edit Navigation</td>
+ <td></td>
+</tr>
+<tr>
+ <td>mouseDownRight</td>
+ <td>//a[@class='NodeIcon DefaultPageIcon' and @title='TEST_POR_14_01_045']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Delete Node</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Delete Node</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForConfirmationPresent</td>
+ <td></td>
+ <td></td>
+</tr>
+<tr>
+ <td>assertConfirmation</td>
+ <td>Are you sure you want to delete this node?</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Delete page--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=Page Management</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>searchTerm</td>
+ <td></td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>searchTerm</td>
+ <td>TEST_POR_14_01_045</td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>searchOption</td>
+ <td></td>
+</tr>
+<tr>
+ <td>select</td>
+ <td>searchOption</td>
+ <td>label=Title</td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//form[@id='UIPageSearch']/div[2]/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//form[@id='UIPageSearch']/div[2]/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//img[@title='Delete Page']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//img[@title='Delete Page']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForConfirmationPresent</td>
+ <td></td>
+ <td></td>
+</tr>
+<tr>
+ <td>assertConfirmation</td>
+ <td>Do you want to delete this page?</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForTextPresent</td>
+ <td>No result found.</td>
+ <td></td>
+</tr>
+<tr>
+ <td>verifyTextPresent</td>
+ <td>No result found.</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[5]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[5]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Delete user--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=Users and groups management</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>searchTerm</td>
+ <td></td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>searchTerm</td>
+ <td>TEST_POR_14_01_045</td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//form[@id='UISearchForm']/div[2]/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//img[@alt='DeleteUser']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//img[@alt='DeleteUser']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForConfirmationPresent</td>
+ <td></td>
+ <td></td>
+</tr>
+<tr>
+ <td>assertConfirmation</td>
+ <td>Are you sure you want to delete TEST_POR_14_01_045 user?</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForTextPresent</td>
+ <td>No result found.</td>
+ <td></td>
+</tr>
+<tr>
+ <td>verifyTextPresent</td>
+ <td>No result found.</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[5]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[5]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Sign out</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=Sign out</td>
+ <td></td>
+</tr>
+
+</tbody></table>
+</body>
+</html>
Copied: portal/branches/wci/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/candidate/Test_POR_18_009_CheckDisplayPageCreatedInPageManagement.html (from rev 4436, portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/candidate/Test_POR_18_009_CheckDisplayPageCreatedInPageManagement.html)
===================================================================
--- portal/branches/wci/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/candidate/Test_POR_18_009_CheckDisplayPageCreatedInPageManagement.html (rev 0)
+++ portal/branches/wci/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/candidate/Test_POR_18_009_CheckDisplayPageCreatedInPageManagement.html 2010-09-29 14:51:45 UTC (rev 4437)
@@ -0,0 +1,357 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head profile="http://selenium-ide.openqa.org/profiles/test-case">
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+<link rel="selenium.base" href="" />
+<title>Test_POR_18_009_CheckDisplayPageCreatedInPageManagement</title>
+</head>
+<body>
+<table cellpadding="1" cellspacing="1" border="1">
+<thead>
+<tr><td rowspan="1" colspan="3">Test_POR_18_009_CheckDisplayPageCreatedInPageManagement</td></tr>
+</thead><tbody>
+<tr>
+ <td>open</td>
+ <td>/portal/public/classic/</td>
+ <td></td>
+</tr>
+<tr>
+ <td>windowMaximize</td>
+ <td></td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Sign in</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>username</td>
+ <td></td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>username</td>
+ <td>root</td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>password</td>
+ <td>gtn</td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>//div[@id='UIPortalLoginFormAction']/div/div/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Add new page for group--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Page Management</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=Page Management</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[@id='UIPageBrowser']/div[2]/table/tbody/tr/td/div/div/div/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[@id='UIPageBrowser']/div[2]/table/tbody/tr/td/div/div/div/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>ownerType</td>
+ <td></td>
+</tr>
+<tr>
+ <td>select</td>
+ <td>ownerType</td>
+ <td>label=group</td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>ownerId</td>
+ <td></td>
+</tr>
+<tr>
+ <td>select</td>
+ <td>ownerId</td>
+ <td>label=/organization/management/executive-board</td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>name</td>
+ <td></td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>name</td>
+ <td>TEST_POR_18_009</td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>title</td>
+ <td>TEST_POR_18_009</td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=Sign out</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Login by any user has right to access new added page--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>open</td>
+ <td>/portal/public/classic/</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Sign in</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>username</td>
+ <td></td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>username</td>
+ <td>john</td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>password</td>
+ <td>gtn</td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>//div[@id='UIPortalLoginFormAction']/div/div/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>mouseOver</td>
+ <td>link=classic</td>
+ <td></td>
+</tr>
+<tr>
+ <td>mouseOver</td>
+ <td>link=Organization</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=Site</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Edit Navigation</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Edit Navigation</td>
+ <td></td>
+</tr>
+<tr>
+ <td>verifyTextNotPresent</td>
+ <td>TEST_POR_18_009</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[@id='UINavigationManagement']/div[3]/table/tbody/tr/td[2]/div/div/div/div</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[@id='UINavigationManagement']/div[3]/table/tbody/tr/td[2]/div/div/div/div</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=Group</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Edit Navigation</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Edit Navigation</td>
+ <td></td>
+</tr>
+<tr>
+ <td>verifyTextNotPresent</td>
+ <td>TEST_POR_18_009</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=Sign out</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>--Delete page--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>open</td>
+ <td>/portal/public/classic/</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Sign in</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>username</td>
+ <td></td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>username</td>
+ <td>root</td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>password</td>
+ <td>gtn</td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>//div[@id='UIPortalLoginFormAction']/div/div/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Page Management</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=Page Management</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>searchTerm</td>
+ <td></td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>searchTerm</td>
+ <td>TEST_POR_18_009</td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>searchOption</td>
+ <td></td>
+</tr>
+<tr>
+ <td>select</td>
+ <td>searchOption</td>
+ <td>label=Title</td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//form[@id='UIPageSearch']/div[2]/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//form[@id='UIPageSearch']/div[2]/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//img[@title='Delete Page']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForConfirmationPresent</td>
+ <td></td>
+ <td></td>
+</tr>
+<tr>
+ <td>assertConfirmation</td>
+ <td>Do you want to delete this page?</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForTextPresent</td>
+ <td>No result found.</td>
+ <td></td>
+</tr>
+<tr>
+ <td>verifyTextPresent</td>
+ <td>No result found.</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[5]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[5]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Sign out</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=Sign out</td>
+ <td></td>
+</tr>
+
+</tbody></table>
+</body>
+</html>
Copied: portal/branches/wci/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/candidate/Test_PRL_03_04_005_CheckExistingOfPagesInDeletedGroup.html (from rev 4436, portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/candidate/Test_PRL_03_04_005_CheckExistingOfPagesInDeletedGroup.html)
===================================================================
--- portal/branches/wci/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/candidate/Test_PRL_03_04_005_CheckExistingOfPagesInDeletedGroup.html (rev 0)
+++ portal/branches/wci/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/candidate/Test_PRL_03_04_005_CheckExistingOfPagesInDeletedGroup.html 2010-09-29 14:51:45 UTC (rev 4437)
@@ -0,0 +1,942 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head profile="http://selenium-ide.openqa.org/profiles/test-case">
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+<link rel="selenium.base" href="" />
+<title>Test_PRL_03_04_005_CheckExistingOfPagesInDeletedGroup</title>
+</head>
+<body>
+<table cellpadding="1" cellspacing="1" border="1">
+<thead>
+<tr><td rowspan="1" colspan="3">Test_PRL_03_04_005_CheckExistingOfPagesInDeletedGroup</td></tr>
+</thead><tbody>
+<tr>
+ <td>open</td>
+ <td>/portal/public/classic/</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Check existing of pages in deleted group--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>windowMaximize</td>
+ <td></td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Sign in</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>username</td>
+ <td></td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>username</td>
+ <td>root</td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>password</td>
+ <td>gtn</td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>//div[@id='UIPortalLoginFormAction']/div/div/div</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Add new user--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=New Staff</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=New Staff</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>username</td>
+ <td></td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>username</td>
+ <td>Test_PRL_03_04_005</td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>password</td>
+ <td>Test_PRL_03_04_005</td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>Confirmpassword</td>
+ <td>Test_PRL_03_04_005</td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>firstName</td>
+ <td>Test_PRL_03_04_005</td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>lastName</td>
+ <td>Test_PRL_03_04_005</td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>email</td>
+ <td>Test_PRL_03_04_005(a)gmail.com</td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Choose User Profile --</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[@id='UIAccountPortlet']/div[1]/div/div/div/div/div/div/div/div/div[2]/div/div/div/div</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[@id='UIAccountPortlet']/div[1]/div/div/div/div/div/div/div/div/div[2]/div/div/div/div</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>user.language</td>
+ <td></td>
+</tr>
+<tr>
+ <td>select</td>
+ <td>user.language</td>
+ <td>label=English</td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForTextPresent</td>
+ <td>You have registered a new account.</td>
+ <td></td>
+</tr>
+<tr>
+ <td>verifyTextPresent</td>
+ <td>You have registered a new account.</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[3]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[3]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Go to Group and user management--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Users and groups management</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Users and groups management</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Choose User and group management --</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[@id='UIOrganizationPortlet']/div[2]/div[1]/div/div/div/div/div/div/a[2]/div[1]</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[@id='UIOrganizationPortlet']/div[2]/div[1]/div/div/div/div/div/div/a[2]/div[1]</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Add new group--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[@id='UIOrganizationPortlet']/div[2]/div[2]/div[1]/div[2]/div[1]/div[1]/a[3]</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[@id='UIOrganizationPortlet']/div[2]/div[2]/div[1]/div[2]/div[1]/div[1]/a[3]</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>groupName</td>
+ <td></td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>groupName</td>
+ <td>Test_PRL_03_04_005</td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>label</td>
+ <td>Test_PRL_03_04_005</td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>description</td>
+ <td>Test_PRL_03_04_005</td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Add user into group--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Users and groups management</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Users and groups management</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[@id='UIOrganizationPortlet']/div[2]/div[1]/div/div/div/div/div/div/a[2]/div[1]</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[@id='UIOrganizationPortlet']/div[2]/div[1]/div/div/div/div/div/div/a[2]/div[1]</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Test_PRL_03_04_005</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Test_PRL_03_04_005</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>username</td>
+ <td></td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>username</td>
+ <td>Test_PRL_03_04_005</td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>membership</td>
+ <td></td>
+</tr>
+<tr>
+ <td>select</td>
+ <td>membership</td>
+ <td>label=manager</td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Go to Page Management --</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Page Management</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Page Management</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Add new page --</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[@id='UIPageBrowser']/div[2]/table/tbody/tr/td/div/div/div/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[@id='UIPageBrowser']/div[2]/table/tbody/tr/td/div/div/div/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>ownerType</td>
+ <td></td>
+</tr>
+<tr>
+ <td>select</td>
+ <td>ownerType</td>
+ <td>label=group</td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>name</td>
+ <td></td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>name</td>
+ <td>Test_PRL_03_04_005</td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>title</td>
+ <td>Test_PRL_03_04_005</td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Page Layout--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[@id='UIMaskWorkspace']/div[2]/div/div/div/div/div/div/div/div/div/div/div/div[2]/div/div/div/div</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[@id='UIMaskWorkspace']/div[2]/div/div/div/div/div/div/div/div/div/div/div/div[2]/div/div/div/div</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Permission Setting --</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[@id='UIMaskWorkspace']/div[2]/div/div/div/div/div/div/div/div/div/div/div/div[3]/div/div/div/div</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[@id='UIMaskWorkspace']/div[2]/div/div/div/div/div/div/div/div/div/div/div/div[3]/div/div/div/div</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Access Permission Setting--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Access Permission Setting</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Access Permission Setting</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Edit Permission Setting--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Edit Permission Setting</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Edit Permission Setting</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Continue Add new page--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[@id='UIPageBrowser']/div[2]/table/tbody/tr/td/div/div/div/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[@id='UIPageBrowser']/div[2]/table/tbody/tr/td/div/div/div/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>ownerType</td>
+ <td></td>
+</tr>
+<tr>
+ <td>select</td>
+ <td>ownerType</td>
+ <td>label=group</td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>name</td>
+ <td></td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>name</td>
+ <td>Test_PRL_03_04_005_add</td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>title</td>
+ <td>Test_PRL_03_04_005_add</td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Page Layout--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[@id='UIMaskWorkspace']/div[2]/div/div/div/div/div/div/div/div/div/div/div/div[2]/div/div/div/div</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[@id='UIMaskWorkspace']/div[2]/div/div/div/div/div/div/div/div/div/div/div/div[2]/div/div/div/div</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Permission Setting --</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[@id='UIMaskWorkspace']/div[2]/div/div/div/div/div/div/div/div/div/div/div/div[3]/div/div/div/div</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[@id='UIMaskWorkspace']/div[2]/div/div/div/div/div/div/div/div/div/div/div/div[3]/div/div/div/div</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Access Permission Setting--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Access Permission Setting</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Access Permission Setting</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Edit Permission Setting--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Edit Permission Setting</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Edit Permission Setting</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Change Edit permission on one page (page B) to another group --</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>searchTerm</td>
+ <td></td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>searchTerm</td>
+ <td>Test_PRL_03_04_005_add</td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>searchOption</td>
+ <td></td>
+</tr>
+<tr>
+ <td>select</td>
+ <td>searchOption</td>
+ <td>label=Title</td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//form[@id='UIPageSearch']/div[2]/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//form[@id='UIPageSearch']/div[2]/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Edit page --</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//img[@title='Edit Page']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//img[@title='Edit Page']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- View Page Properties --</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[@id='UIPageEditor']/div[3]/div/div/div[1]/table/tbody/tr/td/div[1]/div/div/div/div</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[@id='UIPageEditor']/div[3]/div/div/div[1]/table/tbody/tr/td/div[1]/div/div/div/div</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Choose Permission Setting --</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[@id='UIMaskWorkspace']/div[2]/div/div/div/div/div/div/div/div/div/div/div/div[3]/div/div/div/div</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[@id='UIMaskWorkspace']/div[2]/div/div/div/div/div/div/div/div/div/div/div/div[3]/div/div/div/div</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Choose Edit Permission --</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[@id='PermissionSetting']/div[1]/div/div/div/div/div[3]/div/div/div/div/div[1]</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[@id='PermissionSetting']/div[1]/div/div/div/div/div[3]/div/div/div/div/div[1]</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Delete Permission --</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Delete Permission</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Delete Permission</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Choose New Edit Permission --</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Select Permission</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Select Permission</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[@id='PermissionSelector']/div/div[2]/div/div[2]/div/div/div[4]/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[@id='PermissionSelector']/div/div[2]/div/div[2]/div/div/div[4]/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Management</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Management</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Executive Board</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Executive Board</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[@id='PermissionSelector']/div/div[3]/div/div[2]/div[2]/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[@id='PermissionSelector']/div/div[3]/div/div[2]/div[2]/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Close Page Editor --</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[@id='UIPageEditor']/div[1]/div/div/div/a[2]</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[@id='UIPageEditor']/div[1]/div/div/div/a[2]</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Delete new added group --</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Users and groups management</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=Users and groups management</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[@id='UIOrganizationPortlet']/div[2]/div[2]/div[1]/div[2]/div[1]/div[1]/a[1]</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[@id='UIOrganizationPortlet']/div[2]/div[2]/div[1]/div[2]/div[1]/div[1]/a[1]</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForConfirmationPresent</td>
+ <td></td>
+ <td></td>
+</tr>
+<tr>
+ <td>assertConfirmation</td>
+ <td>Are you sure you want to delete this group?</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Check existing of deleted group's pages that was not changed Edit permission --</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=Page Management</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>searchTerm</td>
+ <td></td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>searchTerm</td>
+ <td>Test_PRL_03_04_005</td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//form[@id='UIPageSearch']/div[2]/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//form[@id='UIPageSearch']/div[2]/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForTextPresent</td>
+ <td>No result found.</td>
+ <td></td>
+</tr>
+<tr>
+ <td>verifyTextPresent</td>
+ <td>No result found.</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[5]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[5]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Check existing of deleted group's pages that was changed Edit permission --</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>searchTerm</td>
+ <td></td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>searchTerm</td>
+ <td>Test_PRL_03_04_005_add</td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//form[@id='UIPageSearch']/div[2]/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//form[@id='UIPageSearch']/div[2]/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[5]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[5]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Go to Users and Group Management --</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=Users and groups management</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[@id='UIOrganizationPortlet']/div[2]/div[1]/div/div/div/div/div/div/a[1]/div[1]</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[@id='UIOrganizationPortlet']/div[2]/div[1]/div/div/div/div/div/div/a[1]/div[1]</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Search user --</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>searchTerm</td>
+ <td></td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>searchTerm</td>
+ <td>Test_PRL_03_04_005</td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//form[@id='UISearchForm']/div[2]/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//form[@id='UISearchForm']/div[2]/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Delete user --</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//img[@alt='DeleteUser']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//img[@alt='DeleteUser']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForConfirmationPresent</td>
+ <td></td>
+ <td></td>
+</tr>
+<tr>
+ <td>assertConfirmation</td>
+ <td>Are you sure you want to delete Test_PRL_03_04_005 user?</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForTextPresent</td>
+ <td>No result found.</td>
+ <td></td>
+</tr>
+<tr>
+ <td>verifyTextPresent</td>
+ <td>No result found.</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[5]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[5]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Sign out</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=Sign out</td>
+ <td></td>
+</tr>
+
+</tbody></table>
+</body>
+</html>
Modified: portal/branches/wci/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/design/Test_POR_14_01_045_CheckWhenUserDoesNotHaveRightToEditPage.html
===================================================================
--- portal/branches/wci/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/design/Test_POR_14_01_045_CheckWhenUserDoesNotHaveRightToEditPage.html 2010-09-29 14:41:48 UTC (rev 4436)
+++ portal/branches/wci/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/design/Test_POR_14_01_045_CheckWhenUserDoesNotHaveRightToEditPage.html 2010-09-29 14:51:45 UTC (rev 4437)
@@ -143,12 +143,12 @@
</tr>
<tr>
<td>waitForElementPresent</td>
- <td>//div[3]/div/div/div[1]/div/div/div/div/div/div/div/div[2]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div/a</td>
+ <td>//div[3]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div/a</td>
<td></td>
</tr>
<tr>
<td>click</td>
- <td>//div[3]/div/div/div[1]/div/div/div/div/div/div/div/div[2]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div/a</td>
+ <td>//div[3]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div/a</td>
<td></td>
</tr>
<tr>
@@ -592,6 +592,11 @@
<td></td>
</tr>
<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Sign out</td>
+ <td></td>
+</tr>
+<tr>
<td>clickAndWait</td>
<td>link=Sign out</td>
<td></td>
@@ -737,6 +742,26 @@
<td></td>
</tr>
<tr>
+ <td>waitForTextPresent</td>
+ <td>No result found.</td>
+ <td></td>
+</tr>
+<tr>
+ <td>verifyTextPresent</td>
+ <td>No result found.</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[5]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[5]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div/a</td>
+ <td></td>
+</tr>
+<tr>
<td>echo</td>
<td>-- Delete user--</td>
<td></td>
@@ -793,15 +818,20 @@
</tr>
<tr>
<td>waitForElementPresent</td>
- <td>//div[4]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div/a</td>
+ <td>//div[5]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div/a</td>
<td></td>
</tr>
<tr>
<td>click</td>
- <td>//div[4]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div/a</td>
+ <td>//div[5]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div/a</td>
<td></td>
</tr>
<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Sign out</td>
+ <td></td>
+</tr>
+<tr>
<td>clickAndWait</td>
<td>link=Sign out</td>
<td></td>
Modified: portal/branches/wci/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/design/Test_PRL_03_04_005_CheckExistingOfPagesInDeletedGroup.html
===================================================================
--- portal/branches/wci/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/design/Test_PRL_03_04_005_CheckExistingOfPagesInDeletedGroup.html 2010-09-29 14:41:48 UTC (rev 4436)
+++ portal/branches/wci/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/design/Test_PRL_03_04_005_CheckExistingOfPagesInDeletedGroup.html 2010-09-29 14:51:45 UTC (rev 4437)
@@ -53,70 +53,80 @@
</tr>
<tr>
<td>echo</td>
- <td>-- Go to Group and user management--</td>
+ <td>-- Add new user--</td>
<td></td>
</tr>
<tr>
<td>waitForElementPresent</td>
- <td>link=Users and groups management</td>
+ <td>link=New Staff</td>
<td></td>
</tr>
<tr>
<td>click</td>
- <td>link=Users and groups management</td>
+ <td>link=New Staff</td>
<td></td>
</tr>
<tr>
- <td>echo</td>
- <td>-- Choose User and group management --</td>
+ <td>waitForElementPresent</td>
+ <td>username</td>
<td></td>
</tr>
<tr>
- <td>waitForElementPresent</td>
- <td>//div[@id='UIOrganizationPortlet']/div[2]/div[1]/div/div/div/div/div/div/a[2]/div[1]</td>
- <td></td>
+ <td>type</td>
+ <td>username</td>
+ <td>Test_PRL_03_04_005</td>
</tr>
<tr>
- <td>click</td>
- <td>//div[@id='UIOrganizationPortlet']/div[2]/div[1]/div/div/div/div/div/div/a[2]/div[1]</td>
- <td></td>
+ <td>type</td>
+ <td>password</td>
+ <td>Test_PRL_03_04_005</td>
</tr>
<tr>
+ <td>type</td>
+ <td>Confirmpassword</td>
+ <td>Test_PRL_03_04_005</td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>firstName</td>
+ <td>Test_PRL_03_04_005</td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>lastName</td>
+ <td>Test_PRL_03_04_005</td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>email</td>
+ <td>Test_PRL_03_04_005(a)gmail.com</td>
+</tr>
+<tr>
<td>echo</td>
- <td>-- Add new group--</td>
+ <td>-- Choose User Profile --</td>
<td></td>
</tr>
<tr>
<td>waitForElementPresent</td>
- <td>//div[@id='UIOrganizationPortlet']/div[2]/div[2]/div[1]/div[2]/div[1]/div[1]/a[3]</td>
+ <td>//div[@id='UIAccountPortlet']/div[1]/div/div/div/div/div/div/div/div/div[2]/div/div/div/div</td>
<td></td>
</tr>
<tr>
<td>click</td>
- <td>//div[@id='UIOrganizationPortlet']/div[2]/div[2]/div[1]/div[2]/div[1]/div[1]/a[3]</td>
+ <td>//div[@id='UIAccountPortlet']/div[1]/div/div/div/div/div/div/div/div/div[2]/div/div/div/div</td>
<td></td>
</tr>
<tr>
<td>waitForElementPresent</td>
- <td>groupName</td>
+ <td>user.language</td>
<td></td>
</tr>
<tr>
- <td>type</td>
- <td>groupName</td>
- <td>Test_PRL_03_04_005</td>
+ <td>select</td>
+ <td>user.language</td>
+ <td>label=English</td>
</tr>
<tr>
- <td>type</td>
- <td>label</td>
- <td>Test_PRL_03_04_005</td>
-</tr>
-<tr>
- <td>type</td>
- <td>description</td>
- <td>Test_PRL_03_04_005</td>
-</tr>
-<tr>
<td>waitForElementPresent</td>
<td>link=Save</td>
<td></td>
@@ -127,83 +137,98 @@
<td></td>
</tr>
<tr>
- <td>echo</td>
- <td>-- Add new user--</td>
+ <td>waitForTextPresent</td>
+ <td>You have registered a new account.</td>
<td></td>
</tr>
<tr>
+ <td>verifyTextPresent</td>
+ <td>You have registered a new account.</td>
+ <td></td>
+</tr>
+<tr>
<td>waitForElementPresent</td>
- <td>link=New Staff</td>
+ <td>//div[3]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div/a</td>
<td></td>
</tr>
<tr>
<td>click</td>
- <td>link=New Staff</td>
+ <td>//div[3]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div/a</td>
<td></td>
</tr>
<tr>
- <td>waitForElementPresent</td>
- <td>username</td>
+ <td>echo</td>
+ <td>-- Go to Group and user management--</td>
<td></td>
</tr>
<tr>
- <td>type</td>
- <td>username</td>
- <td>Test_PRL_03_04_005</td>
+ <td>waitForElementPresent</td>
+ <td>link=Users and groups management</td>
+ <td></td>
</tr>
<tr>
- <td>type</td>
- <td>password</td>
- <td>Test_PRL_03_04_005</td>
+ <td>click</td>
+ <td>link=Users and groups management</td>
+ <td></td>
</tr>
<tr>
- <td>type</td>
- <td>Confirmpassword</td>
- <td>Test_PRL_03_04_005</td>
+ <td>echo</td>
+ <td>-- Choose User and group management --</td>
+ <td></td>
</tr>
<tr>
- <td>type</td>
- <td>firstName</td>
- <td>Test_PRL_03_04_005</td>
+ <td>waitForElementPresent</td>
+ <td>//div[@id='UIOrganizationPortlet']/div[2]/div[1]/div/div/div/div/div/div/a[2]/div[1]</td>
+ <td></td>
</tr>
<tr>
- <td>type</td>
- <td>lastName</td>
- <td>Test_PRL_03_04_005</td>
+ <td>click</td>
+ <td>//div[@id='UIOrganizationPortlet']/div[2]/div[1]/div/div/div/div/div/div/a[2]/div[1]</td>
+ <td></td>
</tr>
<tr>
- <td>type</td>
- <td>email</td>
- <td>Test_PRL_03_04_005(a)gmail.com</td>
+ <td>echo</td>
+ <td>-- Add new group--</td>
+ <td></td>
</tr>
<tr>
<td>waitForElementPresent</td>
- <td>link=Save</td>
+ <td>//div[@id='UIOrganizationPortlet']/div[2]/div[2]/div[1]/div[2]/div[1]/div[1]/a[3]</td>
<td></td>
</tr>
<tr>
<td>click</td>
- <td>link=Save</td>
+ <td>//div[@id='UIOrganizationPortlet']/div[2]/div[2]/div[1]/div[2]/div[1]/div[1]/a[3]</td>
<td></td>
</tr>
<tr>
<td>waitForElementPresent</td>
- <td>//div[3]/div/div/div/div/div[2]</td>
+ <td>groupName</td>
<td></td>
</tr>
<tr>
- <td>verifyText</td>
- <td>//div[3]/div/div/div/div/div[2]</td>
- <td>You have registered a new account.</td>
+ <td>type</td>
+ <td>groupName</td>
+ <td>Test_PRL_03_04_005</td>
</tr>
<tr>
+ <td>type</td>
+ <td>label</td>
+ <td>Test_PRL_03_04_005</td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>description</td>
+ <td>Test_PRL_03_04_005</td>
+</tr>
+<tr>
<td>waitForElementPresent</td>
- <td>//div[3]/div/div/div[1]/div/div/div/div/div/div/div/div[2]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div/a</td>
+ <td>link=Save</td>
<td></td>
</tr>
<tr>
<td>click</td>
- <td>//div[3]/div/div/div[1]/div/div/div/div/div/div/div/div[2]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div/a</td>
+ <td>link=Save</td>
<td></td>
</tr>
<tr>
@@ -223,33 +248,33 @@
</tr>
<tr>
<td>waitForElementPresent</td>
- <td>//form[@id='UIGroupMembershipForm']/div[2]/div/table/tbody/tr[1]/td[2]/a</td>
+ <td>//div[@id='UIOrganizationPortlet']/div[2]/div[1]/div/div/div/div/div/div/a[2]/div[1]</td>
<td></td>
</tr>
<tr>
<td>click</td>
- <td>//form[@id='UIGroupMembershipForm']/div[2]/div/table/tbody/tr[1]/td[2]/a</td>
+ <td>//div[@id='UIOrganizationPortlet']/div[2]/div[1]/div/div/div/div/div/div/a[2]/div[1]</td>
<td></td>
</tr>
<tr>
<td>waitForElementPresent</td>
- <td>Test_PRL_03_04_005</td>
+ <td>link=Test_PRL_03_04_005</td>
<td></td>
</tr>
<tr>
<td>click</td>
- <td>Test_PRL_03_04_005</td>
+ <td>link=Test_PRL_03_04_005</td>
<td></td>
</tr>
<tr>
<td>waitForElementPresent</td>
- <td>//form[@id='UIUserSelector']/div[2]/div[2]/table/tbody/tr/td/a[1]/div/div/div</td>
+ <td>username</td>
<td></td>
</tr>
<tr>
- <td>click</td>
- <td>//form[@id='UIUserSelector']/div[2]/div[2]/table/tbody/tr/td/a[1]/div/div/div</td>
- <td></td>
+ <td>type</td>
+ <td>username</td>
+ <td>Test_PRL_03_04_005</td>
</tr>
<tr>
<td>waitForElementPresent</td>
@@ -506,6 +531,411 @@
<td>link=Save</td>
<td></td>
</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Change Edit permission on one page (page B) to another group --</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>searchTerm</td>
+ <td></td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>searchTerm</td>
+ <td>Test_PRL_03_04_005_add</td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>searchOption</td>
+ <td></td>
+</tr>
+<tr>
+ <td>select</td>
+ <td>searchOption</td>
+ <td>label=Title</td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//form[@id='UIPageSearch']/div[2]/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//form[@id='UIPageSearch']/div[2]/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Edit page --</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//img[@title='Edit Page']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//img[@title='Edit Page']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- View Page Properties --</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[@id='UIPageEditor']/div[3]/div/div/div[1]/table/tbody/tr/td/div[1]/div/div/div/div</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[@id='UIPageEditor']/div[3]/div/div/div[1]/table/tbody/tr/td/div[1]/div/div/div/div</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Choose Permission Setting --</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[@id='UIMaskWorkspace']/div[2]/div/div/div/div/div/div/div/div/div/div/div/div[3]/div/div/div/div</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[@id='UIMaskWorkspace']/div[2]/div/div/div/div/div/div/div/div/div/div/div/div[3]/div/div/div/div</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Choose Edit Permission --</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[@id='PermissionSetting']/div[1]/div/div/div/div/div[3]/div/div/div/div/div[1]</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[@id='PermissionSetting']/div[1]/div/div/div/div/div[3]/div/div/div/div/div[1]</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Delete Permission --</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Delete Permission</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Delete Permission</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Choose New Edit Permission --</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Select Permission</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Select Permission</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[@id='PermissionSelector']/div/div[2]/div/div[2]/div/div/div[4]/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[@id='PermissionSelector']/div/div[2]/div/div[2]/div/div/div[4]/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Management</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Management</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Executive Board</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Executive Board</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[@id='PermissionSelector']/div/div[3]/div/div[2]/div[2]/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[@id='PermissionSelector']/div/div[3]/div/div[2]/div[2]/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Close Page Editor --</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[@id='UIPageEditor']/div[1]/div/div/div/a[2]</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[@id='UIPageEditor']/div[1]/div/div/div/a[2]</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Delete new added group --</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Users and groups management</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=Users and groups management</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[@id='UIOrganizationPortlet']/div[2]/div[2]/div[1]/div[2]/div[1]/div[1]/a[1]</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[@id='UIOrganizationPortlet']/div[2]/div[2]/div[1]/div[2]/div[1]/div[1]/a[1]</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForConfirmationPresent</td>
+ <td></td>
+ <td></td>
+</tr>
+<tr>
+ <td>assertConfirmation</td>
+ <td>Are you sure you want to delete this group?</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Check existing of deleted group's pages that was not changed Edit permission --</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=Page Management</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>searchTerm</td>
+ <td></td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>searchTerm</td>
+ <td>Test_PRL_03_04_005</td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//form[@id='UIPageSearch']/div[2]/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//form[@id='UIPageSearch']/div[2]/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForTextPresent</td>
+ <td>No result found.</td>
+ <td></td>
+</tr>
+<tr>
+ <td>verifyTextPresent</td>
+ <td>No result found.</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[5]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[5]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Check existing of deleted group's pages that was changed Edit permission --</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>searchTerm</td>
+ <td></td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>searchTerm</td>
+ <td>Test_PRL_03_04_005_add</td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//form[@id='UIPageSearch']/div[2]/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//form[@id='UIPageSearch']/div[2]/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[5]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[5]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Go to Users and Group Management --</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=Users and groups management</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[@id='UIOrganizationPortlet']/div[2]/div[1]/div/div/div/div/div/div/a[1]/div[1]</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[@id='UIOrganizationPortlet']/div[2]/div[1]/div/div/div/div/div/div/a[1]/div[1]</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Search user --</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>searchTerm</td>
+ <td></td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>searchTerm</td>
+ <td>Test_PRL_03_04_005</td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//form[@id='UISearchForm']/div[2]/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//form[@id='UISearchForm']/div[2]/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Delete user --</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//img[@alt='DeleteUser']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//img[@alt='DeleteUser']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForConfirmationPresent</td>
+ <td></td>
+ <td></td>
+</tr>
+<tr>
+ <td>assertConfirmation</td>
+ <td>Are you sure you want to delete Test_PRL_03_04_005 user?</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForTextPresent</td>
+ <td>No result found.</td>
+ <td></td>
+</tr>
+<tr>
+ <td>verifyTextPresent</td>
+ <td>No result found.</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[5]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[5]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Sign out</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=Sign out</td>
+ <td></td>
+</tr>
</tbody></table>
</body>
Modified: portal/branches/wci/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/issues/Test_PRL_02_03_005_CheckEditingPassWordInCommunityManagement.html
===================================================================
--- portal/branches/wci/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/issues/Test_PRL_02_03_005_CheckEditingPassWordInCommunityManagement.html 2010-09-29 14:41:48 UTC (rev 4436)
+++ portal/branches/wci/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/issues/Test_PRL_02_03_005_CheckEditingPassWordInCommunityManagement.html 2010-09-29 14:51:45 UTC (rev 4437)
@@ -102,6 +102,11 @@
<td>Test_PRL_02_03_005(a)gmail.com</td>
</tr>
<tr>
+ <td>echo</td>
+ <td>-- Choose User Profile --</td>
+ <td></td>
+</tr>
+<tr>
<td>waitForElementPresent</td>
<td>//div[@id='UIAccountPortlet']/div[1]/div/div/div/div/div/div/div/div/div[2]/div/div/div/div</td>
<td></td>
@@ -132,14 +137,14 @@
<td></td>
</tr>
<tr>
- <td>waitForElementPresent</td>
- <td>//div[3]/div/div/div/div/div[2]</td>
+ <td>waitForTextPresent</td>
+ <td>You have registered a new account.</td>
<td></td>
</tr>
<tr>
- <td>verifyText</td>
- <td>//div[3]/div/div/div/div/div[2]</td>
+ <td>verifyTextPresent</td>
<td>You have registered a new account.</td>
+ <td></td>
</tr>
<tr>
<td>echo</td>
@@ -148,12 +153,12 @@
</tr>
<tr>
<td>waitForElementPresent</td>
- <td>//div[3]/div/div/div[1]/div/div/div/div/div/div/div/div[2]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div/a</td>
+ <td>//div[3]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div</td>
<td></td>
</tr>
<tr>
<td>click</td>
- <td>//div[3]/div/div/div[1]/div/div/div/div/div/div/div/div[2]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div/a</td>
+ <td>//div[3]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div</td>
<td></td>
</tr>
<tr>
@@ -247,23 +252,23 @@
<td></td>
</tr>
<tr>
- <td>waitForElementPresent</td>
- <td>//div[2]/div[2]/div/div/div/div/div[2]</td>
+ <td>waitForTextPresent</td>
+ <td>The field "New Password:" is required.</td>
<td></td>
</tr>
<tr>
- <td>verifyText</td>
- <td>//div[2]/div[2]/div/div/div/div/div[2]</td>
+ <td>verifyTextPresent</td>
<td>The field "New Password:" is required.</td>
+ <td></td>
</tr>
<tr>
<td>waitForElementPresent</td>
- <td>//div[2]/div[2]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div/a</td>
+ <td>//div[3]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div/a</td>
<td></td>
</tr>
<tr>
<td>click</td>
- <td>//div[2]/div[2]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div/a</td>
+ <td>//div[3]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div/a</td>
<td></td>
</tr>
<tr>
@@ -318,12 +323,12 @@
</tr>
<tr>
<td>waitForElementPresent</td>
- <td>//div[2]/div[2]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div/a</td>
+ <td>//div[3]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div/a</td>
<td></td>
</tr>
<tr>
<td>click</td>
- <td>//div[2]/div[2]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div/a</td>
+ <td>//div[3]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div/a</td>
<td></td>
</tr>
<tr>
@@ -378,12 +383,12 @@
</tr>
<tr>
<td>waitForElementPresent</td>
- <td>//div[2]/div[2]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div/a</td>
+ <td>//div[3]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div</td>
<td></td>
</tr>
<tr>
<td>click</td>
- <td>//div[2]/div[2]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div/a</td>
+ <td>//div[3]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div</td>
<td></td>
</tr>
<tr>
@@ -428,12 +433,12 @@
</tr>
<tr>
<td>waitForElementPresent</td>
- <td>//div[2]/div[2]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div</td>
+ <td>//div[3]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div</td>
<td></td>
</tr>
<tr>
<td>click</td>
- <td>//div[2]/div[2]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div</td>
+ <td>//div[3]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div</td>
<td></td>
</tr>
<tr>
@@ -473,12 +478,12 @@
</tr>
<tr>
<td>waitForElementPresent</td>
- <td>//div[2]/div[2]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div/a</td>
+ <td>//div[3]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div</td>
<td></td>
</tr>
<tr>
<td>click</td>
- <td>//div[2]/div[2]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div/a</td>
+ <td>//div[3]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div</td>
<td></td>
</tr>
<tr>
@@ -507,23 +512,23 @@
<td></td>
</tr>
<tr>
- <td>waitForElementPresent</td>
- <td>//div[2]/div[2]/div/div/div/div/div[2]</td>
+ <td>waitForTextPresent</td>
+ <td>Password and Confirm Password must be the same.</td>
<td></td>
</tr>
<tr>
- <td>verifyText</td>
- <td>//div[2]/div[2]/div/div/div/div/div[2]</td>
- <td>The field "Confirm Password:" is required.</td>
+ <td>verifyTextPresent</td>
+ <td>Password and Confirm Password must be the same.</td>
+ <td></td>
</tr>
<tr>
<td>waitForElementPresent</td>
- <td>//div[2]/div[2]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div/a</td>
+ <td>//div[3]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div</td>
<td></td>
</tr>
<tr>
<td>click</td>
- <td>//div[2]/div[2]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div/a</td>
+ <td>//div[3]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div</td>
<td></td>
</tr>
<tr>
@@ -552,28 +557,28 @@
<td></td>
</tr>
<tr>
- <td>waitForElementPresent</td>
- <td>//div[3]/div/div/div/div/div[2]</td>
+ <td>waitForTextPresent</td>
+ <td>The user profile has been updated.</td>
<td></td>
</tr>
<tr>
- <td>verifyText</td>
- <td>//div[3]/div/div/div/div/div[2]</td>
+ <td>verifyTextPresent</td>
<td>The user profile has been updated.</td>
+ <td></td>
</tr>
<tr>
<td>waitForElementPresent</td>
- <td>//div[2]/div[2]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div/a</td>
+ <td>//div[3]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div/a</td>
<td></td>
</tr>
<tr>
<td>click</td>
- <td>//div[2]/div[2]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div/a</td>
+ <td>//div[3]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div/a</td>
<td></td>
</tr>
<tr>
<td>echo</td>
- <td>-- Delete user--</td>
+ <td>-- Search user--</td>
<td></td>
</tr>
<tr>
@@ -587,6 +592,16 @@
<td></td>
</tr>
<tr>
+ <td>echo</td>
+ <td></td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Delete user--</td>
+ <td></td>
+</tr>
+<tr>
<td>waitForElementPresent</td>
<td>//img[@alt='DeleteUser']</td>
<td></td>
@@ -597,28 +612,33 @@
<td></td>
</tr>
<tr>
+ <td>waitForConfirmationPresent</td>
+ <td></td>
+ <td></td>
+</tr>
+<tr>
<td>assertConfirmation</td>
<td>Are you sure you want to delete Test_PRL_02_03_005 user?</td>
<td></td>
</tr>
<tr>
- <td>waitForElementPresent</td>
- <td>//div[3]/div/div/div/div/div[2]</td>
+ <td>waitForTextPresent</td>
<td>No result found.</td>
+ <td></td>
</tr>
<tr>
<td>verifyText</td>
- <td>//div[3]/div/div/div/div/div[2]</td>
<td>No result found.</td>
+ <td></td>
</tr>
<tr>
<td>waitForElementPresent</td>
- <td>//div[4]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div</td>
+ <td>//div[5]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div/a</td>
<td></td>
</tr>
<tr>
<td>click</td>
- <td>//div[4]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div</td>
+ <td>//div[5]/div/div[2]/div/div/div/div/div/div[3]/div/table/tbody/tr/td/div/div/div/div/a</td>
<td></td>
</tr>
<tr>
Copied: portal/branches/wci/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/issues/Test_PRL_05_02_003_ChangeAcessRightOnCategoryFromPublicToBeLimitedByGroup.html (from rev 4436, portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/issues/Test_PRL_05_02_003_ChangeAcessRightOnCategoryFromPublicToBeLimitedByGroup.html)
===================================================================
--- portal/branches/wci/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/issues/Test_PRL_05_02_003_ChangeAcessRightOnCategoryFromPublicToBeLimitedByGroup.html (rev 0)
+++ portal/branches/wci/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/issues/Test_PRL_05_02_003_ChangeAcessRightOnCategoryFromPublicToBeLimitedByGroup.html 2010-09-29 14:51:45 UTC (rev 4437)
@@ -0,0 +1,347 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head profile="http://selenium-ide.openqa.org/profiles/test-case">
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+<link rel="selenium.base" href="" />
+<title>Test_PRL_05_02_003_ChangeAcessRightOnCategoryFromPublicToBeLimitedByGroup</title>
+</head>
+<body>
+<table cellpadding="1" cellspacing="1" border="1">
+<thead>
+<tr><td rowspan="1" colspan="3">Test_PRL_05_02_003_ChangeAcessRightOnCategoryFromPublicToBeLimitedByGroup</td></tr>
+</thead><tbody>
+<tr>
+ <td>open</td>
+ <td>/portal/public/classic/</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Change access right on category from public to be limited by group(s)--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>windowMaximize</td>
+ <td></td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Sign in</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>username</td>
+ <td></td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>username</td>
+ <td>root</td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>password</td>
+ <td>gtn</td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>//div[@id='UIPortalLoginFormAction']/div/div/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=Application Registry</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[@id='UIApplicationOrganizer']/div[1]/div[1]</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>name</td>
+ <td></td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>name</td>
+ <td>Test_PRL_05_02_003</td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>displayName</td>
+ <td>Test_PRL_05_02_003</td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>description</td>
+ <td>Test_PRL_05_02_003</td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[@id='UIApplicationOrganizer']/div[2]/div[2]/div/div/div/div/div/div/div/div/div/div[2]/div/div/div/div</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>publicMode</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Add application into category--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[@id='UIApplicationOrganizer']/div[2]/div[1]/div/div/div[2]/div/div[4]/div[1]/div/div/div/a[3]</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[@id='UIApplicationOrganizer']/div[2]/div[1]/div/div/div[2]/div/div[4]/div[1]/div/div/div/a[3]</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//input[@name='application' and @value='7']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//input[@name='application' and @value='7']</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Add</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Edit permission for category--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- https://jira.jboss.org/browse/GTNPORTAL-1500 --</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[@id='UIApplicationOrganizer']/div[2]/div[1]/div/div/div[2]/div/div[4]/div[1]/div/div/div/a[4]</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[@id='UIApplicationOrganizer']/div[2]/div[1]/div/div/div[2]/div/div[4]/div[1]/div/div/div/a[4]</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[@id='UIApplicationOrganizer']/div[2]/div[2]/div/div/div/div/div/div/div/div/div/div[2]/div/div/div/div</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[@id='UIApplicationOrganizer']/div[2]/div[2]/div/div/div/div/div/div/div/div/div/div[2]/div/div/div/div</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>publicMode</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>publicMode</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Add Permission</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Add Permission</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Platform</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Platform</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Administrators</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Administrators</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=manager</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=manager</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Save</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Sign out</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Check accessing above category without right--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Sign in</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Sign in</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>username</td>
+ <td>john</td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>username</td>
+ <td>john</td>
+</tr>
+<tr>
+ <td>type</td>
+ <td>password</td>
+ <td>gtn</td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[@id='UIPortalLoginFormAction']/div/div/div/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Edit Page</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Edit Page</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[@id='UIPageEditor']/div[1]/div/div/div/a[2]</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[@id='UIPageEditor']/div[1]/div/div/div/a[2]</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Sign out</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Sign out</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td>-- Delete this category--</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Administrator</td>
+ <td></td>
+</tr>
+<tr>
+ <td>clickAndWait</td>
+ <td>link=Administrator</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Application Registry</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Application Registry</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Test_PRL_05_02_003</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Test_PRL_05_02_003</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[@id='UIApplicationOrganizer']/div[2]/div[1]/div/div/div[2]/div/div[4]/div[1]/div/div/div/a[2]</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[@id='UIApplicationOrganizer']/div[2]/div[1]/div/div/div[2]/div/div[4]/div[1]/div/div/div/a[2]</td>
+ <td></td>
+</tr>
+<tr>
+ <td>assertConfirmation</td>
+ <td>Are you sure to delete this category and all applications on it?</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>link=Sign out</td>
+ <td></td>
+</tr>
+
+</tbody></table>
+</body>
+</html>
Modified: portal/branches/wci/web/portal/src/main/webapp/WEB-INF/web.xml
===================================================================
--- portal/branches/wci/web/portal/src/main/webapp/WEB-INF/web.xml 2010-09-29 14:41:48 UTC (rev 4436)
+++ portal/branches/wci/web/portal/src/main/webapp/WEB-INF/web.xml 2010-09-29 14:51:45 UTC (rev 4437)
@@ -226,25 +226,6 @@
<load-on-startup>0</load-on-startup>
</servlet>
- <servlet>
- <servlet-name>StickyCaptcha</servlet-name>
- <servlet-class>org.exoplatform.web.security.CaptchaServlet</servlet-class>
- <init-param>
- <param-name>width</param-name>
- <param-value>200</param-value>
- </init-param>
- <init-param>
- <param-name>height</param-name>
- <param-value>75</param-value>
- </init-param>
- </servlet>
-
- <servlet-mapping>
- <servlet-name>StickyCaptcha</servlet-name>
- <url-pattern>/captcha</url-pattern>
- </servlet-mapping>
-
-
<!-- ================================================================= -->
<servlet-mapping>
<servlet-name>InitiateLoginServlet</servlet-name>
Deleted: portal/branches/wci/webui/portal/src/main/java/org/exoplatform/portal/application/localization/BaseHttpRequestWrapper.java
===================================================================
--- portal/branches/wci/webui/portal/src/main/java/org/exoplatform/portal/application/localization/BaseHttpRequestWrapper.java 2010-09-29 14:41:48 UTC (rev 4436)
+++ portal/branches/wci/webui/portal/src/main/java/org/exoplatform/portal/application/localization/BaseHttpRequestWrapper.java 2010-09-29 14:51:45 UTC (rev 4437)
@@ -1,497 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright 2010, Red Hat, Inc., and individual contributors
- * by the @authors tag. See the copyright.txt in the distribution for a
- * full listing of individual contributors.
- *
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
-package org.exoplatform.portal.application.localization;
-
-import javax.servlet.RequestDispatcher;
-import javax.servlet.ServletInputStream;
-import javax.servlet.http.Cookie;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpSession;
-import java.io.BufferedReader;
-import java.io.IOException;
-import java.io.UnsupportedEncodingException;
-import java.security.Principal;
-import java.util.Enumeration;
-import java.util.Locale;
-import java.util.Map;
-
-/**
- * This class is an alternative for {@link javax.servlet.http.HttpServletRequestWrapper}.
- * One reason for favoring it is to avoid situations when servlet container decides to replace
- * the delegate via {@link javax.servlet.ServletRequestWrapper#setRequest(javax.servlet.ServletRequest)}.
- *
- * @author <a href="mailto:mstrukel@redhat.com">Marko Strukelj</a>
- */
-public class BaseHttpRequestWrapper implements HttpServletRequest
-{
-
- private HttpServletRequest delegate;
-
- /**
- * Create new instance
- * @param request delegate {@link HttpServletRequest}
- */
- public BaseHttpRequestWrapper(HttpServletRequest request)
- {
- delegate = request;
- }
-
- /**
- * @see javax.servlet.http.HttpServletRequest#getAuthType()
- */
- public String getAuthType()
- {
- return delegate.getAuthType();
- }
-
- /**
- * @see javax.servlet.http.HttpServletRequest#getCookies()
- */
- public Cookie[] getCookies()
- {
- return delegate.getCookies();
- }
-
- /**
- * @see javax.servlet.http.HttpServletRequest#getDateHeader(String)
- */
- public long getDateHeader(String name)
- {
- return delegate.getDateHeader(name);
- }
-
- /**
- * @see javax.servlet.http.HttpServletRequest#getHeader(String)
- */
- public String getHeader(String name)
- {
- return delegate.getHeader(name);
- }
-
- /**
- * @see javax.servlet.http.HttpServletRequest#getHeaders(String)
- */
- public Enumeration getHeaders(String name)
- {
- return delegate.getHeaders(name);
- }
-
- /**
- * @see javax.servlet.http.HttpServletRequest#getHeaderNames()
- */
- public Enumeration getHeaderNames()
- {
- return delegate.getHeaderNames();
- }
-
- /**
- * @see javax.servlet.http.HttpServletRequest#getIntHeader(String)
- */
- public int getIntHeader(String name)
- {
- return delegate.getIntHeader(name);
- }
-
- /**
- * @see javax.servlet.http.HttpServletRequest#getMethod()
- */
- public String getMethod()
- {
- return delegate.getMethod();
- }
-
- /**
- * @see javax.servlet.http.HttpServletRequest#getPathInfo()
- */
- public String getPathInfo()
- {
- return delegate.getPathInfo();
- }
-
- /**
- * @see javax.servlet.http.HttpServletRequest#getPathTranslated()
- */
- public String getPathTranslated()
- {
- return delegate.getPathTranslated();
- }
-
- /**
- * @see javax.servlet.http.HttpServletRequest#getContextPath()
- */
- public String getContextPath()
- {
- return delegate.getContextPath();
- }
-
- /**
- * @see javax.servlet.http.HttpServletRequest#getQueryString()
- */
- public String getQueryString()
- {
- return delegate.getQueryString();
- }
-
- /**
- * @see javax.servlet.http.HttpServletRequest#getRemoteUser()
- */
- public String getRemoteUser()
- {
- return delegate.getRemoteUser();
- }
-
- /**
- * @see javax.servlet.http.HttpServletRequest#isUserInRole(String)
- */
- public boolean isUserInRole(String role)
- {
- return delegate.isUserInRole(role);
- }
-
- /**
- * @see javax.servlet.http.HttpServletRequest#getUserPrincipal()
- */
- public Principal getUserPrincipal()
- {
- return delegate.getUserPrincipal();
- }
-
- /**
- * @see javax.servlet.http.HttpServletRequest#getRequestedSessionId()
- */
- public String getRequestedSessionId()
- {
- return delegate.getRequestedSessionId();
- }
-
- /**
- * @see javax.servlet.http.HttpServletRequest#getRequestURI()
- */
- public String getRequestURI()
- {
- return delegate.getRequestURI();
- }
-
- /**
- * @see javax.servlet.http.HttpServletRequest#getRequestURL()
- */
- public StringBuffer getRequestURL()
- {
- return delegate.getRequestURL();
- }
-
- /**
- * @see javax.servlet.http.HttpServletRequest#getServletPath()
- */
- public String getServletPath()
- {
- return delegate.getServletPath();
- }
-
- /**
- * @see javax.servlet.http.HttpServletRequest#getSession(boolean)
- */
- public HttpSession getSession(boolean create)
- {
- return delegate.getSession(create);
- }
-
- /**
- * @see javax.servlet.http.HttpServletRequest#getSession()
- */
- public HttpSession getSession()
- {
- return delegate.getSession();
- }
-
- /**
- * @see javax.servlet.http.HttpServletRequest#isRequestedSessionIdValid()
- */
- public boolean isRequestedSessionIdValid()
- {
- return delegate.isRequestedSessionIdValid();
- }
-
- /**
- * @see javax.servlet.http.HttpServletRequest#isRequestedSessionIdFromCookie()
- */
- public boolean isRequestedSessionIdFromCookie()
- {
- return delegate.isRequestedSessionIdFromCookie();
- }
-
- /**
- * @see javax.servlet.http.HttpServletRequest#isRequestedSessionIdFromURL()
- */
- public boolean isRequestedSessionIdFromURL()
- {
- return delegate.isRequestedSessionIdFromURL();
- }
-
- /**
- * @see javax.servlet.http.HttpServletRequest#isRequestedSessionIdFromUrl()
- */
- public boolean isRequestedSessionIdFromUrl()
- {
- return delegate.isRequestedSessionIdFromUrl();
- }
-
- /**
- * @see javax.servlet.http.HttpServletRequest#getAttribute(String)
- */
- public Object getAttribute(String name)
- {
- return delegate.getAttribute(name);
- }
-
- /**
- * @see javax.servlet.http.HttpServletRequest#getAttributeNames()
- */
- public Enumeration getAttributeNames()
- {
- return delegate.getAttributeNames();
- }
-
- /**
- * @see javax.servlet.http.HttpServletRequest#getCharacterEncoding()
- */
- public String getCharacterEncoding()
- {
- return delegate.getCharacterEncoding();
- }
-
- /**
- * @see javax.servlet.http.HttpServletRequest#setCharacterEncoding(String)
- */
- public void setCharacterEncoding(String env) throws UnsupportedEncodingException
- {
- delegate.setCharacterEncoding(env);
- }
-
- /**
- * @see javax.servlet.http.HttpServletRequest#getContentLength()
- */
- public int getContentLength()
- {
- return delegate.getContentLength();
- }
-
- /**
- * @see javax.servlet.http.HttpServletRequest#getContentType()
- */
- public String getContentType()
- {
- return delegate.getContentType();
- }
-
- /**
- * @see javax.servlet.http.HttpServletRequest#getInputStream()
- */
- public ServletInputStream getInputStream() throws IOException
- {
- return delegate.getInputStream();
- }
-
- /**
- * @see javax.servlet.http.HttpServletRequest#getParameter(String)
- */
- public String getParameter(String name)
- {
- return delegate.getParameter(name);
- }
-
- /**
- * @see javax.servlet.http.HttpServletRequest#getParameterNames()
- */
- public Enumeration getParameterNames()
- {
- return delegate.getParameterNames();
- }
-
- /**
- * @see javax.servlet.http.HttpServletRequest#getParameterValues(String)
- */
- public String[] getParameterValues(String name)
- {
- return delegate.getParameterValues(name);
- }
-
- /**
- * @see javax.servlet.http.HttpServletRequest#getParameterMap()
- */
- public Map getParameterMap()
- {
- return delegate.getParameterMap();
- }
-
- /**
- * @see javax.servlet.http.HttpServletRequest#getProtocol()
- */
- public String getProtocol()
- {
- return delegate.getProtocol();
- }
-
- /**
- * @see javax.servlet.http.HttpServletRequest#getScheme()
- */
- public String getScheme()
- {
- return delegate.getScheme();
- }
-
- /**
- * @see javax.servlet.http.HttpServletRequest#getServerName()
- */
- public String getServerName()
- {
- return delegate.getServerName();
- }
-
- /**
- * @see javax.servlet.http.HttpServletRequest#getServerPort()
- */
- public int getServerPort()
- {
- return delegate.getServerPort();
- }
-
- /**
- * @see javax.servlet.http.HttpServletRequest#getReader()
- */
- public BufferedReader getReader() throws IOException
- {
- return delegate.getReader();
- }
-
- /**
- * @see javax.servlet.http.HttpServletRequest#getRemoteAddr()
- */
- public String getRemoteAddr()
- {
- return delegate.getRemoteAddr();
- }
-
- /**
- * @see javax.servlet.http.HttpServletRequest#getRemoteHost()
- */
- public String getRemoteHost()
- {
- return delegate.getRemoteHost();
- }
-
- /**
- * @see javax.servlet.http.HttpServletRequest#setAttribute(String, Object)
- */
- public void setAttribute(String name, Object o)
- {
- delegate.setAttribute(name, o);
- }
-
- /**
- * @see javax.servlet.http.HttpServletRequest#removeAttribute(String)
- */
- public void removeAttribute(String name)
- {
- delegate.removeAttribute(name);
- }
-
- /**
- * @see javax.servlet.http.HttpServletRequest#getLocale()
- */
- public Locale getLocale()
- {
- return delegate.getLocale();
- }
-
- /**
- * @see javax.servlet.http.HttpServletRequest#getLocales()
- */
- public Enumeration getLocales()
- {
- return delegate.getLocales();
- }
-
- /**
- * @see javax.servlet.http.HttpServletRequest#isSecure()
- */
- public boolean isSecure()
- {
- return delegate.isSecure();
- }
-
- /**
- * @see javax.servlet.http.HttpServletRequest#getRequestDispatcher(String)
- */
- public RequestDispatcher getRequestDispatcher(String path)
- {
- return delegate.getRequestDispatcher(path);
- }
-
- /**
- * @see javax.servlet.http.HttpServletRequest#getRealPath(String)
- */
- public String getRealPath(String path)
- {
- return delegate.getRealPath(path);
- }
-
- /**
- * @see javax.servlet.http.HttpServletRequest#getRemotePort()
- */
- public int getRemotePort()
- {
- return delegate.getRemotePort();
- }
-
- /**
- * @see javax.servlet.http.HttpServletRequest#getLocalName()
- */
- public String getLocalName()
- {
- return delegate.getLocalName();
- }
-
- /**
- * @see javax.servlet.http.HttpServletRequest#getLocalAddr()
- */
- public String getLocalAddr()
- {
- return delegate.getLocalAddr();
- }
-
- /**
- * @see javax.servlet.http.HttpServletRequest#getLocalPort()
- */
- public int getLocalPort()
- {
- return delegate.getLocalPort();
- }
-
- /**
- * Get the underlying request - the delegate
- */
- public HttpServletRequest getRequest()
- {
- return delegate;
- }
-}
Modified: portal/branches/wci/webui/portal/src/main/java/org/exoplatform/portal/application/localization/HttpRequestWrapper.java
===================================================================
--- portal/branches/wci/webui/portal/src/main/java/org/exoplatform/portal/application/localization/HttpRequestWrapper.java 2010-09-29 14:41:48 UTC (rev 4436)
+++ portal/branches/wci/webui/portal/src/main/java/org/exoplatform/portal/application/localization/HttpRequestWrapper.java 2010-09-29 14:51:45 UTC (rev 4437)
@@ -24,6 +24,7 @@
import org.exoplatform.portal.application.PortalRequestContext;
import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletRequestWrapper;
import java.util.Collections;
import java.util.Enumeration;
import java.util.LinkedList;
@@ -33,7 +34,7 @@
/**
* @author <a href="mailto:mstrukel@redhat.com">Marko Strukelj</a>
*/
-public class HttpRequestWrapper extends BaseHttpRequestWrapper
+public class HttpRequestWrapper extends HttpServletRequestWrapper
{
private static final List<Locale> EMPTY_LOCALE_LIST = Collections.emptyList();
Modified: portal/branches/wci/webui/portal/src/main/java/org/exoplatform/portal/webui/CaptchaValidator.java
===================================================================
--- portal/branches/wci/webui/portal/src/main/java/org/exoplatform/portal/webui/CaptchaValidator.java 2010-09-29 14:41:48 UTC (rev 4436)
+++ portal/branches/wci/webui/portal/src/main/java/org/exoplatform/portal/webui/CaptchaValidator.java 2010-09-29 14:51:45 UTC (rev 4437)
@@ -19,9 +19,8 @@
package org.exoplatform.portal.webui;
-import org.exoplatform.portal.application.PortalRequestContext;
-import org.exoplatform.portal.webui.util.Util;
import org.exoplatform.web.application.ApplicationMessage;
+import org.exoplatform.webui.application.portlet.PortletRequestContext;
import org.exoplatform.webui.core.UIComponent;
import org.exoplatform.webui.exception.MessageException;
import org.exoplatform.webui.form.UIForm;
@@ -32,8 +31,8 @@
import java.io.Serializable;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpSession;
+import javax.portlet.PortletRequest;
+import javax.portlet.PortletSession;
/**
* @author <a href="mailto:theute@redhat.com">Thomas Heute</a>
@@ -46,9 +45,9 @@
public void validate(UIFormInput uiInput) throws Exception
{
- PortalRequestContext prContext = Util.getPortalRequestContext();
- HttpServletRequest request = prContext.getRequest();
- HttpSession session = request.getSession();
+ PortletRequestContext ctx = PortletRequestContext.getCurrentInstance();
+ PortletRequest req = ctx.getRequest();
+ PortletSession session = req.getPortletSession();
Captcha captcha = (Captcha) session.getAttribute(Captcha.NAME);
Modified: portal/branches/wci/webui/portal/src/main/java/org/exoplatform/portal/webui/UICaptcha.java
===================================================================
--- portal/branches/wci/webui/portal/src/main/java/org/exoplatform/portal/webui/UICaptcha.java 2010-09-29 14:41:48 UTC (rev 4436)
+++ portal/branches/wci/webui/portal/src/main/java/org/exoplatform/portal/webui/UICaptcha.java 2010-09-29 14:51:45 UTC (rev 4437)
@@ -22,11 +22,12 @@
******************************************************************************/
package org.exoplatform.portal.webui;
-import java.util.Calendar;
-
import org.exoplatform.webui.application.WebuiRequestContext;
import org.exoplatform.webui.form.UIFormStringInput;
+import javax.portlet.RenderResponse;
+import javax.portlet.ResourceURL;
+
/**
* @author <a href="mailto:theute@redhat.com">Thomas Heute</a>
* @version $Revision$
@@ -40,9 +41,18 @@
}
public void processRender(WebuiRequestContext context) throws Exception
- {
- context.getWriter().write("<div id='" + getId() + "'><img src=\"" + context.getPortalContextPath() + "/captcha?v=" +
- Calendar.getInstance().getTimeInMillis() + "\" /><br/>");
+ {
+
+ RenderResponse resp = context.getResponse();
+
+ //
+ ResourceURL url = resp.createResourceURL();
+
+ // context.getPortalContextPath() + "/captcha?v=" + Calendar.getInstance().getTimeInMillis()
+
+
+
+ context.getWriter().write("<div id='" + getId() + "'><img src=\"" + url.toString() + "\" /><br/>");
super.processRender(context);
context.getWriter().write("</div>");
}
14 years, 3 months
gatein SVN: r4436 - in portal/branches/wci: component/web/security/src/main/java/org/exoplatform/web/security and 1 other directories.
by do-not-reply@jboss.org
Author: alain_defrance
Date: 2010-09-29 10:41:48 -0400 (Wed, 29 Sep 2010)
New Revision: 4436
Modified:
portal/branches/wci/component/web/security/src/main/java/org/exoplatform/web/login/InitiateLoginServlet.java
portal/branches/wci/component/web/security/src/main/java/org/exoplatform/web/security/PortalLoginModule.java
portal/branches/wci/packaging/profiles.xml
Log:
WCI authentication in progress
Modified: portal/branches/wci/component/web/security/src/main/java/org/exoplatform/web/login/InitiateLoginServlet.java
===================================================================
--- portal/branches/wci/component/web/security/src/main/java/org/exoplatform/web/login/InitiateLoginServlet.java 2010-09-29 14:30:22 UTC (rev 4435)
+++ portal/branches/wci/component/web/security/src/main/java/org/exoplatform/web/login/InitiateLoginServlet.java 2010-09-29 14:41:48 UTC (rev 4436)
@@ -26,9 +26,9 @@
import org.exoplatform.web.security.security.CookieTokenService;
import org.gatein.common.logging.Logger;
import org.gatein.common.logging.LoggerFactory;
-import org.gatein.wci.authentication.GenericAuthentication;
-import org.gatein.wci.authentication.TicketService;
-import org.gatein.wci.authentication.WCICredentials;
+import org.gatein.wci.authentication.AuthenticationResult;
+import org.gatein.wci.authentication.GenericAuthenticationResult;
+import org.gatein.wci.impl.DefaultServletContainerFactory;
import java.io.IOException;
@@ -111,14 +111,18 @@
}
else
{
- // We create a temporary token just for the login time
- TicketService ticketService = GenericAuthentication.TICKET_SERVICE;
- String ticket = ticketService.createTicket(new WCICredentials(credentials.getUsername(), credentials.getPassword()));
- req.getSession().removeAttribute(InitiateLoginServlet.CREDENTIALS);
+ // WCI authentication
+ AuthenticationResult result = DefaultServletContainerFactory.getInstance().getServletContainer()
+ .login(req, resp, credentials.getUsername(), credentials.getPassword());
- // Send authentication request
log.debug("Login initiated with credentials in session, performing authentication");
- sendAuth(resp, credentials.getUsername(), ticket);
+ if (result instanceof GenericAuthenticationResult)
+ {
+ GenericAuthenticationResult genericAuthentication = (GenericAuthenticationResult) result;
+ req.getSession().removeAttribute(InitiateLoginServlet.CREDENTIALS);
+ sendAuth(resp, credentials.getUsername(), genericAuthentication.getTicket());
+ }
+ resp.sendRedirect(resp.encodeRedirectURL(""));
}
}
Modified: portal/branches/wci/component/web/security/src/main/java/org/exoplatform/web/security/PortalLoginModule.java
===================================================================
--- portal/branches/wci/component/web/security/src/main/java/org/exoplatform/web/security/PortalLoginModule.java 2010-09-29 14:30:22 UTC (rev 4435)
+++ portal/branches/wci/component/web/security/src/main/java/org/exoplatform/web/security/PortalLoginModule.java 2010-09-29 14:41:48 UTC (rev 4436)
@@ -100,9 +100,7 @@
callbackHandler.handle(callbacks);
String password = new String(((PasswordCallback)callbacks[1]).getPassword());
- GenericAuthentication authentication = new GenericAuthentication();
- WCICredentials wciCredentials = authentication
- .login(((NameCallback)callbacks[0]).getName(), password.toCharArray());
+ WCICredentials wciCredentials = GenericAuthentication.TICKET_SERVICE.validateToken(password, true);
Credentials c = null;
if (wciCredentials != null)
{
Modified: portal/branches/wci/packaging/profiles.xml
===================================================================
--- portal/branches/wci/packaging/profiles.xml 2010-09-29 14:30:22 UTC (rev 4435)
+++ portal/branches/wci/packaging/profiles.xml 2010-09-29 14:41:48 UTC (rev 4436)
@@ -24,25 +24,29 @@
<profile>
<id>gatein-projects</id>
<properties>
- <!--
+ <!--
Replace with the directory where uncompressed Tomcat 6 and/or JBoss 5.1 can be found
ex: On Windows 'c:/AS'
ex: On Linux '/home/user/AS'
-->
<exo.projects.directory.dependencies>REPLACE_WITH_YOUR_OWN_DIRECTORY</exo.projects.directory.dependencies>
- <!--
+ <!--
If you want that the server is deployed always at the same place (not in packaging/pkg/target/<server> dir)
Uncomment and Replace with the directory you prefer
-->
- <!--
+ <!--
<gatein.working.dir>REPLACE_WITH_SERVER_DIR</gatein.working.dir>
-->
<!--
Replace with the name of the directory containing Tomcat 6
- -->
+ -->
<exo.projects.app.tomcat.version>apache-tomcat-6.0.20</exo.projects.app.tomcat.version>
<!--
+ Replace with the name of the directory containing Tomcat 7
+ -->
+ <exo.projects.app.tomcat7.version>apache-tomcat-7.0.2</exo.projects.app.tomcat7.version>
+ <!--
Replace with the name of the directory containing JBoss AS 5.1
-->
<exo.projects.app.jboss.version>jboss-5.1.0.GA</exo.projects.app.jboss.version>
14 years, 3 months
gatein SVN: r4435 - in components/wci/branches/adf: exo and 14 other directories.
by do-not-reply@jboss.org
Author: alain_defrance
Date: 2010-09-29 10:30:22 -0400 (Wed, 29 Sep 2010)
New Revision: 4435
Added:
components/wci/branches/adf/wci/src/main/java/org/gatein/wci/authentication/AuthenticationResult.java
components/wci/branches/adf/wci/src/main/java/org/gatein/wci/authentication/GenericAuthenticationResult.java
components/wci/branches/adf/wci/src/main/java/org/gatein/wci/authentication/ProgrammaticAuthenticationResult.java
Modified:
components/wci/branches/adf/exo/pom.xml
components/wci/branches/adf/jetty/src/main/java/org/gatein/wci/jetty/Jetty6ServletContainerContext.java
components/wci/branches/adf/pom.xml
components/wci/branches/adf/test/core/src/main/java/org/gatein/wci/container/ServletContainerContextImpl.java
components/wci/branches/adf/test/servers/jboss51/pom.xml
components/wci/branches/adf/test/servers/jboss51/src/integration-tests/build.xml
components/wci/branches/adf/tomcat6/pom.xml
components/wci/branches/adf/tomcat6/src/main/java/org/gatein/wci/tomcat/TC6ServletContainerContext.java
components/wci/branches/adf/tomcat7/pom.xml
components/wci/branches/adf/tomcat7/src/main/java/org/gatein/wci/tomcat/TC7ServletContainerContext.java
components/wci/branches/adf/wci/pom.xml
components/wci/branches/adf/wci/src/main/java/org/gatein/wci/ServletContainer.java
components/wci/branches/adf/wci/src/main/java/org/gatein/wci/authentication/Authentication.java
components/wci/branches/adf/wci/src/main/java/org/gatein/wci/authentication/GenericAuthentication.java
components/wci/branches/adf/wci/src/main/java/org/gatein/wci/impl/DefaultServletContainer.java
components/wci/branches/adf/wci/src/main/java/org/gatein/wci/impl/generic/GenericServletContainerContext.java
components/wci/branches/adf/wci/src/main/java/org/gatein/wci/spi/ServletContainerContext.java
Log:
login feature in progress
Modified: components/wci/branches/adf/exo/pom.xml
===================================================================
--- components/wci/branches/adf/exo/pom.xml 2010-09-29 13:42:11 UTC (rev 4434)
+++ components/wci/branches/adf/exo/pom.xml 2010-09-29 14:30:22 UTC (rev 4435)
@@ -14,6 +14,11 @@
<groupId>org.gatein.wci</groupId>
<artifactId>wci-wci</artifactId>
</dependency>
+ <dependency>
+ <groupId>javax.servlet</groupId>
+ <artifactId>servlet-api</artifactId>
+ <scope>provided</scope>
+ </dependency>
</dependencies>
</project>
Modified: components/wci/branches/adf/jetty/src/main/java/org/gatein/wci/jetty/Jetty6ServletContainerContext.java
===================================================================
--- components/wci/branches/adf/jetty/src/main/java/org/gatein/wci/jetty/Jetty6ServletContainerContext.java 2010-09-29 13:42:11 UTC (rev 4434)
+++ components/wci/branches/adf/jetty/src/main/java/org/gatein/wci/jetty/Jetty6ServletContainerContext.java 2010-09-29 14:30:22 UTC (rev 4435)
@@ -10,6 +10,8 @@
import javax.servlet.http.HttpServletResponse;
import org.gatein.wci.RequestDispatchCallback;
+import org.gatein.wci.authentication.AuthenticationResult;
+import org.gatein.wci.authentication.GenericAuthentication;
import org.gatein.wci.command.CommandDispatcher;
import org.gatein.wci.impl.DefaultServletContainerFactory;
import org.gatein.wci.spi.ServletContainerContext;
@@ -60,8 +62,12 @@
this.registration = null;
}
+ public AuthenticationResult login(HttpServletRequest request, HttpServletResponse response, String userName, String password) {
+ return GenericAuthentication.getInstance().login(userName, password.toCharArray());
+ }
- public void start()
+
+ public void start()
{
DefaultServletContainerFactory.registerContext(this);
Modified: components/wci/branches/adf/pom.xml
===================================================================
--- components/wci/branches/adf/pom.xml 2010-09-29 13:42:11 UTC (rev 4434)
+++ components/wci/branches/adf/pom.xml 2010-09-29 14:30:22 UTC (rev 4435)
@@ -52,6 +52,16 @@
<groupId>org.gatein.common</groupId>
<artifactId>common-common</artifactId>
<version>${version.gatein.common}</version>
+ <exclusions>
+ <exclusion>
+ <groupId>org.codehaus.cargo</groupId>
+ <artifactId>cargo-core-uberjar</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>javax.servlet</groupId>
+ <artifactId>servlet-api</artifactId>
+ </exclusion>
+ </exclusions>
</dependency>
<dependency>
<groupId>org.gatein.common</groupId>
Modified: components/wci/branches/adf/test/core/src/main/java/org/gatein/wci/container/ServletContainerContextImpl.java
===================================================================
--- components/wci/branches/adf/test/core/src/main/java/org/gatein/wci/container/ServletContainerContextImpl.java 2010-09-29 13:42:11 UTC (rev 4434)
+++ components/wci/branches/adf/test/core/src/main/java/org/gatein/wci/container/ServletContainerContextImpl.java 2010-09-29 14:30:22 UTC (rev 4435)
@@ -22,6 +22,8 @@
******************************************************************************/
package org.gatein.wci.container;
+import org.gatein.wci.authentication.AuthenticationResult;
+import org.gatein.wci.authentication.GenericAuthentication;
import org.gatein.wci.spi.ServletContainerContext;
import org.gatein.wci.RequestDispatchCallback;
@@ -59,4 +61,9 @@
{
this.registration = null;
}
+
+ public AuthenticationResult login(HttpServletRequest request, HttpServletResponse response, String userName, String password)
+ {
+ return GenericAuthentication.getInstance().login(userName, password.toCharArray());
+ }
}
Modified: components/wci/branches/adf/test/servers/jboss51/pom.xml
===================================================================
--- components/wci/branches/adf/test/servers/jboss51/pom.xml 2010-09-29 13:42:11 UTC (rev 4434)
+++ components/wci/branches/adf/test/servers/jboss51/pom.xml 2010-09-29 14:30:22 UTC (rev 4435)
@@ -287,7 +287,6 @@
<artifactId>jaxen</artifactId>
<version>1.1.1</version>
</dependency>
-
</dependencies>
<version>1.3</version>
<executions>
@@ -339,6 +338,10 @@
<property name="dependency.gatein-wci-exo.jar" value="${maven.dependency.org.gatein.wci.wci-exo.jar.path}" />
<property name="dependency.jboss-serialization.jar" value="${maven.dependency.jboss.jboss-serialization.jar.path}" />
+ <property name="dependency.cargo-jboss-deployer.jar" value="${maven.dependency.org.codehaus.cargo.cargo-core-tools-jboss-deployer-5.1-and-onwards.jar.path}" />
+ <property name="dependency.jboss-profile-service.jar" value="${maven.dependency.org.jboss.integration.jboss-profileservice-spi.jar.path}" />
+ <property name="dependency.cargo-core-container-jboss.jar" value="${maven.dependency.org.codehaus.cargo.cargo-core-container-jboss.jar.path}" />
+
<!-- locations of archives to use -->
<property name="test.archives.directory" value="${project.build.directory}/test-archives" />
<property name="test.generic.server.war" value="${test.archives.directory}/test-spi-generic-server.war" />
Modified: components/wci/branches/adf/test/servers/jboss51/src/integration-tests/build.xml
===================================================================
--- components/wci/branches/adf/test/servers/jboss51/src/integration-tests/build.xml 2010-09-29 13:42:11 UTC (rev 4434)
+++ components/wci/branches/adf/test/servers/jboss51/src/integration-tests/build.xml 2010-09-29 14:30:22 UTC (rev 4435)
@@ -25,6 +25,11 @@
<path path="${dependency.gatein-wci-core.jar}"/>
<path path="${dependency.gatein-wci-tomcat.jar}"/>
<path path="${dependency.gatein-wci-exo.jar}"/>
+
+ <!-- paths needed for remote jboss deployment -->
+ <path path="${dependency.cargo-jboss-deployer.jar}"/>
+ <path path="${dependency.jboss-profile-service.jar}"/>
+ <path path="${dependency.cargo-core-container-jboss.jar}"/>
</path>
<target name="cargo.start" depends="cargo.setup">
Modified: components/wci/branches/adf/tomcat6/pom.xml
===================================================================
--- components/wci/branches/adf/tomcat6/pom.xml 2010-09-29 13:42:11 UTC (rev 4434)
+++ components/wci/branches/adf/tomcat6/pom.xml 2010-09-29 14:30:22 UTC (rev 4435)
@@ -17,12 +17,6 @@
<dependency>
<groupId>org.apache.tomcat</groupId>
<artifactId>catalina</artifactId>
- <exclusions>
- <exclusion>
- <groupId>org.apache.tomcat</groupId>
- <artifactId>servlet-api</artifactId>
- </exclusion>
- </exclusions>
</dependency>
</dependencies>
Modified: components/wci/branches/adf/tomcat6/src/main/java/org/gatein/wci/tomcat/TC6ServletContainerContext.java
===================================================================
--- components/wci/branches/adf/tomcat6/src/main/java/org/gatein/wci/tomcat/TC6ServletContainerContext.java 2010-09-29 13:42:11 UTC (rev 4434)
+++ components/wci/branches/adf/tomcat6/src/main/java/org/gatein/wci/tomcat/TC6ServletContainerContext.java 2010-09-29 14:30:22 UTC (rev 4435)
@@ -34,6 +34,8 @@
import org.gatein.common.logging.Logger;
import org.gatein.common.logging.LoggerFactory;
import org.gatein.wci.RequestDispatchCallback;
+import org.gatein.wci.authentication.AuthenticationResult;
+import org.gatein.wci.authentication.GenericAuthentication;
import org.gatein.wci.command.CommandDispatcher;
import org.gatein.wci.impl.DefaultServletContainerFactory;
import org.gatein.wci.spi.ServletContainerContext;
@@ -97,8 +99,13 @@
this.registration = null;
}
- public synchronized void containerEvent(ContainerEvent event)
+ public AuthenticationResult login(HttpServletRequest request, HttpServletResponse response, String userName, String password)
{
+ return GenericAuthentication.getInstance().login(userName, password.toCharArray());
+ }
+
+ public synchronized void containerEvent(ContainerEvent event)
+ {
if (event.getData() instanceof Host)
{
Host host = (Host)event.getData();
Modified: components/wci/branches/adf/tomcat7/pom.xml
===================================================================
--- components/wci/branches/adf/tomcat7/pom.xml 2010-09-29 13:42:11 UTC (rev 4434)
+++ components/wci/branches/adf/tomcat7/pom.xml 2010-09-29 14:30:22 UTC (rev 4435)
@@ -18,12 +18,6 @@
<groupId>org.apache.tomcat</groupId>
<artifactId>tomcat-catalina</artifactId>
<version>7.0.2</version>
- <exclusions>
- <exclusion>
- <groupId>org.apache.tomcat</groupId>
- <artifactId>servlet-api</artifactId>
- </exclusion>
- </exclusions>
</dependency>
</dependencies>
Modified: components/wci/branches/adf/tomcat7/src/main/java/org/gatein/wci/tomcat/TC7ServletContainerContext.java
===================================================================
--- components/wci/branches/adf/tomcat7/src/main/java/org/gatein/wci/tomcat/TC7ServletContainerContext.java 2010-09-29 13:42:11 UTC (rev 4434)
+++ components/wci/branches/adf/tomcat7/src/main/java/org/gatein/wci/tomcat/TC7ServletContainerContext.java 2010-09-29 14:30:22 UTC (rev 4435)
@@ -36,6 +36,8 @@
import org.gatein.common.logging.Logger;
import org.gatein.common.logging.LoggerFactory;
import org.gatein.wci.RequestDispatchCallback;
+import org.gatein.wci.authentication.AuthenticationResult;
+import org.gatein.wci.authentication.ProgrammaticAuthenticationResult;
import org.gatein.wci.command.CommandDispatcher;
import org.gatein.wci.impl.DefaultServletContainerFactory;
import org.gatein.wci.spi.ServletContainerContext;
@@ -98,7 +100,16 @@
this.registration = null;
}
- public synchronized void containerEvent(ContainerEvent event)
+ public AuthenticationResult login(HttpServletRequest request, HttpServletResponse response, String userName, String password) {
+ try {
+ request.login(userName, password);
+ } catch (ServletException e) {
+ e.printStackTrace();
+ }
+ return new ProgrammaticAuthenticationResult();
+ }
+
+ public synchronized void containerEvent(ContainerEvent event)
{
if (event.getData() instanceof Host)
{
Modified: components/wci/branches/adf/wci/pom.xml
===================================================================
--- components/wci/branches/adf/wci/pom.xml 2010-09-29 13:42:11 UTC (rev 4434)
+++ components/wci/branches/adf/wci/pom.xml 2010-09-29 14:30:22 UTC (rev 4435)
@@ -13,13 +13,12 @@
<dependency>
<groupId>org.gatein.common</groupId>
<artifactId>common-common</artifactId>
- <exclusions>
- <exclusion>
- <groupId>org.codehaus.cargo</groupId>
- <artifactId>cargo-core-uberjar</artifactId>
- </exclusion>
- </exclusions>
</dependency>
+ <dependency>
+ <groupId>javax.servlet</groupId>
+ <artifactId>servlet-api</artifactId>
+ <scope>provided</scope>
+ </dependency>
</dependencies>
</project>
Modified: components/wci/branches/adf/wci/src/main/java/org/gatein/wci/ServletContainer.java
===================================================================
--- components/wci/branches/adf/wci/src/main/java/org/gatein/wci/ServletContainer.java 2010-09-29 13:42:11 UTC (rev 4434)
+++ components/wci/branches/adf/wci/src/main/java/org/gatein/wci/ServletContainer.java 2010-09-29 14:30:22 UTC (rev 4435)
@@ -22,6 +22,7 @@
******************************************************************************/
package org.gatein.wci;
+import org.gatein.wci.authentication.AuthenticationResult;
import org.gatein.wci.spi.ServletContainerContext;
import javax.servlet.ServletContext;
@@ -91,4 +92,14 @@
* @throws IllegalArgumentException if the context is null
*/
void register(ServletContainerContext context);
+
+ /**
+ * Authentication support.
+ *
+ * @param request the request valid in the current servlet context
+ * @param response the response valid in the current servlet context
+ * @param userName the username which try to login
+ * @param password the password of the username
+ */
+ AuthenticationResult login(HttpServletRequest request, HttpServletResponse response, String userName, String password);
}
Modified: components/wci/branches/adf/wci/src/main/java/org/gatein/wci/authentication/Authentication.java
===================================================================
--- components/wci/branches/adf/wci/src/main/java/org/gatein/wci/authentication/Authentication.java 2010-09-29 13:42:11 UTC (rev 4434)
+++ components/wci/branches/adf/wci/src/main/java/org/gatein/wci/authentication/Authentication.java 2010-09-29 14:30:22 UTC (rev 4435)
@@ -25,7 +25,7 @@
*/
public interface Authentication
{
- public WCICredentials login(String login, char[] password);
+ public AuthenticationResult login(String login, char[] password);
public void logout();
public void addAuthenticationListener(AuthenticationListener listener);
}
Added: components/wci/branches/adf/wci/src/main/java/org/gatein/wci/authentication/AuthenticationResult.java
===================================================================
--- components/wci/branches/adf/wci/src/main/java/org/gatein/wci/authentication/AuthenticationResult.java (rev 0)
+++ components/wci/branches/adf/wci/src/main/java/org/gatein/wci/authentication/AuthenticationResult.java 2010-09-29 14:30:22 UTC (rev 4435)
@@ -0,0 +1,28 @@
+/*
+* Copyright (C) 2003-2009 eXo Platform SAS.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+
+package org.gatein.wci.authentication;
+
+/**
+ * @author <a href="mailto:alain.defrance@exoplatform.com">Alain Defrance</a>
+ * @version $Revision$
+ */
+public interface AuthenticationResult
+{
+}
Modified: components/wci/branches/adf/wci/src/main/java/org/gatein/wci/authentication/GenericAuthentication.java
===================================================================
--- components/wci/branches/adf/wci/src/main/java/org/gatein/wci/authentication/GenericAuthentication.java 2010-09-29 13:42:11 UTC (rev 4434)
+++ components/wci/branches/adf/wci/src/main/java/org/gatein/wci/authentication/GenericAuthentication.java 2010-09-29 14:30:22 UTC (rev 4435)
@@ -26,16 +26,24 @@
public class GenericAuthentication extends AbstractAuthentication
{
public static final TicketService TICKET_SERVICE = new TicketService();
-
- public WCICredentials login(String login, char[] password)
+ private static final GenericAuthentication GENERIC_AUTHENTICATION = new GenericAuthentication();
+
+ private GenericAuthentication() {}
+
+ public AuthenticationResult login(String login, char[] password)
{
- WCICredentials credentials = TICKET_SERVICE.validateToken(new String(password), true);
+ String ticket = TICKET_SERVICE.createTicket(new WCICredentials(login, new String(password)));
+
fireEvent(EventType.LOGIN, new AuthenticationEvent(login, password));
- return credentials;
+ return new GenericAuthenticationResult(ticket);
}
public void logout()
{
fireEvent(EventType.LOGOUT, new AuthenticationEvent("", new char[1]));
}
-}
+
+ public static GenericAuthentication getInstance() {
+ return GENERIC_AUTHENTICATION;
+ }
+}
\ No newline at end of file
Added: components/wci/branches/adf/wci/src/main/java/org/gatein/wci/authentication/GenericAuthenticationResult.java
===================================================================
--- components/wci/branches/adf/wci/src/main/java/org/gatein/wci/authentication/GenericAuthenticationResult.java (rev 0)
+++ components/wci/branches/adf/wci/src/main/java/org/gatein/wci/authentication/GenericAuthenticationResult.java 2010-09-29 14:30:22 UTC (rev 4435)
@@ -0,0 +1,36 @@
+/*
+* Copyright (C) 2003-2009 eXo Platform SAS.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+
+package org.gatein.wci.authentication;
+
+/**
+ * @author <a href="mailto:alain.defrance@exoplatform.com">Alain Defrance</a>
+ * @version $Revision$
+ */
+public class GenericAuthenticationResult implements AuthenticationResult {
+ private String ticket;
+
+ public GenericAuthenticationResult(String ticket) {
+ this.ticket = ticket;
+ }
+
+ public String getTicket() {
+ return ticket;
+ }
+}
Added: components/wci/branches/adf/wci/src/main/java/org/gatein/wci/authentication/ProgrammaticAuthenticationResult.java
===================================================================
--- components/wci/branches/adf/wci/src/main/java/org/gatein/wci/authentication/ProgrammaticAuthenticationResult.java (rev 0)
+++ components/wci/branches/adf/wci/src/main/java/org/gatein/wci/authentication/ProgrammaticAuthenticationResult.java 2010-09-29 14:30:22 UTC (rev 4435)
@@ -0,0 +1,27 @@
+/*
+* Copyright (C) 2003-2009 eXo Platform SAS.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+
+package org.gatein.wci.authentication;
+
+/**
+ * @author <a href="mailto:alain.defrance@exoplatform.com">Alain Defrance</a>
+ * @version $Revision$
+ */
+public class ProgrammaticAuthenticationResult implements AuthenticationResult {
+}
Modified: components/wci/branches/adf/wci/src/main/java/org/gatein/wci/impl/DefaultServletContainer.java
===================================================================
--- components/wci/branches/adf/wci/src/main/java/org/gatein/wci/impl/DefaultServletContainer.java 2010-09-29 13:42:11 UTC (rev 4434)
+++ components/wci/branches/adf/wci/src/main/java/org/gatein/wci/impl/DefaultServletContainer.java 2010-09-29 14:30:22 UTC (rev 4435)
@@ -22,6 +22,7 @@
******************************************************************************/
package org.gatein.wci.impl;
+import org.gatein.wci.authentication.AuthenticationResult;
import org.gatein.wci.spi.ServletContainerContext;
import org.gatein.wci.spi.WebAppContext;
import org.gatein.wci.WebAppListener;
@@ -88,8 +89,14 @@
}
}
- public WebExecutor getExecutor(HttpServletRequest request, HttpServletResponse response)
+ /** . */
+ public AuthenticationResult login(HttpServletRequest request, HttpServletResponse response, String userName, String password)
{
+ return registration.context.login(request, response, userName, password);
+ }
+
+ public WebExecutor getExecutor(HttpServletRequest request, HttpServletResponse response)
+ {
throw new NotYetImplemented();
}
Modified: components/wci/branches/adf/wci/src/main/java/org/gatein/wci/impl/generic/GenericServletContainerContext.java
===================================================================
--- components/wci/branches/adf/wci/src/main/java/org/gatein/wci/impl/generic/GenericServletContainerContext.java 2010-09-29 13:42:11 UTC (rev 4434)
+++ components/wci/branches/adf/wci/src/main/java/org/gatein/wci/impl/generic/GenericServletContainerContext.java 2010-09-29 14:30:22 UTC (rev 4435)
@@ -23,6 +23,8 @@
package org.gatein.wci.impl.generic;
import org.gatein.wci.RequestDispatchCallback;
+import org.gatein.wci.authentication.AuthenticationResult;
+import org.gatein.wci.authentication.GenericAuthentication;
import org.gatein.wci.impl.DefaultServletContainerFactory;
import org.gatein.wci.spi.ServletContainerContext;
import org.gatein.wci.command.CommandDispatcher;
@@ -128,8 +130,13 @@
this.registration = null;
}
- //
+ public AuthenticationResult login(HttpServletRequest request, HttpServletResponse response, String userName, String password)
+ {
+ return GenericAuthentication.getInstance().login(userName, password.toCharArray());
+ }
+ //
+
public void contextInitialized(ServletContextEvent servletContextEvent)
{
if (instance != null)
Modified: components/wci/branches/adf/wci/src/main/java/org/gatein/wci/spi/ServletContainerContext.java
===================================================================
--- components/wci/branches/adf/wci/src/main/java/org/gatein/wci/spi/ServletContainerContext.java 2010-09-29 13:42:11 UTC (rev 4434)
+++ components/wci/branches/adf/wci/src/main/java/org/gatein/wci/spi/ServletContainerContext.java 2010-09-29 14:30:22 UTC (rev 4435)
@@ -23,6 +23,7 @@
package org.gatein.wci.spi;
import org.gatein.wci.RequestDispatchCallback;
+import org.gatein.wci.authentication.AuthenticationResult;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@@ -74,6 +75,16 @@
void unsetCallback(Registration registration);
/**
+ * Authentication support.
+ *
+ * @param request the request valid in the current servlet context
+ * @param response the response valid in the current servlet context
+ * @param userName the username which try to login
+ * @param password the password of the username
+ */
+ AuthenticationResult login(HttpServletRequest request, HttpServletResponse response, String userName, String password);
+
+ /**
* The callback interface that a servlet container context can obtain from its registration against
* the <code>org.jboss.portal.web.ServletContainer</code> singleton.
*/
14 years, 3 months
gatein SVN: r4434 - components/wsrp/trunk/wsrp-producer-war/src/test/java/org/gatein/wsrp/protocol/v2.
by do-not-reply@jboss.org
Author: mwringe
Date: 2010-09-29 09:42:11 -0400 (Wed, 29 Sep 2010)
New Revision: 4434
Modified:
components/wsrp/trunk/wsrp-producer-war/src/test/java/org/gatein/wsrp/protocol/v2/PortletManagementTestCase.java
Log:
GTNWSRP-71: Update tests for CopyPortlet
GTNWSRP-72: Add tests to check for portlet availability of clones.
Modified: components/wsrp/trunk/wsrp-producer-war/src/test/java/org/gatein/wsrp/protocol/v2/PortletManagementTestCase.java
===================================================================
--- components/wsrp/trunk/wsrp-producer-war/src/test/java/org/gatein/wsrp/protocol/v2/PortletManagementTestCase.java 2010-09-29 11:11:06 UTC (rev 4433)
+++ components/wsrp/trunk/wsrp-producer-war/src/test/java/org/gatein/wsrp/protocol/v2/PortletManagementTestCase.java 2010-09-29 13:42:11 UTC (rev 4434)
@@ -33,11 +33,11 @@
import org.gatein.pc.portlet.state.SimplePropertyMap;
import org.gatein.pc.portlet.state.StateConverter;
import org.gatein.pc.portlet.state.producer.PortletState;
-import org.gatein.pc.portlet.state.producer.ProducerPortletInvoker;
import org.gatein.wsrp.WSRPTypeFactory;
import org.gatein.wsrp.producer.WSRPProducerBaseTest;
import org.gatein.wsrp.servlet.ServletAccess;
import org.gatein.wsrp.support.TestMockExportPersistenceManager;
+import org.gatein.wsrp.test.ExtendedAssert;
import org.gatein.wsrp.test.support.MockHttpServletRequest;
import org.gatein.wsrp.test.support.MockHttpServletResponse;
import org.jboss.arquillian.api.Deployment;
@@ -49,6 +49,8 @@
import org.junit.Test;
import org.junit.runner.RunWith;
import org.oasis.wsrp.v2.BlockingInteractionResponse;
+import org.oasis.wsrp.v2.ClonePortlet;
+import org.oasis.wsrp.v2.CopiedPortlet;
import org.oasis.wsrp.v2.CopyPortlets;
import org.oasis.wsrp.v2.CopyPortletsResponse;
import org.oasis.wsrp.v2.ExportPortlets;
@@ -60,8 +62,10 @@
import org.oasis.wsrp.v2.ImportPortlets;
import org.oasis.wsrp.v2.ImportPortletsResponse;
import org.oasis.wsrp.v2.ImportedPortlet;
+import org.oasis.wsrp.v2.InvalidHandle;
import org.oasis.wsrp.v2.InvalidRegistration;
import org.oasis.wsrp.v2.Lifetime;
+import org.oasis.wsrp.v2.MarkupContext;
import org.oasis.wsrp.v2.MarkupResponse;
import org.oasis.wsrp.v2.MissingParameters;
import org.oasis.wsrp.v2.NamedString;
@@ -1055,6 +1059,9 @@
}
+ /**
+ * Simpliest check to make sure copy portlets is working
+ */
@Test
public void testSimpleCopyPortletNullRegistrations() throws Exception
{
@@ -1064,27 +1071,47 @@
CopyPortlets copyPortlets = createSimpleCopyPortlets(portletContexts);
CopyPortletsResponse response = producer.copyPortlets(copyPortlets);
- checkSimpleCopyPortlets(response, handle);
+ checkSimpleCopyPortletsResponse(response, createStringList(handle), createStringList());
+
+ //Check that the proper registration context can access it
+ checkDefaultMarkup(response.getCopiedPortlets().get(0).getNewPortletContext().getPortletHandle(), null);
}
-
-// Enable when we can have registered and non-registered consumer active at the same time.
+
+ /**
+ * Check copyPortlet from a null registration context to a non null registration context
+ * Note: if the toRegistrationContext is null, then it should use the fromRegistrationContext, which is this case
+ * is also null. See also testSimpleCopyPortletToRegistrationNull()
+ */
@Test
public void testSimpleCopyPortletFromRegistrationNull() throws Exception
{
try
{
RegistrationData toRegistrationData = WSRPTypeFactory.createRegistrationData("CONSUMERB", "CONSUMERAGENTB.0.0", true);
- RegistrationContext toregistrationContext = producer.register(toRegistrationData);
+ RegistrationContext toRegistrationContext = producer.register(toRegistrationData);
String handle = getDefaultHandle();
List<PortletContext> portletContexts = createPortletContextList(handle);
CopyPortlets copyPortlets = createSimpleCopyPortlets(portletContexts);
- copyPortlets.setToRegistrationContext(toregistrationContext);
+ copyPortlets.setToRegistrationContext(toRegistrationContext);
CopyPortletsResponse response = producer.copyPortlets(copyPortlets);
- checkSimpleCopyPortlets(response, handle);
+ checkSimpleCopyPortletsResponse(response, createStringList(handle), createStringList());
+
+ //Check that the proper registration context can access it
+ checkDefaultMarkup(response.getCopiedPortlets().get(0).getNewPortletContext().getPortletHandle(), toRegistrationContext);
+ //Check that the null registration cannot access it
+ try
+ {
+ checkDefaultMarkup(response.getCopiedPortlets().get(0).getNewPortletContext().getPortletHandle(), null);
+ ExtendedAssert.fail("The null registration context should not be able to access this portlet");
+ }
+ catch (InvalidHandle e)
+ {
+ //expected
+ }
}
catch (Exception e)
{
@@ -1094,10 +1121,15 @@
}
}
+ /**
+ * Check copyPortlets from a non-null registration context to a null registration context.
+ * Note: this does _NOT_ mean the copy should be available from a non registered consumer, the spec states if
+ * the toRegistration is null, it should be registered using the fromRegistrationContext
+ */
@Test
public void testSimpleCopyPortletToRegistrationNull() throws Exception
{
- producer.getConfigurationService().getConfiguration().getRegistrationRequirements().setRegistrationRequired(true);
+ //producer.getConfigurationService().getConfiguration().getRegistrationRequirements().setRegistrationRequired(true);
RegistrationData fromRegistrationData = WSRPTypeFactory.createRegistrationData("CONSUMERA", "CONSUMERAGENAT.0.0", true);
RegistrationContext fromRegistrationContext = producer.register(fromRegistrationData);
@@ -1106,34 +1138,207 @@
List<PortletContext> portletContexts = createPortletContextList(handle);
CopyPortlets copyPortlets = createSimpleCopyPortlets(portletContexts);
- copyPortlets.setFromRegistrationContext(fromRegistrationContext);
+ //note: createSimpleCopyPortlets sets the toRegistrationContext to null
+ copyPortlets.setFromRegistrationContext(fromRegistrationContext);
+
CopyPortletsResponse response = producer.copyPortlets(copyPortlets);
- checkSimpleCopyPortlets(response, handle);
+ checkSimpleCopyPortletsResponse(response, createStringList(handle), createStringList());
+
+ //Check that the proper registration context can access it
+ checkDefaultMarkup(response.getCopiedPortlets().get(0).getNewPortletContext().getPortletHandle(), fromRegistrationContext);
+ //Check that the null registration cannot access it
+ try
+ {
+ checkDefaultMarkup(response.getCopiedPortlets().get(0).getNewPortletContext().getPortletHandle(), null);
+ ExtendedAssert.fail("The null registration context should not be able to access this portlet");
+ }
+ catch (InvalidHandle e)
+ {
+ //expected
+ }
}
+ /**
+ * Check that we can copy one portlet from one registration context to another
+ */
@Test
public void testSimpleCopyPortletWithRegistrations() throws Exception
{
- producer.getConfigurationService().getConfiguration().getRegistrationRequirements().setRegistrationRequired(true);
+ //producer.getConfigurationService().getConfiguration().getRegistrationRequirements().setRegistrationRequired(true);
RegistrationData fromRegistrationData = WSRPTypeFactory.createRegistrationData("CONSUMERA", "CONSUMERAGENTA.0.0", true);
RegistrationContext fromRegistrationContext = producer.register(fromRegistrationData);
RegistrationData toRegistrationData = WSRPTypeFactory.createRegistrationData("CONSUMERB", "CONSUMERAGENTB.0.0", true);
- RegistrationContext toregistrationContext = producer.register(toRegistrationData);
+ RegistrationContext toRegistrationContext = producer.register(toRegistrationData);
String handle = getDefaultHandle();
List<PortletContext> portletContexts = createPortletContextList(handle);
CopyPortlets copyPortlets = createSimpleCopyPortlets(portletContexts);
copyPortlets.setFromRegistrationContext(fromRegistrationContext);
- copyPortlets.setToRegistrationContext(toregistrationContext);
+ copyPortlets.setToRegistrationContext(toRegistrationContext);
CopyPortletsResponse response = producer.copyPortlets(copyPortlets);
- checkSimpleCopyPortlets(response, handle);
+ checkSimpleCopyPortletsResponse(response, createStringList(handle), createStringList());
+
+ //Check that the proper registration context can access it
+ checkDefaultMarkup(response.getCopiedPortlets().get(0).getNewPortletContext().getPortletHandle(), toRegistrationContext);
+ //Check that the original registration cannot access it
+ try
+ {
+ checkDefaultMarkup(response.getCopiedPortlets().get(0).getNewPortletContext().getPortletHandle(), fromRegistrationContext);
+ ExtendedAssert.fail("The null registration context should not be able to access this portlet");
+ }
+ catch (InvalidHandle e)
+ {
+ //expected
+ }
+ //Check that the null registration cannot access it
+ try
+ {
+ checkDefaultMarkup(response.getCopiedPortlets().get(0).getNewPortletContext().getPortletHandle(), null);
+ ExtendedAssert.fail("The null registration context should not be able to access this portlet");
+ }
+ catch (InvalidHandle e)
+ {
+ //expected
+ }
}
+ @Test
+ public void testCopyPortletNullRegistrationWithRR() throws Exception
+ {
+ producer.getConfigurationService().getConfiguration().getRegistrationRequirements().setRegistrationRequired(true);
+
+ List<PortletContext> portletContexts = createPortletContextList(getDefaultHandle());
+ //creates a copyportlet with a null registration context
+ CopyPortlets copyPortlets = createSimpleCopyPortlets(portletContexts);
+
+ try
+ {
+ producer.copyPortlets(copyPortlets);
+ fail("Should not be allowed to call copy portlets without a registration if a registration is requried");
+ }
+ catch (InvalidRegistration e)
+ {
+ //expected
+ }
+ }
+
+ @Test
+ public void testCopyPortletNonRegisteredToRegistration() throws Exception
+ {
+ RegistrationContext invalidRegistrationContext = WSRPTypeFactory.createRegistrationContext("non_registered_handle");
+
+ List<PortletContext> portletContexts = createPortletContextList(getDefaultHandle());
+ CopyPortlets copyPortlets = createSimpleCopyPortlets(portletContexts);
+ copyPortlets.setToRegistrationContext(invalidRegistrationContext);
+
+ try
+ {
+ producer.copyPortlets(copyPortlets);
+ fail();
+ }
+ catch (InvalidRegistration e)
+ {
+ //expected
+ }
+ }
+
+ @Test
+ public void testCopyPortletNonRegisteredFromRegistration() throws Exception
+ {
+ RegistrationContext invalidRegistrationContext = WSRPTypeFactory.createRegistrationContext("non_registered_handle");
+
+ List<PortletContext> portletContexts = createPortletContextList(getDefaultHandle());
+ CopyPortlets copyPortlets = createSimpleCopyPortlets(portletContexts);
+ copyPortlets.setFromRegistrationContext(invalidRegistrationContext);
+
+ try
+ {
+ producer.copyPortlets(copyPortlets);
+ fail();
+ }
+ catch (InvalidRegistration e)
+ {
+ //expected
+ }
+ }
+
+ @Test
+ public void testCopyPortletNullPortletContexts() throws Exception
+ {
+ List<PortletContext> portletContexts = null;
+ CopyPortlets copyPortlets = new CopyPortlets();
+
+ try
+ {
+ producer.copyPortlets(copyPortlets);
+ fail();
+ }
+ catch (MissingParameters e)
+ {
+ //expected
+ }
+ }
+
+ @Test
+ public void testCopyPortletsEmptyPortletContexts() throws Exception
+ {
+ List<PortletContext> portletContexts = new ArrayList<PortletContext>();
+ CopyPortlets copyPortlets = new CopyPortlets();
+ copyPortlets.getFromPortletContexts().addAll(portletContexts);
+
+ try
+ {
+ producer.copyPortlets(copyPortlets);
+ fail();
+ }
+ catch (MissingParameters e)
+ {
+ //expected
+ }
+ }
+
+ @Test
+ public void testCopyPortletsInvalidPortletContexts() throws Exception
+ {
+ String fakePortletContext1 = "fakePortletContext1";
+ String fakePortletContext2 = "fakePortletContext2";
+ List<PortletContext> portletContexts = createPortletContextList(fakePortletContext1, fakePortletContext2);
+ CopyPortlets copyPortlets = createSimpleCopyPortlets(portletContexts);
+
+ CopyPortletsResponse response = producer.copyPortlets(copyPortlets);
+
+ assertEquals(0, response.getCopiedPortlets().size());
+ assertEquals(1, response.getFailedPortlets().size());
+ assertTrue(response.getFailedPortlets().get(0).getPortletHandles().contains(fakePortletContext1));
+ assertTrue(response.getFailedPortlets().get(0).getPortletHandles().contains(fakePortletContext2));
+ assertTrue(response.getFailedPortlets().get(0).getErrorCode().getLocalPart().contains("InvalidHandle"));
+ }
+
+ @Test
+ public void testCopyPortletsMixedPortletContexts() throws Exception
+ {
+ String fakePortletContext1 = "fakePortletContext1";
+ String fakePortletContext2 = "fakePortletContext2";
+ List<PortletContext> portletContexts = createPortletContextList(fakePortletContext1, getDefaultHandle(), fakePortletContext2);
+ CopyPortlets copyPortlets = createSimpleCopyPortlets(portletContexts);
+
+ CopyPortletsResponse response = producer.copyPortlets(copyPortlets);
+
+ assertEquals(1, response.getFailedPortlets().size());
+ assertTrue(response.getFailedPortlets().get(0).getPortletHandles().contains(fakePortletContext1));
+ assertTrue(response.getFailedPortlets().get(0).getPortletHandles().contains(fakePortletContext2));
+ assertTrue(response.getFailedPortlets().get(0).getErrorCode().getLocalPart().contains("InvalidHandle"));
+
+ assertEquals(1, response.getCopiedPortlets().size());
+ assertEquals(getDefaultHandle(), response.getCopiedPortlets().get(0).getFromPortletHandle());
+ assertFalse(response.getCopiedPortlets().get(0).getNewPortletContext().getPortletHandle().equals(getDefaultHandle()));
+ }
+
protected CopyPortlets createSimpleCopyPortlets(List<PortletContext> portletContexts)
{
RegistrationContext toRegistrationContext = null;
@@ -1143,13 +1348,148 @@
return WSRPTypeFactory.createCopyPortlets(toRegistrationContext, toUserContext, fromRegistrationContext, fromUserContext, portletContexts);
}
- protected void checkSimpleCopyPortlets(CopyPortletsResponse response, String handle)
+ protected void checkSimpleCopyPortletsResponse(CopyPortletsResponse response, List<String> success,List<String> failure)
{
- assertEquals(0, response.getFailedPortlets().size());
- assertEquals(1, response.getCopiedPortlets().size());
- assertEquals(handle, response.getCopiedPortlets().get(0).getFromPortletHandle());
+ //check that we are getting the expected number of copied portlets
+ assertEquals(success.size(), response.getCopiedPortlets().size());
+ for (CopiedPortlet copiedPortlet : response.getCopiedPortlets())
+ {
+ assertTrue(success.contains(copiedPortlet.getFromPortletHandle()));
+ }
+
+ //check that we are getting the expected number of failed portlets
+ assertEquals(failure.size(), response.getFailedPortlets().size());
+ for (FailedPortlets failedPortlet : response.getFailedPortlets())
+ {
+ assertTrue(failure.containsAll(failedPortlet.getPortletHandles()));
+ }
+
+ //Check that if we do get copiedPortlets back, that the new and old PortletHandle are not the same
+ for (CopiedPortlet copiedPortlet : response.getCopiedPortlets())
+ {
+ assertFalse(copiedPortlet.getFromPortletHandle().equals(copiedPortlet.getNewPortletContext().getPortletHandle()));
+ }
+
}
+ protected void checkDefaultMarkup(String portletHandle, RegistrationContext registrationContext) throws Exception
+ {
+ GetMarkup getMarkup = createDefaultGetMarkup(portletHandle);
+ getMarkup.setRegistrationContext(registrationContext);
+ MarkupResponse response = producer.getMarkup(getMarkup);
+
+ String defaultMarkup = "<p>symbol unset stock value: value unset</p>";
+
+ MarkupContext markupContext = response.getMarkupContext();
+ assertNotNull(markupContext);
+ assertEquals("text/html", markupContext.getMimeType());
+ assertTrue(markupContext.getItemString().contains(defaultMarkup));
+ }
+
+ protected List<String> createStringList(String... names)
+ {
+ List<String> list = new ArrayList<String>(names.length);
+ for (int i = 0; i < names.length; i++)
+ {
+ list.add(names[i]);
+ }
+ return list;
+ }
+
+ @Test
+ public void testClonePortletAvailabilityRR() throws Exception
+ {
+ producer.getConfigurationService().getConfiguration().getRegistrationRequirements().setRegistrationRequired(true);
+ checkClonePortletAvailability();
+ }
+
+ @Test
+ public void testClonePortletAvailabilityNRR() throws Exception
+ {
+ producer.getConfigurationService().getConfiguration().getRegistrationRequirements().setRegistrationRequired(false);
+ checkClonePortletAvailability();
+ }
+
+ public void checkClonePortletAvailability() throws Exception
+ {
+ RegistrationData registrationDataA = WSRPTypeFactory.createRegistrationData("CONSUMERA", "CONSUMERAGENTA.0.0", true);
+ RegistrationContext registrationContextA = producer.register(registrationDataA);
+ RegistrationData registrationDataB = WSRPTypeFactory.createRegistrationData("CONSUMERB", "CONSUMERAGENTB.0.0", true);
+ RegistrationContext registrationContextB = producer.register(registrationDataB);
+
+ checkClonePortletAvailability(registrationContextA, registrationContextB);
+ }
+
+ public void checkClonePortletAvailability(RegistrationContext registrationContextA, RegistrationContext registrationContextB) throws Exception
+ {
+ String handle = getDefaultHandle();
+ PortletContext portletContext = WSRPTypeFactory.createPortletContext(getDefaultHandle());
+ ClonePortlet clonePortlet = WSRPTypeFactory.createClonePortlet(registrationContextA, portletContext, null);
+ PortletContext clonedPortletContext = producer.clonePortlet(clonePortlet);
+
+ ExtendedAssert.assertFalse(portletContext.getPortletHandle().equals(clonedPortletContext.getPortletHandle()));
+
+ GetMarkup getMarkupA = createDefaultGetMarkup(clonedPortletContext.getPortletHandle());
+ getMarkupA.setRegistrationContext(registrationContextA);
+ producer.getMarkup(getMarkupA);
+
+ try
+ {
+ GetMarkup getMarkupB = createDefaultGetMarkup(clonedPortletContext.getPortletHandle());
+ getMarkupB.setRegistrationContext(registrationContextB);
+ producer.getMarkup(getMarkupB);
+ ExtendedAssert.fail("Should not be able to render a cloned portlet from a registration context which didn't create the clone.");
+ }
+ catch (InvalidHandle e)
+ {
+ //expected
+ }
+ }
+
+ @Test
+ public void testClonePortletAvailabilityNonRegisteredA() throws Exception
+ {
+ producer.getConfigurationService().getConfiguration().getRegistrationRequirements().setRegistrationRequired(false);
+
+ RegistrationData registrationDataA = WSRPTypeFactory.createRegistrationData("CONSUMERA", "CONSUMERAGENTA.0.0", true);
+ RegistrationContext registrationContextA = producer.register(registrationDataA);
+
+ checkClonePortletAvailability(registrationContextA, null);
+ }
+
+ @Test
+ public void testClonePortletAvailabilityNonRegisteredB() throws Exception
+ {
+ producer.getConfigurationService().getConfiguration().getRegistrationRequirements().setRegistrationRequired(false);
+
+ RegistrationData registrationDataB = WSRPTypeFactory.createRegistrationData("CONSUMERB", "CONSUMERAGENTB.0.0", true);
+ RegistrationContext registrationContextB = producer.register(registrationDataB);
+
+ checkClonePortletAvailability(null, registrationContextB);
+ }
+
+ @Test
+ public void testClonePortletAvailabilityNullRegistered() throws Exception
+ {
+ RegistrationContext registrationContextA = null;
+ RegistrationContext registrationContextB = null;
+ String handle = getDefaultHandle();
+ PortletContext portletContext = WSRPTypeFactory.createPortletContext(getDefaultHandle());
+ ClonePortlet clonePortlet = WSRPTypeFactory.createClonePortlet(registrationContextA, portletContext, null);
+ PortletContext clonedPortletContext = producer.clonePortlet(clonePortlet);
+
+ ExtendedAssert.assertFalse(portletContext.getPortletHandle().equals(clonedPortletContext.getPortletHandle()));
+
+ GetMarkup getMarkupA = createDefaultGetMarkup(clonedPortletContext.getPortletHandle());
+ getMarkupA.setRegistrationContext(registrationContextA);
+ producer.getMarkup(getMarkupA);
+
+ //Since both A and B are null, this should work
+ GetMarkup getMarkupB = createDefaultGetMarkup(clonedPortletContext.getPortletHandle());
+ getMarkupB.setRegistrationContext(registrationContextB);
+ producer.getMarkup(getMarkupB);
+ }
+
protected String getMostUsedPortletWARFileName()
{
return TEST_BASIC_PORTLET_WAR;
14 years, 3 months
gatein SVN: r4433 - portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium.
by do-not-reply@jboss.org
Author: hangnguyen
Date: 2010-09-29 07:11:06 -0400 (Wed, 29 Sep 2010)
New Revision: 4433
Modified:
portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_POR_09_002_CreateNewPortalWithValidValue.html
Log:
TestVN-356:Clean and Improve existing Selenium for GateIn
Modified: portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_POR_09_002_CreateNewPortalWithValidValue.html
===================================================================
--- portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_POR_09_002_CreateNewPortalWithValidValue.html 2010-09-29 11:08:11 UTC (rev 4432)
+++ portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_POR_09_002_CreateNewPortalWithValidValue.html 2010-09-29 11:11:06 UTC (rev 4433)
@@ -146,8 +146,12 @@
<td>//div[@id='UIMaskWorkspace']//div[@class='TabsContainer']/div[4]//div[@class='MiddleTab']</td>
<td></td>
</tr>
-<!--=============-->
<tr>
+ <td>echo</td>
+ <td>-- Access Permission Setting --</td>
+ <td></td>
+</tr>
+<tr>
<td>waitForElementPresent</td>
<td>link=Add Permission</td>
<td></td>
@@ -187,8 +191,12 @@
<td>link=exact:*</td>
<td></td>
</tr>
-<!--------------------------->
<tr>
+ <td>echo</td>
+ <td>-- Edit Permission Setting --</td>
+ <td></td>
+</tr>
+<tr>
<td>waitForElementPresent</td>
<td>link=Edit Permission Setting</td>
<td></td>
@@ -279,16 +287,26 @@
<td></td>
</tr>
<tr>
- <td>clickAndWait</td>
+ <td>click</td>
<td>link=Delete</td>
<td></td>
</tr>
<tr>
+ <td>waitForConfirmationPresent</td>
+ <td></td>
+ <td></td>
+</tr>
+<tr>
<td>assertConfirmation</td>
<td>Are you sure you want to delete this portal?</td>
<td></td>
</tr>
<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Sign out</td>
+ <td></td>
+</tr>
+<tr>
<td>clickAndWait</td>
<td>link=Sign out</td>
<td></td>
14 years, 3 months