[kune-commits] r1861 - in trunk: debian img/screenshots src/main/java/cc/kune/core/server src/main/java/cc/kune/core/server/properties src/main/java/cc/kune/core/server/rack src/main/java/cc/kune/wave/server src/main/java/org/waveprotocol/box/server src/main/java/org/waveprotocol/box/server/waveserver src/main/resources src/test/java/cc/kune/selenium
Vicente J. Ruiz Jurado
vjrj_ at ourproject.org
Tue May 1 15:48:27 CEST 2012
Author: vjrj_
Date: 2012-05-01 15:48:27 +0200 (Tue, 01 May 2012)
New Revision: 1861
Added:
trunk/src/main/java/org/waveprotocol/box/server/waveserver/
trunk/src/main/java/org/waveprotocol/box/server/waveserver/CustomImportServlet.java
Modified:
trunk/debian/changelog
trunk/debian/files
trunk/debian/kune.init
trunk/img/screenshots/kune-chat-sele.png
trunk/img/screenshots/kune-groupOptions-sele.png
trunk/img/screenshots/kune-home-stats-sele.png
trunk/img/screenshots/kune-inbox-sele.png
trunk/img/screenshots/kune-newgroup-sele.png
trunk/img/screenshots/kune-register-sele.png
trunk/img/screenshots/kune-social-net-sele.png
trunk/img/screenshots/kune-socialNetOptions-sele.png
trunk/img/screenshots/kune-tutorials-sele.png
trunk/src/main/java/cc/kune/core/server/KuneRackModule.java
trunk/src/main/java/cc/kune/core/server/properties/KuneProperties.java
trunk/src/main/java/cc/kune/core/server/rack/RackServletFilter.java
trunk/src/main/java/cc/kune/wave/server/WaveMain.java
trunk/src/main/resources/kune-production.properties
trunk/src/main/resources/kune.properties
trunk/src/main/resources/wave-server.properties
trunk/src/test/java/cc/kune/selenium/KuneSeleniumTest.java
trunk/src/test/java/cc/kune/selenium/SeleniumConf.java
Log:
NEW - # 260: Google Wave Import usernames translation
http://kune.ourproject.org/issues/ticket/260
Modified: trunk/debian/changelog
===================================================================
--- trunk/debian/changelog 2012-04-26 01:26:03 UTC (rev 1860)
+++ trunk/debian/changelog 2012-05-01 13:48:27 UTC (rev 1861)
@@ -1,3 +1,10 @@
+kune (0.2.0+b4) unstable; urgency=low
+
+ * Added some kune.wave.import.usernamespairs param
+ * Fixed status init function
+
+ -- Vicente J. Ruiz Jurado <vjrj at ourproject.org> Mon, 30 Apr 2012 22:19:50 +0200
+
kune (0.2.0+b3) unstable; urgency=low
* Init loging fixed. Other minor changes
Modified: trunk/debian/files
===================================================================
--- trunk/debian/files 2012-04-26 01:26:03 UTC (rev 1860)
+++ trunk/debian/files 2012-05-01 13:48:27 UTC (rev 1861)
@@ -1 +1 @@
-kune_0.2.0+b3_all.deb java optional
+kune_0.2.0+b4_all.deb java optional
Modified: trunk/debian/kune.init
===================================================================
--- trunk/debian/kune.init 2012-04-26 01:26:03 UTC (rev 1860)
+++ trunk/debian/kune.init 2012-05-01 13:48:27 UTC (rev 1861)
@@ -131,7 +131,7 @@
esac
;;
status)
- status_of_proc "$DAEMON" "$NAME" && exit 0 || exit $?
+ status_of_proc "$NAME" "$NAME" && exit 0 || exit $?
;;
reload|force-reload)
#
Modified: trunk/img/screenshots/kune-chat-sele.png
===================================================================
(Binary files differ)
Modified: trunk/img/screenshots/kune-groupOptions-sele.png
===================================================================
(Binary files differ)
Modified: trunk/img/screenshots/kune-home-stats-sele.png
===================================================================
(Binary files differ)
Modified: trunk/img/screenshots/kune-inbox-sele.png
===================================================================
(Binary files differ)
Modified: trunk/img/screenshots/kune-newgroup-sele.png
===================================================================
(Binary files differ)
Modified: trunk/img/screenshots/kune-register-sele.png
===================================================================
(Binary files differ)
Modified: trunk/img/screenshots/kune-social-net-sele.png
===================================================================
(Binary files differ)
Modified: trunk/img/screenshots/kune-socialNetOptions-sele.png
===================================================================
(Binary files differ)
Modified: trunk/img/screenshots/kune-tutorials-sele.png
===================================================================
(Binary files differ)
Modified: trunk/src/main/java/cc/kune/core/server/KuneRackModule.java
===================================================================
--- trunk/src/main/java/cc/kune/core/server/KuneRackModule.java 2012-04-26 01:26:03 UTC (rev 1860)
+++ trunk/src/main/java/cc/kune/core/server/KuneRackModule.java 2012-05-01 13:48:27 UTC (rev 1861)
@@ -187,7 +187,6 @@
if (!kuneProperties.getBoolean(KuneProperties.SITE_OPENFIRE_IGNORE)) {
filter("/*").through(DataSourceOpenfirePersistModule.MY_DATA_SOURCE_TWO_FILTER_KEY);
}
-
super.configureServlets();
}
});
Modified: trunk/src/main/java/cc/kune/core/server/properties/KuneProperties.java
===================================================================
--- trunk/src/main/java/cc/kune/core/server/properties/KuneProperties.java 2012-04-26 01:26:03 UTC (rev 1860)
+++ trunk/src/main/java/cc/kune/core/server/properties/KuneProperties.java 2012-05-01 13:48:27 UTC (rev 1861)
@@ -69,6 +69,7 @@
String SITE_URL = "kune.siteurl";
String SITE_USER_AVAILABLE_TOOLS = "kune.tools.userSiteAvailableTools";
String SITE_USER_REGIST_ENABLED_TOOLS = "kune.tools.userRegisEnabledTools";
+ String SITE_WAVE_IMPORT_USERNAME_PAIRS = "kune.wave.import.usernamespairs";
String UI_TRANSLATOR_ENABLED = "kune.ui-translator.enabled";
String UPLOAD_DELAY_FOR_TEST = "kune.upload.delayfortest";
String UPLOAD_GALLERY_PERMITTED_EXTS = "kune.upload.gallerypermittedextensions";
Modified: trunk/src/main/java/cc/kune/core/server/rack/RackServletFilter.java
===================================================================
--- trunk/src/main/java/cc/kune/core/server/rack/RackServletFilter.java 2012-04-26 01:26:03 UTC (rev 1860)
+++ trunk/src/main/java/cc/kune/core/server/rack/RackServletFilter.java 2012-05-01 13:48:27 UTC (rev 1861)
@@ -35,8 +35,10 @@
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.waveprotocol.box.server.rpc.ServerRpcProvider;
+import org.waveprotocol.box.server.waveserver.CustomImportServlet;
import cc.kune.core.server.error.ServerException;
+import cc.kune.core.server.properties.KuneProperties;
import cc.kune.core.server.rack.dock.Dock;
import cc.kune.core.server.rack.dock.RequestMatcher;
import cc.kune.core.server.rack.utils.RackHelper;
@@ -173,6 +175,8 @@
excludes = rack.getExcludes();
initFilters(filterConfig);
LOG.debug("INITIALIZATION DONE!");
+ kuneChildInjector.getInstance(CustomImportServlet.class).init(
+ kuneChildInjector.getInstance(KuneProperties.class));
// Uncomment to generate the graph
// graph("docs/wave-guice-graph.dot", injector);
Modified: trunk/src/main/java/cc/kune/wave/server/WaveMain.java
===================================================================
--- trunk/src/main/java/cc/kune/wave/server/WaveMain.java 2012-04-26 01:26:03 UTC (rev 1860)
+++ trunk/src/main/java/cc/kune/wave/server/WaveMain.java 2012-05-01 13:48:27 UTC (rev 1861)
@@ -59,7 +59,7 @@
import org.waveprotocol.box.server.rpc.SignOutServlet;
import org.waveprotocol.box.server.rpc.UserRegistrationServlet;
import org.waveprotocol.box.server.rpc.WaveRefServlet;
-import org.waveprotocol.box.server.waveserver.ImportServlet;
+import org.waveprotocol.box.server.waveserver.CustomImportServlet;
import org.waveprotocol.box.server.waveserver.WaveBus;
import org.waveprotocol.box.server.waveserver.WaveServerException;
import org.waveprotocol.box.server.waveserver.WaveletProvider;
@@ -233,7 +233,7 @@
boolean enableImport = injector
.getInstance(Key.get(Boolean.class, Names.named(CoreSettings.ENABLE_IMPORT)));
if (enableImport)
- server.addServlet("/import", injector.getInstance(ImportServlet.class));
+ server.addServlet("/import", injector.getInstance(CustomImportServlet.class));
String gadgetHostName =
injector
Added: trunk/src/main/java/org/waveprotocol/box/server/waveserver/CustomImportServlet.java
===================================================================
--- trunk/src/main/java/org/waveprotocol/box/server/waveserver/CustomImportServlet.java (rev 0)
+++ trunk/src/main/java/org/waveprotocol/box/server/waveserver/CustomImportServlet.java 2012-05-01 13:48:27 UTC (rev 1861)
@@ -0,0 +1,311 @@
+// @formatter:off
+/**
+ * Copyright 2012 A. Kaplanov
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+package org.waveprotocol.box.server.waveserver;
+
+import cc.kune.core.server.properties.KuneProperties;
+
+import com.google.gxp.org.apache.xerces.impl.dv.util.Base64;
+import com.google.inject.Inject;
+import com.google.inject.Provider;
+import com.google.inject.Singleton;
+import com.google.protobuf.ByteString;
+import java.io.FileNotFoundException;
+import java.io.IOException;
+import java.io.Reader;
+import java.io.StringWriter;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.LinkedList;
+import java.util.List;
+import java.util.Set;
+import java.util.logging.Level;
+import javax.servlet.ServletException;
+import javax.servlet.http.HttpServlet;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+import org.json.JSONArray;
+import org.json.JSONObject;
+import org.waveprotocol.box.server.persistence.AttachmentStore;
+import org.waveprotocol.wave.model.version.HashedVersion;
+import org.waveprotocol.wave.model.wave.InvalidParticipantAddress;
+import org.waveprotocol.wave.util.logging.Log;
+import org.waveprotocol.wave.federation.Proto.ProtocolAppliedWaveletDelta;
+import org.waveprotocol.wave.federation.Proto.ProtocolHashedVersion;
+import org.waveprotocol.wave.federation.Proto.ProtocolWaveletDelta;
+import org.waveprotocol.wave.federation.Proto.ProtocolWaveletOperation;
+import org.waveprotocol.wave.model.id.IdURIEncoderDecoder;
+import org.waveprotocol.wave.model.id.WaveId;
+import org.waveprotocol.wave.model.id.WaveletId;
+import org.waveprotocol.wave.model.id.WaveletName;
+import org.waveprotocol.wave.model.version.HashedVersionFactory;
+import org.waveprotocol.wave.model.version.HashedVersionFactoryImpl;
+import org.waveprotocol.wave.model.wave.ParticipantId;
+import org.waveprotocol.wave.util.escapers.jvm.JavaUrlCodec;
+
+/**
+ *
+ * @author (akaplanov at gmail.com) (Andrew Kaplanov)
+ */
+ at SuppressWarnings("serial")
+ at Singleton
+public class CustomImportServlet extends HttpServlet {
+
+ private static final Log LOG = Log.get(CustomImportServlet.class);
+ public static final String GWAVE_PUBLIC_DOMAIN = "a.gwave.com";
+ public static final String GWAVE_PUBLIC_USER_NAME = "public";
+ public static final String WIAB_SHARED_USER_NAME = "";
+ private static final IdURIEncoderDecoder URI_CODEC = new IdURIEncoderDecoder(new JavaUrlCodec());
+ private static final HashedVersionFactory HASH_FACTORY = new HashedVersionFactoryImpl(URI_CODEC);
+ private final WaveletProvider waveletProvider;
+ private final AttachmentStore attachmentStore;
+ private final WaveMap waveMap;
+ private KuneProperties kuneProperties;
+ private static HashMap<String, String> userMap;
+
+ @Inject
+ private CustomImportServlet(WaveletProvider waveletProvider, AttachmentStore attachmentStore,
+ WaveMap waveMap) {
+ this.waveletProvider = waveletProvider;
+ this.attachmentStore = attachmentStore;
+ this.waveMap = waveMap;
+ }
+
+ public void init(KuneProperties kuneProperties ) {
+ this.kuneProperties = kuneProperties;
+ if (userMap == null) {
+ initUserMap();
+ }
+ }
+
+ @Override
+ protected void doPost(HttpServletRequest request, HttpServletResponse response)
+ throws ServletException, IOException {
+ String domain = request.getHeader("domain");
+ WaveId waveId = WaveId.deserialise(request.getHeader("waveId"));
+ WaveletId waveletId = WaveletId.deserialise(request.getHeader("waveletId"));
+ final StringWriter error = new StringWriter();
+ boolean somethingProcessed = false;
+ boolean somethingSkipped = false;
+ try {
+ JSONObject exp = new JSONObject(readToString(request.getReader()));
+ JSONArray rawDeltas = exp.getJSONObject("data").getJSONArray("rawDeltas");
+ if (rawDeltas.length() != 0) {
+ List<ProtocolAppliedWaveletDelta> deltas = new LinkedList<ProtocolAppliedWaveletDelta>();
+ for (int i = 0; i < rawDeltas.length(); i++) {
+ deltas.add(ProtocolAppliedWaveletDelta.parseFrom(Base64.decode(rawDeltas.getString(i))));
+ }
+ WaveletName waveletName = WaveletName.of(waveId, waveletId);
+ LocalWaveletContainerImpl wavelet = (LocalWaveletContainerImpl) waveMap.getLocalWavelet(waveletName);
+ Set<ParticipantId> participants = new HashSet<ParticipantId>();
+ if (wavelet != null) {
+ participants.addAll(wavelet.accessSnapshot().getParticipants());
+ }
+ for (ProtocolAppliedWaveletDelta appliedDelta : deltas) {
+ ProtocolWaveletDelta delta = ProtocolWaveletDelta.parseFrom(
+ appliedDelta.getSignedOriginalDelta().getDelta());
+ long currentVersion = 0;
+ if (wavelet != null) {
+ currentVersion = wavelet.getCurrentVersion().getVersion();
+ }
+ if (currentVersion == delta.getHashedVersion().getVersion()) {
+ ProtocolWaveletDelta newDelta = convertDelta(delta, domain, wavelet, waveletName,
+ participants);
+
+ waveletProvider.submitRequest(waveletName, newDelta,
+ new WaveletProvider.SubmitRequestListener() {
+
+ @Override
+ public void onSuccess(int operationsApplied, HashedVersion hashedVersionAfterApplication,
+ long applicationTimestamp) {
+ }
+
+ @Override
+ public void onFailure(String errorMessage) {
+ error.write(errorMessage);
+ }
+ });
+ if (error.getBuffer().length() != 0) {
+ break;
+ }
+ if (wavelet == null) {
+ wavelet = (LocalWaveletContainerImpl) waveMap.getLocalWavelet(waveletName);
+ }
+ somethingProcessed = true;
+ } else {
+ somethingSkipped = true;
+ }
+ }
+ }
+ } catch (Exception ex) {
+ LOG.log(Level.SEVERE, "waveId " + waveId.toString() + ", waveletId " + waveletId.toString(), ex);
+ throw new IOException(ex);
+ }
+ response.setStatus(HttpServletResponse.SC_OK);
+ if (error.getBuffer().length() != 0) {
+ response.getOutputStream().write(("error : " + error.getBuffer()).getBytes());
+ } else if (somethingProcessed && !somethingSkipped) {
+ response.getOutputStream().write(("imported").getBytes());
+ } else if (somethingProcessed && somethingSkipped) {
+ response.getOutputStream().write(("appended").getBytes());
+ } else {
+ response.getOutputStream().write(("skipped").getBytes());
+ }
+ }
+
+ private void initUserMap() {
+ userMap = new HashMap<String,String>();
+ List<String> list = kuneProperties.getList(KuneProperties.SITE_WAVE_IMPORT_USERNAME_PAIRS);
+ // response.getOutputStream().write(list.toString().getBytes());
+ for (String item : list) {
+ String[] splitted = item.split("\\|");
+ if (splitted.length == 2) {
+ userMap.put(splitted[0], splitted[1]);
+ }
+ }
+ }
+
+ /**
+ * Convert delta from GWave to Wiab
+ *
+ * @param delta from GWave
+ * @param domain target domain
+ * @param wavelet to append delta
+ * @param waveletName name of wavelet
+ * @param set participants of wavelet at this moment
+ * @return delta to import
+ * @throws InvalidParticipantAddress deserialize of participant error
+ */
+ protected static ProtocolWaveletDelta convertDelta(ProtocolWaveletDelta delta, String domain,
+ LocalWaveletContainerImpl wavelet, WaveletName waveletName,
+ Set<ParticipantId> participants) throws InvalidParticipantAddress {
+ ProtocolWaveletDelta.Builder newDelta = ProtocolWaveletDelta.newBuilder(delta);
+ ParticipantId creator = null;
+ if (wavelet != null) {
+ creator = wavelet.getCreator();
+ }
+ ParticipantId author = makeParticipantId(delta.getAuthor(), domain);
+ if (!participants.contains(author) && creator != null) {
+ // Assign the authorship of the delta from internal GWave users
+ // (panda at a.gwave.com, spelly at a.gwave.com) or others to the creator of wave.
+ if (!author.getAddress().endsWith("@" + GWAVE_PUBLIC_DOMAIN)) {
+ LOG.warning("Unknown participant " + author.getAddress()
+ + ", wave " + wavelet.getWaveletName().waveId.getId());
+ }
+ author = creator;
+ }
+ newDelta.setAuthor(author.getAddress());
+ for (int i = 0; i < delta.getOperationCount(); i++) {
+ ProtocolWaveletOperation op = delta.getOperation(i);
+ ProtocolWaveletOperation.Builder newOp = ProtocolWaveletOperation.newBuilder(op);
+ if (op.hasAddParticipant()) {
+ initAddParticipantOperation(newOp, op, domain, participants);
+ if (creator == null && newOp.hasAddParticipant()) {
+ creator = ParticipantId.of(newOp.getAddParticipant());
+ }
+ } else if (op.hasRemoveParticipant()) {
+ initRemoveParticipantOperation(newOp, op, domain, participants);
+ }
+ // TODO (Andrew Kaplanov) import attachments
+ newDelta.setOperation(i, newOp);
+ }
+ if (wavelet == null) {
+ ProtocolHashedVersion ver = ProtocolHashedVersion.newBuilder(delta.getHashedVersion()).
+ setHistoryHash(ByteString.copyFrom(HASH_FACTORY.createVersionZero(waveletName).getHistoryHash())).
+ build();
+ newDelta.setHashedVersion(ver);
+ } else {
+ ProtocolHashedVersion ver = ProtocolHashedVersion.newBuilder(delta.getHashedVersion()).
+ setHistoryHash(ByteString.copyFrom(wavelet.getCurrentVersion().getHistoryHash())).
+ build();
+ newDelta.setHashedVersion(ver);
+ }
+ return newDelta.build();
+ }
+
+ /**
+ * Convert adding participant operation.
+ * Skip operation if participant already exists.
+ */
+ private static void initAddParticipantOperation(ProtocolWaveletOperation.Builder newOperation,
+ ProtocolWaveletOperation operation, String domain,
+ Set<ParticipantId> participants) throws InvalidParticipantAddress {
+ ParticipantId participant = makeParticipantId(operation.getAddParticipant(), domain);
+ if (!participants.contains(participant)) {
+ newOperation.setAddParticipant(participant.getAddress());
+ participants.add(participant);
+ } else {
+ newOperation.setNoOp(true);
+ }
+ }
+
+ /**
+ * Convert removal participant operation.
+ * Skip operation if nothing to remove.
+ */
+ private static void initRemoveParticipantOperation(ProtocolWaveletOperation.Builder newOperation,
+ ProtocolWaveletOperation operation, String domain,
+ Set<ParticipantId> participants) throws InvalidParticipantAddress {
+ ParticipantId participant = makeParticipantId(operation.getRemoveParticipant(), domain);
+ if (participants.contains(participant)) {
+ newOperation.setRemoveParticipant(participant.getAddress());
+ participants.remove(participant);
+ } else {
+ newOperation.setNoOp(true);
+ }
+ }
+
+ /**
+ * Make WIAB participant Id
+ *
+ * @param participant in GWave
+ * @param domain of WIAB server
+ */
+ private static ParticipantId makeParticipantId(String participant, String domain)
+ throws InvalidParticipantAddress {
+ int index = participant.indexOf('@');
+ if (index != -1) {
+ if (participant.substring(0, index).equals(GWAVE_PUBLIC_USER_NAME)
+ && participant.substring(index + 1).equals(GWAVE_PUBLIC_DOMAIN)) {
+ participant = WIAB_SHARED_USER_NAME + "@" + domain;
+ } else {
+ participant = map(participant.substring(0, index)) + "@" + domain;
+ }
+ } else {
+ participant = map(participant);
+ }
+ return ParticipantId.of(participant);
+ }
+
+ private static String map(String participant) {
+ String newUser = userMap.get(participant);
+ return newUser == null? participant: newUser;
+ }
+
+ private static String readToString(Reader reader) throws FileNotFoundException, IOException {
+ StringBuilder sb = new StringBuilder();
+ char buf[] = new char[1000];
+ for (;;) {
+ int ret = reader.read(buf, 0, buf.length);
+ if (ret == -1) {
+ break;
+ }
+ sb.append(buf, 0, ret);
+ }
+ return sb.toString();
+ }
+}
Modified: trunk/src/main/resources/kune-production.properties
===================================================================
--- trunk/src/main/resources/kune-production.properties 2012-04-26 01:26:03 UTC (rev 1860)
+++ trunk/src/main/resources/kune-production.properties 2012-05-01 13:48:27 UTC (rev 1861)
@@ -117,6 +117,9 @@
# The default language in with the /tutorials/ are shown if the user language is not translated
kune.tutorial.defaultlang = en
+# This is used to change a username to another similar (for instance during the import). Pairs separed by commas, a pair separed by a pipe.
+kune.wave.import.usernamespairs = someuser|some_user
+
### Workspace enabled themes
# This names are also the name of the items in the theme menu and there are translated
Modified: trunk/src/main/resources/kune.properties
===================================================================
--- trunk/src/main/resources/kune.properties 2012-04-26 01:26:03 UTC (rev 1860)
+++ trunk/src/main/resources/kune.properties 2012-05-01 13:48:27 UTC (rev 1861)
@@ -55,7 +55,6 @@
kune.openfire.db.user = kune
kune.openfire.db.password = db4kune
-
### Licenses
kune.default.license = by-sa-v3.0
@@ -118,6 +117,9 @@
# The default language in with the /tutorials/ are shown if the user language is not translated
kune.tutorial.defaultlang = en
+# This is used to change a username to another similar (for instance during the import). Pairs separed by commas, a pair separed by a pipe.
+kune.wave.import.usernamespairs = someuser|some_user
+
### Workspace enabled themes
# This names are also the name of the items in the theme menu and there are translated
Modified: trunk/src/main/resources/wave-server.properties
===================================================================
--- trunk/src/main/resources/wave-server.properties 2012-04-26 01:26:03 UTC (rev 1860)
+++ trunk/src/main/resources/wave-server.properties 2012-05-01 13:48:27 UTC (rev 1861)
@@ -114,4 +114,4 @@
ssl_keystore_password = fafafa
# Enable import of waves via /import URL. Default value: false
-enable_import = false
+enable_import = true
Modified: trunk/src/test/java/cc/kune/selenium/KuneSeleniumTest.java
===================================================================
--- trunk/src/test/java/cc/kune/selenium/KuneSeleniumTest.java 2012-04-26 01:26:03 UTC (rev 1860)
+++ trunk/src/test/java/cc/kune/selenium/KuneSeleniumTest.java 2012-05-01 13:48:27 UTC (rev 1861)
@@ -94,29 +94,19 @@
// FIXME move content?
groupSpace.showTutorial(3, 4, 5, 4, 4, 2, -5, 3, 6, 7, 6, 4, 4, 5, 5, 3, 3, 4, 6, 4, 3);
- // blogs
- groupSpace.blogTool.click();
- showTooltip(groupSpace.blogTool);
- sleep(3000);
- groupSpace.showTutorial(3, 4, 3, 3, 6, 5, 5, 3, 3);
- // groupSpace.openFirtsContent();
- // sleep(2000);
- // groupSpace.newContentBtn.click();
- // sleep(1000);
- // groupSpace.goParentBtn.click();
-
- // chats
- groupSpace.chatTool.click();
- showTooltip(groupSpace.chatTool);
- sleep(3000);
- groupSpace.showTutorial(3, 6, 6, 4, 7, 3, 3);
- // groupSpace.openFirtsContent();
- // sleep(2000);
- // groupSpace.openRoomBtn.click();
- // sleep(2000);
- // chat.chatIcon.click();
-
- // lists
+ // // blogs
+ // groupSpace.blogTool.click();
+ // showTooltip(groupSpace.blogTool);
+ // sleep(3000);
+ // groupSpace.showTutorial(3, 4, 3, 3, 6, 5, 5, 3, 3);
+ //
+ // // chats
+ // groupSpace.chatTool.click();
+ // showTooltip(groupSpace.chatTool);
+ // sleep(3000);
+ // groupSpace.showTutorial(3, 6, 6, 4, 7, 3, 3);
+
+ // lists
groupSpace.listTool.click();
showTooltip(groupSpace.listTool);
sleep(2000);
@@ -152,28 +142,19 @@
sleep(2000);
doScreenshot("calendar");
groupSpace.showTutorial(3, 5, 6, 7, 3, 5, 3, 3, 3);
- // groupSpace.openFirtsContent();
- // sleep(2000);
- // tasks
- groupSpace.taskTool.click();
- showTooltip(groupSpace.taskTool);
- sleep(2000);
- groupSpace.showTutorial(3, 3, 3, 3, 3, 3, 3, 4, 3, 4, 3, 3);
- // groupSpace.openFirtsContent();
+ // // tasks
+ // groupSpace.taskTool.click();
+ // showTooltip(groupSpace.taskTool);
// sleep(2000);
- // doScreenshot("tasks");
- // groupSpace.openFirtsContent();
+ // groupSpace.showTutorial(3, 3, 3, 3, 3, 3, 3, 4, 3, 4, 3, 3);
+ //
+ // // wiki
+ // groupSpace.wikiTool.click();
+ // showTooltip(groupSpace.wikiTool);
// sleep(2000);
+ // groupSpace.showTutorial(3, 5, 3, 3, 3);
- // wiki
- groupSpace.wikiTool.click();
- showTooltip(groupSpace.wikiTool);
- sleep(2000);
- groupSpace.showTutorial(3, 5, 3, 3, 3);
- // groupSpace.openFirtsContent();
- // sleep(3000);
-
// // barters
// groupSpace.showTutorial(3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3);
}
Modified: trunk/src/test/java/cc/kune/selenium/SeleniumConf.java
===================================================================
--- trunk/src/test/java/cc/kune/selenium/SeleniumConf.java 2012-04-26 01:26:03 UTC (rev 1860)
+++ trunk/src/test/java/cc/kune/selenium/SeleniumConf.java 2012-05-01 13:48:27 UTC (rev 1861)
@@ -30,8 +30,8 @@
}
public enum Site {
- demo("kune.beta.iepala.es"), eurosur("beta.eurosur.org"), kunecc("kune.cc"), localhost(
- "localhost:8888", "&log_level=INFO&gwt.codesvr=127.0.0.1:9997");
+ demo("kune.beta.iepala.es"), kunecc("kune.cc"), localhost("localhost:8888",
+ "&log_level=INFO&gwt.codesvr=127.0.0.1:9997"), socialglobal("social.gloobal.net");
private String domain;
private String params;
@@ -56,8 +56,8 @@
public static final Driver DRIVER = Driver.firefox;
/* Configure this for use other lang, site, or driver */
- public static final Lang LANG = Lang.en;
- public static final Site SITE = Site.demo;
+ public static final Lang LANG = Lang.es;
+ public static final Site SITE = Site.socialglobal;
public static final int TIMEOUT = 25;
SeleniumConf() {
More information about the kune-commits
mailing list