You can subscribe to this list here.
2007 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
(10) |
Jul
(24) |
Aug
(93) |
Sep
(261) |
Oct
(257) |
Nov
(218) |
Dec
(95) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2008 |
Jan
(184) |
Feb
(87) |
Mar
(155) |
Apr
(398) |
May
(201) |
Jun
(35) |
Jul
(68) |
Aug
(92) |
Sep
(52) |
Oct
(111) |
Nov
(135) |
Dec
(116) |
2009 |
Jan
(225) |
Feb
(204) |
Mar
(113) |
Apr
(137) |
May
(220) |
Jun
(199) |
Jul
(196) |
Aug
(98) |
Sep
(100) |
Oct
(179) |
Nov
(164) |
Dec
(72) |
2010 |
Jan
(59) |
Feb
(61) |
Mar
(64) |
Apr
(159) |
May
(107) |
Jun
(252) |
Jul
(180) |
Aug
(96) |
Sep
(82) |
Oct
(58) |
Nov
(43) |
Dec
(53) |
2011 |
Jan
(39) |
Feb
(18) |
Mar
(33) |
Apr
(66) |
May
(48) |
Jun
(124) |
Jul
(112) |
Aug
(62) |
Sep
(45) |
Oct
(102) |
Nov
(47) |
Dec
(37) |
2012 |
Jan
(22) |
Feb
(18) |
Mar
(1) |
Apr
(5) |
May
(18) |
Jun
(13) |
Jul
(9) |
Aug
(38) |
Sep
(3) |
Oct
(7) |
Nov
(24) |
Dec
(6) |
2013 |
Jan
(1) |
Feb
(14) |
Mar
(1) |
Apr
(2) |
May
(3) |
Jun
(4) |
Jul
(9) |
Aug
(4) |
Sep
(7) |
Oct
|
Nov
(1) |
Dec
(4) |
2014 |
Jan
(9) |
Feb
(2) |
Mar
|
Apr
|
May
(4) |
Jun
(2) |
Jul
|
Aug
|
Sep
(6) |
Oct
|
Nov
(1) |
Dec
|
2015 |
Jan
|
Feb
(1) |
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
(1) |
Oct
(1) |
Nov
|
Dec
|
2016 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(2) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: <oe...@us...> - 2014-01-20 15:42:48
|
Revision: 21879 http://sourceforge.net/p/qooxdoo-contrib/code/21879 Author: oetiker Date: 2014-01-20 15:42:45 +0000 (Mon, 20 Jan 2014) Log Message: ----------- make sure we can successuflly load several scripts one after the other Modified Paths: -------------- trunk/qooxdoo-contrib/QxJqPlot/trunk/source/class/qxjqplot/Plot.js Modified: trunk/qooxdoo-contrib/QxJqPlot/trunk/source/class/qxjqplot/Plot.js =================================================================== --- trunk/qooxdoo-contrib/QxJqPlot/trunk/source/class/qxjqplot/Plot.js 2014-01-03 14:25:38 UTC (rev 21878) +++ trunk/qooxdoo-contrib/QxJqPlot/trunk/source/class/qxjqplot/Plot.js 2014-01-20 15:42:45 UTC (rev 21879) @@ -152,11 +152,11 @@ sl.load(src, function(status){ if (status == 'success'){ // this.debug("Dynamically loaded "+src+": "+status); + qxjqplot.Plot.LOADED[script] = true; + qxjqplot.Plot.LOADING[script] = null; + this.fireDataEvent('scriptLoaded',script); this.__loadScriptArr(codeArr,handler); - qxjqplot.Plot.LOADED[script] = true; } - qxjqplot.Plot.LOADING[script] = null; - this.fireDataEvent('scriptLoaded',script); },this); } else { @@ -165,6 +165,7 @@ qxjqplot.Plot.LOADED[script] = true; qxjqplot.Plot.LOADING[script] = null; this.fireDataEvent('scriptLoaded',script); + this.__loadScriptArr(codeArr,handler); },this); req.open("GET", src); req.send(); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <oe...@us...> - 2014-01-03 14:25:41
|
Revision: 21878 http://sourceforge.net/p/qooxdoo-contrib/code/21878 Author: oetiker Date: 2014-01-03 14:25:38 +0000 (Fri, 03 Jan 2014) Log Message: ----------- verify qx 3.5 compatibility Modified Paths: -------------- trunk/qooxdoo-contrib/CanvasCell/trunk/Manifest.json trunk/qooxdoo-contrib/CanvasCell/trunk/config.json Modified: trunk/qooxdoo-contrib/CanvasCell/trunk/Manifest.json =================================================================== --- trunk/qooxdoo-contrib/CanvasCell/trunk/Manifest.json 2014-01-03 14:25:22 UTC (rev 21877) +++ trunk/qooxdoo-contrib/CanvasCell/trunk/Manifest.json 2014-01-03 14:25:38 UTC (rev 21878) @@ -18,7 +18,7 @@ ], "version" : "trunk", - "qooxdoo-versions": ["1.2","1.3","1.4","1.5","1.6","2.0"] + "qooxdoo-versions": ["1.2","1.3","1.4","1.5","1.6","2.0","3.0","3.5"] }, "provides" : Modified: trunk/qooxdoo-contrib/CanvasCell/trunk/config.json =================================================================== --- trunk/qooxdoo-contrib/CanvasCell/trunk/config.json 2014-01-03 14:25:22 UTC (rev 21877) +++ trunk/qooxdoo-contrib/CanvasCell/trunk/config.json 2014-01-03 14:25:38 UTC (rev 21878) @@ -29,7 +29,7 @@ { "APPLICATION" : "canvascell", "APPLICATION_MAIN_CLASS" : "${APPLICATION}.demo.Demo", - "QOOXDOO_PATH" : "../../qooxdoo/2.0", + "QOOXDOO_PATH" : "../../qooxdoo/3.5", //"QXTHEME" : "canvascell.theme.modern.Theme", "QXTHEME" : "qx.theme.Modern", "API_EXCLUDE" : ["qx.*", "canvascell.demo.*", "${APPLICATION}.theme.*", "${APPLICATION}.test.*"], This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <oe...@us...> - 2014-01-03 14:25:26
|
Revision: 21877 http://sourceforge.net/p/qooxdoo-contrib/code/21877 Author: oetiker Date: 2014-01-03 14:25:22 +0000 (Fri, 03 Jan 2014) Log Message: ----------- verify qx 3.5 compatibility Modified Paths: -------------- trunk/qooxdoo-contrib/CanvasCell/trunk/demo/default/Manifest.json trunk/qooxdoo-contrib/CanvasCell/trunk/demo/default/config.json Modified: trunk/qooxdoo-contrib/CanvasCell/trunk/demo/default/Manifest.json =================================================================== --- trunk/qooxdoo-contrib/CanvasCell/trunk/demo/default/Manifest.json 2014-01-03 14:18:30 UTC (rev 21876) +++ trunk/qooxdoo-contrib/CanvasCell/trunk/demo/default/Manifest.json 2014-01-03 14:25:22 UTC (rev 21877) @@ -18,7 +18,7 @@ ], "version" : "trunk", - "qooxdoo-versions": ["1.4","1.5","1.6","2.0"] + "qooxdoo-versions": ["1.4","1.5","1.6","2.0","3.0","3.5"] }, "provides" : Modified: trunk/qooxdoo-contrib/CanvasCell/trunk/demo/default/config.json =================================================================== --- trunk/qooxdoo-contrib/CanvasCell/trunk/demo/default/config.json 2014-01-03 14:18:30 UTC (rev 21876) +++ trunk/qooxdoo-contrib/CanvasCell/trunk/demo/default/config.json 2014-01-03 14:25:22 UTC (rev 21877) @@ -32,7 +32,7 @@ "let" : { "APPLICATION" : "canvascell.demo", - "QOOXDOO_PATH" : "../../../../qooxdoo/2.0", + "QOOXDOO_PATH" : "../../../../qooxdoo/3.5", "QXTHEME" : "canvascell.demo.theme.Theme", "API_EXCLUDE" : ["qx.*", "${APPLICATION}.theme.*", "${APPLICATION}.test.*"], "LOCALES" : [ "en" ], This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <oe...@us...> - 2014-01-03 14:18:34
|
Revision: 21876 http://sourceforge.net/p/qooxdoo-contrib/code/21876 Author: oetiker Date: 2014-01-03 14:18:30 +0000 (Fri, 03 Jan 2014) Log Message: ----------- added support for qx.bom.request.Script Modified Paths: -------------- trunk/qooxdoo-contrib/QxDyGraphs/trunk/Manifest.json trunk/qooxdoo-contrib/QxDyGraphs/trunk/config.json trunk/qooxdoo-contrib/QxDyGraphs/trunk/demo/default/Manifest.json trunk/qooxdoo-contrib/QxDyGraphs/trunk/demo/default/config.json trunk/qooxdoo-contrib/QxDyGraphs/trunk/source/class/qxdygraphs/Plot.js Modified: trunk/qooxdoo-contrib/QxDyGraphs/trunk/Manifest.json =================================================================== --- trunk/qooxdoo-contrib/QxDyGraphs/trunk/Manifest.json 2013-12-26 17:25:09 UTC (rev 21875) +++ trunk/qooxdoo-contrib/QxDyGraphs/trunk/Manifest.json 2014-01-03 14:18:30 UTC (rev 21876) @@ -13,12 +13,12 @@ [ { "name" : "Tobi Oetiker (oetiker)", - "email" : "to...@oe..." + "email" : "to...@oe..." } ], "version" : "trunk", - "qooxdoo-versions": ["1.5","1.6","2.0"] + "qooxdoo-versions": ["1.5","1.6","2.0","3.0","3.5"] }, "provides" : Modified: trunk/qooxdoo-contrib/QxDyGraphs/trunk/config.json =================================================================== --- trunk/qooxdoo-contrib/QxDyGraphs/trunk/config.json 2013-12-26 17:25:09 UTC (rev 21875) +++ trunk/qooxdoo-contrib/QxDyGraphs/trunk/config.json 2014-01-03 14:18:30 UTC (rev 21876) @@ -29,7 +29,7 @@ { "APPLICATION" : "qxdygraphs", "APPLICATION_MAIN_CLASS" : "${APPLICATION}.demo.Demo", - "QOOXDOO_PATH" : "../../qooxdoo/2.0", + "QOOXDOO_PATH" : "../../qooxdoo/3.5", //"QXTHEME" : "qxdygraphs.theme.modern.Theme", "QXTHEME" : "qx.theme.Modern", "API_EXCLUDE" : ["qx.test.*", "qxdygraphs.demo.*", "${APPLICATION}.theme.*", "${APPLICATION}.test.*"], Modified: trunk/qooxdoo-contrib/QxDyGraphs/trunk/demo/default/Manifest.json =================================================================== --- trunk/qooxdoo-contrib/QxDyGraphs/trunk/demo/default/Manifest.json 2013-12-26 17:25:09 UTC (rev 21875) +++ trunk/qooxdoo-contrib/QxDyGraphs/trunk/demo/default/Manifest.json 2014-01-03 14:18:30 UTC (rev 21876) @@ -18,7 +18,7 @@ ], "version" : "trunk", - "qooxdoo-versions": ["1.5","1.6","2.0"] + "qooxdoo-versions": ["1.5","1.6","2.0","3.0","3.5"] }, "provides" : Modified: trunk/qooxdoo-contrib/QxDyGraphs/trunk/demo/default/config.json =================================================================== --- trunk/qooxdoo-contrib/QxDyGraphs/trunk/demo/default/config.json 2013-12-26 17:25:09 UTC (rev 21875) +++ trunk/qooxdoo-contrib/QxDyGraphs/trunk/demo/default/config.json 2014-01-03 14:18:30 UTC (rev 21876) @@ -32,7 +32,7 @@ "let" : { "APPLICATION" : "qxdygraphs.demo", - "QOOXDOO_PATH" : "../../../../qooxdoo/2.0", + "QOOXDOO_PATH" : "../../../../qooxdoo/3.5", "QXTHEME" : "qx.theme.Modern", "API_EXCLUDE" : ["qx.test.*", "${APPLICATION}.theme.*", "${APPLICATION}.test.*"], "LOCALES" : [ "en" ], Modified: trunk/qooxdoo-contrib/QxDyGraphs/trunk/source/class/qxdygraphs/Plot.js =================================================================== --- trunk/qooxdoo-contrib/QxDyGraphs/trunk/source/class/qxdygraphs/Plot.js 2013-12-26 17:25:09 UTC (rev 21875) +++ trunk/qooxdoo-contrib/QxDyGraphs/trunk/source/class/qxdygraphs/Plot.js 2014-01-03 14:18:30 UTC (rev 21876) @@ -124,17 +124,29 @@ } else { qxdygraphs.Plot.LOADING[script] = this; - var sl = new qx.io.ScriptLoader(); var src = qx.util.ResourceManager.getInstance().toUri("dygraphs/"+script); - sl.load(src, function(status){ - if (status == 'success'){ - // this.debug("Dynamically loaded "+src+": "+status); - this.__loadScriptArr(codeArr,handler); + if (qx.io.ScriptLoader){ + var sl = new qx.io.ScriptLoader(); + sl.load(src, function(status){ + if (status == 'success'){ + // this.debug("Dynamically loaded "+src+": "+status); + this.__loadScriptArr(codeArr,handler); + qxdygraphs.Plot.LOADED[script] = true; + } + qxdygraphs.Plot.LOADING[script] = null; + this.fireDataEvent('scriptLoaded',script); + },this); + } + else { + var req = new qx.bom.request.Script(); + req.on('load',function() { qxdygraphs.Plot.LOADED[script] = true; - } - qxdygraphs.Plot.LOADING[script] = null; - this.fireDataEvent('scriptLoaded',script); - },this); + qxdygraphs.Plot.LOADING[script] = null; + this.fireDataEvent('scriptLoaded',script); + },this); + req.open("GET", src); + req.send(); + } } } else { handler(); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <oe...@us...> - 2013-12-26 17:25:12
|
Revision: 21875 http://sourceforge.net/p/qooxdoo-contrib/code/21875 Author: oetiker Date: 2013-12-26 17:25:09 +0000 (Thu, 26 Dec 2013) Log Message: ----------- fixed qx path for 3.5 Modified Paths: -------------- trunk/qooxdoo-contrib/QxJqPlot/trunk/demo/default/config.json Modified: trunk/qooxdoo-contrib/QxJqPlot/trunk/demo/default/config.json =================================================================== --- trunk/qooxdoo-contrib/QxJqPlot/trunk/demo/default/config.json 2013-12-26 17:24:23 UTC (rev 21874) +++ trunk/qooxdoo-contrib/QxJqPlot/trunk/demo/default/config.json 2013-12-26 17:25:09 UTC (rev 21875) @@ -31,7 +31,7 @@ "let" : { "APPLICATION" : "qxjqplot.demo", - "QOOXDOO_PATH" : "../../../../qooxdoo/3.0", + "QOOXDOO_PATH" : "../../../../qooxdoo/3.5", "API_EXCLUDE" : ["qx.test.*", "${APPLICATION}.theme.*", "${APPLICATION}.test.*"], "LOCALES" : [ "en" ], "CACHE" : "${TMPDIR}/qooxoo-cache", This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <oe...@us...> - 2013-12-26 17:24:28
|
Revision: 21874 http://sourceforge.net/p/qooxdoo-contrib/code/21874 Author: oetiker Date: 2013-12-26 17:24:23 +0000 (Thu, 26 Dec 2013) Log Message: ----------- added support for qx.bom.request.Script in the absence of qx.io.ScriptLoader Modified Paths: -------------- trunk/qooxdoo-contrib/QxJqPlot/trunk/Manifest.json trunk/qooxdoo-contrib/QxJqPlot/trunk/config.json trunk/qooxdoo-contrib/QxJqPlot/trunk/demo/default/Manifest.json trunk/qooxdoo-contrib/QxJqPlot/trunk/source/class/qxjqplot/Plot.js Modified: trunk/qooxdoo-contrib/QxJqPlot/trunk/Manifest.json =================================================================== --- trunk/qooxdoo-contrib/QxJqPlot/trunk/Manifest.json 2013-12-26 17:09:55 UTC (rev 21873) +++ trunk/qooxdoo-contrib/QxJqPlot/trunk/Manifest.json 2013-12-26 17:24:23 UTC (rev 21874) @@ -18,7 +18,7 @@ ], "version" : "trunk", - "qooxdoo-versions": ["1.4","1.5","1.6","2.0","3.0"] + "qooxdoo-versions": ["1.4","1.5","1.6","2.0","3.0","3.5"] }, "provides" : Modified: trunk/qooxdoo-contrib/QxJqPlot/trunk/config.json =================================================================== --- trunk/qooxdoo-contrib/QxJqPlot/trunk/config.json 2013-12-26 17:09:55 UTC (rev 21873) +++ trunk/qooxdoo-contrib/QxJqPlot/trunk/config.json 2013-12-26 17:24:23 UTC (rev 21874) @@ -28,7 +28,7 @@ { "APPLICATION" : "qxjqplot", "APPLICATION_MAIN_CLASS" : "${APPLICATION}.demo.Demo", - "QOOXDOO_PATH" : "../../qooxdoo/3.0", + "QOOXDOO_PATH" : "../../qooxdoo/3.5", "QXTHEME" : "qx.theme.Modern", "API_EXCLUDE" : ["qx.test.*", "qxjqplot.demo.*", "${APPLICATION}.theme.*", "${APPLICATION}.test.*"], "LOCALES" : [ "en" ], Modified: trunk/qooxdoo-contrib/QxJqPlot/trunk/demo/default/Manifest.json =================================================================== --- trunk/qooxdoo-contrib/QxJqPlot/trunk/demo/default/Manifest.json 2013-12-26 17:09:55 UTC (rev 21873) +++ trunk/qooxdoo-contrib/QxJqPlot/trunk/demo/default/Manifest.json 2013-12-26 17:24:23 UTC (rev 21874) @@ -18,7 +18,7 @@ ], "version" : "trunk", - "qooxdoo-versions": ["1.4","1.5","1.6","2.0","3.0"] + "qooxdoo-versions": ["1.4","1.5","1.6","2.0","3.0","3.5"] }, "provides" : Modified: trunk/qooxdoo-contrib/QxJqPlot/trunk/source/class/qxjqplot/Plot.js =================================================================== --- trunk/qooxdoo-contrib/QxJqPlot/trunk/source/class/qxjqplot/Plot.js 2013-12-26 17:09:55 UTC (rev 21873) +++ trunk/qooxdoo-contrib/QxJqPlot/trunk/source/class/qxjqplot/Plot.js 2013-12-26 17:24:23 UTC (rev 21874) @@ -146,17 +146,29 @@ } else { qxjqplot.Plot.LOADING[script] = this; - var sl = new qx.io.ScriptLoader(); var src = qx.util.ResourceManager.getInstance().toUri("jqPlot/"+script); - sl.load(src, function(status){ - if (status == 'success'){ - // this.debug("Dynamically loaded "+src+": "+status); - this.__loadScriptArr(codeArr,handler); + if (qx.io.ScriptLoader){ + var sl = new qx.io.ScriptLoader(); + sl.load(src, function(status){ + if (status == 'success'){ + // this.debug("Dynamically loaded "+src+": "+status); + this.__loadScriptArr(codeArr,handler); + qxjqplot.Plot.LOADED[script] = true; + } + qxjqplot.Plot.LOADING[script] = null; + this.fireDataEvent('scriptLoaded',script); + },this); + } + else { + var req = new qx.bom.request.Script(); + req.on('load',function() { qxjqplot.Plot.LOADED[script] = true; - } - qxjqplot.Plot.LOADING[script] = null; - this.fireDataEvent('scriptLoaded',script); - },this); + qxjqplot.Plot.LOADING[script] = null; + this.fireDataEvent('scriptLoaded',script); + },this); + req.open("GET", src); + req.send(); + } } } else { handler(); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <oe...@us...> - 2013-12-26 17:10:02
|
Revision: 21873 http://sourceforge.net/p/qooxdoo-contrib/code/21873 Author: oetiker Date: 2013-12-26 17:09:55 +0000 (Thu, 26 Dec 2013) Log Message: ----------- for trunk before adding new stuff Added Paths: ----------- trunk/qooxdoo-contrib/QxJqPlot/0.3/ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <th...@us...> - 2013-12-16 13:02:13
|
Revision: 21872 http://sourceforge.net/p/qooxdoo-contrib/code/21872 Author: thron7 Date: 2013-12-16 13:02:10 +0000 (Mon, 16 Dec 2013) Log Message: ----------- changed to unix line endings Modified Paths: -------------- trunk/qooxdoo-contrib/Translation/README.txt Modified: trunk/qooxdoo-contrib/Translation/README.txt =================================================================== --- trunk/qooxdoo-contrib/Translation/README.txt 2013-11-28 13:51:02 UTC (rev 21871) +++ trunk/qooxdoo-contrib/Translation/README.txt 2013-12-16 13:02:10 UTC (rev 21872) @@ -1,10 +1,10 @@ -===== Translation ===== - -This project provides an infrastructure for volunteers to translate the -language-specific parts of qooxdoo. This includes texts in the framework as -well as in some applications (e.g. feedreader, showcase, etc.). - -For more info please see: -http://qooxdoo.org/contrib/project/translation - -Thanks a lot for your support! +===== Translation ===== + +This project provides an infrastructure for volunteers to translate the +language-specific parts of qooxdoo. This includes texts in the framework as +well as in some applications (e.g. feedreader, showcase, etc.). + +For more info please see: +http://qooxdoo.org/contrib/project/translation + +Thanks a lot for your support! This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <th...@us...> - 2013-11-28 13:51:05
|
Revision: 21871 http://sourceforge.net/p/qooxdoo-contrib/code/21871 Author: thron7 Date: 2013-11-28 13:51:02 +0000 (Thu, 28 Nov 2013) Log Message: ----------- add files for version 3.2 Added Paths: ----------- trunk/qooxdoo-contrib/Translation/3.2/ trunk/qooxdoo-contrib/Translation/3.2/feedreader/ trunk/qooxdoo-contrib/Translation/3.2/feedreader/cs.po trunk/qooxdoo-contrib/Translation/3.2/feedreader/de.po trunk/qooxdoo-contrib/Translation/3.2/feedreader/en.po trunk/qooxdoo-contrib/Translation/3.2/feedreader/es.po trunk/qooxdoo-contrib/Translation/3.2/feedreader/fr.po trunk/qooxdoo-contrib/Translation/3.2/feedreader/it.po trunk/qooxdoo-contrib/Translation/3.2/feedreader/nl.po trunk/qooxdoo-contrib/Translation/3.2/feedreader/ro.po trunk/qooxdoo-contrib/Translation/3.2/feedreader/sv.po trunk/qooxdoo-contrib/Translation/3.2/framework/ trunk/qooxdoo-contrib/Translation/3.2/framework/cs.po trunk/qooxdoo-contrib/Translation/3.2/framework/de.po trunk/qooxdoo-contrib/Translation/3.2/framework/en.po trunk/qooxdoo-contrib/Translation/3.2/framework/es.po trunk/qooxdoo-contrib/Translation/3.2/framework/fr.po trunk/qooxdoo-contrib/Translation/3.2/framework/it.po trunk/qooxdoo-contrib/Translation/3.2/framework/nb.po trunk/qooxdoo-contrib/Translation/3.2/framework/nl.po trunk/qooxdoo-contrib/Translation/3.2/framework/pl.po trunk/qooxdoo-contrib/Translation/3.2/framework/pt.po trunk/qooxdoo-contrib/Translation/3.2/framework/ro.po trunk/qooxdoo-contrib/Translation/3.2/framework/sl.po trunk/qooxdoo-contrib/Translation/3.2/framework/sv.po trunk/qooxdoo-contrib/Translation/3.2/playground/ trunk/qooxdoo-contrib/Translation/3.2/playground/cs.po trunk/qooxdoo-contrib/Translation/3.2/playground/de.po trunk/qooxdoo-contrib/Translation/3.2/playground/en.po trunk/qooxdoo-contrib/Translation/3.2/playground/ro.po trunk/qooxdoo-contrib/Translation/3.2/playground/sv.po trunk/qooxdoo-contrib/Translation/3.2/showcase/ trunk/qooxdoo-contrib/Translation/3.2/showcase/cs.po trunk/qooxdoo-contrib/Translation/3.2/showcase/de.po trunk/qooxdoo-contrib/Translation/3.2/showcase/de_AT.po trunk/qooxdoo-contrib/Translation/3.2/showcase/de_DE.po trunk/qooxdoo-contrib/Translation/3.2/showcase/en.po trunk/qooxdoo-contrib/Translation/3.2/showcase/en_GB.po trunk/qooxdoo-contrib/Translation/3.2/showcase/en_US.po trunk/qooxdoo-contrib/Translation/3.2/showcase/es.po trunk/qooxdoo-contrib/Translation/3.2/showcase/es_ES.po trunk/qooxdoo-contrib/Translation/3.2/showcase/es_MX.po trunk/qooxdoo-contrib/Translation/3.2/showcase/pt.po trunk/qooxdoo-contrib/Translation/3.2/showcase/ro.po trunk/qooxdoo-contrib/Translation/3.2/showcase/ro_RO.po trunk/qooxdoo-contrib/Translation/3.2/showcase/sv.po trunk/qooxdoo-contrib/Translation/3.2/showcase/sv_SE.po Added: trunk/qooxdoo-contrib/Translation/3.2/feedreader/cs.po =================================================================== --- trunk/qooxdoo-contrib/Translation/3.2/feedreader/cs.po (rev 0) +++ trunk/qooxdoo-contrib/Translation/3.2/feedreader/cs.po 2013-11-28 13:51:02 UTC (rev 21871) @@ -0,0 +1,78 @@ +# Czech +# +msgid "" +msgstr "" +"Project-Id-Version: qooxdoo feedreader\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2008-05-07 07:59+0200\n" +"PO-Revision-Date: 2012-08-27 08:22+0100\n" +"Last-Translator: Lukáš Slánský <lu...@sl...>\n" +"Language-Team: Lukáš Slánský <lu...@sl...>\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: Czech\n" +"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n" + +msgid "Add" +msgstr "Přidat" + +msgid "Add a feed" +msgstr "Přidat zdroj" + +msgid "Add feed" +msgstr "Přidat zdroj" + +msgid "Back" +msgstr "Zpět" + +msgid "Cancel" +msgstr "Storno" + +msgid "Feed Information" +msgstr "Informace o zdroji" + +msgid "FeedReader (qooxdoo powered)" +msgstr "FeedReader (běží na qooxdoo)" + +msgid "Help" +msgstr "Nápověda" + +msgid "Language" +msgstr "Jazyk" + +msgid "OK" +msgstr "OK" + +msgid "Open preferences window." +msgstr "Otevřít okno nastavení." + +msgid "Posts" +msgstr "Příspěvky" + +msgid "Preferences" +msgstr "Nastavení" + +msgid "Reload" +msgstr "Obnovit" + +msgid "Reload the feeds. (%1)" +msgstr "Obnovit zdroje. (%1)" + +msgid "Remove feed" +msgstr "Odstranit zdroj" + +msgid "Static Feeds" +msgstr "Statické zdroje" + +msgid "Theme" +msgstr "" + +msgid "Title" +msgstr "Název" + +msgid "URL" +msgstr "URL" + +msgid "User Feeds" +msgstr "Uživatelské zdroje" Added: trunk/qooxdoo-contrib/Translation/3.2/feedreader/de.po =================================================================== --- trunk/qooxdoo-contrib/Translation/3.2/feedreader/de.po (rev 0) +++ trunk/qooxdoo-contrib/Translation/3.2/feedreader/de.po 2013-11-28 13:51:02 UTC (rev 21871) @@ -0,0 +1,76 @@ +# German +# +msgid "" +msgstr "" +"Project-Id-Version: qooxdoo feedreader\n" +"PO-Revision-Date: 2008-06-23 16:26+0200\n" +"Last-Translator: Thomas Herchenroeder <thron7 AT users DOT sourceforge DOT net>\n" +"Language-Team: none\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Generator: KBabel 1.11.4\n" + +msgid "Add" +msgstr "Hinzufügen" + +msgid "Add a feed" +msgstr "Feed hinzufügen" + +msgid "Add feed" +msgstr "Feed hinzufügen" + +msgid "Back" +msgstr "" + +msgid "Cancel" +msgstr "Abbrechen" + +msgid "Feed Information" +msgstr "Feed Information" + +msgid "FeedReader (qooxdoo powered)" +msgstr "FeedReader (qooxdoo powered)" + +msgid "Help" +msgstr "Hilfe" + +msgid "Language" +msgstr "Sprache" + +msgid "OK" +msgstr "OK" + +msgid "Open preferences window." +msgstr "Einstellungsfenster öffnen" + +msgid "Posts" +msgstr "Nachrichten" + +msgid "Preferences" +msgstr "Einstellungen" + +msgid "Reload" +msgstr "Neu laden" + +msgid "Reload the feeds. (%1)" +msgstr "Feeds neu laden. (%1)" + +msgid "Remove feed" +msgstr "Feed löschen" + +msgid "Static Feeds" +msgstr "Vordefinierte Quellen" + +msgid "Theme" +msgstr "" + +msgid "Title" +msgstr "Titel" + +msgid "URL" +msgstr "URL" + +msgid "User Feeds" +msgstr "Eigene Quellen" Added: trunk/qooxdoo-contrib/Translation/3.2/feedreader/en.po =================================================================== --- trunk/qooxdoo-contrib/Translation/3.2/feedreader/en.po (rev 0) +++ trunk/qooxdoo-contrib/Translation/3.2/feedreader/en.po 2013-11-28 13:51:02 UTC (rev 21871) @@ -0,0 +1,77 @@ +# English +# +msgid "" +msgstr "" +"Project-Id-Version: qooxdoo feedreader\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2008-05-07 07:59+0200\n" +"PO-Revision-Date: 2006-12-21 10:17+0100\n" +"Last-Translator: Automatically generated\n" +"Language-Team: none\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=ASCII\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +msgid "Add" +msgstr "" + +msgid "Add a feed" +msgstr "" + +msgid "Add feed" +msgstr "" + +msgid "Back" +msgstr "" + +msgid "Cancel" +msgstr "" + +msgid "Feed Information" +msgstr "" + +msgid "FeedReader (qooxdoo powered)" +msgstr "" + +msgid "Help" +msgstr "" + +msgid "Language" +msgstr "" + +msgid "OK" +msgstr "" + +msgid "Open preferences window." +msgstr "" + +msgid "Posts" +msgstr "" + +msgid "Preferences" +msgstr "" + +msgid "Reload" +msgstr "" + +msgid "Reload the feeds. (%1)" +msgstr "" + +msgid "Remove feed" +msgstr "" + +msgid "Static Feeds" +msgstr "" + +msgid "Theme" +msgstr "" + +msgid "Title" +msgstr "" + +msgid "URL" +msgstr "" + +msgid "User Feeds" +msgstr "" Added: trunk/qooxdoo-contrib/Translation/3.2/feedreader/es.po =================================================================== --- trunk/qooxdoo-contrib/Translation/3.2/feedreader/es.po (rev 0) +++ trunk/qooxdoo-contrib/Translation/3.2/feedreader/es.po 2013-11-28 13:51:02 UTC (rev 21871) @@ -0,0 +1,78 @@ +# Spanish +# +msgid "" +msgstr "" +"Project-Id-Version: qooxdoo feedreader\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2008-05-07 07:59+0200\n" +"PO-Revision-Date: 2008-08-25 19:54-0500\n" +"Last-Translator: Camilo Aguilar <camilo DOT aguila AT gmail DOT com>\n" +"Language-Team: none\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Poedit-Country: COLOMBIA\n" +"X-Poedit-Language: Spanish\n" + +msgid "Add" +msgstr "Agregar" + +msgid "Add a feed" +msgstr "Agregar Feed" + +msgid "Add feed" +msgstr "Agregar feed" + +msgid "Back" +msgstr "" + +msgid "Cancel" +msgstr "Cancelar" + +msgid "Feed Information" +msgstr "Información del Feed" + +msgid "FeedReader (qooxdoo powered)" +msgstr "FeedReader (qooxdoo powered)" + +msgid "Help" +msgstr "Ayuda" + +msgid "Language" +msgstr "Lenguaje" + +msgid "OK" +msgstr "OK" + +msgid "Open preferences window." +msgstr "Abre la ventana de preferencias" + +msgid "Posts" +msgstr "Posts" + +msgid "Preferences" +msgstr "Preferencias" + +msgid "Reload" +msgstr "Actualizar" + +msgid "Reload the feeds. (%1)" +msgstr "Recargar los feeds (%1)" + +msgid "Remove feed" +msgstr "Eliminar feed" + +msgid "Static Feeds" +msgstr "Feeds Estáticos" + +msgid "Theme" +msgstr "" + +msgid "Title" +msgstr "Título" + +msgid "URL" +msgstr "URL" + +msgid "User Feeds" +msgstr "Feeds del Usuario" Added: trunk/qooxdoo-contrib/Translation/3.2/feedreader/fr.po =================================================================== --- trunk/qooxdoo-contrib/Translation/3.2/feedreader/fr.po (rev 0) +++ trunk/qooxdoo-contrib/Translation/3.2/feedreader/fr.po 2013-11-28 13:51:02 UTC (rev 21871) @@ -0,0 +1,77 @@ +# French +# +msgid "" +msgstr "" +"Project-Id-Version: qooxdoo feedreader\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2007-11-09 22:22+0100\n" +"PO-Revision-Date: 2007-04-07 11:30+0200\n" +"Last-Translator: Daniel Gagnon <redalastor AT gmail DOT com>\n" +"Language-Team: none\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\n" + +msgid "Add" +msgstr "Ajouter" + +msgid "Add a feed" +msgstr "Ajouter un fil" + +msgid "Add feed" +msgstr "Ajouter un fil" + +msgid "Back" +msgstr "" + +msgid "Cancel" +msgstr "Annuler" + +msgid "Feed Information" +msgstr "Information sur le fil" + +msgid "FeedReader (qooxdoo powered)" +msgstr "Agrégateur de fils de syndication (fait à l'aide de qooxdoo)" + +msgid "Help" +msgstr "Aide" + +msgid "Language" +msgstr "Langue" + +msgid "OK" +msgstr "OK" + +msgid "Open preferences window." +msgstr "Ouvrir la fenêtre de préférences" + +msgid "Posts" +msgstr "Messages" + +msgid "Preferences" +msgstr "Préférences" + +msgid "Reload" +msgstr "Rafraichir" + +msgid "Reload the feeds. (%1)" +msgstr "Rafraichir les fils. (%1)" + +msgid "Remove feed" +msgstr "Enlever un fil" + +msgid "Static Feeds" +msgstr "Fils statiques" + +msgid "Theme" +msgstr "" + +msgid "Title" +msgstr "Titre" + +msgid "URL" +msgstr "URL" + +msgid "User Feeds" +msgstr "Fils de l'utilisateur" Added: trunk/qooxdoo-contrib/Translation/3.2/feedreader/it.po =================================================================== --- trunk/qooxdoo-contrib/Translation/3.2/feedreader/it.po (rev 0) +++ trunk/qooxdoo-contrib/Translation/3.2/feedreader/it.po 2013-11-28 13:51:02 UTC (rev 21871) @@ -0,0 +1,78 @@ +# Italian +# +msgid "" +msgstr "" +"Project-Id-Version: qooxdoo feedreader\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2007-11-09 22:22+0100\n" +"PO-Revision-Date: 2008-08-26 18:49+0100\n" +"Last-Translator: Alessandro Sala <alessandro DOT sala AT mclink DOT net>\n" +"Language-Team: none\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Generator: KBabel 1.11.4\n" + +msgid "Add" +msgstr "Aggiungi" + +msgid "Add a feed" +msgstr "Aggiungi un feed" + +msgid "Add feed" +msgstr "Aggiungi un feed" + +msgid "Back" +msgstr "" + +msgid "Cancel" +msgstr "Annulla" + +msgid "Feed Information" +msgstr "Informazioni sul Feed" + +msgid "FeedReader (qooxdoo powered)" +msgstr "FeedReader (realizzato con qooxdoo)" + +msgid "Help" +msgstr "Aiuto" + +msgid "Language" +msgstr "Lingua" + +msgid "OK" +msgstr "OK" + +msgid "Open preferences window." +msgstr "Apri la finestra delle preferenze." + +msgid "Posts" +msgstr "Messaggi" + +msgid "Preferences" +msgstr "Preferenze" + +msgid "Reload" +msgstr "Ricarica" + +msgid "Reload the feeds. (%1)" +msgstr "Ricarica i feed. (%1)" + +msgid "Remove feed" +msgstr "Rimuovi il feed" + +msgid "Static Feeds" +msgstr "Feed statici" + +msgid "Theme" +msgstr "" + +msgid "Title" +msgstr "Titolo" + +msgid "URL" +msgstr "URL" + +msgid "User Feeds" +msgstr "Feed utente" Added: trunk/qooxdoo-contrib/Translation/3.2/feedreader/nl.po =================================================================== --- trunk/qooxdoo-contrib/Translation/3.2/feedreader/nl.po (rev 0) +++ trunk/qooxdoo-contrib/Translation/3.2/feedreader/nl.po 2013-11-28 13:51:02 UTC (rev 21871) @@ -0,0 +1,76 @@ +# Dutch +# +msgid "" +msgstr "" +"Project-Id-Version: qooxdoo feedreader\n" +"POT-Creation-Date: 2008-05-07 07:59+0200\n" +"PO-Revision-Date: 2009-12-11 23:51+0100\n" +"Last-Translator: Isaak Malik <isooik AT gmail DOT com>\n" +"Language-Team: none\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +msgid "Add" +msgstr "Toevoegen" + +msgid "Add a feed" +msgstr "Een feed toevoegen" + +msgid "Add feed" +msgstr "Feed toevoegen" + +msgid "Back" +msgstr "" + +msgid "Cancel" +msgstr "Annuleren" + +msgid "Feed Information" +msgstr "Feed Informatie" + +msgid "FeedReader (qooxdoo powered)" +msgstr "FeedReader (qooxdoo powered)" + +msgid "Help" +msgstr "Help" + +msgid "Language" +msgstr "Taal" + +msgid "OK" +msgstr "OK" + +msgid "Open preferences window." +msgstr "Open voorkeuren venster." + +msgid "Posts" +msgstr "Berichten" + +msgid "Preferences" +msgstr "Voorkeuren" + +msgid "Reload" +msgstr "Herladen" + +msgid "Reload the feeds. (%1)" +msgstr "Feeds herladen. (%1)" + +msgid "Remove feed" +msgstr "Feed verwijderen" + +msgid "Static Feeds" +msgstr "Statische Feeds" + +msgid "Theme" +msgstr "" + +msgid "Title" +msgstr "Titel" + +msgid "URL" +msgstr "URL" + +msgid "User Feeds" +msgstr "Gebruiker Feeds" Added: trunk/qooxdoo-contrib/Translation/3.2/feedreader/ro.po =================================================================== --- trunk/qooxdoo-contrib/Translation/3.2/feedreader/ro.po (rev 0) +++ trunk/qooxdoo-contrib/Translation/3.2/feedreader/ro.po 2013-11-28 13:51:02 UTC (rev 21871) @@ -0,0 +1,77 @@ +# Romanian +# +msgid "" +msgstr "" +"Project-Id-Version: qooxdoo feedreader\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2008-05-07 07:59+0200\n" +"PO-Revision-Date: 2010-11-08 15:35+0200\n" +"Last-Translator: Gabriel Munteanu <gabriel DOT munteanu AT 1and1 DOT ro>\n" +"Language-Team: none\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +msgid "Add" +msgstr "Adaugă" + +msgid "Add a feed" +msgstr "Adaugă un flux" + +msgid "Add feed" +msgstr "Adaugă flux" + +msgid "Back" +msgstr "" + +msgid "Cancel" +msgstr "Anulează" + +msgid "Feed Information" +msgstr "Informații despre flux" + +msgid "FeedReader (qooxdoo powered)" +msgstr "Cititor de Fluxuri (bazat pe qooxdoo)" + +msgid "Help" +msgstr "Ajutor" + +msgid "Language" +msgstr "Limbă" + +msgid "OK" +msgstr "OK" + +msgid "Open preferences window." +msgstr "Deschide fereastra de preferințe" + +msgid "Posts" +msgstr "Articole" + +msgid "Preferences" +msgstr "Preferințe" + +msgid "Reload" +msgstr "Reîncarcă" + +msgid "Reload the feeds. (%1)" +msgstr "Reîncarcă fluxurile. (%1)" + +msgid "Remove feed" +msgstr "Şterge flux" + +msgid "Static Feeds" +msgstr "Fluxuri statice" + +msgid "Theme" +msgstr "" + +msgid "Title" +msgstr "Titlu" + +msgid "URL" +msgstr "URL" + +msgid "User Feeds" +msgstr "Fluxuri utilizator" Added: trunk/qooxdoo-contrib/Translation/3.2/feedreader/sv.po =================================================================== --- trunk/qooxdoo-contrib/Translation/3.2/feedreader/sv.po (rev 0) +++ trunk/qooxdoo-contrib/Translation/3.2/feedreader/sv.po 2013-11-28 13:51:02 UTC (rev 21871) @@ -0,0 +1,77 @@ +# Swedish +# +msgid "" +msgstr "" +"Project-Id-Version: qooxdoo feedreader\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2007-11-09 22:22+0100\n" +"PO-Revision-Date: 2008-08-27 11:10+0100\n" +"Last-Translator: Henric Johansson <henric DOT johansson AT mindset DOT se>\n" +"Language-Team: none\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\n" + +msgid "Add" +msgstr "Lägg till" + +msgid "Add a feed" +msgstr "Lägg till ett flöde" + +msgid "Add feed" +msgstr "Lägg till flöde" + +msgid "Back" +msgstr "" + +msgid "Cancel" +msgstr "Avbryt" + +msgid "Feed Information" +msgstr "Flödesinformation" + +msgid "FeedReader (qooxdoo powered)" +msgstr "FeedReader (qooxdoo driven)" + +msgid "Help" +msgstr "Hjälp" + +msgid "Language" +msgstr "Språk" + +msgid "OK" +msgstr "OK" + +msgid "Open preferences window." +msgstr "Öppna inställningsfönstret" + +msgid "Posts" +msgstr "Poster" + +msgid "Preferences" +msgstr "Inställningar" + +msgid "Reload" +msgstr "Uppdatera" + +msgid "Reload the feeds. (%1)" +msgstr "Ladda om flödena. (%1)" + +msgid "Remove feed" +msgstr "Ta bort flöde" + +msgid "Static Feeds" +msgstr "Statiska flöden" + +msgid "Theme" +msgstr "" + +msgid "Title" +msgstr "Titel" + +msgid "URL" +msgstr "URL" + +msgid "User Feeds" +msgstr "Användarflöden" Added: trunk/qooxdoo-contrib/Translation/3.2/framework/cs.po =================================================================== --- trunk/qooxdoo-contrib/Translation/3.2/framework/cs.po (rev 0) +++ trunk/qooxdoo-contrib/Translation/3.2/framework/cs.po 2013-11-28 13:51:02 UTC (rev 21871) @@ -0,0 +1,293 @@ +# Czech +# +msgid "" +msgstr "" +"Project-Id-Version: qooxdoo framework\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2008-05-19 10:11+0200\n" +"PO-Revision-Date: 2012-08-27 09:23+0100\n" +"Last-Translator: Lukáš Slánský <lu...@sl...>\n" +"Language-Team: Lukáš Slánský <lu...@sl...>\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: Czech\n" +"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n" + +msgid "%1 does not fit %2." +msgstr "%1 neodpovídá %2." + +msgid "%1 is not a color! %2" +msgstr "%1 není barva! %2" + +msgid "%1 is not a number." +msgstr "%1 není číslo." + +msgid "%1 is not a string." +msgstr "%1 není řetězec." + +msgid "%1 is not an url." +msgstr "%1 není URL." + +msgid "%1 is not in %2" +msgstr "%1 není v %2" + +msgid "%1 is not in the range from [%2, %3]." +msgstr "%1 není v intervalu [%2, %3]." + +msgid "'%1' is not an email address." +msgstr "'%1' není e-mailová adresa." + +msgid "Automatic" +msgstr "Automaticky" + +msgid "Basic Colors" +msgstr "" + +msgid "Cancel" +msgstr "Storno" + +msgid "Color Selector" +msgstr "Výběr barvy" + +msgid "Details" +msgstr "Podrobnosti" + +msgid "HSB" +msgstr "HSB" + +msgid "Hex" +msgstr "Hex" + +msgid "Last month" +msgstr "Předchozí měsíc" + +msgid "Last year" +msgstr "Předchozí rok" + +msgid "Next month" +msgstr "Další měsíc" + +msgid "Next year" +msgstr "Další rok" + +msgid "OK" +msgstr "OK" + +msgid "Open ColorSelector" +msgstr "Otevřít Výběr barvy" + +msgid "Presets" +msgstr "Předvolby" + +msgid "Preview (Old/New)" +msgstr "Náhled (starý/nový)" + +msgid "RGB" +msgstr "RGB" + +msgid "Recent Colors" +msgstr "" + +msgid "Reset column widths" +msgstr "Obnovit šířky sloupců" + +msgid "This field is required" +msgstr "Toto pole je povinné" + +msgid "Visual" +msgstr "Vizuální" + +msgid "key_full_Alt" +msgstr "Alt" + +msgid "key_full_Apps" +msgstr "Kontextové menu" + +msgid "key_full_Backspace" +msgstr "Backspace" + +msgid "key_full_CapsLock" +msgstr "Caps Lock" + +msgid "key_full_Control" +msgstr "Ctrl" + +msgid "key_full_Control_Mac" +msgstr "Ctrl" + +msgid "key_full_Delete" +msgstr "Del" + +msgid "key_full_Down" +msgstr "Dolů" + +msgid "key_full_End" +msgstr "End" + +msgid "key_full_Enter" +msgstr "Enter" + +msgid "key_full_Escape" +msgstr "Esc" + +msgid "key_full_Home" +msgstr "Home" + +msgid "key_full_Insert" +msgstr "Ins" + +msgid "key_full_Left" +msgstr "Doleva" + +msgid "key_full_Meta" +msgstr "Meta" + +msgid "key_full_NumLock" +msgstr "Num" + +msgid "key_full_PageDown" +msgstr "Page Down" + +msgid "key_full_PageUp" +msgstr "Page Up" + +msgid "key_full_Pause" +msgstr "Pause" + +msgid "key_full_PrintScreen" +msgstr "Print Screen" + +msgid "key_full_Right" +msgstr "Doprava" + +msgid "key_full_Scroll" +msgstr "Scroll Lock" + +msgid "key_full_Shift" +msgstr "Shift" + +msgid "key_full_Space" +msgstr "Mezerník" + +msgid "key_full_Tab" +msgstr "Tab" + +msgid "key_full_Up" +msgstr "Nahoru" + +msgid "key_full_Win" +msgstr "Win" + +msgid "key_short_Alt" +msgstr "Alt" + +msgid "key_short_Apps" +msgstr "Kontext" + +msgid "key_short_Backspace" +msgstr "Backspace" + +msgid "key_short_CapsLock" +msgstr "Caps Lock" + +msgid "key_short_Control" +msgstr "Ctrl" + +msgid "key_short_Control_Mac" +msgstr "Ctrl" + +msgid "key_short_Delete" +msgstr "Delete" + +msgid "key_short_Down" +msgstr "Dolů" + +msgid "key_short_End" +msgstr "End" + +msgid "key_short_Enter" +msgstr "Enter" + +msgid "key_short_Escape" +msgstr "Esc" + +msgid "key_short_Home" +msgstr "Home" + +msgid "key_short_Insert" +msgstr "Ins" + +msgid "key_short_Left" +msgstr "Doleva" + +msgid "key_short_Meta" +msgstr "Meta" + +msgid "key_short_NumLock" +msgstr "Num" + +msgid "key_short_PageDown" +msgstr "PgDn" + +msgid "key_short_PageUp" +msgstr "PgUp" + +msgid "key_short_Pause" +msgstr "Pause" + +msgid "key_short_PrintScreen" +msgstr "PrSc" + +msgid "key_short_Right" +msgstr "Doprava" + +msgid "key_short_Scroll" +msgstr "ScLck" + +msgid "key_short_Shift" +msgstr "Shift" + +msgid "key_short_Space" +msgstr "Mezera" + +msgid "key_short_Tab" +msgstr "Tab" + +msgid "key_short_Up" +msgstr "Nahoru" + +msgid "key_short_Win" +msgstr "Win" + +msgid "one of one row" +msgid_plural "%1 of %2 rows" +msgstr[0] "jeden řádek z jednoho" +msgstr[1] "%1 ze %2 řádků" +msgstr[2] "%1 z %2 řádků" + +msgid "one row" +msgid_plural "%1 rows" +msgstr[0] "jeden řádek" +msgstr[1] "%1 řádky" +msgstr[2] "%1 řádků" + +msgid "test Hello %1!" +msgstr "" + +msgid "test Jonny" +msgstr "" + +msgid "test One car" +msgid_plural "test %1 cars" +msgstr[0] "" +msgstr[1] "" + +msgid "test affe" +msgstr "" + +msgid "test one" +msgstr "" + +msgid "test two" +msgstr "" Added: trunk/qooxdoo-contrib/Translation/3.2/framework/de.po =================================================================== --- trunk/qooxdoo-contrib/Translation/3.2/framework/de.po (rev 0) +++ trunk/qooxdoo-contrib/Translation/3.2/framework/de.po 2013-11-28 13:51:02 UTC (rev 21871) @@ -0,0 +1,291 @@ +# German +# +msgid "" +msgstr "" +"Project-Id-Version: qooxdoo framework\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2008-05-19 10:11+0200\n" +"PO-Revision-Date: 2010-04-22 17:53+0100\n" +"Last-Translator: Thomas Herchenroeder <thron7 AT users DOT sourceforge DOT net>\n" +"Language-Team: none\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Generator: KBabel 1.11.4\n" + +msgid "%1 does not fit %2." +msgstr "%1 passt nicht zu %2." + +msgid "%1 is not a color! %2" +msgstr "%1 ist keine Farbe! %2" + +msgid "%1 is not a number." +msgstr "%1 ist keine Nummer." + +msgid "%1 is not a string." +msgstr "%1 ist keine Zeichenkette." + +msgid "%1 is not an url." +msgstr "%1 ist keine URL." + +msgid "%1 is not in %2" +msgstr "%1 ist nicht in %2" + +msgid "%1 is not in the range from [%2, %3]." +msgstr "%1 liegt nicht im Intervall [%2, %3]." + +msgid "'%1' is not an email address." +msgstr "'%1' ist keine Emailadresse." + +msgid "Automatic" +msgstr "Automatisch" + +msgid "Basic Colors" +msgstr "Grundfarben" + +msgid "Cancel" +msgstr "Abbruch" + +msgid "Color Selector" +msgstr "Farbauswahl" + +msgid "Details" +msgstr "Details" + +msgid "HSB" +msgstr "HSB" + +msgid "Hex" +msgstr "Hex" + +msgid "Last month" +msgstr "Vorheriger Monat" + +msgid "Last year" +msgstr "Vorheriges Jahr" + +msgid "Next month" +msgstr "Nächster Monat" + +msgid "Next year" +msgstr "Nächstes Jahr" + +msgid "OK" +msgstr "OK" + +msgid "Open ColorSelector" +msgstr "Öffne Farbauswahl" + +msgid "Presets" +msgstr "Voreinstellungen" + +msgid "Preview (Old/New)" +msgstr "Vorschau (alt/neu)" + +msgid "RGB" +msgstr "RGB" + +msgid "Recent Colors" +msgstr "Zuletzt benutzte Farben" + +msgid "Reset column widths" +msgstr "Spaltenbreite zurücksetzen" + +msgid "This field is required" +msgstr "Dieses Feld ist erforderlich" + +msgid "Visual" +msgstr "Visuell" + +msgid "key_full_Alt" +msgstr "Alt" + +msgid "key_full_Apps" +msgstr "Kontextmenü" + +msgid "key_full_Backspace" +msgstr "Rücktaste" + +msgid "key_full_CapsLock" +msgstr "Feststelltaste" + +msgid "key_full_Control" +msgstr "Steuerung" + +msgid "key_full_Control_Mac" +msgstr "" + +msgid "key_full_Delete" +msgstr "Entfernen" + +msgid "key_full_Down" +msgstr "Pfeil runter" + +msgid "key_full_End" +msgstr "Ende" + +msgid "key_full_Enter" +msgstr "Enter" + +msgid "key_full_Escape" +msgstr "Escape" + +msgid "key_full_Home" +msgstr "Position 1" + +msgid "key_full_Insert" +msgstr "Einfügen" + +msgid "key_full_Left" +msgstr "Pfeil links" + +msgid "key_full_Meta" +msgstr "Meta" + +msgid "key_full_NumLock" +msgstr "NumLock" + +msgid "key_full_PageDown" +msgstr "Bild runter" + +msgid "key_full_PageUp" +msgstr "Bild hoch" + +msgid "key_full_Pause" +msgstr "Pause" + +msgid "key_full_PrintScreen" +msgstr "Drucken" + +msgid "key_full_Right" +msgstr "Pfeil rechts" + +msgid "key_full_Scroll" +msgstr "Rollen" + +msgid "key_full_Shift" +msgstr "Umschalttaste" + +msgid "key_full_Space" +msgstr "Leertaste" + +msgid "key_full_Tab" +msgstr "Tabulator" + +msgid "key_full_Up" +msgstr "Pfeil hoch" + +msgid "key_full_Win" +msgstr "Windowstaste" + +msgid "key_short_Alt" +msgstr "Alt" + +msgid "key_short_Apps" +msgstr "Kontext" + +msgid "key_short_Backspace" +msgstr "Rück" + +msgid "key_short_CapsLock" +msgstr "Feststell" + +msgid "key_short_Control" +msgstr "Strg" + +msgid "key_short_Control_Mac" +msgstr "" + +msgid "key_short_Delete" +msgstr "Entf" + +msgid "key_short_Down" +msgstr "Runter" + +msgid "key_short_End" +msgstr "Ende" + +msgid "key_short_Enter" +msgstr "Enter" + +msgid "key_short_Escape" +msgstr "Esc" + +msgid "key_short_Home" +msgstr "Pos1" + +msgid "key_short_Insert" +msgstr "Einfg" + +msgid "key_short_Left" +msgstr "Links" + +msgid "key_short_Meta" +msgstr "Meta" + +msgid "key_short_NumLock" +msgstr "Num" + +msgid "key_short_PageDown" +msgstr "Bild runter" + +msgid "key_short_PageUp" +msgstr "Bild hoch" + +msgid "key_short_Pause" +msgstr "Pause" + +msgid "key_short_PrintScreen" +msgstr "Druck" + +msgid "key_short_Right" +msgstr "Rechts" + +msgid "key_short_Scroll" +msgstr "Rollen" + +msgid "key_short_Shift" +msgstr "Umschalt" + +msgid "key_short_Space" +msgstr "Leer" + +msgid "key_short_Tab" +msgstr "Tab" + +msgid "key_short_Up" +msgstr "Hoch" + +msgid "key_short_Win" +msgstr "Win" + +msgid "one of one row" +msgid_plural "%1 of %2 rows" +msgstr[0] "Eine von einer Zeile" +msgstr[1] "%1 von %2 Zeilen" + +msgid "one row" +msgid_plural "%1 rows" +msgstr[0] "Eine Zeile" +msgstr[1] "%1 Zeilen" + +msgid "test Hello %1!" +msgstr "" + +msgid "test Jonny" +msgstr "" + +msgid "test One car" +msgid_plural "test %1 cars" +msgstr[0] "" +msgstr[1] "" + +msgid "test affe" +msgstr "" + +msgid "test one" +msgstr "" + +msgid "test two" +msgstr "" Added: trunk/qooxdoo-contrib/Translation/3.2/framework/en.po =================================================================== --- trunk/qooxdoo-contrib/Translation/3.2/framework/en.po (rev 0) +++ trunk/qooxdoo-contrib/Translation/3.2/framework/en.po 2013-11-28 13:51:02 UTC (rev 21871) @@ -0,0 +1,290 @@ +# English +# +msgid "" +msgstr "" +"Project-Id-Version: qooxdoo framework\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2008-05-19 10:11+0200\n" +"PO-Revision-Date: 2007-01-23 17:53+0100\n" +"Last-Translator: Automatically generated\n" +"Language-Team: none\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=ASCII\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +msgid "%1 does not fit %2." +msgstr "" + +msgid "%1 is not a color! %2" +msgstr "" + +msgid "%1 is not a number." +msgstr "" + +msgid "%1 is not a string." +msgstr "" + +msgid "%1 is not an url." +msgstr "" + +msgid "%1 is not in %2" +msgstr "" + +msgid "%1 is not in the range from [%2, %3]." +msgstr "" + +msgid "'%1' is not an email address." +msgstr "" + +msgid "Automatic" +msgstr "" + +msgid "Basic Colors" +msgstr "" + +msgid "Cancel" +msgstr "" + +msgid "Color Selector" +msgstr "" + +msgid "Details" +msgstr "" + +msgid "HSB" +msgstr "" + +msgid "Hex" +msgstr "" + +msgid "Last month" +msgstr "" + +msgid "Last year" +msgstr "" + +msgid "Next month" +msgstr "" + +msgid "Next year" +msgstr "" + +msgid "OK" +msgstr "" + +msgid "Open ColorSelector" +msgstr "" + +msgid "Presets" +msgstr "" + +msgid "Preview (Old/New)" +msgstr "" + +msgid "RGB" +msgstr "" + +msgid "Recent Colors" +msgstr "" + +msgid "Reset column widths" +msgstr "" + +msgid "This field is required" +msgstr "" + +msgid "Visual" +msgstr "" + +msgid "key_full_Alt" +msgstr "" + +msgid "key_full_Apps" +msgstr "" + +msgid "key_full_Backspace" +msgstr "" + +msgid "key_full_CapsLock" +msgstr "" + +msgid "key_full_Control" +msgstr "" + +msgid "key_full_Control_Mac" +msgstr "" + +msgid "key_full_Delete" +msgstr "" + +msgid "key_full_Down" +msgstr "" + +msgid "key_full_End" +msgstr "" + +msgid "key_full_Enter" +msgstr "" + +msgid "key_full_Escape" +msgstr "" + +msgid "key_full_Home" +msgstr "" + +msgid "key_full_Insert" +msgstr "" + +msgid "key_full_Left" +msgstr "" + +msgid "key_full_Meta" +msgstr "" + +msgid "key_full_NumLock" +msgstr "" + +msgid "key_full_PageDown" +msgstr "" + +msgid "key_full_PageUp" +msgstr "" + +msgid "key_full_Pause" +msgstr "" + +msgid "key_full_PrintScreen" +msgstr "" + +msgid "key_full_Right" +msgstr "" + +msgid "key_full_Scroll" +msgstr "" + +msgid "key_full_Shift" +msgstr "" + +msgid "key_full_Space" +msgstr "" + +msgid "key_full_Tab" +msgstr "" + +msgid "key_full_Up" +msgstr "" + +msgid "key_full_Win" +msgstr "" + +msgid "key_short_Alt" +msgstr "" + +msgid "key_short_Apps" +msgstr "" + +msgid "key_short_Backspace" +msgstr "" + +msgid "key_short_CapsLock" +msgstr "" + +msgid "key_short_Control" +msgstr "" + +msgid "key_short_Control_Mac" +msgstr "" + +msgid "key_short_Delete" +msgstr "" + +msgid "key_short_Down" +msgstr "" + +msgid "key_short_End" +msgstr "" + +msgid "key_short_Enter" +msgstr "" + +msgid "key_short_Escape" +msgstr "" + +msgid "key_short_Home" +msgstr "" + +msgid "key_short_Insert" +msgstr "" + +msgid "key_short_Left" +msgstr "" + +msgid "key_short_Meta" +msgstr "" + +msgid "key_short_NumLock" +msgstr "" + +msgid "key_short_PageDown" +msgstr "" + +msgid "key_short_PageUp" +msgstr "" + +msgid "key_short_Pause" +msgstr "" + +msgid "key_short_PrintScreen" +msgstr "" + +msgid "key_short_Right" +msgstr "" + +msgid "key_short_Scroll" +msgstr "" + +msgid "key_short_Shift" +msgstr "" + +msgid "key_short_Space" +msgstr "" + +msgid "key_short_Tab" +msgstr "" + +msgid "key_short_Up" +msgstr "" + +msgid "key_short_Win" +msgstr "" + +msgid "one of one row" +msgid_plural "%1 of %2 rows" +msgstr[0] "" +msgstr[1] "" + +msgid "one row" +msgid_plural "%1 rows" +msgstr[0] "" +msgstr[1] "" + +msgid "test Hello %1!" +msgstr "" + +msgid "test Jonny" +msgstr "" + +msgid "test One car" +msgid_plural "test %1 cars" +msgstr[0] "" +msgstr[1] "" + +msgid "test affe" +msgstr "" + +msgid "test one" +msgstr "" + +msgid "test two" +msgstr "" Added: trunk/qooxdoo-contrib/Translation/3.2/framework/es.po =================================================================== --- trunk/qooxdoo-contrib/Translation/3.2/framework/es.po (rev 0) +++ trunk/qooxdoo-contrib/Translation/3.2/framework/es.po 2013-11-28 13:51:02 UTC (rev 21871) @@ -0,0 +1,291 @@ +# Spanish +# +msgid "" +msgstr "" +"Project-Id-Version: qooxdoo framework\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2008-05-20 17:10+0200\n" +"PO-Revision-Date: 2010-04-26 19:59-0500\n" +"Last-Translator: Carsten Rammoser <carsten AT rammoser DOT com>\n" +"Language-Team: none\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Poedit-Country: GERMANY\n" +"X-Poedit-Language: Spanish\n" + +msgid "%1 does not fit %2." +msgstr "%1 no corresponde con %2." + +msgid "%1 is not a color! %2" +msgstr "%1 no es un color! %2" + +msgid "%1 is not a number." +msgstr "%1 no es un número." + +msgid "%1 is not a string." +msgstr "%1 no es una cadena de caracteres." + +msgid "%1 is not an url." +msgstr "%1 no es un url." + +msgid "%1 is not in %2" +msgstr "%1 no se encuentra en %2" + +msgid "%1 is not in the range from [%2, %3]." +msgstr "%1 no se encuentra en el rango [%2, %3]." + +msgid "'%1' is not an email address." +msgstr "'%1' no es un correo electrónico." + +msgid "Automatic" +msgstr "Automático" + +msgid "Basic Colors" +msgstr "" + +msgid "Cancel" +msgstr "Cancelar" + +msgid "Color Selector" +msgstr "Selector de color" + +msgid "Details" +msgstr "Detalles" + +msgid "HSB" +msgstr "HSB" + +msgid "Hex" +msgstr "Hex" + +msgid "Last month" +msgstr "Último mes" + +msgid "Last year" +msgstr "Último año" + +msgid "Next month" +msgstr "Mes siguiente" + +msgid "Next year" +msgstr "Año siguiente" + +msgid "OK" +msgstr "Aceptar" + +msgid "Open ColorSelector" +msgstr "Abrir Selector de Color" + +msgid "Presets" +msgstr "Preselecciones" + +msgid "Preview (Old/New)" +msgstr "Vista previa (Viejo/Nuevo)" + +msgid "RGB" +msgstr "RGB" + +msgid "Recent Colors" +msgstr "" + +msgid "Reset column widths" +msgstr "Reestablecer anchos de columnas" + +msgid "This field is required" +msgstr "Este cuadro es obligatorio" + +msgid "Visual" +msgstr "Visual" + +msgid "key_full_Alt" +msgstr "Alt" + +msgid "key_full_Apps" +msgstr "Aplicaciones" + +msgid "key_full_Backspace" +msgstr "Retroceso" + +msgid "key_full_CapsLock" +msgstr "Bloqueo Mayúsculas" + +msgid "key_full_Control" +msgstr "Control" + +msgid "key_full_Control_Mac" +msgstr "" + +msgid "key_full_Delete" +msgstr "Suprimir" + +msgid "key_full_Down" +msgstr "Flecha abajo" + +msgid "key_full_End" +msgstr "Fin" + +msgid "key_full_Enter" +msgstr "Intro" + +msgid "key_full_Escape" +msgstr "Escape" + +msgid "key_full_Home" +msgstr "Inicio" + +msgid "key_full_Insert" +msgstr "Insertar" + +msgid "key_full_Left" +msgstr "Flecha izquierda" + +msgid "key_full_Meta" +msgstr "Meta" + +msgid "key_full_NumLock" +msgstr "Bloqueo Numérico" + +msgid "key_full_PageDown" +msgstr "Avanzar Página" + +msgid "key_full_PageUp" +msgstr "Retroceder Página" + +msgid "key_full_Pause" +msgstr "Pausa" + +msgid "key_full_PrintScreen" +msgstr "Imprimir Pantalla" + +msgid "key_full_Right" +msgstr "Flecha derecha" + +msgid "key_full_Scroll" +msgstr "Bloq. Despl." + +msgid "key_full_Shift" +msgstr "Mayúscula" + +msgid "key_full_Space" +msgstr "Espacio" + +msgid "key_full_Tab" +msgstr "Tabulador" + +msgid "key_full_Up" +msgstr "Flecha arriba" + +msgid "key_full_Win" +msgstr "Windows" + +msgid "key_short_Alt" +msgstr "Alt" + +msgid "key_short_Apps" +msgstr "Aplic" + +msgid "key_short_Backspace" +msgstr "Retroceso" + +msgid "key_short_CapsLock" +msgstr "BloqMayús" + +msgid "key_short_Control" +msgstr "Ctrl" + +msgid "key_short_Control_Mac" +msgstr "" + +msgid "key_short_Delete" +msgstr "Supr" + +msgid "key_short_Down" +msgstr "Abajo" + +msgid "key_short_End" +msgstr "Fin" + +msgid "key_short_Enter" +msgstr "Intro" + +msgid "key_short_Escape" +msgstr "Esc" + +msgid "key_short_Home" +msgstr "Inicio" + +msgid "key_short_Insert" +msgstr "Insert" + +msgid "key_short_Left" +msgstr "Izquierda" + +msgid "key_short_Meta" +msgstr "Meta" + +msgid "key_short_NumLock" +msgstr "BloqNum" + +msgid "key_short_PageDown" +msgstr "AvPág" + +msgid "key_short_PageUp" +msgstr "RePág" + +msgid "key_short_Pause" +msgstr "Pausa" + +msgid "key_short_PrintScreen" +msgstr "ImprPant" + +msgid "key_short_Right" +msgstr "Derecha" + +msgid "key_short_Scroll" +msgstr "BloqDespl" + +msgid "key_short_Shift" +msgstr "Mayús" + +msgid "key_short_Space" +msgstr "Espacio" + +msgid "key_short_Tab" +msgstr "Tab" + +msgid "key_short_Up" +msgstr "Arriba" + +msgid "key_short_Win" +msgstr "Win" + +msgid "one of one row" +msgid_plural "%1 of %2 rows" +msgstr[0] "una de una fila" +msgstr[1] "%1 de %2 filas" + +msgid "one row" +msgid_plural "%1 rows" +msgstr[0] "una fila" +msgstr[1] "%1 filas" + +msgid "test Hello %1!" +msgstr "" + +msgid "test Jonny" +msgstr "" + +msgid "test One car" +msgid_plural "test %1 cars" +msgstr[0] "" +msgstr[1] "" + +msgid "test affe" +msgstr "" + +msgid "test one" +msgstr "" + +msgid "test two" +msgstr "" Added: trunk/qooxdoo-contrib/Translation/3.2/framework/fr.po =================================================================== --- trunk/qooxdoo-contrib/Translation/3.2/framework/fr.po (rev 0) +++ trunk/qooxdoo-contrib/Translation/3.2/framework/fr.po 2013-11-28 13:51:02 UTC (rev 21871) @@ -0,0 +1,289 @@ +# French +# +msgid "" +msgstr "" +"Project-Id-Version: qooxdoo framework\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2008-05-19 10:11+0200\n" +"PO-Revision-Date: 2010-04-27 15:58-0500\n" +"Last-Translator: Julien Raclot <julien DOT raclot AT 1and1 DOT fr>\n" +"Language-Team: none\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +msgid "%1 does not fit %2." +msgstr "%1 ne correspond pas à %2." + +msgid "%1 is not a color! %2" +msgstr "%1 n'est pas une couleur ! %2" + +msgid "%1 is not a number." +msgstr "%1 n'est pas un chiffre." + +msgid "%1 is not a string." +msgstr "%1 n'est pas une chaîne de caractères." + +msgid "%1 is not an url." +msgstr "%1 n'est pas un URL." + +msgid "%1 is not in %2" +msgstr "%1 n'est pas dans %2" + +msgid "%1 is not in the range from [%2, %3]." +msgstr "%1 n'est pas dans l'intervalle [%2, %3]." + +msgid "'%1' is not an email address." +msgstr "'%1'n'est pas une adresse email." + +msgid "Automatic" +msgstr "Automatique" + +msgid "Basic Colors" +msgstr "" + +msgid "Cancel" +msgstr "Annuler" + +msgid "Color Selector" +msgstr "Sélecteur de couleurs" + +msgid "Details" +msgstr "Détails" + +msgid "HSB" +msgstr "TSV" + +msgid "Hex" +msgstr "Hex" + +msgid "Last month" +msgstr "Mois dernier" + +msgid "Last year" +msgstr "Année dernière" + +msgid "Next month" +msgstr "Mois prochain" + +msgid "Next year" +msgstr "Année prochaine" + +msgid "OK" +msgstr "OK" + +msgid "Open ColorSelector" +msgstr "Ouvrir le sélecteur de couleurs" + +msgid "Presets" +msgstr "Pré-réglages" + +msgid "Preview (Old/New)" +msgstr "Aperçu (Ancien/Nouveau)" + +msgid "RGB" +msgstr "RVB" + +msgid "Recent Colors" +msgstr "" + +msgid "Reset column widths" +msgstr "Réinitialiser la largeur des colonnes" + +msgid "This field is required" +msgstr "ce champ est requis" + +msgid "Visual" +msgstr "" + +msgid "key_full_Alt" +msgstr "Alternative" + +msgid "key_full_Apps" +msgstr "Application" + +msgid "key_full_Backspace" +msgstr "Effacement arrière" + +msgid "key_full_CapsLock" +msgstr "Verrouillage des Majuscule" + +msgid "key_full_Control" +msgstr "Contrôle" + +msgid "key_full_Control_Mac" +msgstr "" + +msgid "key_full_Delete" +msgstr "Suppression" + +msgid "key_full_Down" +msgstr "Bas" + +msgid "key_full_End" +msgstr "Fin" + +msgid "key_full_Enter" +msgstr "Entrée" + +msgid "key_full_Escape" +msgstr "Échappement" + +msgid "key_full_Home" +msgstr "Origine" + +msgid "key_full_Insert" +msgstr "Insertion" + +msgid "key_full_Left" +msgstr "Gauche" + +msgid "key_full_Meta" +msgstr "Meta" + +msgid "key_full_NumLock" +msgstr "Verouillage Numérique" + +msgid "key_full_PageDown" +msgstr "Page Suivante" + +msgid "key_full_PageUp" +msgstr "Page Précédente" + +msgid "key_full_Pause" +msgstr "Pause" + +msgid "key_full_PrintScreen" +msgstr "Impression de l'écran" + +msgid "key_full_Right" +msgstr "Droite" + +msgid "key_full_Scroll" +msgstr "Arrêt défilement" + +msgid "key_full_Shift" +msgstr "Majuscules" + +msgid "key_full_Space" +msgstr "Espace" + +msgid "key_full_Tab" +msgstr "Tabulation" + +msgid "key_full_Up" +msgstr "Haut" + +msgid "key_full_Win" +msgstr "Windows" + +msgid "key_short_Alt" +msgstr "Alt" + +msgid "key_short_Apps" +msgstr "App." + +msgid "key_short_Backspace" +msgstr "Effacement Arrière" + +msgid "key_short_CapsLock" +msgstr "Verr. Maj." + +msgid "key_short_Control" +msgstr "Ctrl" + +msgid "key_short_Control_Mac" +msgstr "" + +msgid "key_short_Delete" +msgstr "Supp." + +msgid "key_short_Down" +msgstr "Bas" + +msgid "key_short_End" +msgstr "Fin" + +msgid "key_short_Enter" +msgstr "Entrée" + +msgid "key_short_Escape" +msgstr "Echap." + +msgid "key_short_Home" +msgstr "Orig." + +msgid "key_short_Insert" +msgstr "Ins." + +msgid "key_short_Left" +msgstr "Gauche" + +msgid "key_short_Meta" +msgstr "Meta" + +msgid "key_short_NumLock" +msgstr "Verr. Num." + +msgid "key_short_PageDown" +msgstr "Pg Suiv." + +msgid "key_short_PageUp" +msgstr "Pg Préc." + +msgid "key_short_Pause" +msgstr "Pause" + +msgid "key_short_PrintScreen" +msgstr "Imp. Écran" + +msgid "key_short_Right" +msgstr "Droite" + +msgid "key_short_Scroll" +msgstr "Arrêt Défil" + +msgid "key_short_Shift" +msgstr "Maj" + +msgid "key_short_Space" +msgstr "Espace" + +msgid "key_short_Tab" +msgstr "Tab" + +msgid "key_short_Up" +msgstr "Haut" + +msgid "key_short_Win" +msgstr "Win" + +msgid "one of one row" +msgid_plural "%1 of %2 rows" +msgstr[0] "une ligne sur une" +msgstr[1] "%1 lignes sur %2" + +msgid "one row" +msgid_plural "%1 rows" +msgstr[0] "une ligne" +msgstr[1] "%1 lignes" + +msgid "test Hello %1!" +msgstr "" + +msgid "test Jonny" +msgstr "" + +msgid "test One car" +msgid_plural "test %1 cars" +msgstr[0] "" +msgstr[1] "" + +msgid "test affe" +msgstr "" + +msgid "test one" +msgstr "" + +msgid "test two" +msgstr "" Added: trunk/qooxdoo-contrib/Translation/3.2/framework/it.po =================================================================== --- trunk/qooxdoo-contrib/Translation/3.2/framework/it.po (rev 0) +++ trunk/qooxdoo-contrib/Translation/3.2/framework/it.po 2013-11-28 13:51:02 UTC (rev 21871) @@ -0,0 +1,291 @@ +# Italian +# +msgid "" +msgstr "" +"Project-Id-Version: qooxdoo framework\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2008-01-15 10:00+0100\n" +"PO-Revision-Date: 2010-04-23 22:22+0200\n" +"Last-Translator: Alessandro Sala <alessandro DOT sala AT mclink DOT net>\n" +"Language-Team: none\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Generator: KBabel 1.11.4\n" + +msgid "%1 does not fit %2." +msgstr "%1 non corrisponde a %2." + +msgid "%1 is not a color! %2" +msgstr "%1 non è un colore! %2" + +msgid "%1 is not a number." +msgstr "%1 non è un numero." + +msgid "%1 is not a string." +msgstr "%1 non è una stringa." + +msgid "%1 is not an url." +msgstr "%1 non è un url." + +msgid "%1 is not in %2" +msgstr "%1 non è contenuto in %2" + +msgid "%1 is not in the range from [%2, %3]." +msgstr "%1 non è compreso nell'intervallo [%2, %3]." + +msgid "'%1' is not an email address." +msgstr "'%1' non è un indirizzo email." + +msgid "Automatic" +msgstr "Automatico" + +msgid "Basic Colors" +msgstr "" + +msgid "Cancel" +msgstr "Annulla" + +msgid "Color Selector" +msgstr "Selettore dei Colori" + +msgid "Details" +msgstr "Dettagli" + +msgid "HSB" +msgstr "TSL" + +msgid "Hex" +msgstr "Hex" + +msgid "Last month" +msgstr "Mese precedente" + +msgid "Last year" +msgstr "Anno precedente" + +msgid "Next month" +msgstr "Mese successivo" + +msgid "Next year" +msgstr "Anno successivo" + +msgid "OK" +msgstr "OK" + +msgid "Open ColorSelector" +msgstr "Apri il Selettore dei Colori" + +msgid "Presets" +msgstr "Predefiniti" + +msgid "Preview (Old/New)" +msgstr "Anteprima (Vecchio/Nuovo)" + +msgid "RGB" +msgstr "RGB" + +msgid "Recent Colors" +msgstr "" + +msgid "Reset column widths" +msgstr "Ripristina le larghezze delle colonne" + +msgid "This field is required" +msgstr "Questo campo è obbligatorio" + +msgid "Visual" +msgstr "Selezione visuale" + +msgid "key_full_Alt" +msgstr "Alt" + +msgid "key_full_Apps" +msgstr "Tasto Menu" + +msgid "key_full_Backspace" +msgstr "Backspace" + +msgid "key_full_CapsLock" +msgstr "Blocca Maiuscole" + +msgid "key_full_Control" +msgstr "Control" + +msgid "key_full_Control_Mac" +msgstr "" + +msgid "key_full_Delete" +msgstr "Cancella" + +msgid "key_full_Down" +msgstr "Freccia Giù" + +msgid "key_full_End" +msgstr "Fine" + +msgid "key_full_Enter" +msgstr "Invio" + +msgid "key_full_Escape" +msgstr "Escape" + +msgid "key_full_Home" +msgstr "Inizio" + +msgid "key_full_Insert" +msgstr "Inserisci" + +msgid "key_full_Left" +msgstr "Freccia Sinistra" + +msgid "key_full_Meta" +msgstr "Meta" + +msgid "key_full_NumLock" +msgstr "Blocca Numeri" + +msgid "key_full_PageDown" +msgstr "Pagina Giù" + +msgid "key_full_PageUp" +msgstr "Pagina Su" + +msgid "key_full_Pause" +msgstr "Pausa" + +msgid "key_full_PrintScreen" +msgstr "Stampa Schermo" + +msgid "key_full_Right" +msgstr "Freccia Destra" + +msgid "key_full_Scroll" +msgstr "Blocca Scorrimento" + +msgid "key_full_Shift" +msgstr "Maiuscole" + +msgid "key_full_Space" +msgstr "Spazio" + +msgid "key_full_Tab" +msgstr "Tabulazione" + +msgid "key_full_Up" +msgstr "Freccia Su" + +msgid "key_full_Win" +msgstr "Tasto Windows" + +msgid "key_short_Alt" +msgstr "Alt" + +msgid "key_short_Apps" +msgstr "Menu" + +msgid "key_short_Backspace" +msgstr "Backspace" + +msgid "key_short_CapsLock" +msgstr "Bloc Maiusc" + +msgid "key_short_Control" +msgstr "Ctrl" + +msgid "key_short_Control_Mac" +msgstr "" + +msgid "key_short_Delete" +msgstr "Canc" + +msgid "key_short_Down" +msgstr "Giù" + +msgid "key_short_End" +msgstr "Fine" + +msgid "key_short_Enter" +msgstr "Invio" + +msgid "key_short_Escape" +msgstr "Esc" + +msgid "key_short_Home" +msgstr "Inizio" + +msgid "key_short_Insert" +msgstr "Ins" + +msgid "key_short_Left" +msgstr "Sinistra" + +msgid "key_short_Meta" +msgstr "Meta" + +msgid "key_short_NumLock" +msgstr "Bloc Num" + +msgid "key_short_PageDown" +msgstr "Pag Giù" + +msgid "key_short_PageUp" +msgstr "Pag Su" + +msgid "key_short_Pause" +msgstr "Pausa" + +msgid "key_short_PrintScreen" +msgstr "Stamp" + +msgid "key_short_Right" +msgstr "Destra" + +msgid "key_short_Scroll" +msgstr "Bloc Scorr" + +msgid "key_short_Shift" +msgstr "Maiusc" + +msgid "key_short_Space" +msgstr "Spazio" + +msgid "key_short_Tab" +msgstr "Tab" + +msgid "key_short_Up" +msgstr "Su" + +msgid "key_short_Win" +msgstr "Win" + +msgid "one of one row" +msgid_plural "%1 of %2 rows" +msgstr[0] "una di una riga" +msgstr[1] "%1 di %2 righe" + +msgid "one row" +msgid_plural "%1 rows" +msgstr[0] "una riga" +msgstr[1] "%1 righe" + +msgid "test Hello %1!" +msgstr "" + +msgid "test Jonny" +msgstr "" + +msgid "test One car" +msgid_plural "test %1 cars" +msgstr[0] "" +msgstr[1] "" + +msgid "test affe" +msgstr "" + +msgid "test one" +msgstr "" + +msgid "test two" +msgstr "" Added: trunk/qooxdoo-contrib/Translation/3.2/framework/nb.po =================================================================== --- trunk/qooxdoo-contrib/Translation/3.2/framework/nb.po (rev 0) +++ trunk/qooxdoo-contrib/Translation/3.2/framework/nb.po 2013-11-28 13:51:02 UTC (rev 21871) @@ -0,0 +1,290 @@ +# Norwegian +# +msgid "" +msgstr "" +"Project-Id-Version: qooxdoo framework\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2008-05-19 10:11+0200\n" +"PO-Revision-Date: 2011-03-16 17:16+0100\n" +"Last-Translator: Stefan Andersson <stefan DOT andersson AT live DOT com>\n" +"Language-Team: none\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +msgid "%1 does not fit %2." +msgstr "%1 passer ikke inn %2." + +msgid "%1 is not a color! %2" +msgstr "%1 er ikke en farge! %2" + +msgid "%1 is not a number." +msgstr "%1 er ikke et tall." + +msgid "%1 is not a string." +msgstr "%1 er ikke en streng." + +msgid "%1 is not an url." +msgstr "%1 er ikke en internettadresse (URL)." + +msgid "%1 is not in %2" +msgstr "%1 er ikke i %2" + +msgid "%1 is not in the range from [%2, %3]." +msgstr "%1 er ikke i området fra [%2, %3]." + +msgid "'%1' is not an email address." +msgstr "'%1' er ikke en e-postadresse." + +msgid "Automatic" +msgstr "Automatisk" + +msgid "Basic Colors" +msgstr "" + +msgid "Cancel" +msgstr "Avbryt" + +msgid "Color Selector" +msgstr "fargevelger" + +msgid "Details" +msgstr "Detaljer" + +msgid "HSB" +msgstr "HSB" + +msgid "Hex" +msgstr "Hex" + +msgid "Last month" +msgstr "Siste måned" + +msgid "Last year" +msgstr "Siste år" + +msgid "Next month" +msgstr "Neste måned" + +msgid "Next year" +msgstr "Neste år" + +msgid "OK" +msgstr "Ok" + +msgid "Open ColorSelector" +msgstr "Åpne fargevelger" + +msgid "Presets" +msgstr "Forhåndssatte" + +msgid "Preview (Old/New)" +msgstr "Forhåndsvisning (gammel/ny)" + +msgid "RGB" +msgstr "RGB" + +msgid "Recent Colors" +msgstr "" + +msgid "Reset column widths" +msgstr "Nullstill kolonnebreddene" + +msgid "This field is required" +msgstr "Dette feltet er påkrevd" + +msgid "Visual" +msgstr "Visuell" + +msgid "key_full_Alt" +msgstr "Alt" + +msgid "key_full_Apps" +msgstr "Apps" + +msgid "key_full_Backspace" +msgstr "Backspace" + +msgid "key_full_CapsLock" +msgstr "CapsLock" + +msgid "key_full_Control" +msgstr "Control" + +msgid "key_full_Control_Mac" +msgstr "" + +msgid "key_full_Delete" +msgstr "Delete" + +msgid "key_full_Down" +msgstr "Ned" + +msgid "key_full_End" +msgstr "End" + +msgid "key_full_Enter" +msgstr "Enter" + +msgid "key_full_Escape" +msgstr "Escape" + +msgid "key_full_Home" +msgstr "Home" + +msgid "key_full_Insert" +msgstr "Insert" + +msgid "key_full_Left" +msgstr "Venstre" + +msgid "key_full_Meta" +msgstr "Meta" + +msgid "key_full_NumLock" +msgstr "NumLock" + +msgid "key_full_PageDown" +msgstr "PageDown" + +msgid "key_full_PageUp" +msgstr "PageUp" + +msgid "key_full_Pause" +msgstr "Pause" + +msgid "key_full_PrintScreen" +msgstr "PrintScreen" + +msgid "key_full_Right" +msgstr "Høyre" + +msgid "key_full_Scroll" +msgstr "Scroll" + +msgid "key_full_Shift" +msgstr "Shift" + +msgid "key_full_Space" +msgstr "Space" + +msgid "key_full_Tab" +msgstr "Tab" + +msgid "key_full_Up" +msgstr "Opp" + +msgid "key_full_Win" +msgstr "Win" + +msgid "key_short_Alt" +msgstr "Alt" + +msgid "key_short_Apps" +msgstr "Apps" + +msgid "key_short_Backspace" +msgstr "BS" + +msgid "key_short_CapsLock" +msgstr "CapsLock" + +msgid "key_short_Control" +msgstr "Ctrl" + +msgid "key_short_Control_Mac" +msgstr "" + +msgid "key_short_Delete" +msgstr "Del" + +msgid "key_short_Down" +msgstr "Ned" + +msgid "key_short_End" +msgstr "End" + +msgid "key_short_Enter" +msgstr "Enter" + +msgid "key_short_Escape" +msgstr "Esc" + +msgid "key_short_Home" +msgstr "Home" + +msgid "key_short_Insert" +msgstr "Ins" + +msgid "key_short_Left" +msgstr "Venstre" + +msgid "key_short_Meta" +msgstr "Meta" + +msgid "key_short_NumLock" +msgstr "Num" + +msgid "key_short_PageDown" +msgstr "PgDn" + +msgid "key_short_PageUp" +msgstr "PgUp" + +msgid "key_short_Pause" +msgstr "Pause" + +msgid "key_short_PrintScreen" +msgstr "PrnScn" + +msgid "key_short_Right" +msgstr "Høyre" + +msgid "key_short_Scroll" +msgstr "Scroll" + +msgid "key_short_Shift" +msgstr "Shift" + +msgid "key_short_Space" +msgstr "Space" + +msgid "key_short_Tab" +msgstr "Tab" + +msgid "key_short_Up" +msgstr "Opp" + +msgid "key_short_Win" +msgstr "Win" + +msgid "one of one row" +msgid_plural "%1 of %2 rows" +msgstr[0] "En av en rad" +msgstr[1] "%1 av %2 rader" + +msgid "one row" +msgid_plural "%1 rows" +msgstr[0] "en rad" +msgstr[1] "%1 rader" + +msgid "test Hello %1!" +msgstr "" + +msgid "test Jonny" +msgstr "" + +msgid "test One car" +msgid_plural "test %1 cars" +msgstr[0] "" +msgstr[1] "" + +msgid "test affe" +msgstr "" + +msgid "test one" +msgstr "" + +msgid "test two" +msgstr "" Added: trunk/qooxdoo-contrib/Translation/3.2/framework/nl.po =================================================================== --- trunk/qooxdoo-contrib/Translation/3.2/framework/nl.po (rev 0) +++ trunk/qooxdoo-contrib/Translation/3.2/framework/nl.po 2013-11-28 13:51:02 UTC (rev 21871) @@ -0,0 +1,289 @@ +# Dutch +# +msgid "" +msgstr "" +"Project-Id-Version: qooxdoo framework\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2008-05-19 10:11+0200\n" +"PO-Revision-Date: 2010-04-26 23:34+0100\n" +"Last-Translator: Isaak Malik <isooik AT gmail DOT com>\n" +"Language-Team: none\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +msgid "%1 does not fit %2." +msgstr "%1 past niet %2." + +msgid "%1 is not a color! %2" +msgstr "%1 is geen kleur! %2" + +msgid "%1 is not a number." +msgstr "%1 is geen nummer." + +msgid "%1 is not a string." +msgstr "%1 is geen string." + +msgid "%1 is not an url." +msgstr "%1 is geen url." + +msgid "%1 is not in %2" +msgstr "%1 is niet in %2" + +msgid "%1 is not in the range from [%2, %3]." +msgstr "%1 is niet in het bereik van [%2, %3]." + +msgid "'%1' is not an email address." +msgstr "'%1' is geen email adres." + +msgid "Automatic" +msgstr "Automatisch" + +msgid "Basic Colors" +msgstr "" + +msgid "Cancel" +msgstr "Annuleer" + +msgid "Color Selector" +msgstr "Kleur-instelling" + +msgid "Details" +msgstr "Details" + +msgid "HSB" +msgstr "HSB" + +msgid "Hex" +msgstr "Hex" + +msgid "Last month" +msgstr "Laatste maand" + +msgid "Last year" +msgstr "Laatste jaar" + +msgid "Next month" +msgstr "Volgende maand" + +msgid "Next year" +msgstr "Volgend jaar" + +msgid "OK" +msgstr "OK" + +msgid "Open ColorSelector" +msgstr "Open Kleurkiezer" + +msgid "Presets" +msgstr "Voorkeuren" + +msgid "Preview (Old/New)" +msgstr "Voorbeeld (Oud/Nieuw)" + +msgid "RGB" +msgstr "RGB" + +msgid "Recent Colors" +msgstr "" + +msgid "Reset column widths" +msgstr "Kolombreedte herstellen" + +msgid "This field is required" +msgstr "Dit veld is verplicht" + +msgid "Visual" +msgstr "Visueel" + +msgid "key_full_Alt" +msgstr "Alt" + +msgid "key_full_Apps" +msgstr "Contextmenu" + +msgid "key_full_Backspace" +msgstr "Backspace" + +msgid "key_full_CapsLock" +msgstr "Caps Lock" + +msgid "key_full_Control" +msgstr "Control" + +msgid "key_full_Control_Mac" +msgstr "" + +msgid "key_full_Delete" +msgstr "Verwijderen" + +msgid "key_full_Down" +msgstr "Pijl omlaag" + +msgid "key_full_End" +msgstr "End" + +msgid "key_full_Enter" +msgstr "Enter" + +msgid "key_full_Escape" +msgstr "Escape" + +msgid "key_full_Home" +msgstr "Positie 1" + +msgid "key_full_Insert" +msgstr "Invoegen" + +msgid "key_full_Left" +msgstr "Pijl links" + +msgid "key_full_Meta" +msgstr "Meta" + +msgid "key_full_NumLock" +msgstr "Num Lock" + +msgid "key_full_PageDown" +msgstr "Volgende pagina" + +msgid "key_full_PageUp" +msgstr "Vorige pagina" + +msgid "key_full_Pause" +msgstr "Pauze" + +msgid "key_full_PrintScreen" +msgstr "Schermafbeelding" + +msgid "key_full_Right" +msgstr "Pijl rechts" + +msgid "key_full_Scroll" +msgstr "Scroll Lock" + +msgid "key_full_Shift" +msgstr "Shift" + +msgid "key_full_Space" +msgstr "Spatiebalk" + +msgid "key_full_Tab" +msgstr "Tabulator" + +msgid "key_full_Up" +msgstr "Pijl omhoog" + +msgid "key_full_Win" +msgstr "Windowstoets" + +msgid "key_short_Alt" +msgstr "Alt" + +msgid "key_short_Apps" +msgstr "Apps" + +msgid "key_short_Backspace" +msgstr "Backspace" + +msgid "key_short_CapsLock" +msgstr "Caps Lock" + +msgid "key_short_Control" +msgstr "Ctrl" + +msgid "key_short_Control_Mac" +msgstr "" + +msgid "key_short_Delete" +msgstr "Del" + +msgid "key_short_Down" +msgstr "Omlaag" + +msgid "key_short_End" +msgstr "End" + +msgid "key_short_Enter" +msgstr "Enter" + +msgid "key_short_Escape" +msgstr "Esc" + +msgid "key_short_Home" +msgstr "Home" + +msgid "key_short_Insert" +msgstr "Ins" + +msgid "key_short_Left" +msgstr "Links" + +msgid "key_short_Meta" +msgstr "Meta" + +msgid "key_short_NumLock" +msgstr "Num Lock" + +msgid "key_short_PageDown" +msgstr "PgDn" + +msgid "key_short_PageUp" +msgstr "PgUp" + +msgid "key_short_Pause" +msgstr "Pause" + +msgid "key_short_PrintScreen" +msgstr "PrtSc" + +msgid "key_short_Right" +msgstr "Rechts" + +msgid "key_short_Scroll" +msgstr "Scroll Lock" + +msgid "key_short_Shift" +msgstr "Shift" + +msgid "key_short_Space" +msgstr "Spatie" + +msgid "key_short_Tab" +msgstr "Tab" + +msgid "key_short_Up" +msgstr "Omhoog" + +msgid "key_short_Win" +msgstr "Win" + +msgid "one of one row" +msgid_plural "%1 of %2 rows" +msgstr[0] "Een van een rij" +msgstr[1] "%1 van %2 rijen" + +msgid "one row" +msgid_plural "%1 rows" +msgstr[0] "een rij" +msgstr[1] "%1 rijen" + +msgid "test Hello %1!" +msgstr "" + +msgid "test Jonny" +msgstr "" + +msgid "test One car" +msgid_plural "test %1 cars" +msgstr[0] "" +msgstr[1] "" + +msgid "test affe" +msgstr "" + +msgid "test one" +msgstr "" + +msgid "test two" +msgstr "" Added: trunk/qooxdoo-contrib/Translation/3.2/framework/pl.po =================================================================== --- trunk/qooxdoo-contrib/Translation/3.2/framework/pl.po (rev 0) +++ trunk/qooxdoo-contrib/Translation/3.2/framework/pl.po 2013-11-28 13:51:02 UTC (rev 21871) @@ -0,0 +1,290 @@ +# +msgid "" +msgstr "" +"Project-Id-Version: qooxdoo framework\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2008-05-19 10:11+0200\n" +"PO-Revision-Date: 2010-04-22 17:53+0100\n" +"Last-Translator: Thomas Herchenroeder <thron7 AT users DOT sourceforge DOT net>\n" +"Language-Team: none\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Generator: KBabel 1.11.4\n" + +msgid "%1 does not fit %2." +msgstr "%1 nie pasuje do %2." + +msgid "%1 is not a color! %2" +msgstr "%1 nie jest kolorem! %2" + +msgid "%1 is not a number." +msgstr "%1 nie jest liczbą." + +msgid "%1 is not a string." +msgstr "%1 nie jest ciągiem znaków." + +msgid "%1 is not an url." +msgstr "%1 nie jest URL." + +msgid "%1 is not in %2" +msgstr "%1 nie jest w %2" + +msgid "%1 is not in the range from [%2, %3]." +msgstr "%1 nie leży w przedziale [%2, %3]." + +msgid "'%1' is not an email address." +msgstr "'%1' nie jest adresem e-mail." + +msgid "Automatic" +msgstr "Automatycznie" + +msgid "Basic Colors" +msgstr "" + +msgid "Cancel" +msgstr "Anuluj" + +msgid "Color Selector" +msgstr "Wybór kolorów" + +msgid "Details" +msgstr "Szczegóły" + +msgid "HSB" +msgstr "HSB" + +msgid "Hex" +msgstr "hex" + +msgid "Last month" +msgstr "Poprzedni miesiąc" + +msgid "Last year" +msgstr "Poprzedni rok" + +msgid "Next month" +msgstr "Następny miesiąc" + +msgid "Next year" +msgstr "Następny rok" + +msgid "OK" +msgstr "OK" + +msgid "Open ColorSelector" +msgstr "Otwórz wybór kolorów" + +msgid "Presets" +msgstr "Ustawienia wstępne" + +msgid "Preview (Old/New)" +msgstr "Podgląd (stary/nowy)" + +msgid "RGB" +msgstr "RGB" + +msgid "Recent Colors" +msgstr "" + +msgid "Reset column widths" +msgstr "Zresetuj szerokość kolumny" + +msgid "This field is required" +msgstr "To pole jest obowiązkowe" + +msgid "Visual" +msgstr "Wizualny" + +msgid "key_full_Alt" +msgstr "Alt" + +msgid "key_full_Apps" +msgstr "Menu kontekstowe" + +msgid "key_full_Backspace" +msgstr "Backspace" + +msgid "key_full_CapsLock" +msgstr "Caps Lock" + +msgid "key_full_Control" +msgstr "Control" + +msgid "key_full_Control_Mac" +msgstr "key_full_Control_Mac" + +msgid "key_full_Delete" +msgstr "Delete" + +msgid "key_full_Down" +msgstr "Strzałka w dół" + +msgid "key_full_End" +msgstr "End" + +msgid "key_fu... [truncated message content] |
From: <d_w...@us...> - 2013-09-27 11:34:26
|
Revision: 21870 http://sourceforge.net/p/qooxdoo-contrib/code/21870 Author: d_wagner Date: 2013-09-27 11:34:23 +0000 (Fri, 27 Sep 2013) Log Message: ----------- replaced Xpath locators Modified Paths: -------------- trunk/qooxdoo-contrib/Simulator/3.0/tool/selenium/simulation/testrunner/test_testrunner.js trunk/qooxdoo-contrib/Simulator/trunk/tool/selenium/simulation/testrunner/test_testrunner.js Modified: trunk/qooxdoo-contrib/Simulator/3.0/tool/selenium/simulation/testrunner/test_testrunner.js =================================================================== --- trunk/qooxdoo-contrib/Simulator/3.0/tool/selenium/simulation/testrunner/test_testrunner.js 2013-09-26 11:34:55 UTC (rev 21869) +++ trunk/qooxdoo-contrib/Simulator/3.0/tool/selenium/simulation/testrunner/test_testrunner.js 2013-09-27 11:34:23 UTC (rev 21870) @@ -23,7 +23,7 @@ var locators = { toolbarButtonRun : "qxhv=*/[@icon=media-playback-start]", toolbarButtonResultOptions : "qxhv=*/[@icon=document-properties]", - stackTraceToggle : "//div[text() = 'Show Stack Trace']", + stackTraceToggle : "qxhv=*/[@label=Show Stack Trace]", toolbarButtonReload : "qxhv=*/[@icon=view-refresh]" }; Modified: trunk/qooxdoo-contrib/Simulator/trunk/tool/selenium/simulation/testrunner/test_testrunner.js =================================================================== --- trunk/qooxdoo-contrib/Simulator/trunk/tool/selenium/simulation/testrunner/test_testrunner.js 2013-09-26 11:34:55 UTC (rev 21869) +++ trunk/qooxdoo-contrib/Simulator/trunk/tool/selenium/simulation/testrunner/test_testrunner.js 2013-09-27 11:34:23 UTC (rev 21870) @@ -23,7 +23,7 @@ var locators = { toolbarButtonRun : "qxhv=*/[@icon=media-playback-start]", toolbarButtonResultOptions : "qxhv=*/[@icon=document-properties]", - stackTraceToggle : "//div[text() = 'Show Stack Trace']", + stackTraceToggle : "qxhv=*/[@label=Show Stack Trace]", toolbarButtonReload : "qxhv=*/[@icon=view-refresh]" }; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <d_w...@us...> - 2013-09-26 11:34:58
|
Revision: 21869 http://sourceforge.net/p/qooxdoo-contrib/code/21869 Author: d_wagner Date: 2013-09-26 11:34:55 +0000 (Thu, 26 Sep 2013) Log Message: ----------- replaced Xpath locators Modified Paths: -------------- trunk/qooxdoo-contrib/Simulator/3.0/tool/selenium/simulation/tutorial/test_tutorial.js trunk/qooxdoo-contrib/Simulator/trunk/tool/selenium/simulation/tutorial/test_tutorial.js Modified: trunk/qooxdoo-contrib/Simulator/3.0/tool/selenium/simulation/tutorial/test_tutorial.js =================================================================== --- trunk/qooxdoo-contrib/Simulator/3.0/tool/selenium/simulation/tutorial/test_tutorial.js 2013-09-19 13:12:37 UTC (rev 21868) +++ trunk/qooxdoo-contrib/Simulator/3.0/tool/selenium/simulation/tutorial/test_tutorial.js 2013-09-26 11:34:55 UTC (rev 21869) @@ -15,20 +15,19 @@ var mySim = new simulation.Simulation(baseConf, args); var locators = { - buttonBackward : "//div[contains(@style, 'media-skip-backward.png')]", - buttonHelp : "//div[text() = 'Help me out']", - buttonRun : "//div[contains(@style, 'media-playback-start.png')]", - buttonSelectTutorial : "//div[text() = 'Select Tutorial']", + buttonBackward : "qxhv=*/[@icon=media-skip-backward.png]", + buttonHelp : "qxhv=*/[@label=Help me out]", + buttonRun : "qxhv=*/[@icon=media-playback-start.png]", + buttonSelectTutorial : "qxhv=*/[@label=Select Tutorial]", windowSelectTutorial : "qxhv=[@classname='tutorial.view.SelectionWindow']", - buttonCloseWindow : "//div[contains(@style, 'close.gif')]", - buttonForward : "//div[contains(@style, 'media-skip-forward.png')]", + buttonCloseWindow : "qxhv=*/[@caption=Select Tutorial]/*/[@source=.*close.gif]", + buttonForward : "qxhv=*/[@icon=media-skip-forward.png]", jsErrorMessage : "//div[contains(@style, 'red')]", - aceContent : "//div[contains(@class, 'ace_content')]", - aceIconWarning : "//div[contains(@class, 'ace_warning')]", - aceIconError : "//div[contains(@class, 'ace_error')]", + aceContent : "css=.ace_content", + aceIconWarning : "css=.ace_warning", + aceIconError : "css=.ace_error", windowConfirm : "qxhv=[@classname='tutorial.view.Confirm']", windowConfirmCheckbox : "qxhv=[@classname='tutorial.view.Confirm']/qx.ui.form.CheckBox", - windowConfirmTitle : "//div[text() = 'Confirm']", windowConfirmButtonCancel : "qxhv=[@classname='tutorial.view.Confirm']/[@label='Cancel']", windowConfirmButtonOk : "qxhv=[@classname='tutorial.view.Confirm']/[@label='Ok']" }; @@ -38,9 +37,12 @@ this.__sel.windowMaximize(); this.__replaceCodeConfirmed = false; + var browserName = this.getEnvironment("browser.name"); + var browserVersion = parseFloat(this.getEnvironment("browser.version")); + var documentMode = parseFloat(this.getEnvironment("browser.documentmode")); this.__isFF36 = false; - if (this.getEnvironment("browser.name") == "firefox" && - parseFloat(this.getEnvironment("browser.version")) < 4 ) + this.__isLegacyIe = false; + if (browserName == "firefox" && browserVersion < 4 ) { this.__isFF36 = true; // qx uses labels instead of divs for the button text but '//label' @@ -49,6 +51,11 @@ locators[locator] = locators[locator].replace("//div[text()", "//*[@value"); } } + + if (browserName == "ie" && documentMode < 9) { + this.__isLegacyIe = true; + } + var titles = this.getTutorialTitles(); for (var i=0,l=titles.length; i<l; i++) { @@ -66,7 +73,7 @@ return; } - if (!this.isElementVisible("//p[text() = '" + shortTitle + "']")) { + if (!this.isElementVisible("qxhv=*/[@value=" + shortTitle + "]")) { this.error("Tutorial title not found in page!", "error"); } @@ -92,7 +99,7 @@ simulation.Simulation.prototype.testTutorialStep = function(step) { this.log(new Date().getTime() + " Testing step " + step, "debug"); - var stepLoc = "//p[starts-with(text(), 'Step " + step + "/')]"; + var stepLoc = "qxhv=*/[@html=.*" + step + ".*]"; if (!this.isElementPresent(stepLoc)) { this.log("Step " + step + " title not found!", "error"); } @@ -132,6 +139,9 @@ simulation.Simulation.prototype.logJsError = function() { var locator, getJSerror; + if (this.__isLegacyIe) { + return; + } if (this.__isFF36) { locator = "//div[contains(@style, 'red')]"; locator = locator.replace(/'/g, "\\'"); @@ -189,10 +199,12 @@ if (!this.isElementPresent(locators.windowSelectTutorial) || !this.isElementVisible(locators.windowSelectTutorial)) { + this.log("Clicking 'Select Tutorial'", "debug"); this.qxClick(locators.buttonSelectTutorial); this.waitForElementPresent(locators.windowSelectTutorial, 4000); } - var tutorialButton = locators.windowSelectTutorial + "/[@label='" + title + "']"; + var tutorialButton = locators.windowSelectTutorial + "/*/[@label=" + title + "]"; + this.log("Clicking '" + title + "'", "debug"); this.qxClick(tutorialButton); this.waitForElementNotPresent(locators.windowSelectTutorial, 2000); }; Modified: trunk/qooxdoo-contrib/Simulator/trunk/tool/selenium/simulation/tutorial/test_tutorial.js =================================================================== --- trunk/qooxdoo-contrib/Simulator/trunk/tool/selenium/simulation/tutorial/test_tutorial.js 2013-09-19 13:12:37 UTC (rev 21868) +++ trunk/qooxdoo-contrib/Simulator/trunk/tool/selenium/simulation/tutorial/test_tutorial.js 2013-09-26 11:34:55 UTC (rev 21869) @@ -15,20 +15,19 @@ var mySim = new simulation.Simulation(baseConf, args); var locators = { - buttonBackward : "//div[contains(@style, 'media-skip-backward.png')]", - buttonHelp : "//div[text() = 'Help me out']", - buttonRun : "//div[contains(@style, 'media-playback-start.png')]", - buttonSelectTutorial : "//div[text() = 'Select Tutorial']", + buttonBackward : "qxhv=*/[@icon=media-skip-backward.png]", + buttonHelp : "qxhv=*/[@label=Help me out]", + buttonRun : "qxhv=*/[@icon=media-playback-start.png]", + buttonSelectTutorial : "qxhv=*/[@label=Select Tutorial]", windowSelectTutorial : "qxhv=[@classname='tutorial.view.SelectionWindow']", - buttonCloseWindow : "//div[contains(@style, 'close.gif')]", - buttonForward : "//div[contains(@style, 'media-skip-forward.png')]", + buttonCloseWindow : "qxhv=*/[@caption=Select Tutorial]/*/[@source=.*close.gif]", + buttonForward : "qxhv=*/[@icon=media-skip-forward.png]", jsErrorMessage : "//div[contains(@style, 'red')]", - aceContent : "//div[contains(@class, 'ace_content')]", - aceIconWarning : "//div[contains(@class, 'ace_warning')]", - aceIconError : "//div[contains(@class, 'ace_error')]", + aceContent : "css=.ace_content", + aceIconWarning : "css=.ace_warning", + aceIconError : "css=.ace_error", windowConfirm : "qxhv=[@classname='tutorial.view.Confirm']", windowConfirmCheckbox : "qxhv=[@classname='tutorial.view.Confirm']/qx.ui.form.CheckBox", - windowConfirmTitle : "//div[text() = 'Confirm']", windowConfirmButtonCancel : "qxhv=[@classname='tutorial.view.Confirm']/[@label='Cancel']", windowConfirmButtonOk : "qxhv=[@classname='tutorial.view.Confirm']/[@label='Ok']" }; @@ -38,9 +37,12 @@ this.__sel.windowMaximize(); this.__replaceCodeConfirmed = false; + var browserName = this.getEnvironment("browser.name"); + var browserVersion = parseFloat(this.getEnvironment("browser.version")); + var documentMode = parseFloat(this.getEnvironment("browser.documentmode")); this.__isFF36 = false; - if (this.getEnvironment("browser.name") == "firefox" && - parseFloat(this.getEnvironment("browser.version")) < 4 ) + this.__isLegacyIe = false; + if (browserName == "firefox" && browserVersion < 4 ) { this.__isFF36 = true; // qx uses labels instead of divs for the button text but '//label' @@ -49,6 +51,11 @@ locators[locator] = locators[locator].replace("//div[text()", "//*[@value"); } } + + if (browserName == "ie" && documentMode < 9) { + this.__isLegacyIe = true; + } + var titles = this.getTutorialTitles(); for (var i=0,l=titles.length; i<l; i++) { @@ -66,7 +73,7 @@ return; } - if (!this.isElementVisible("//p[text() = '" + shortTitle + "']")) { + if (!this.isElementVisible("qxhv=*/[@value=" + shortTitle + "]")) { this.error("Tutorial title not found in page!", "error"); } @@ -92,7 +99,7 @@ simulation.Simulation.prototype.testTutorialStep = function(step) { this.log(new Date().getTime() + " Testing step " + step, "debug"); - var stepLoc = "//p[starts-with(text(), 'Step " + step + "/')]"; + var stepLoc = "qxhv=*/[@html=.*" + step + ".*]"; if (!this.isElementPresent(stepLoc)) { this.log("Step " + step + " title not found!", "error"); } @@ -132,6 +139,9 @@ simulation.Simulation.prototype.logJsError = function() { var locator, getJSerror; + if (this.__isLegacyIe) { + return; + } if (this.__isFF36) { locator = "//div[contains(@style, 'red')]"; locator = locator.replace(/'/g, "\\'"); @@ -189,10 +199,12 @@ if (!this.isElementPresent(locators.windowSelectTutorial) || !this.isElementVisible(locators.windowSelectTutorial)) { + this.log("Clicking 'Select Tutorial'", "debug"); this.qxClick(locators.buttonSelectTutorial); this.waitForElementPresent(locators.windowSelectTutorial, 4000); } - var tutorialButton = locators.windowSelectTutorial + "/[@label='" + title + "']"; + var tutorialButton = locators.windowSelectTutorial + "/*/[@label=" + title + "]"; + this.log("Clicking '" + title + "'", "debug"); this.qxClick(tutorialButton); this.waitForElementNotPresent(locators.windowSelectTutorial, 2000); }; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <d_w...@us...> - 2013-09-19 13:12:40
|
Revision: 21868 http://sourceforge.net/p/qooxdoo-contrib/code/21868 Author: d_wagner Date: 2013-09-19 13:12:37 +0000 (Thu, 19 Sep 2013) Log Message: ----------- replaced some xpath locators with CSS Modified Paths: -------------- trunk/qooxdoo-contrib/Simulator/3.0/tool/selenium/simulation/featureconfigeditor/test_featureconfigeditor.js trunk/qooxdoo-contrib/Simulator/3.0/tool/selenium/simulation/inspector/test_inspector.js trunk/qooxdoo-contrib/Simulator/trunk/tool/selenium/simulation/featureconfigeditor/test_featureconfigeditor.js trunk/qooxdoo-contrib/Simulator/trunk/tool/selenium/simulation/inspector/test_inspector.js Modified: trunk/qooxdoo-contrib/Simulator/3.0/tool/selenium/simulation/featureconfigeditor/test_featureconfigeditor.js =================================================================== --- trunk/qooxdoo-contrib/Simulator/3.0/tool/selenium/simulation/featureconfigeditor/test_featureconfigeditor.js 2013-09-19 12:39:45 UTC (rev 21867) +++ trunk/qooxdoo-contrib/Simulator/3.0/tool/selenium/simulation/featureconfigeditor/test_featureconfigeditor.js 2013-09-19 13:12:37 UTC (rev 21868) @@ -30,7 +30,7 @@ return; } - mySim.__sel.click("//a[contains(text(), 'Launch full configuration editor')]"); + mySim.__sel.click("link=Launch full configuration editor"); mySim.setupEnvironment(); var isAppReady = mySim.waitForCondition(simulation.Simulation.ISQXAPPREADY, 60000, Modified: trunk/qooxdoo-contrib/Simulator/3.0/tool/selenium/simulation/inspector/test_inspector.js =================================================================== --- trunk/qooxdoo-contrib/Simulator/3.0/tool/selenium/simulation/inspector/test_inspector.js 2013-09-19 12:39:45 UTC (rev 21867) +++ trunk/qooxdoo-contrib/Simulator/3.0/tool/selenium/simulation/inspector/test_inspector.js 2013-09-19 13:12:37 UTC (rev 21868) @@ -74,7 +74,7 @@ catch(ex) {} return ready; }; - + this.addOwnFunction("checkApp", checkApp); }; @@ -118,7 +118,7 @@ { var ua = String(this.getEval("navigator.userAgent")); if (ua.indexOf("Linux") && ua.indexOf("Firefox/7")) { - // FF 7 on the Linux test machine has a strange issue where windowMaximize + // FF 7 on the Linux test machine has a strange issue where windowMaximize // resizes the viewport (scroll bars disappear) but not the browser window. // The toolbar overflow button is outside the visible part of the viewport // and clicking it does not open the menu. @@ -136,7 +136,7 @@ } catch(ex) { this.log("Error checking button value: " + ex, "error"); } - + if (buttonValue == "false") { this.qxClick(loc, "", "Clicking button"); Packages.java.lang.Thread.sleep(2000); @@ -202,7 +202,7 @@ // Refresh the view to include objects created after application start this.qxClick(this.locators.windowObjectsReloadButton); Packages.java.lang.Thread.sleep(1000); - + var expectedWidget = this.getSelectedWidget(); // Check if the currently inspected widget is selected in the table var selected = String(this.__sel.qxTableGetSelectedRowData(this.locators.windowObjectsTable)); @@ -213,7 +213,7 @@ } else { this.log("Objects window has correct selection", "info"); } - + // Filter the table and select the first row this.qxType(this.locators.windowObjectsTextField, "qx.ui.toolbar.Button"); Packages.java.lang.Thread.sleep(25000); @@ -237,7 +237,7 @@ this.log("Selected object is not a widget, skipping Widgets window test", "warn"); return; } - + var getTreeSelectionLabels = function(locator) { var tree = selenium.getQxWidgetByLocator(locator); @@ -248,7 +248,7 @@ } return selenium.toJson(labels); }; - + this.addOwnFunction("getTreeSelectionLabels", getTreeSelectionLabels); var treeSelection = String(this.getEval('selenium.browserbot.getCurrentWindow().qx.Simulation.getTreeSelectionLabels("' + this.locators.windowWidgetsTree + '")')); var treeLabels = eval(treeSelection); @@ -258,7 +258,7 @@ } else { this.log("Widgets window: Expected selected widget to be " + expectedWidget + " but found " + selectedWidget, "error"); } - + // Click the tree's root node and check if the inspected widget is updated this.qxClick(this.locators.windowWidgetsTree + "/child[0]"); Packages.java.lang.Thread.sleep(1000); @@ -296,29 +296,29 @@ if (this.getConfigSetting("debug")) { this.log("Loading application " + inspectedAppPath + " in Inspector", "debug"); } - this.qxType("xpath=//input", inspectedAppPath); - + this.qxType("css=input", inspectedAppPath); + if (this.getEnvironment("browser.name") == "safari") { this.qxClick("//div[contains(@style, 'view-refresh')]"); } - + Packages.java.lang.Thread.sleep(10000); var inspectedAppLoaded = "selenium.qxStoredVars['autWindow'].qx.core.Init.getApplication()._loadedWindow.qx.core.Init.getApplication()"; - var isAppReady = mySim.waitForCondition(inspectedAppLoaded, 100000, + var isAppReady = mySim.waitForCondition(inspectedAppLoaded, 100000, "Waiting for inspected application"); - + if (isAppReady) { this.log("Inspected application loaded in Inspector", "info"); } else { this.testFailed = true; - this.log("Inspected application not loaded!", "error"); + this.log("Inspected application not loaded!", "error"); return; } this.checkButtons(); - + var toolbarEnabled = String(this.__sel.getQxObjectFunction(this.locators.inspectorToolBar, "getEnabled")); if (toolbarEnabled == "false") { this.log("Inspector toolbar is disabled!", "error"); @@ -327,21 +327,21 @@ else { this.log("Inspector toolbar is enabled.", "info"); } - + var selectedWidgetInitial = this.getSelectedWidget(); this.log("Initially selected widget: " + selectedWidgetInitial, "info"); - + this.selectWidgetByClick(); var selectedWidget = this.getSelectedWidget(); if (selectedWidgetInitial == selectedWidget) { this.log("Selected widget did not change", "error"); } - + var browser = this.getEval("navigator.userAgent"); var launcher = this.getConfigSetting("testBrowser"); // Simulating native key events doesn't work in WebKit - // The Console window uses window.top to eval commands which doesn't work - // during IE tests because the Inspector is loaded in an Iframe + // The Console window uses window.top to eval commands which doesn't work + // during IE tests because the Inspector is loaded in an Iframe if (browser.indexOf("AppleWebKit") < 0 && launcher.indexOf("*iexplore") < 0 && browser.indexOf("Firefox/4") < 0) { try { @@ -350,26 +350,26 @@ this.log("Exception while checking Console window: " + ex, "error"); } } - + try { this.checkProperties(); } catch(ex) { this.log("Exception while checking Properties window: " + ex, "error"); } - + /* try { this.checkObjects(); } catch(ex) { this.log("Exception while checking Objects window: " + ex, "error"); } - + try { this.checkWidgets(); } catch(ex) { this.log("Exception while checking Widgets window: " + ex, "error"); } - + if (!this.getConfigSetting("autHost").indexOf("file") == 0 ) { try { this.checkSelenium(); @@ -382,16 +382,16 @@ }; // - Main -------------------------------------------------------------------- -(function() { +(function() { mySim.testFailed = false; var sessionStarted = mySim.startSession(); - + if (!sessionStarted) { return; } - var isAppReady = mySim.waitForCondition(simulation.Simulation.ISQXAPPREADY, 60000, + var isAppReady = mySim.waitForCondition(simulation.Simulation.ISQXAPPREADY, 60000, "Waiting for qooxdoo application"); @@ -401,10 +401,11 @@ return; } - try { + //try { mySim.setupApplicationLogging(); mySim.addGlobalErrorHandler(); mySim.runTest(); + /* } catch(ex) { mySim.testFailed = true; @@ -414,10 +415,11 @@ } mySim.log(msg + "<br/>" + ex, "error"); } + */ mySim.logGlobalErrors(); mySim.logResults(); mySim.stop(); -})(); \ No newline at end of file +})(); Modified: trunk/qooxdoo-contrib/Simulator/trunk/tool/selenium/simulation/featureconfigeditor/test_featureconfigeditor.js =================================================================== --- trunk/qooxdoo-contrib/Simulator/trunk/tool/selenium/simulation/featureconfigeditor/test_featureconfigeditor.js 2013-09-19 12:39:45 UTC (rev 21867) +++ trunk/qooxdoo-contrib/Simulator/trunk/tool/selenium/simulation/featureconfigeditor/test_featureconfigeditor.js 2013-09-19 13:12:37 UTC (rev 21868) @@ -30,7 +30,7 @@ return; } - mySim.__sel.click("//a[contains(text(), 'Launch full configuration editor')]"); + mySim.__sel.click("link=Launch full configuration editor"); mySim.setupEnvironment(); var isAppReady = mySim.waitForCondition(simulation.Simulation.ISQXAPPREADY, 60000, Modified: trunk/qooxdoo-contrib/Simulator/trunk/tool/selenium/simulation/inspector/test_inspector.js =================================================================== --- trunk/qooxdoo-contrib/Simulator/trunk/tool/selenium/simulation/inspector/test_inspector.js 2013-09-19 12:39:45 UTC (rev 21867) +++ trunk/qooxdoo-contrib/Simulator/trunk/tool/selenium/simulation/inspector/test_inspector.js 2013-09-19 13:12:37 UTC (rev 21868) @@ -74,7 +74,7 @@ catch(ex) {} return ready; }; - + this.addOwnFunction("checkApp", checkApp); }; @@ -118,7 +118,7 @@ { var ua = String(this.getEval("navigator.userAgent")); if (ua.indexOf("Linux") && ua.indexOf("Firefox/7")) { - // FF 7 on the Linux test machine has a strange issue where windowMaximize + // FF 7 on the Linux test machine has a strange issue where windowMaximize // resizes the viewport (scroll bars disappear) but not the browser window. // The toolbar overflow button is outside the visible part of the viewport // and clicking it does not open the menu. @@ -136,7 +136,7 @@ } catch(ex) { this.log("Error checking button value: " + ex, "error"); } - + if (buttonValue == "false") { this.qxClick(loc, "", "Clicking button"); Packages.java.lang.Thread.sleep(2000); @@ -202,7 +202,7 @@ // Refresh the view to include objects created after application start this.qxClick(this.locators.windowObjectsReloadButton); Packages.java.lang.Thread.sleep(1000); - + var expectedWidget = this.getSelectedWidget(); // Check if the currently inspected widget is selected in the table var selected = String(this.__sel.qxTableGetSelectedRowData(this.locators.windowObjectsTable)); @@ -213,7 +213,7 @@ } else { this.log("Objects window has correct selection", "info"); } - + // Filter the table and select the first row this.qxType(this.locators.windowObjectsTextField, "qx.ui.toolbar.Button"); Packages.java.lang.Thread.sleep(25000); @@ -237,7 +237,7 @@ this.log("Selected object is not a widget, skipping Widgets window test", "warn"); return; } - + var getTreeSelectionLabels = function(locator) { var tree = selenium.getQxWidgetByLocator(locator); @@ -248,7 +248,7 @@ } return selenium.toJson(labels); }; - + this.addOwnFunction("getTreeSelectionLabels", getTreeSelectionLabels); var treeSelection = String(this.getEval('selenium.browserbot.getCurrentWindow().qx.Simulation.getTreeSelectionLabels("' + this.locators.windowWidgetsTree + '")')); var treeLabels = eval(treeSelection); @@ -258,7 +258,7 @@ } else { this.log("Widgets window: Expected selected widget to be " + expectedWidget + " but found " + selectedWidget, "error"); } - + // Click the tree's root node and check if the inspected widget is updated this.qxClick(this.locators.windowWidgetsTree + "/child[0]"); Packages.java.lang.Thread.sleep(1000); @@ -296,29 +296,29 @@ if (this.getConfigSetting("debug")) { this.log("Loading application " + inspectedAppPath + " in Inspector", "debug"); } - this.qxType("xpath=//input", inspectedAppPath); - + this.qxType("css=input", inspectedAppPath); + if (this.getEnvironment("browser.name") == "safari") { this.qxClick("//div[contains(@style, 'view-refresh')]"); } - + Packages.java.lang.Thread.sleep(10000); var inspectedAppLoaded = "selenium.qxStoredVars['autWindow'].qx.core.Init.getApplication()._loadedWindow.qx.core.Init.getApplication()"; - var isAppReady = mySim.waitForCondition(inspectedAppLoaded, 100000, + var isAppReady = mySim.waitForCondition(inspectedAppLoaded, 100000, "Waiting for inspected application"); - + if (isAppReady) { this.log("Inspected application loaded in Inspector", "info"); } else { this.testFailed = true; - this.log("Inspected application not loaded!", "error"); + this.log("Inspected application not loaded!", "error"); return; } this.checkButtons(); - + var toolbarEnabled = String(this.__sel.getQxObjectFunction(this.locators.inspectorToolBar, "getEnabled")); if (toolbarEnabled == "false") { this.log("Inspector toolbar is disabled!", "error"); @@ -327,21 +327,21 @@ else { this.log("Inspector toolbar is enabled.", "info"); } - + var selectedWidgetInitial = this.getSelectedWidget(); this.log("Initially selected widget: " + selectedWidgetInitial, "info"); - + this.selectWidgetByClick(); var selectedWidget = this.getSelectedWidget(); if (selectedWidgetInitial == selectedWidget) { this.log("Selected widget did not change", "error"); } - + var browser = this.getEval("navigator.userAgent"); var launcher = this.getConfigSetting("testBrowser"); // Simulating native key events doesn't work in WebKit - // The Console window uses window.top to eval commands which doesn't work - // during IE tests because the Inspector is loaded in an Iframe + // The Console window uses window.top to eval commands which doesn't work + // during IE tests because the Inspector is loaded in an Iframe if (browser.indexOf("AppleWebKit") < 0 && launcher.indexOf("*iexplore") < 0 && browser.indexOf("Firefox/4") < 0) { try { @@ -350,26 +350,26 @@ this.log("Exception while checking Console window: " + ex, "error"); } } - + try { this.checkProperties(); } catch(ex) { this.log("Exception while checking Properties window: " + ex, "error"); } - + /* try { this.checkObjects(); } catch(ex) { this.log("Exception while checking Objects window: " + ex, "error"); } - + try { this.checkWidgets(); } catch(ex) { this.log("Exception while checking Widgets window: " + ex, "error"); } - + if (!this.getConfigSetting("autHost").indexOf("file") == 0 ) { try { this.checkSelenium(); @@ -382,16 +382,16 @@ }; // - Main -------------------------------------------------------------------- -(function() { +(function() { mySim.testFailed = false; var sessionStarted = mySim.startSession(); - + if (!sessionStarted) { return; } - var isAppReady = mySim.waitForCondition(simulation.Simulation.ISQXAPPREADY, 60000, + var isAppReady = mySim.waitForCondition(simulation.Simulation.ISQXAPPREADY, 60000, "Waiting for qooxdoo application"); @@ -401,10 +401,11 @@ return; } - try { + //try { mySim.setupApplicationLogging(); mySim.addGlobalErrorHandler(); mySim.runTest(); + /* } catch(ex) { mySim.testFailed = true; @@ -414,10 +415,11 @@ } mySim.log(msg + "<br/>" + ex, "error"); } + */ mySim.logGlobalErrors(); mySim.logResults(); mySim.stop(); -})(); \ No newline at end of file +})(); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <d_w...@us...> - 2013-09-19 12:39:48
|
Revision: 21867 http://sourceforge.net/p/qooxdoo-contrib/code/21867 Author: d_wagner Date: 2013-09-19 12:39:45 +0000 (Thu, 19 Sep 2013) Log Message: ----------- replaced qx.bom.Collection with qxWeb Modified Paths: -------------- trunk/qooxdoo-contrib/Simulator/3.0/tool/selenium/simulation/Simulation.js trunk/qooxdoo-contrib/Simulator/trunk/tool/selenium/simulation/Simulation.js Modified: trunk/qooxdoo-contrib/Simulator/3.0/tool/selenium/simulation/Simulation.js =================================================================== --- trunk/qooxdoo-contrib/Simulator/3.0/tool/selenium/simulation/Simulation.js 2013-09-03 12:41:32 UTC (rev 21866) +++ trunk/qooxdoo-contrib/Simulator/3.0/tool/selenium/simulation/Simulation.js 2013-09-19 12:39:45 UTC (rev 21867) @@ -823,18 +823,15 @@ }; /** - * Creates a {@link qx.bom.Collection} and returns the innerHTML of each element + * Creates a qxWeb Collection and returns the innerHTML of each element * in the collection in an array. * @param query {String} Selector query string * @return {String[]} Array of HTML strings */ simulation.Simulation.prototype.getInnerHtmlFromCollection = function(query) { - var getter="var titles = [];" + - "var coll = selenium.browserbot.getCurrentWindow().qx.bom.Collection.query('" + query + "');" + - "for (var i=0, l=coll.length; i<l; i++) {" + - "titles.push(coll[i].innerHTML)" + - "}" + + var getter = "var titles = [];" + + "selenium.browserbot.getCurrentWindow().qxWeb('" + query + "').forEach(function(item) { titles.push(item.innerHTML); });" + "selenium.browserbot.getCurrentWindow().qx.lang.Json.stringify(titles);"; var stringResult; Modified: trunk/qooxdoo-contrib/Simulator/trunk/tool/selenium/simulation/Simulation.js =================================================================== --- trunk/qooxdoo-contrib/Simulator/trunk/tool/selenium/simulation/Simulation.js 2013-09-03 12:41:32 UTC (rev 21866) +++ trunk/qooxdoo-contrib/Simulator/trunk/tool/selenium/simulation/Simulation.js 2013-09-19 12:39:45 UTC (rev 21867) @@ -823,18 +823,15 @@ }; /** - * Creates a {@link qx.bom.Collection} and returns the innerHTML of each element + * Creates a qxWeb Collection and returns the innerHTML of each element * in the collection in an array. * @param query {String} Selector query string * @return {String[]} Array of HTML strings */ simulation.Simulation.prototype.getInnerHtmlFromCollection = function(query) { - var getter="var titles = [];" + - "var coll = selenium.browserbot.getCurrentWindow().qx.bom.Collection.query('" + query + "');" + - "for (var i=0, l=coll.length; i<l; i++) {" + - "titles.push(coll[i].innerHTML)" + - "}" + + var getter = "var titles = [];" + + "selenium.browserbot.getCurrentWindow().qxWeb('" + query + "').forEach(function(item) { titles.push(item.innerHTML); });" + "selenium.browserbot.getCurrentWindow().qx.lang.Json.stringify(titles);"; var stringResult; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <d_w...@us...> - 2013-09-03 12:41:33
|
Revision: 21866 http://sourceforge.net/p/qooxdoo-contrib/code/21866 Author: d_wagner Date: 2013-09-03 12:41:32 +0000 (Tue, 03 Sep 2013) Log Message: ----------- Select the newest supported qx version when opening a contrib that's not compatible with the current release Modified Paths: -------------- trunk/qooxdoo-contrib/qooxdoo/contribDemobrowser/source/class/contribdemobrowser/DemoBrowser.js Modified: trunk/qooxdoo-contrib/qooxdoo/contribDemobrowser/source/class/contribdemobrowser/DemoBrowser.js =================================================================== --- trunk/qooxdoo-contrib/qooxdoo/contribDemobrowser/source/class/contribdemobrowser/DemoBrowser.js 2013-09-03 12:26:20 UTC (rev 21865) +++ trunk/qooxdoo-contrib/qooxdoo/contribDemobrowser/source/class/contribdemobrowser/DemoBrowser.js 2013-09-03 12:41:32 UTC (rev 21866) @@ -75,7 +75,7 @@ var versionComposite = new qx.ui.container.Composite(); versionComposite.setLayout(new qx.ui.layout.HBox(3)); this._leftComposite.add(versionComposite); - var versionLabel = new qx.ui.basic.Label("Compatible with: "); + var versionLabel = new qx.ui.basic.Label("Compatible with qx version: "); versionLabel.setPadding(4, 5, 0, 2); versionComposite.add(versionLabel); @@ -331,6 +331,13 @@ var url; var qxVersion; var treeNode = this._sampleToTreeNodeMap[value]; + if (!treeNode) { + var found = this._getQxVersionForContrib(value); + if (found) { + qxVersion = found[0]; + treeNode = found[1]; + } + } if (treeNode) { @@ -341,7 +348,6 @@ qxVersion = res[1]; } } - if (qxVersion) { this._setVersionFilter(qxVersion); } @@ -376,11 +382,49 @@ }, + _getQxVersionForContrib: function(contribName) { + var items = this._tree.getRoot().getItems(true, true); + var qxVersion = null; + var contrib = null; + var contribTreeNode = null; + items.forEach(function(item, index) { + var candidate = item.getUserData("modelLink"); + if (candidate.label == contribName) { + contrib = candidate; + contribTreeNode = item; + var versions = contrib.getChildren().sort(function(a, b) { + if (a.label == "trunk") { + return 1; + } + if (b.label == "trunk") { + return -1; + } + if (parseFloat(a.label) > parseFloat(b.label)) { + return 1; + } + if (parseFloat(a.label) < parseFloat(b.label)) { + return -1; + } + return 0; + }); + var latest = versions[versions.length - 1]; + if (latest.manifest && latest.manifest.info && latest.manifest.info["qooxdoo-versions"]) { + var qxVersions = latest.manifest.info["qooxdoo-versions"].sort(); + qxVersion = qxVersions[qxVersions.length - 1]; + return; + } + } + }.bind(this)); + + return (qxVersion && contribTreeNode) ? [qxVersion, contribTreeNode] : null; + }, + + _setVersionFilter : function(qxVersion) { var items = this.__versionSelect.getSelectables(true); for (var i=0,l=items.length; i<l; i++) { - if (items[i].getModel() == "qxVersion_" + qxVersion) { + if (items[i].getModel().indexOf("qxVersion_" + qxVersion) === 0) { this.__versionSelect.setSelection([items[i]]); } } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <d_w...@us...> - 2013-09-03 12:26:23
|
Revision: 21865 http://sourceforge.net/p/qooxdoo-contrib/code/21865 Author: d_wagner Date: 2013-09-03 12:26:20 +0000 (Tue, 03 Sep 2013) Log Message: ----------- minor updates for qx 3.0 Modified Paths: -------------- trunk/qooxdoo-contrib/qooxdoo/contribDemobrowser/source/class/contribdemobrowser/Application.js trunk/qooxdoo-contrib/qooxdoo/contribDemobrowser/source/class/contribdemobrowser/DemoBrowser.js trunk/qooxdoo-contrib/qooxdoo/contribDemobrowser/source/class/contribdemobrowser/Manifest.js Modified: trunk/qooxdoo-contrib/qooxdoo/contribDemobrowser/source/class/contribdemobrowser/Application.js =================================================================== --- trunk/qooxdoo-contrib/qooxdoo/contribDemobrowser/source/class/contribdemobrowser/Application.js 2013-09-03 08:25:14 UTC (rev 21864) +++ trunk/qooxdoo-contrib/qooxdoo/contribDemobrowser/source/class/contribdemobrowser/Application.js 2013-09-03 12:26:20 UTC (rev 21865) @@ -8,13 +8,11 @@ ************************************************************************ */ -/* ************************************************************************ +/** + * @asset(contribdemobrowser/*) + * @asset(demobrowser/*) + */ -#asset(contribdemobrowser/*) -#asset(demobrowser/*) - -************************************************************************ */ - /** * This is the main application class of your custom application "contribdemobrowser" */ Modified: trunk/qooxdoo-contrib/qooxdoo/contribDemobrowser/source/class/contribdemobrowser/DemoBrowser.js =================================================================== --- trunk/qooxdoo-contrib/qooxdoo/contribDemobrowser/source/class/contribdemobrowser/DemoBrowser.js 2013-09-03 08:25:14 UTC (rev 21864) +++ trunk/qooxdoo-contrib/qooxdoo/contribDemobrowser/source/class/contribdemobrowser/DemoBrowser.js 2013-09-03 12:26:20 UTC (rev 21865) @@ -8,12 +8,8 @@ ************************************************************************ */ -/* ************************************************************************ -#asset(qx/icon/Tango/22/apps/utilities-dictionary.png) -************************************************************************ */ - /** - * + * @asset(qx/icon/Tango/22/apps/utilities-dictionary.png) */ qx.Class.define("contribdemobrowser.DemoBrowser", { @@ -22,15 +18,15 @@ construct : function() { this.base(arguments); - + this.__versionSelect.addListener("changeSelection", function(ev) { this._versionFilter = ev.getData()[0].getModel(); this.filter(this._searchTextField.getValue() || ""); }, this); - + this.__demoStack = this.__makeDemoStack(); this._infosplit.add(this.__demoStack, 2); - + this._apiButton = new qx.ui.toolbar.Button("Open API Viewer", "icon/22/apps/utilities-dictionary.png"); this._apiButton.setEnabled(false); this._apiButton.addListener("execute", function(ev) { @@ -38,7 +34,7 @@ }, this); this._navPart.add(this._apiButton); }, - + members : { __versionSelect : null, @@ -46,7 +42,7 @@ __infoView : null, __readmeView : null, __demoStack : null, - + /** * Creates the application header. */ @@ -55,14 +51,14 @@ var layout = new qx.ui.layout.HBox(); var header = new qx.ui.container.Composite(layout); header.setAppearance("app-header"); - + var title = new qx.ui.basic.Label("Contrib Demo Browser"); - - header.add(title); + + header.add(title); return header; }, - - + + __makeDemoStack : function() { var demoStack = new qx.ui.container.Stack(); @@ -73,7 +69,7 @@ demoStack.add(this.__readmeView); return demoStack; }, - + _makeVersionSelect : function() { var versionComposite = new qx.ui.container.Composite(); @@ -92,8 +88,8 @@ this.__versionSelect.add(itemAll); */ }, - - + + /** * Add a library version's "qxVersion" tags to the list of version tags * @@ -113,8 +109,8 @@ } } }, - + /** * Add an option for each version to the version select box */ @@ -132,20 +128,8 @@ li.setModel("qxVersion_" + versions[i]); this.__versionSelect.add(li); } - - /* - if (this.__versionSelect.getSelection()[0].getLabel().indexOf("-pre")) { - var items = this.__versionSelect.getChildren(); - for (var i=0,l=items.length; i<l; i++) { - if (items[i].getLabel().indexOf("-pre") < 0) { - this.__versionSelect.setSelection([items[i]]); - break; - } - } - } - */ }, - + treeGetSelection : function(e) { this._apiButton.setEnabled(false); @@ -170,14 +154,14 @@ libJobs.push("demo"); // Don't display redundant "homepage" manifest entry if (modelNode.manifest.info.homepage) { - delete modelNode.manifest.info.homepage; + delete modelNode.manifest.info.homepage; } - if (modelNode.parent.jobsExecuted && + if (modelNode.parent.jobsExecuted && qx.lang.Array.contains(modelNode.parent.jobsExecuted, "api")) { this._apiButton.setEnabled(true); } } - + this.__infoView.setManifestData(modelNode.manifest); this.__infoView.setFeatures(libJobs); this.setActiveView("manifest"); @@ -199,7 +183,7 @@ this.setActiveView("demo"); } }, - + setActiveView : function(view) { switch (view) { @@ -211,9 +195,9 @@ break; default: this.__demoStack.setSelection([this._demoView]); - } + } }, - + /** * event handler for the Run Test button - performs the tests * @@ -223,7 +207,7 @@ runSample : function(e) { this.setActiveView("demo"); - + if (this.tests.selected && this.tests.selected.indexOf(".html") > 0) { var file = this.tests.selected.replace(/\|/g, "/"); @@ -232,7 +216,7 @@ this.playNext(); } }, - + /** * Opens the API Viewer for the selected library version */ @@ -245,11 +229,11 @@ //demo selected, look at its parent library modelNode = modelNode.parent; } - + if (modelNode && modelNode.manifest.provides && modelNode.manifest.provides.namespace) { nameSpace = modelNode.manifest.provides.namespace; } - + var file = this.tests.handler.getFullName(modelNode).replace(/\|/g, "/"); var apiViewerUrl = 'demo/' + file + '/api/index.html'; if (nameSpace) { @@ -257,11 +241,11 @@ } window.open(apiViewerUrl, "_blank"); }, - + /** * Loads the sample preceding the currently selected one - * - * @param {Event} e + * + * @param e {Event} The command's execute event */ playPrev : function(e) { @@ -292,11 +276,11 @@ this._runbutton.setVisibility("visible"); } }, - + /** * Loads the sample following the currently selected one - * - * @param {Event} e + * + * @param e {Event} The command's execute event */ playNext : function(e) { @@ -327,7 +311,7 @@ this._runbutton.setVisibility("visible"); } }, - + /** * TODOC * @@ -345,20 +329,25 @@ } var url; + var qxVersion; var treeNode = this._sampleToTreeNodeMap[value]; + if (treeNode) { if (setFilter) { - var qxVersion = /\/.*?\/.*?\/(.*?)\/index.html$/.exec(value); + if (!qxVersion) { + var res = /\/.*?\/.*?\/(.*?)\/index.html$/.exec(value); + if (res) { + qxVersion = res[1]; + } + } + if (qxVersion) { - this._setVersionFilter(qxVersion[1]); + this._setVersionFilter(qxVersion); } } url = 'demo/' + value; treeNode.getTree().setSelection([treeNode]); - if (setFilter) { - this.setActiveView("demo"); - } } else { @@ -385,8 +374,8 @@ this._currentSample = value; this._currentSampleUrl = url; }, - - + + _setVersionFilter : function(qxVersion) { var items = this.__versionSelect.getSelectables(true); @@ -395,10 +384,10 @@ this.__versionSelect.setSelection([items[i]]); } } - + }, - - + + /** * This method filters the folders in the tree. * @param term {String} The search term. @@ -407,14 +396,14 @@ { var searchRegExp = new RegExp("^.*" + term + ".*", "ig"); var items = this._tree.getRoot().getItems(true, true); - + var showing = 0; var count = 0; for (var i = 0; i < items.length; i++) { items[i].setOpen(false); items[i].exclude(); } - + for (var i = 0; i < items.length; i++) { var file = items[i]; var tags = file.getUserData("tags"); @@ -422,20 +411,20 @@ continue; } count++; - + var inTags = false; var selectedVersion = false; for (var j = 0; j < tags.length; j++) { - + if (!!tags[j].match(searchRegExp)) { inTags = true; } - + if (!this._versionFilter || tags[j] == this._versionFilter) { selectedVersion = true; } } - + if (inTags && selectedVersion) { file.show(); showing++; @@ -449,11 +438,11 @@ file.exclude(); } } - + this._status.setValue(showing + "/" + count); }, - - + + /** * TODOC * @@ -504,10 +493,9 @@ req.send(); } - - + }, - + /* ***************************************************************************** DESTRUCTOR @@ -516,7 +504,7 @@ destruct : function() { - this._disposeObjects("__demoStack", "__infoView", "__readmeView", + this._disposeObjects("__demoStack", "__infoView", "__readmeView", "__versionTags", "__versionSelect"); } }); Modified: trunk/qooxdoo-contrib/qooxdoo/contribDemobrowser/source/class/contribdemobrowser/Manifest.js =================================================================== --- trunk/qooxdoo-contrib/qooxdoo/contribDemobrowser/source/class/contribdemobrowser/Manifest.js 2013-09-03 08:25:14 UTC (rev 21864) +++ trunk/qooxdoo-contrib/qooxdoo/contribDemobrowser/source/class/contribdemobrowser/Manifest.js 2013-09-03 12:26:20 UTC (rev 21865) @@ -17,15 +17,11 @@ ************************************************************************ */ -/* ************************************************************************ - -#asset(qx/icon/Tango/22/actions/media-playback-start.png) -#asset(qx/icon/Tango/22/apps/utilities-dictionary.png) - -************************************************************************ */ - /** * Displays the "info" section of a qooxdoo application's Manifest.json file. + * + * @asset(qx/icon/Tango/22/actions/media-playback-start.png) + * @asset(qx/icon/Tango/22/apps/utilities-dictionary.png) */ qx.Class.define("contribdemobrowser.Manifest", { @@ -53,7 +49,7 @@ { apply : "_applyManifestData" }, - + features : { apply : "_applyFeatures" @@ -107,13 +103,13 @@ this.__container.add(this._getGroupBox("Info", this._getSortedInfo(value.info))); }, - + _applyFeatures : function(value, old) { if (value === old) { return; } - + for (var i=0,l=value.length; i<l; i++) { switch(value[i]) { case "demo": @@ -185,7 +181,7 @@ return runButton; }, - + _getApiViewerButton : function() { if (this.__apiviewerButton) { @@ -278,4 +274,4 @@ this._disposeObjects("__container", "__runButton", "__apiviewerButton"); } -}); \ No newline at end of file +}); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <d_w...@us...> - 2013-09-03 08:25:18
|
Revision: 21864 http://sourceforge.net/p/qooxdoo-contrib/code/21864 Author: d_wagner Date: 2013-09-03 08:25:14 +0000 (Tue, 03 Sep 2013) Log Message: ----------- wait before querying the DOM (fixes exception in Firefox tests) Modified Paths: -------------- trunk/qooxdoo-contrib/Simulator/3.0/tool/selenium/simulation/unittests/test_unittests_website.js trunk/qooxdoo-contrib/Simulator/trunk/tool/selenium/simulation/unittests/test_unittests_website.js Modified: trunk/qooxdoo-contrib/Simulator/3.0/tool/selenium/simulation/unittests/test_unittests_website.js =================================================================== --- trunk/qooxdoo-contrib/Simulator/3.0/tool/selenium/simulation/unittests/test_unittests_website.js 2013-08-05 15:08:00 UTC (rev 21863) +++ trunk/qooxdoo-contrib/Simulator/3.0/tool/selenium/simulation/unittests/test_unittests_website.js 2013-09-03 08:25:14 UTC (rev 21864) @@ -21,7 +21,7 @@ simulation.Simulation.prototype.logResults = function() { var getStatus = 'selenium.browserbot.getCurrentWindow().document.getElementById("status").innerHTML'; - + var status = this.__sel.getEval(getStatus); var failed = /Failed: (\d+)/.exec(status); var totalErrors; @@ -33,7 +33,7 @@ else { totalErrors = 1; } - + if (!totalErrors) { this.log("Could not retrieve failed test count!", "error"); totalErrors = 1; @@ -52,17 +52,18 @@ if (!sessionStarted) { return; } - + var uri = mySim.getConfigSetting("autHost") + "" + mySim.getConfigSetting("autPath"); var delimiter = uri.indexOf('?') == -1 ? '?' : '&'; uri += delimiter + 'autorun=1'; mySim.__sel.open(uri); - + + Packages.java.lang.Thread.sleep(2000); mySim.waitForElementPresent("//span[contains(text(), 'Test suite finished')]", 300000); Packages.java.lang.Thread.sleep(5000); - + mySim.logResults(); - + mySim.stop(); mySim.logTestDuration(); -})(); \ No newline at end of file +})(); Modified: trunk/qooxdoo-contrib/Simulator/trunk/tool/selenium/simulation/unittests/test_unittests_website.js =================================================================== --- trunk/qooxdoo-contrib/Simulator/trunk/tool/selenium/simulation/unittests/test_unittests_website.js 2013-08-05 15:08:00 UTC (rev 21863) +++ trunk/qooxdoo-contrib/Simulator/trunk/tool/selenium/simulation/unittests/test_unittests_website.js 2013-09-03 08:25:14 UTC (rev 21864) @@ -21,7 +21,7 @@ simulation.Simulation.prototype.logResults = function() { var getStatus = 'selenium.browserbot.getCurrentWindow().document.getElementById("status").innerHTML'; - + var status = this.__sel.getEval(getStatus); var failed = /Failed: (\d+)/.exec(status); var totalErrors; @@ -33,7 +33,7 @@ else { totalErrors = 1; } - + if (!totalErrors) { this.log("Could not retrieve failed test count!", "error"); totalErrors = 1; @@ -52,17 +52,18 @@ if (!sessionStarted) { return; } - + var uri = mySim.getConfigSetting("autHost") + "" + mySim.getConfigSetting("autPath"); var delimiter = uri.indexOf('?') == -1 ? '?' : '&'; uri += delimiter + 'autorun=1'; mySim.__sel.open(uri); - + + Packages.java.lang.Thread.sleep(2000); mySim.waitForElementPresent("//span[contains(text(), 'Test suite finished')]", 300000); Packages.java.lang.Thread.sleep(5000); - + mySim.logResults(); - + mySim.stop(); mySim.logTestDuration(); -})(); \ No newline at end of file +})(); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <d_w...@us...> - 2013-08-05 15:08:03
|
Revision: 21863 http://sourceforge.net/p/qooxdoo-contrib/code/21863 Author: d_wagner Date: 2013-08-05 15:08:00 +0000 (Mon, 05 Aug 2013) Log Message: ----------- fixed demo log access Modified Paths: -------------- trunk/qooxdoo-contrib/Simulator/3.0/tool/selenium/simulation/demobrowser/test_demobrowser.js trunk/qooxdoo-contrib/Simulator/trunk/tool/selenium/simulation/demobrowser/test_demobrowser.js Modified: trunk/qooxdoo-contrib/Simulator/3.0/tool/selenium/simulation/demobrowser/test_demobrowser.js =================================================================== --- trunk/qooxdoo-contrib/Simulator/3.0/tool/selenium/simulation/demobrowser/test_demobrowser.js 2013-08-05 14:42:25 UTC (rev 21862) +++ trunk/qooxdoo-contrib/Simulator/3.0/tool/selenium/simulation/demobrowser/test_demobrowser.js 2013-08-05 15:08:00 UTC (rev 21863) @@ -58,8 +58,7 @@ toolbarLogButton : "qxhv=*/qx.ui.toolbar.ToolBar/*/[@label=Log File]", overflowButton : "//div[contains(@style, 'media-seek-forward')]", overflowMenuLogFileButton : "//div[text() = 'Log File']/parent::div", - //logEmbed : 'qxhv=[@classname="demobrowser.DemoBrowser"]/qx.ui.splitpane.Pane/qx.ui.splitpane.Pane/qx.ui.container.Stack/[@classname="qxc.ui.logpane.LogView"]/qx.ui.embed.Html' - logEmbed: '//div[@qxclass="qxc.ui.logpane.LogView"]/div[@qxclass="qx.ui.embed.Html"]/div' + logEmbed: '//div[@class="qxappender"]' }; mySim.qxLog = "selenium.page().findElement('" + mySim.locators.logEmbed + "').innerHTML"; /* @@ -260,9 +259,10 @@ this.openLog(); print(category + " - " + currentSample + ": Processing log"); - var sampleLog = String(this.getEval(this.qxLog, "Getting log for sample " + category + " - " + currentSample)); - - if (!sampleLog) { + var sampleLog; + try { + sampleLog = String(this.getEval(this.qxLog, "Getting log for sample " + category + " - " + currentSample)); + } catch(ex) { this.log("Unable to get log for sample " + category + "-" + currentSample, "error"); return [category,currentSample]; } Modified: trunk/qooxdoo-contrib/Simulator/trunk/tool/selenium/simulation/demobrowser/test_demobrowser.js =================================================================== --- trunk/qooxdoo-contrib/Simulator/trunk/tool/selenium/simulation/demobrowser/test_demobrowser.js 2013-08-05 14:42:25 UTC (rev 21862) +++ trunk/qooxdoo-contrib/Simulator/trunk/tool/selenium/simulation/demobrowser/test_demobrowser.js 2013-08-05 15:08:00 UTC (rev 21863) @@ -58,8 +58,7 @@ toolbarLogButton : "qxhv=*/qx.ui.toolbar.ToolBar/*/[@label=Log File]", overflowButton : "//div[contains(@style, 'media-seek-forward')]", overflowMenuLogFileButton : "//div[text() = 'Log File']/parent::div", - //logEmbed : 'qxhv=[@classname="demobrowser.DemoBrowser"]/qx.ui.splitpane.Pane/qx.ui.splitpane.Pane/qx.ui.container.Stack/[@classname="qxc.ui.logpane.LogView"]/qx.ui.embed.Html' - logEmbed: '//div[@qxclass="qxc.ui.logpane.LogView"]/div[@qxclass="qx.ui.embed.Html"]/div' + logEmbed: '//div[@class="qxappender"]' }; mySim.qxLog = "selenium.page().findElement('" + mySim.locators.logEmbed + "').innerHTML"; /* @@ -260,9 +259,10 @@ this.openLog(); print(category + " - " + currentSample + ": Processing log"); - var sampleLog = String(this.getEval(this.qxLog, "Getting log for sample " + category + " - " + currentSample)); - - if (!sampleLog) { + var sampleLog; + try { + sampleLog = String(this.getEval(this.qxLog, "Getting log for sample " + category + " - " + currentSample)); + } catch(ex) { this.log("Unable to get log for sample " + category + "-" + currentSample, "error"); return [category,currentSample]; } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <d_w...@us...> - 2013-08-05 14:42:28
|
Revision: 21862 http://sourceforge.net/p/qooxdoo-contrib/code/21862 Author: d_wagner Date: 2013-08-05 14:42:25 +0000 (Mon, 05 Aug 2013) Log Message: ----------- minor fix Modified Paths: -------------- trunk/qooxdoo-contrib/Simulator/3.0/tool/selenium/simulation/mobileshowcase/test_mobileshowcase.js Modified: trunk/qooxdoo-contrib/Simulator/3.0/tool/selenium/simulation/mobileshowcase/test_mobileshowcase.js =================================================================== --- trunk/qooxdoo-contrib/Simulator/3.0/tool/selenium/simulation/mobileshowcase/test_mobileshowcase.js 2013-08-05 14:25:42 UTC (rev 21861) +++ trunk/qooxdoo-contrib/Simulator/3.0/tool/selenium/simulation/mobileshowcase/test_mobileshowcase.js 2013-08-05 14:42:25 UTC (rev 21862) @@ -43,7 +43,7 @@ { var selWin = simulation.Simulation.SELENIUMWINDOW; //var qxAppInst = simulation.Simulation.QXAPPINSTANCE; - var titlesJson = this.getEval(selWin + ".qx.Simulation.getTitles();", "Getting feed titles"); + var titlesJson = this.getEval(selWin + ".qx.Simulation.getTitles();", "Getting list item labels..."); eval("var titles = " + titlesJson); return titles; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <d_w...@us...> - 2013-08-05 14:25:46
|
Revision: 21861 http://sourceforge.net/p/qooxdoo-contrib/code/21861 Author: d_wagner Date: 2013-08-05 14:25:42 +0000 (Mon, 05 Aug 2013) Log Message: ----------- minor fix Modified Paths: -------------- trunk/qooxdoo-contrib/Simulator/trunk/tool/selenium/simulation/mobileshowcase/test_mobileshowcase.js Modified: trunk/qooxdoo-contrib/Simulator/trunk/tool/selenium/simulation/mobileshowcase/test_mobileshowcase.js =================================================================== --- trunk/qooxdoo-contrib/Simulator/trunk/tool/selenium/simulation/mobileshowcase/test_mobileshowcase.js 2013-08-01 14:37:17 UTC (rev 21860) +++ trunk/qooxdoo-contrib/Simulator/trunk/tool/selenium/simulation/mobileshowcase/test_mobileshowcase.js 2013-08-05 14:25:42 UTC (rev 21861) @@ -43,7 +43,7 @@ { var selWin = simulation.Simulation.SELENIUMWINDOW; //var qxAppInst = simulation.Simulation.QXAPPINSTANCE; - var titlesJson = this.getEval(selWin + ".qx.Simulation.getTitles();", "Getting feed titles"); + var titlesJson = this.getEval(selWin + ".qx.Simulation.getTitles();", "Getting list item labels..."); eval("var titles = " + titlesJson); return titles; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <d_w...@us...> - 2013-08-01 14:37:26
|
Revision: 21860 http://sourceforge.net/p/qooxdoo-contrib/code/21860 Author: d_wagner Date: 2013-08-01 14:37:17 +0000 (Thu, 01 Aug 2013) Log Message: ----------- added URI query handling test Modified Paths: -------------- trunk/qooxdoo-contrib/Simulator/trunk/tool/selenium/simulation/apiviewer/test_apiviewer.js Modified: trunk/qooxdoo-contrib/Simulator/trunk/tool/selenium/simulation/apiviewer/test_apiviewer.js =================================================================== --- trunk/qooxdoo-contrib/Simulator/trunk/tool/selenium/simulation/apiviewer/test_apiviewer.js 2013-07-31 07:39:49 UTC (rev 21859) +++ trunk/qooxdoo-contrib/Simulator/trunk/tool/selenium/simulation/apiviewer/test_apiviewer.js 2013-08-01 14:37:17 UTC (rev 21860) @@ -33,7 +33,7 @@ if (this.getConfigSetting("autPath").indexOf("~press") > 0) { this.checkUrlParameter(); } - + // Add a function that finds tags with the given content var hasElementWithContent = function(tagNames, content) { var found = false; @@ -51,22 +51,22 @@ } return found; }; - + this.addOwnFunction("hasElementWithContent", hasElementWithContent); - + var getInnerHtml = function(locator) { var widget = selenium.getQxWidgetByLocator(locator); return widget.getContentElement().getDomElement().innerHTML; }; - + this.addOwnFunction("getInnerHtml", getInnerHtml); - + this.checkSearch(); this.checkView("getActive", "Properties"); //this.checkView("addChildrenToQueue", "Inherited"); this.checkView("_activateMoveHandle", "Protected"); this.checkView("__computeMoveCoordinates", "Private"); - + var constructorDetail = false; try { this.__sel.click('//img[contains(@onclick, "toggleShowItemDetails(\'construct\')")]'); @@ -74,17 +74,17 @@ } catch(ex) { this.log("Error while opening constructor details: " + ex, "error"); } - + var clickedLink = false; if (constructorDetail && this.getConfigSetting("browserId").indexOf("Safari 3") < 0 ) { try { this.__sel.click("link=qx.ui.core.Widget#construct"); clickedLink = true; } catch(ex) { - this.log("Error while clicking internal link: " + ex, "error"); + this.log("Error while clicking internal link: " + ex, "error"); } } - + if (clickedLink) { // Check if the HTML embed's content has changed. var classViewerHtml = this.checkViewerContent(); @@ -95,19 +95,21 @@ this.log("Link opened successfully", "info"); } } + + this.checkUrlQuery(); }; simulation.Simulation.prototype.checkSearch = function() { this.qxClick("qxh=app:viewer/qx.ui.toolbar.ToolBar/qx.ui.toolbar.Part/child[1]", "", "Clicking search button"); - + this.qxType("qxh=app:viewer/[@_searchView]/qx.ui.container.Composite/qx.ui.form.TextField", "qx.ui.window.Windo"); // execute typeKeys once so all needed events are fired. Packages.java.lang.Thread.sleep(2000); this.qxTypeKeys("qxh=app:viewer/[@_searchView]/qx.ui.container.Composite/qx.ui.form.TextField", "w"); Packages.java.lang.Thread.sleep(1000); - + this.qxTableClick("qxh=app:viewer/[@_searchView]/qx.ui.table.Table","row=0"); Packages.java.lang.Thread.sleep(1000); // Temporary workaround: Click the search result again to make sure it's @@ -122,7 +124,7 @@ } else { this.log("Successfully opened search result", "info"); - } + } }; simulation.Simulation.prototype.checkViewerContent = function() @@ -147,7 +149,7 @@ this.qxClick("qxh=app:viewer/qx.ui.toolbar.ToolBar/child[2]/qx.ui.toolbar.MenuButton", "", "Clicking View menu button"); this.qxClick('qxh=app:viewer/qx.ui.toolbar.ToolBar/child[2]/qx.ui.toolbar.MenuButton/qx.ui.menu.Menu/[@label="' + buttonLabel + '"]', "", "Clicking " + buttonLabel); */ - + var active = String(this.__sel.getQxObjectFunction('qxh=app:viewer/qx.ui.toolbar.ToolBar/child[2]/[@label="' + buttonLabel + '"]', 'getValue')); // check if the view option is already activated if (active == "false") { @@ -155,7 +157,7 @@ Packages.java.lang.Thread.sleep(3000); } var foundNewMethod = this.getEval(selWin + ".qx.Simulation.hasElementWithContent(['a', 'span'], '" + newMethodName + "');", "Checking for " + buttonLabel + " documentation"); - + if (String(foundNewMethod) != "true") { this.log("Documentation for " + newMethodName + " not found, possible problem with " + buttonLabel, "error"); } @@ -172,22 +174,39 @@ this.log("URI parameter handling checked: OK", "info"); } catch(ex) { - this.log("Expected element not found after opening with URL parameter!"); + this.log("Expected element not found after opening with URL hash!", "error"); } - }; +simulation.Simulation.prototype.checkUrlQuery = function() { + var path = this.getConfigSetting("autPath").split("#")[0]; + var uri = this.getConfigSetting("autHost") + "" + path; + uri += "?search=ui.form.Button"; + this.qxOpen(uri); + mySim.setupApplicationLogging(); + mySim.addGlobalErrorHandler(); + + try { + this.waitForElementVisible("//h1/span/a[text() = 'Button']", 3000) + this.log("URI query handling checked: OK", "info"); + } + catch(ex) { + this.log("Expected element not found after opening with URL query!", "error"); + } + +}; + // - Main -------------------------------------------------------------------- -(function() { +(function() { mySim.testFailed = false; var sessionStarted = mySim.startSession(); - + if (!sessionStarted) { return; } - var isAppReady = mySim.waitForCondition(simulation.Simulation.ISQXAPPREADY, 60000, + var isAppReady = mySim.waitForCondition(simulation.Simulation.ISQXAPPREADY, 60000, "Waiting for qooxdoo application"); @@ -216,4 +235,4 @@ mySim.stop(); -})(); \ No newline at end of file +})(); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <d_w...@us...> - 2013-07-31 07:39:53
|
Revision: 21859 http://sourceforge.net/p/qooxdoo-contrib/code/21859 Author: d_wagner Date: 2013-07-31 07:39:49 +0000 (Wed, 31 Jul 2013) Log Message: ----------- added a delay before clicking so the animations can finish Modified Paths: -------------- trunk/qooxdoo-contrib/Simulator/3.0/tool/selenium/simulation/feedreader/test_feedreader_mobile.js trunk/qooxdoo-contrib/Simulator/trunk/tool/selenium/simulation/feedreader/test_feedreader_mobile.js Modified: trunk/qooxdoo-contrib/Simulator/3.0/tool/selenium/simulation/feedreader/test_feedreader_mobile.js =================================================================== --- trunk/qooxdoo-contrib/Simulator/3.0/tool/selenium/simulation/feedreader/test_feedreader_mobile.js 2013-07-25 14:27:02 UTC (rev 21858) +++ trunk/qooxdoo-contrib/Simulator/3.0/tool/selenium/simulation/feedreader/test_feedreader_mobile.js 2013-07-31 07:39:49 UTC (rev 21859) @@ -29,7 +29,7 @@ } return selenium.browserbot.getCurrentWindow().JSON.stringify(labels); }; - + this.addOwnFunction("getTitles", titleGetter); }; @@ -39,7 +39,7 @@ //var qxAppInst = simulation.Simulation.QXAPPINSTANCE; var titlesJson = this.getEval(selWin + ".qx.Simulation.getTitles();", "Getting feed titles"); eval("var titles = " + titlesJson); - + return titles; }; @@ -54,16 +54,18 @@ } feedTitles.push(titles[i]); } - + var firstArticleTitle = null; - + for (var i=0,l=feedTitles.length; i<l; i++) { var feedTitleLocator = "//div[contains(text(),'" + feedTitles[i] + "')]"; this.waitForElementPresent(feedTitleLocator); + Packages.java.lang.Thread.sleep(1000); try { this.__sel.qxClick(feedTitleLocator); this.waitForElementPresent(this.backButtonLocator, 2000); + Packages.java.lang.Thread.sleep(1000); } catch(ex) { this.log("Error while clicking feed title '" + feedTitles[i] + "': " + ex.message, "error"); @@ -81,7 +83,7 @@ var firstArticleTitle = null; } else if (articleTitles[0] == firstArticleTitle) { - this.log("Found the same article title for '" + feedTitles[i-1] + "' and '" + feedTitles[i] + "'", "error"); + this.log("Found the same article title '" + articleTitles[0] + "' for '" + feedTitles[i-1] + "' and '" + feedTitles[i] + "'", "error"); } else { this.log("Found " + articleTitles.length + " articles in feed '" + feedTitles[i] + "'", "info"); @@ -89,7 +91,7 @@ Packages.java.lang.Thread.sleep(2000); } firstArticleTitle = feedTitles[0]; - + this.__sel.qxClick(this.backButtonLocator); } }; @@ -100,7 +102,7 @@ var index = Math.floor(Math.random() * (titles.length)); var title = titles[index].replace(/([^a-z0-9\ -'"])/gi, ""); var labelLoc = "//div[text() = '" + titles[index] + "']"; - + try { this.__sel.qxClick(labelLoc); } @@ -108,23 +110,23 @@ this.log("Error while clicking article '" + title + "': " + ex.message, "error"); return; } - + try { this.waitForElementPresent("//a[text() = 'read more ...']"); } catch(ex) { this.log("Content of article '" + title + "' is not displayed!", "error"); } - + this.__sel.qxClick(this.backButtonLocator); }; mySim.runTest = function() { - this.feedLoadTimeout = 30000; + this.feedLoadTimeout = 30000; this.backButtonLocator = "//div[@class='navigationbar-backbutton']"; - + this.waitForElementPresent("//h1[contains(text(), 'Feed Reader')]"); this.addListItemLabelGetter(); var titles = this.getListItemLabels(); @@ -133,16 +135,16 @@ // - Main -------------------------------------------------------------------- -(function() { +(function() { mySim.testFailed = false; var sessionStarted = mySim.startSession(); - + if (!sessionStarted) { return; } - var isAppReady = mySim.waitForCondition(simulation.Simulation.ISQXAPPREADY, 60000, + var isAppReady = mySim.waitForCondition(simulation.Simulation.ISQXAPPREADY, 60000, "Waiting for qooxdoo application"); if (!isAppReady) { @@ -154,7 +156,7 @@ try { mySim.setupApplicationLogging(); mySim.addGlobalErrorHandler(); - mySim.runTest(); + mySim.runTest(); } catch(ex) { mySim.testFailed = true; Modified: trunk/qooxdoo-contrib/Simulator/trunk/tool/selenium/simulation/feedreader/test_feedreader_mobile.js =================================================================== --- trunk/qooxdoo-contrib/Simulator/trunk/tool/selenium/simulation/feedreader/test_feedreader_mobile.js 2013-07-25 14:27:02 UTC (rev 21858) +++ trunk/qooxdoo-contrib/Simulator/trunk/tool/selenium/simulation/feedreader/test_feedreader_mobile.js 2013-07-31 07:39:49 UTC (rev 21859) @@ -29,7 +29,7 @@ } return selenium.browserbot.getCurrentWindow().JSON.stringify(labels); }; - + this.addOwnFunction("getTitles", titleGetter); }; @@ -39,7 +39,7 @@ //var qxAppInst = simulation.Simulation.QXAPPINSTANCE; var titlesJson = this.getEval(selWin + ".qx.Simulation.getTitles();", "Getting feed titles"); eval("var titles = " + titlesJson); - + return titles; }; @@ -54,16 +54,18 @@ } feedTitles.push(titles[i]); } - + var firstArticleTitle = null; - + for (var i=0,l=feedTitles.length; i<l; i++) { var feedTitleLocator = "//div[contains(text(),'" + feedTitles[i] + "')]"; this.waitForElementPresent(feedTitleLocator); + Packages.java.lang.Thread.sleep(1000); try { this.__sel.qxClick(feedTitleLocator); this.waitForElementPresent(this.backButtonLocator, 2000); + Packages.java.lang.Thread.sleep(1000); } catch(ex) { this.log("Error while clicking feed title '" + feedTitles[i] + "': " + ex.message, "error"); @@ -81,7 +83,7 @@ var firstArticleTitle = null; } else if (articleTitles[0] == firstArticleTitle) { - this.log("Found the same article title for '" + feedTitles[i-1] + "' and '" + feedTitles[i] + "'", "error"); + this.log("Found the same article title '" + articleTitles[0] + "' for '" + feedTitles[i-1] + "' and '" + feedTitles[i] + "'", "error"); } else { this.log("Found " + articleTitles.length + " articles in feed '" + feedTitles[i] + "'", "info"); @@ -89,7 +91,7 @@ Packages.java.lang.Thread.sleep(2000); } firstArticleTitle = feedTitles[0]; - + this.__sel.qxClick(this.backButtonLocator); } }; @@ -100,7 +102,7 @@ var index = Math.floor(Math.random() * (titles.length)); var title = titles[index].replace(/([^a-z0-9\ -'"])/gi, ""); var labelLoc = "//div[text() = '" + titles[index] + "']"; - + try { this.__sel.qxClick(labelLoc); } @@ -108,23 +110,23 @@ this.log("Error while clicking article '" + title + "': " + ex.message, "error"); return; } - + try { this.waitForElementPresent("//a[text() = 'read more ...']"); } catch(ex) { this.log("Content of article '" + title + "' is not displayed!", "error"); } - + this.__sel.qxClick(this.backButtonLocator); }; mySim.runTest = function() { - this.feedLoadTimeout = 30000; + this.feedLoadTimeout = 30000; this.backButtonLocator = "//div[@class='navigationbar-backbutton']"; - + this.waitForElementPresent("//h1[contains(text(), 'Feed Reader')]"); this.addListItemLabelGetter(); var titles = this.getListItemLabels(); @@ -133,16 +135,16 @@ // - Main -------------------------------------------------------------------- -(function() { +(function() { mySim.testFailed = false; var sessionStarted = mySim.startSession(); - + if (!sessionStarted) { return; } - var isAppReady = mySim.waitForCondition(simulation.Simulation.ISQXAPPREADY, 60000, + var isAppReady = mySim.waitForCondition(simulation.Simulation.ISQXAPPREADY, 60000, "Waiting for qooxdoo application"); if (!isAppReady) { @@ -154,7 +156,7 @@ try { mySim.setupApplicationLogging(); mySim.addGlobalErrorHandler(); - mySim.runTest(); + mySim.runTest(); } catch(ex) { mySim.testFailed = true; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <lev...@us...> - 2013-07-25 14:27:05
|
Revision: 21858 http://sourceforge.net/p/qooxdoo-contrib/code/21858 Author: level420 Date: 2013-07-25 14:27:02 +0000 (Thu, 25 Jul 2013) Log Message: ----------- Update Manifest.json for qooxdoo version 3.0 Modified Paths: -------------- trunk/qooxdoo-contrib/UploadWidget/trunk/Manifest.json Modified: trunk/qooxdoo-contrib/UploadWidget/trunk/Manifest.json =================================================================== --- trunk/qooxdoo-contrib/UploadWidget/trunk/Manifest.json 2013-07-24 08:12:47 UTC (rev 21857) +++ trunk/qooxdoo-contrib/UploadWidget/trunk/Manifest.json 2013-07-25 14:27:02 UTC (rev 21858) @@ -30,7 +30,7 @@ ], "version" : "trunk", - "qooxdoo-versions": ["1.4","1.5","1.6","2.0"] + "qooxdoo-versions": ["1.4","1.5","1.6","2.0","3.0"] }, "provides" : This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <d_w...@us...> - 2013-07-24 08:12:54
|
Revision: 21857 http://sourceforge.net/p/qooxdoo-contrib/code/21857 Author: d_wagner Date: 2013-07-24 08:12:47 +0000 (Wed, 24 Jul 2013) Log Message: ----------- added a test case for the qx.Mobile skeleton Modified Paths: -------------- trunk/qooxdoo-contrib/Simulator/trunk/tool/selenium/simulation/skeleton/test_skeleton.js Modified: trunk/qooxdoo-contrib/Simulator/trunk/tool/selenium/simulation/skeleton/test_skeleton.js =================================================================== --- trunk/qooxdoo-contrib/Simulator/trunk/tool/selenium/simulation/skeleton/test_skeleton.js 2013-07-24 07:49:15 UTC (rev 21856) +++ trunk/qooxdoo-contrib/Simulator/trunk/tool/selenium/simulation/skeleton/test_skeleton.js 2013-07-24 08:12:47 UTC (rev 21857) @@ -77,6 +77,13 @@ this.killBoxes(); }; +simulation.Simulation.prototype.mobileTest = function() +{ + this.waitForElementPresent("qx_id_8"); + this.qxClick("qx_id_8"); + this.waitForElementPresent("xpath=//div[text() = 'Content of Page 2']"); +}; + simulation.Simulation.prototype.runTest = function() { var appType = this.getApplicationType(); @@ -91,9 +98,12 @@ case "standalone": this.guiTest(); break; + case "mobile": + this.mobileTest(); + break; default: this.log("No test case for application type " + appType, "warn"); - }; + } }; // - Main -------------------------------------------------------------------- This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <d_w...@us...> - 2013-07-24 07:49:19
|
Revision: 21856 http://sourceforge.net/p/qooxdoo-contrib/code/21856 Author: d_wagner Date: 2013-07-24 07:49:15 +0000 (Wed, 24 Jul 2013) Log Message: ----------- fixed qx.Website app detection Modified Paths: -------------- trunk/qooxdoo-contrib/Simulator/3.0/tool/selenium/simulation/Simulation.js trunk/qooxdoo-contrib/Simulator/trunk/tool/selenium/simulation/Simulation.js Modified: trunk/qooxdoo-contrib/Simulator/3.0/tool/selenium/simulation/Simulation.js =================================================================== --- trunk/qooxdoo-contrib/Simulator/3.0/tool/selenium/simulation/Simulation.js 2013-07-24 06:55:30 UTC (rev 21855) +++ trunk/qooxdoo-contrib/Simulator/3.0/tool/selenium/simulation/Simulation.js 2013-07-24 07:49:15 UTC (rev 21856) @@ -1372,7 +1372,8 @@ try { var q = this.__sel.getEval(simulation.Simulation.SELENIUMWINDOW + ".q"); - if (String(q) == "[Class q]") { + var qRepr = String(q) + if (qRepr == "[Class q]" || qRepr == "[Class qxWeb]") { return this.__appType = "website"; } } catch(ex) {} Modified: trunk/qooxdoo-contrib/Simulator/trunk/tool/selenium/simulation/Simulation.js =================================================================== --- trunk/qooxdoo-contrib/Simulator/trunk/tool/selenium/simulation/Simulation.js 2013-07-24 06:55:30 UTC (rev 21855) +++ trunk/qooxdoo-contrib/Simulator/trunk/tool/selenium/simulation/Simulation.js 2013-07-24 07:49:15 UTC (rev 21856) @@ -1372,7 +1372,8 @@ try { var q = this.__sel.getEval(simulation.Simulation.SELENIUMWINDOW + ".q"); - if (String(q) == "[Class q]") { + var qRepr = String(q) + if (qRepr == "[Class q]" || qRepr == "[Class qxWeb]") { return this.__appType = "website"; } } catch(ex) {} This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <d_w...@us...> - 2013-07-24 06:55:36
|
Revision: 21855 http://sourceforge.net/p/qooxdoo-contrib/code/21855 Author: d_wagner Date: 2013-07-24 06:55:30 +0000 (Wed, 24 Jul 2013) Log Message: ----------- added 3.0 branch Added Paths: ----------- trunk/qooxdoo-contrib/Simulator/3.0/ trunk/qooxdoo-contrib/Simulator/3.0/tool/selenium/simulation/demobrowser/test_demobrowser.js trunk/qooxdoo-contrib/Simulator/3.0/tool/selenium/simulation/featureconfigeditor/test_featureconfigeditor.js trunk/qooxdoo-contrib/Simulator/3.0/tool/selenium/simulation/feedreader/test_feedreader.js trunk/qooxdoo-contrib/Simulator/3.0/tool/selenium/simulation/mobileshowcase/test_mobileshowcase.js trunk/qooxdoo-contrib/Simulator/3.0/tool/selenium/simulation/tutorial/test_mobiletweets.js Removed Paths: ------------- trunk/qooxdoo-contrib/Simulator/3.0/tool/selenium/simulation/demobrowser/test_demobrowser.js trunk/qooxdoo-contrib/Simulator/3.0/tool/selenium/simulation/featureconfigeditor/test_featureconfigeditor.js trunk/qooxdoo-contrib/Simulator/3.0/tool/selenium/simulation/feedreader/test_feedreader.js trunk/qooxdoo-contrib/Simulator/3.0/tool/selenium/simulation/mobileshowcase/test_mobileshowcase.js trunk/qooxdoo-contrib/Simulator/3.0/tool/selenium/simulation/tutorial/test_mobiletweets.js Deleted: trunk/qooxdoo-contrib/Simulator/3.0/tool/selenium/simulation/demobrowser/test_demobrowser.js =================================================================== --- trunk/qooxdoo-contrib/Simulator/trunk/tool/selenium/simulation/demobrowser/test_demobrowser.js 2013-05-02 16:01:36 UTC (rev 21844) +++ trunk/qooxdoo-contrib/Simulator/3.0/tool/selenium/simulation/demobrowser/test_demobrowser.js 2013-07-24 06:55:30 UTC (rev 21855) @@ -1,582 +0,0 @@ -var baseConf = { - 'autName' : 'Demobrowser', - 'globalTimeout' : 300000, - 'stepSpeed' : '250', - 'selServer' : 'localhost', - 'selPort' : 4444, - 'testBrowser' : '*custom /usr/lib/firefox-3.0.10/firefox -no-remote -P selenium-3', - 'autHost' : 'http://localhost', - 'autPath' : '/~dwagner/workspace/qooxdoo.trunk/application/demobrowser/build/index.html', - 'simulatorSvn' : '/home/dwagner/workspace/qooxdoo.contrib/Simulator', - 'debug' : true, - 'logAll' : false, - 'ignore' : 'showcase:Browser,widget:Iframe,test:Serialize,bom:Iframe,progressive:*,data:Github', - 'sampleGlobalErrorLogging' : false, - 'shutdownSample' : false, - 'reloadBrowser' : false, - 'demoLoadTimeout' : 30000 -}; - -var args = arguments ? arguments : ""; -var simSvn = baseConf.simulatorSvn; -for (var i=0; i<args.length; i++) { - if (args[i].indexOf('simulatorSvn') >= 0) { - simSvn = args[i].substr(args[i].indexOf('simulatorSvn=') + 13); - } -} - -load([simSvn + "/trunk/tool/selenium/simulation/Simulation.js"]); - -var mySim = new simulation.Simulation(baseConf,args); - -var selWin = simulation.Simulation.SELENIUMWINDOW; -var qxAppInst = simulation.Simulation.QXAPPINSTANCE + '.viewer'; - -var logPause = 3000; // millisecs to wait after loading sample -var selectNextSample = qxAppInst + '.tree.addToSelection(' + qxAppInst + '.tree.getNextNodeOf(' + qxAppInst + '.tree.getSelection()[0]))'; -var runSample = qxAppInst + '.runSample()'; // play currently selected sample -var getSampleCategory = selWin + '.' + qxAppInst + '.tree.getSelection()[0].getParent().getLabel()'; // get category name -var getSampleLabel = selWin + '.' + qxAppInst + '.tree.getSelection()[0].getLabel()'; // get sample name -var getNextSampleCategory = selWin + '.' + qxAppInst + '.tree.getNextNodeOf(' + selWin + '.' + qxAppInst + '.tree.getSelection()[0]).getParent().getLabel()'; -var getNextSampleLabel = selWin + '.' + qxAppInst + '.tree.getNextNodeOf(' + selWin + '.' + qxAppInst + '.tree.getSelection()[0]).getLabel()'; -var shutdownSample = selWin + '.' + qxAppInst + '._infosplit.getChildren()[0].getWindow().qx.core.ObjectRegistry.shutdown()'; -mySim.currentSample = "current"; -mySim.lastSample = "last"; -mySim.demoFrame = selWin + '.' + qxAppInst + '._iframe'; -mySim.demoWin = mySim.demoFrame + ".getWindow()"; -mySim.demoQx = mySim.demoWin + ".qx"; -mySim.demoQxApp = mySim.demoQx + '.core.Init.getApplication()'; -mySim.checkDemoReady = 'var demoReady = false;' + - 'try {' + - ' if (' + mySim.demoQxApp +') {' + - ' demoReady = true;' + - ' }' + - '}' + - 'catch(ex) {}' + - 'demoReady;'; - mySim.locators = { - toolbarLogButton : "qxhv=*/qx.ui.toolbar.ToolBar/*/[@label=Log File]", - overflowButton : "//div[contains(@style, 'media-seek-forward')]", - overflowMenuLogFileButton : "//div[text() = 'Log File']/parent::div", - //logEmbed : 'qxhv=[@classname="demobrowser.DemoBrowser"]/qx.ui.splitpane.Pane/qx.ui.splitpane.Pane/qx.ui.container.Stack/[@classname="qxc.ui.logpane.LogView"]/qx.ui.embed.Html' - logEmbed: '//div[@qxclass="qxc.ui.logpane.LogView"]/*/div[@qxclass="qx.ui.embed.Html"]/div' - }; -mySim.qxLog = "selenium.page().findElement('" + mySim.locators.logEmbed + "').innerHTML"; -/* -* Returns a command that selects sample number [entry] from the sample tree -* when run through Selenium's runScript() method. -*/ -function treeSelect(entry) -{ - entry = entry ? entry : 0; - return qxAppInst + '.tree.setSelection([' + qxAppInst + '.tree.getItems()[' + entry + ']])'; -} - -/* -* Generated HTML elements are uppercase in IE -*/ -function getLogArray(result) -{ - var logArray = []; - if (result.indexOf("</div>") >0 ) { - logArray = result.split("</div>"); - } else if (result.indexOf("</DIV>") >0 ) { - logArray = result.split("</DIV>"); - } - return logArray; -} - -/* - * This function is added to the AUT's context using the Simulation.addOwnFunction() - * method. It allows the selection of a specific demo using the category/demo - * name. - */ -var chooseDemo = function(category, sample) -{ - var viewer = selenium.browserbot.getCurrentWindow().qx.core.Init.getApplication().viewer; - var tree = viewer.tree; - var items = tree.getItems(); - for (var i=1; i<items.length; i++) { - if (items[i].getParent().getLabel() == category) { - if (items[i].getLabel() == sample) { - items[i].getParent().setOpen(true); - tree.addToSelection(items[i]); - viewer.runSample(); - } - } - } -}; - -/* - * This function is added to the AUT's context using the Simulation.addOwnFunction() - * method. It returns an array containing the names of all demos in a given - * category. - */ -var getDemosByCategory = function(category) -{ - var viewer = selenium.browserbot.getCurrentWindow().qx.core.Init.getApplication().viewer; - var tree = viewer.tree; - var items = tree.getItems(); - var samples = []; - for (var i=1; i<items.length; i++) { - if (items[i].getParent().getLabel() == category) { - samples.push(items[i].getLabel()); - } - } - return samples; -}; - -simulation.Simulation.prototype.waitForDemoApp = function() -{ - var timeout = this.getConfigSetting("demoLoadTimeout"); - this.__sel.waitForCondition(mySim.checkDemoReady, timeout); -}; - -/* -* Runs the given script, then gets the current sample's name and log output and -* sends them to Selenium's log. -*/ -simulation.Simulation.prototype.sampleRunner = function(script) -{ - var scriptCode = script ? script : runSample; - var nextSampleCategory = "unknown category;"; - var nextSampleLabel = "unknown demo"; - var category = "Unknown category"; - var currentSample = "Unknown demo"; - - var skip = false; - // If we have an ignore list, check if the next sample is in there. - var ignore = this.ignore; - if (ignore.length > 0 && scriptCode.indexOf('playNext') > 0 ) { - try { - nextSampleCategory = this.getEval(getNextSampleCategory, "Getting category of next sample"); - nextSampleLabel = this.getEval(getNextSampleLabel, "Getting label of next sample"); - - // Category "Demos" means there's a category folder selected, - // so look at the first sample inside. - if (nextSampleCategory == "Demos") { - this.runScript(selectNextSample, "Selecting next sample from tree"); - this.runScript(qxAppInst + '.tree.getSelection()[0].setOpen(true)', "Opening category"); - nextSampleCategory = this.getEval(getNextSampleCategory, "Getting category of next sample"); - nextSampleLabel = this.getEval(getNextSampleLabel, "Getting label of next sample"); - } - - print("Next Sample: " + nextSampleCategory + ":" + nextSampleLabel); - for (var i = 0; i < ignore.length; i++) { - var ignoreCategory = ignore[i].substring(0, ignore[i].indexOf(':')); - if (nextSampleCategory == ignoreCategory) { - var ignoreSample = ignore[i].substr(ignore[i].indexOf(':') + 1); - if (nextSampleLabel == ignoreSample || ignoreSample == "*") { - this.runScript(selectNextSample, "Selecting next sample from tree"); - skip = true; - } - } - } - } - catch(ex) { - /* If we can't identify the next sample, we've either reached the end of - the list, or something went wrong. */ - print("Unable to retrieve next sample's category and/or label."); - return; - } - } - - if (skip) { - //print("Skipping sample: " + nextSampleCategory + ' - ' + nextSampleLabel); - this.log('SKIPPED ' + nextSampleCategory + ' - ' + nextSampleLabel, "info"); - return [nextSampleCategory,nextSampleLabel]; - } - else { - this.log('Loading demo ' + nextSampleCategory + ' - ' + nextSampleLabel, "debug"); - // run the sample - this.runScript(scriptCode, "Running sample"); - - var demoLoaded = false; - try { - this.waitForDemoApp(); - demoLoaded = true; - } catch(ex) { - this.log("Error while waiting for demo " + nextSampleCategory + " - " + nextSampleLabel + " to load: " + ex, "error"); - } - - if (!demoLoaded) { - return [category,currentSample]; - } - - if (this.getConfigSetting("sampleGlobalErrorLogging")) { - try { - this.addErrorHandlerToDemo(); - } catch(ex) { - this.log("Could not add global error handler to demo " + nextSampleCategory + ":" + nextSampleLabel); - } - } - - var sampleTemp; - try { - sampleTemp = this.getEval(getSampleLabel, "Getting current sample label"); - } catch(ex) {} - - if (!sampleTemp) { - // try again - try { - sampleTemp = this.getEval(getSampleLabel, "Getting current sample label"); - } catch(ex) {} - if (!sampleTemp) { - this.log("Unable to determine current demo", "error"); - } - } - else { - currentSample = sampleTemp; - } - - var categoryTemp; - try { - categoryTemp = this.getEval(getSampleCategory, "Getting current sample category"); - } catch(ex) {} - - if (!categoryTemp) { - // try again - try { - categoryTemp = this.getEval(getSampleCategory, "Getting current sample category"); - } catch(ex) {} - if (!categoryTemp) { - this.log("Unable to determine current category", "error"); - } - } - else { - category = categoryTemp; - } - } - - // wait for the sample to finish loading, then get its log output - Packages.java.lang.Thread.sleep(logPause); - - // Shut down the sample application - if (this.getConfigSetting("shutdownSample")) { - this.getEval(shutdownSample, "Shutting down sample application"); - Packages.java.lang.Thread.sleep(2000); - } - - this.openLog(); - print(category + " - " + currentSample + ": Processing log"); - - var sampleLog = String(this.getEval(this.qxLog, "Getting log for sample " + category + " - " + currentSample)); - - if (!sampleLog) { - this.log("Unable to get log for sample " + category + "-" + currentSample, "error"); - return [category,currentSample]; - } - - if (this.getConfigSetting("sampleGlobalErrorLogging")) { - try { - this.log("Global error log contents for " + category + ":" + currentSample, "debug"); - this.logGlobalErrors(); - } - catch (ex) { - this.log("Unable to log global errors: " + ex, "error"); - } - } - - // we're only interested in logs containing warnings or errors - var isErrWarn = false; - if (sampleLog.indexOf('level-warn') > 0 || sampleLog.indexOf('level-error') > 0) { - this.log("Sample " + category + "-" + currentSample + " has incomplete log!","warn"); - isErrWarn = true; - } - - if (isErrWarn || this.getConfigSetting("logAll")) { - - /* Selenium uses http get requests to pass messages to the server log. - * If the log message is too long, the server throws an http exception. - * So we need to chop the message into bits and make multiple calls. - */ - var logArray = getLogArray(sampleLog); - // we can speed this up since we don't have to wait for the browser - this.__sel.setSpeed("150"); - - this.log('<div class="qxappender">'); - for (var j=0, l=logArray.length; j<l; j++) { - var line = logArray[j] + '</DIV>'; - // only log relevant lines - if ((line.indexOf('level-debug') < 0 && line.indexOf('level-info') < 0) || - this.getConfigSetting("logAll")) - { - print("Warning or Error found"); - line = line.replace(/\'/g, "\\'"); - line = line.replace(/\n/g, "<br/>"); - line = line.replace(/\r/g, "<br/>"); - //line = '<div class="qxappender"'> + line + '</div>'; - if (line.indexOf('level-error')) { - this.log(line, "error"); - } - else if (line.indexOf('level-warn')) { - this.log(line, "warn"); - } - else if (line.indexOf('level-info')) { - this.log(line, "info"); - } - else { - this.log(line, "debug"); - } - } - } - this.log("</div>"); - - this.__sel.setSpeed(this.getConfigSetting("stepSpeed")); - } - else { - this.log("No errors/warnings found", "info"); - } - - return [category,currentSample]; -}; - -simulation.Simulation.prototype.addErrorHandlerToDemo = function() -{ - this.addGlobalErrorHandler(selWin + '.' + qxAppInst + "._iframe.getWindow()"); -}; - -simulation.Simulation.prototype.checkUrlParameter = function() -{ - var match = /#(.*?)~(.*?)\.html/.exec(this.getConfigSetting("autPath")); - if (!match) { - return; - } - - this.waitForDemoApp(); - - var categoryName = match[1]; - var demoName = match[2]; - var treeCategory; - var treeDemo; - var demoApplication; - - try { - treeCategory = this.__sel.getEval(getSampleCategory); - treeDemo = this.__sel.getEval(getSampleLabel); - } - catch(ex) { - this.log("checkUrlParameter: Unable to check tree selection: " + ex.message, "error"); - return; - } - - if (treeCategory != categoryName || treeDemo != demoName) { - this.log("checkUrlParameter: Wrong tree selection: Expected " + categoryName + "." + demoName + " but found " + treeCategory + "." + treeDemo, "error"); - return; - } - - try { - demoApplication = this.__sel.getEval(this.demoQxApp + ".classname"); - } - catch(ex) { - this.log("checkUrlParameter: Unable to check demo class name: " + ex.message, "error"); - return; - } - var expectedDemoClass = "demobrowser.demo." + categoryName + "." + demoName; - if (demoApplication != expectedDemoClass) { - this.log("checkUrlParameter: Wrong demo active: Expected " + expectedDemoClass + " but found " + demoApplication, "error"); - return; - } - - this.log("checkUrlParameter: Demo loaded OK", "info"); -}; - -simulation.Simulation.prototype.runTest = function() -{ - this.__sel.windowMaximize(); - this.checkUrlParameter(); - - print("Starting sample playback"); - - var ignore = []; - var currentCatSam; - var runIncluded; - - try { - ignore = this.getConfigSetting("ignore").split(","); - if (this.getConfigSetting("debug")) { - print("Ignore list configured: " + ignore); - } - } - catch(ex) { - if (this.getConfigSetting("debug")) { - print("No ignore list configured."); - } - } - - this.ignore = ignore; - - var include = []; - - try { - include = this.getConfigSetting("include").split(","); - if (this.getConfigSetting("debug")) { - print("Include list configured: " + include); - } - } - catch(ex) { - if (this.getConfigSetting("debug")) { - print("No include list configured."); - } - } - - // Remove the text from the search field so no demos are filtered - this.qxType('qxh=[@classname=demobrowser.DemoBrowser]/qx.ui.splitpane.Pane/qx.ui.container.Composite/qx.ui.container.Composite/qx.ui.form.TextField', ""); - - if (include.length === 0) { - var firstSample = true; - this.runScript(treeSelect(2), "Selecting first category"); - this.runScript(qxAppInst + '.tree.getSelection()[0].setOpen(true)', "Opening first category"); - var finalSampleScript = selWin + '.' + qxAppInst + '.tree.getItems()[' + selWin + '.' + qxAppInst + '.tree.getItems().length - 1].getLabel()'; - var finalSample = this.getEval(finalSampleScript, "Getting final sample name"); - var finalCategoryScript = selWin + '.' + qxAppInst + '.tree.getItems()[' + selWin + '.' + qxAppInst + '.tree.getItems().length - 1].getParent().getLabel()'; - var finalCategory = this.getEval(finalCategoryScript, "Getting final category name"); - print("Final demo: " + finalCategory + ":" + finalSample); - currentCatSam = this.sampleRunner(runSample); - this.currentCategory = this.lastCategory = currentCatSam[0]; - this.currentSample = currentCatSam[1]; - - while (this.currentSample != this.lastSample) { - if (this.lastCategory) { - if (this.currentCategory != this.lastCategory && this.getConfigSetting("reloadBrowser")) { - print("New category, reloading application"); - this.log("New category " + this.currentCategory + ", reloading application", "debug"); - this.qxOpen(); - this.addGlobalErrorHandler(); - this.setupApplicationLogging(); - this.addOwnFunction("chooseDemo", chooseDemo); - this.getEval(selWin + ".qx.Simulation.chooseDemo('" + this.currentCategory + "','" + this.currentSample + "');"); - } - } - - if (firstSample) { - firstSample = false; - if (this.getConfigSetting("theme", false)) { - var chosenTheme = this.getConfigSetting("theme"); - this.log("Switching theme to " + chosenTheme, "info"); - this.qxClick('qxhv=*/qx.ui.toolbar.ToolBar/*/[@label=Theme]', "", "Clicking Theme button"); - this.qxClick('qxhv=*/qx.ui.toolbar.ToolBar/*/[@label=Theme]/qx.ui.menu.Menu/[@label="' + chosenTheme + '"]', "", "Selecting theme " + chosenTheme); - } - } - - if (this.currentCategory != finalCategory || (this.currentCategory == finalCategory && this.currentSample != finalSample) ) { - this.lastCategory = this.currentCategory; - this.lastSample = this.currentSample; - print("Done playing " + this.lastSample + ", starting next sample"); - - this.killBoxes(); - var runNextSample = qxAppInst + '.playNext()'; - currentCatSam = this.sampleRunner(runNextSample); - this.currentCategory = currentCatSam[0]; - this.currentSample = currentCatSam[1]; - } - else { - this.currentCategory = this.lastCategory; - this.currentSample = this.lastSample; - } - } - } - else { - this.log("Selective run: " + include.length + " demos/categories selected.", "info"); - this.addOwnFunction("chooseDemo", chooseDemo); - this.addOwnFunction("getDemosByCategory", getDemosByCategory); - for (var j=0; j<include.length; j++) { - var cat = include[j].substring(0, include[j].indexOf(':')); - var sam = include[j].substr(include[j].indexOf(':') + 1); - // If the demo name is a wildcard, run all demos from the category - if (sam == "*") { - var getDemos = selWin + ".qx.Simulation.getDemosByCategory('" + cat + "');"; - var categoryDemos = this.getEval(getDemos, "Getting demos in category " + cat); - var categoryDemoArr = categoryDemos.split(","); - for (var k=0; k<categoryDemoArr.length; k++) { - runIncluded = "qx.Simulation.chooseDemo('" + cat + "','" + categoryDemoArr[k] + "');"; - currentCatSam = this.sampleRunner(runIncluded); - this.currentCategory = currentCatSam[0]; - this.currentSample = currentCatSam[1]; - this.killBoxes(); - } - } - else { - if (this.currentCategory && cat != this.currentCategory && this.getConfigSetting("reloadBrowser")) { - print("New category, reloading application"); - this.log("New category " + this.currentCategory + ", reloading application", "debug"); - this.qxOpen(); - this.addGlobalErrorHandler(); - this.setupApplicationLogging(); - this.addOwnFunction("chooseDemo", chooseDemo); - this.addOwnFunction("getDemosByCategory", getDemosByCategory); - } - - runIncluded = "qx.Simulation.chooseDemo('" + cat + "','" + sam + "');"; - currentCatSam = this.sampleRunner(runIncluded); - this.currentCategory = currentCatSam[0]; - this.currentSample = currentCatSam[1]; - this.killBoxes(); - } - } - } - -}; - - -simulation.Simulation.prototype.openLog = function() -{ - if (!this.__logOpened) { - if (this.__sel.isElementPresent(this.locators.toolbarLogButton)) { - this.qxClick(this.locators.toolbarLogButton); - Packages.java.lang.Thread.sleep(2000); - } - else if (this.__sel.isElementPresent(this.locators.overflowButton)) { - this.qxClick(this.locators.overflowButton); - Packages.java.lang.Thread.sleep(2000); - this.qxClick(this.locators.overflowMenuLogFileButton); - Packages.java.lang.Thread.sleep(2000); - } - - this.__logOpened = true; - } -}; - -// - Main -------------------------------------------------------------------- - -(function() { - mySim.testFailed = false; - - var sessionStarted = mySim.startSession(); - - if (!sessionStarted) { - return; - } - - var isAppReady = mySim.waitForCondition(simulation.Simulation.ISQXAPPREADY, 20000, - "Waiting for qooxdoo application"); - - - if (!isAppReady) { - mySim.testFailed = true; - mySim.stop(); - return; - } - - try { - mySim.setupApplicationLogging(); - mySim.addGlobalErrorHandler(); - mySim.runTest(); - } - catch(ex) { - mySim.testFailed = true; - var msg = "Unexpected error while running test: " + ex; - if (mySim.getConfigSetting("debug")) { - print(msg); - } - mySim.log(msg, "error"); - - } - - mySim.log("Global error log contents for Demobrowser", "debug"); - mySim.logGlobalErrors(); - mySim.logResults(); - - mySim.stop(); - -})(); \ No newline at end of file Copied: trunk/qooxdoo-contrib/Simulator/3.0/tool/selenium/simulation/demobrowser/test_demobrowser.js (from rev 21845, trunk/qooxdoo-contrib/Simulator/trunk/tool/selenium/simulation/demobrowser/test_demobrowser.js) =================================================================== --- trunk/qooxdoo-contrib/Simulator/3.0/tool/selenium/simulation/demobrowser/test_demobrowser.js (rev 0) +++ trunk/qooxdoo-contrib/Simulator/3.0/tool/selenium/simulation/demobrowser/test_demobrowser.js 2013-07-24 06:55:30 UTC (rev 21855) @@ -0,0 +1,582 @@ +var baseConf = { + 'autName' : 'Demobrowser', + 'globalTimeout' : 300000, + 'stepSpeed' : '250', + 'selServer' : 'localhost', + 'selPort' : 4444, + 'testBrowser' : '*custom /usr/lib/firefox-3.0.10/firefox -no-remote -P selenium-3', + 'autHost' : 'http://localhost', + 'autPath' : '/~dwagner/workspace/qooxdoo.trunk/application/demobrowser/build/index.html', + 'simulatorSvn' : '/home/dwagner/workspace/qooxdoo.contrib/Simulator', + 'debug' : true, + 'logAll' : false, + 'ignore' : 'showcase:Browser,widget:Iframe,test:Serialize,bom:Iframe,progressive:*,data:Github', + 'sampleGlobalErrorLogging' : false, + 'shutdownSample' : false, + 'reloadBrowser' : false, + 'demoLoadTimeout' : 30000 +}; + +var args = arguments ? arguments : ""; +var simSvn = baseConf.simulatorSvn; +for (var i=0; i<args.length; i++) { + if (args[i].indexOf('simulatorSvn') >= 0) { + simSvn = args[i].substr(args[i].indexOf('simulatorSvn=') + 13); + } +} + +load([simSvn + "/trunk/tool/selenium/simulation/Simulation.js"]); + +var mySim = new simulation.Simulation(baseConf,args); + +var selWin = simulation.Simulation.SELENIUMWINDOW; +var qxAppInst = simulation.Simulation.QXAPPINSTANCE + '.viewer'; + +var logPause = 3000; // millisecs to wait after loading sample +var selectNextSample = qxAppInst + '.tree.addToSelection(' + qxAppInst + '.tree.getNextNodeOf(' + qxAppInst + '.tree.getSelection()[0]))'; +var runSample = qxAppInst + '.runSample()'; // play currently selected sample +var getSampleCategory = selWin + '.' + qxAppInst + '.tree.getSelection()[0].getParent().getLabel()'; // get category name +var getSampleLabel = selWin + '.' + qxAppInst + '.tree.getSelection()[0].getLabel()'; // get sample name +var getNextSampleCategory = selWin + '.' + qxAppInst + '.tree.getNextNodeOf(' + selWin + '.' + qxAppInst + '.tree.getSelection()[0]).getParent().getLabel()'; +var getNextSampleLabel = selWin + '.' + qxAppInst + '.tree.getNextNodeOf(' + selWin + '.' + qxAppInst + '.tree.getSelection()[0]).getLabel()'; +var shutdownSample = selWin + '.' + qxAppInst + '._infosplit.getChildren()[0].getWindow().qx.core.ObjectRegistry.shutdown()'; +mySim.currentSample = "current"; +mySim.lastSample = "last"; +mySim.demoFrame = selWin + '.' + qxAppInst + '._iframe'; +mySim.demoWin = mySim.demoFrame + ".getWindow()"; +mySim.demoQx = mySim.demoWin + ".qx"; +mySim.demoQxApp = mySim.demoQx + '.core.Init.getApplication()'; +mySim.checkDemoReady = 'var demoReady = false;' + + 'try {' + + ' if (' + mySim.demoQxApp +') {' + + ' demoReady = true;' + + ' }' + + '}' + + 'catch(ex) {}' + + 'demoReady;'; + mySim.locators = { + toolbarLogButton : "qxhv=*/qx.ui.toolbar.ToolBar/*/[@label=Log File]", + overflowButton : "//div[contains(@style, 'media-seek-forward')]", + overflowMenuLogFileButton : "//div[text() = 'Log File']/parent::div", + //logEmbed : 'qxhv=[@classname="demobrowser.DemoBrowser"]/qx.ui.splitpane.Pane/qx.ui.splitpane.Pane/qx.ui.container.Stack/[@classname="qxc.ui.logpane.LogView"]/qx.ui.embed.Html' + logEmbed: '//div[@qxclass="qxc.ui.logpane.LogView"]/div[@qxclass="qx.ui.embed.Html"]/div' + }; +mySim.qxLog = "selenium.page().findElement('" + mySim.locators.logEmbed + "').innerHTML"; +/* +* Returns a command that selects sample number [entry] from the sample tree +* when run through Selenium's runScript() method. +*/ +function treeSelect(entry) +{ + entry = entry ? entry : 0; + return qxAppInst + '.tree.setSelection([' + qxAppInst + '.tree.getItems()[' + entry + ']])'; +} + +/* +* Generated HTML elements are uppercase in IE +*/ +function getLogArray(result) +{ + var logArray = []; + if (result.indexOf("</div>") >0 ) { + logArray = result.split("</div>"); + } else if (result.indexOf("</DIV>") >0 ) { + logArray = result.split("</DIV>"); + } + return logArray; +} + +/* + * This function is added to the AUT's context using the Simulation.addOwnFunction() + * method. It allows the selection of a specific demo using the category/demo + * name. + */ +var chooseDemo = function(category, sample) +{ + var viewer = selenium.browserbot.getCurrentWindow().qx.core.Init.getApplication().viewer; + var tree = viewer.tree; + var items = tree.getItems(); + for (var i=1; i<items.length; i++) { + if (items[i].getParent().getLabel() == category) { + if (items[i].getLabel() == sample) { + items[i].getParent().setOpen(true); + tree.addToSelection(items[i]); + viewer.runSample(); + } + } + } +}; + +/* + * This function is added to the AUT's context using the Simulation.addOwnFunction() + * method. It returns an array containing the names of all demos in a given + * category. + */ +var getDemosByCategory = function(category) +{ + var viewer = selenium.browserbot.getCurrentWindow().qx.core.Init.getApplication().viewer; + var tree = viewer.tree; + var items = tree.getItems(); + var samples = []; + for (var i=1; i<items.length; i++) { + if (items[i].getParent().getLabel() == category) { + samples.push(items[i].getLabel()); + } + } + return samples; +}; + +simulation.Simulation.prototype.waitForDemoApp = function() +{ + var timeout = this.getConfigSetting("demoLoadTimeout"); + this.__sel.waitForCondition(mySim.checkDemoReady, timeout); +}; + +/* +* Runs the given script, then gets the current sample's name and log output and +* sends them to Selenium's log. +*/ +simulation.Simulation.prototype.sampleRunner = function(script) +{ + var scriptCode = script ? script : runSample; + var nextSampleCategory = "unknown category;"; + var nextSampleLabel = "unknown demo"; + var category = "Unknown category"; + var currentSample = "Unknown demo"; + + var skip = false; + // If we have an ignore list, check if the next sample is in there. + var ignore = this.ignore; + if (ignore.length > 0 && scriptCode.indexOf('playNext') > 0 ) { + try { + nextSampleCategory = this.getEval(getNextSampleCategory, "Getting category of next sample"); + nextSampleLabel = this.getEval(getNextSampleLabel, "Getting label of next sample"); + + // Category "Demos" means there's a category folder selected, + // so look at the first sample inside. + if (nextSampleCategory == "Demos") { + this.runScript(selectNextSample, "Selecting next sample from tree"); + this.runScript(qxAppInst + '.tree.getSelection()[0].setOpen(true)', "Opening category"); + nextSampleCategory = this.getEval(getNextSampleCategory, "Getting category of next sample"); + nextSampleLabel = this.getEval(getNextSampleLabel, "Getting label of next sample"); + } + + print("Next Sample: " + nextSampleCategory + ":" + nextSampleLabel); + for (var i = 0; i < ignore.length; i++) { + var ignoreCategory = ignore[i].substring(0, ignore[i].indexOf(':')); + if (nextSampleCategory == ignoreCategory) { + var ignoreSample = ignore[i].substr(ignore[i].indexOf(':') + 1); + if (nextSampleLabel == ignoreSample || ignoreSample == "*") { + this.runScript(selectNextSample, "Selecting next sample from tree"); + skip = true; + } + } + } + } + catch(ex) { + /* If we can't identify the next sample, we've either reached the end of + the list, or something went wrong. */ + print("Unable to retrieve next sample's category and/or label."); + return; + } + } + + if (skip) { + //print("Skipping sample: " + nextSampleCategory + ' - ' + nextSampleLabel); + this.log('SKIPPED ' + nextSampleCategory + ' - ' + nextSampleLabel, "info"); + return [nextSampleCategory,nextSampleLabel]; + } + else { + this.log('Loading demo ' + nextSampleCategory + ' - ' + nextSampleLabel, "debug"); + // run the sample + this.runScript(scriptCode, "Running sample"); + + var demoLoaded = false; + try { + this.waitForDemoApp(); + demoLoaded = true; + } catch(ex) { + this.log("Error while waiting for demo " + nextSampleCategory + " - " + nextSampleLabel + " to load: " + ex, "error"); + } + + if (!demoLoaded) { + return [category,currentSample]; + } + + if (this.getConfigSetting("sampleGlobalErrorLogging")) { + try { + this.addErrorHandlerToDemo(); + } catch(ex) { + this.log("Could not add global error handler to demo " + nextSampleCategory + ":" + nextSampleLabel); + } + } + + var sampleTemp; + try { + sampleTemp = this.getEval(getSampleLabel, "Getting current sample label"); + } catch(ex) {} + + if (!sampleTemp) { + // try again + try { + sampleTemp = this.getEval(getSampleLabel, "Getting current sample label"); + } catch(ex) {} + if (!sampleTemp) { + this.log("Unable to determine current demo", "error"); + } + } + else { + currentSample = sampleTemp; + } + + var categoryTemp; + try { + categoryTemp = this.getEval(getSampleCategory, "Getting current sample category"); + } catch(ex) {} + + if (!categoryTemp) { + // try again + try { + categoryTemp = this.getEval(getSampleCategory, "Getting current sample category"); + } catch(ex) {} + if (!categoryTemp) { + this.log("Unable to determine current category", "error"); + } + } + else { + category = categoryTemp; + } + } + + // wait for the sample to finish loading, then get its log output + Packages.java.lang.Thread.sleep(logPause); + + // Shut down the sample application + if (this.getConfigSetting("shutdownSample")) { + this.getEval(shutdownSample, "Shutting down sample application"); + Packages.java.lang.Thread.sleep(2000); + } + + this.openLog(); + print(category + " - " + currentSample + ": Processing log"); + + var sampleLog = String(this.getEval(this.qxLog, "Getting log for sample " + category + " - " + currentSample)); + + if (!sampleLog) { + this.log("Unable to get log for sample " + category + "-" + currentSample, "error"); + return [category,currentSample]; + } + + if (this.getConfigSetting("sampleGlobalErrorLogging")) { + try { + this.log("Global error log contents for " + category + ":" + currentSample, "debug"); + this.logGlobalErrors(); + } + catch (ex) { + this.log("Unable to log global errors: " + ex, "error"); + } + } + + // we're only interested in logs containing warnings or errors + var isErrWarn = false; + if (sampleLog.indexOf('level-warn') > 0 || sampleLog.indexOf('level-error') > 0) { + this.log("Sample " + category + "-" + currentSample + " has incomplete log!","warn"); + isErrWarn = true; + } + + if (isErrWarn || this.getConfigSetting("logAll")) { + + /* Selenium uses http get requests to pass messages to the server log. + * If the log message is too long, the server throws an http exception. + * So we need to chop the message into bits and make multiple calls. + */ + var logArray = getLogArray(sampleLog); + // we can speed this up since we don't have to wait for the browser + this.__sel.setSpeed("150"); + + this.log('<div class="qxappender">'); + for (var j=0, l=logArray.length; j<l; j++) { + var line = logArray[j] + '</DIV>'; + // only log relevant lines + if ((line.indexOf('level-debug') < 0 && line.indexOf('level-info') < 0) || + this.getConfigSetting("logAll")) + { + print("Warning or Error found"); + line = line.replace(/\'/g, "\\'"); + line = line.replace(/\n/g, "<br/>"); + line = line.replace(/\r/g, "<br/>"); + //line = '<div class="qxappender"'> + line + '</div>'; + if (line.indexOf('level-error')) { + this.log(line, "error"); + } + else if (line.indexOf('level-warn')) { + this.log(line, "warn"); + } + else if (line.indexOf('level-info')) { + this.log(line, "info"); + } + else { + this.log(line, "debug"); + } + } + } + this.log("</div>"); + + this.__sel.setSpeed(this.getConfigSetting("stepSpeed")); + } + else { + this.log("No errors/warnings found", "info"); + } + + return [category,currentSample]; +}; + +simulation.Simulation.prototype.addErrorHandlerToDemo = function() +{ + this.addGlobalErrorHandler(selWin + '.' + qxAppInst + "._iframe.getWindow()"); +}; + +simulation.Simulation.prototype.checkUrlParameter = function() +{ + var match = /#(.*?)~(.*?)\.html/.exec(this.getConfigSetting("autPath")); + if (!match) { + return; + } + + this.waitForDemoApp(); + + var categoryName = match[1]; + var demoName = match[2]; + var treeCategory; + var treeDemo; + var demoApplication; + + try { + treeCategory = this.__sel.getEval(getSampleCategory); + treeDemo = this.__sel.getEval(getSampleLabel); + } + catch(ex) { + this.log("checkUrlParameter: Unable to check tree selection: " + ex.message, "error"); + return; + } + + if (treeCategory != categoryName || treeDemo != demoName) { + this.log("checkUrlParameter: Wrong tree selection: Expected " + categoryName + "." + demoName + " but found " + treeCategory + "." + treeDemo, "error"); + return; + } + + try { + demoApplication = this.__sel.getEval(this.demoQxApp + ".classname"); + } + catch(ex) { + this.log("checkUrlParameter: Unable to check demo class name: " + ex.message, "error"); + return; + } + var expectedDemoClass = "demobrowser.demo." + categoryName + "." + demoName; + if (demoApplication != expectedDemoClass) { + this.log("checkUrlParameter: Wrong demo active: Expected " + expectedDemoClass + " but found " + demoApplication, "error"); + return; + } + + this.log("checkUrlParameter: Demo loaded OK", "info"); +}; + +simulation.Simulation.prototype.runTest = function() +{ + this.__sel.windowMaximize(); + this.checkUrlParameter(); + + print("Starting sample playback"); + + var ignore = []; + var currentCatSam; + var runIncluded; + + try { + ignore = this.getConfigSetting("ignore").split(","); + if (this.getConfigSetting("debug")) { + print("Ignore list configured: " + ignore); + } + } + catch(ex) { + if (this.getConfigSetting("debug")) { + print("No ignore list configured."); + } + } + + this.ignore = ignore; + + var include = []; + + try { + include = this.getConfigSetting("include").split(","); + if (this.getConfigSetting("debug")) { + print("Include list configured: " + include); + } + } + catch(ex) { + if (this.getConfigSetting("debug")) { + print("No include list configured."); + } + } + + // Remove the text from the search field so no demos are filtered + this.qxType('qxh=[@classname=demobrowser.DemoBrowser]/qx.ui.splitpane.Pane/qx.ui.container.Composite/qx.ui.container.Composite/qx.ui.form.TextField', ""); + + if (include.length === 0) { + var firstSample = true; + this.runScript(treeSelect(2), "Selecting first category"); + this.runScript(qxAppInst + '.tree.getSelection()[0].setOpen(true)', "Opening first category"); + var finalSampleScript = selWin + '.' + qxAppInst + '.tree.getItems()[' + selWin + '.' + qxAppInst + '.tree.getItems().length - 1].getLabel()'; + var finalSample = this.getEval(finalSampleScript, "Getting final sample name"); + var finalCategoryScript = selWin + '.' + qxAppInst + '.tree.getItems()[' + selWin + '.' + qxAppInst + '.tree.getItems().length - 1].getParent().getLabel()'; + var finalCategory = this.getEval(finalCategoryScript, "Getting final category name"); + print("Final demo: " + finalCategory + ":" + finalSample); + currentCatSam = this.sampleRunner(runSample); + this.currentCategory = this.lastCategory = currentCatSam[0]; + this.currentSample = currentCatSam[1]; + + while (this.currentSample != this.lastSample) { + if (this.lastCategory) { + if (this.currentCategory != this.lastCategory && this.getConfigSetting("reloadBrowser")) { + print("New category, reloading application"); + this.log("New category " + this.currentCategory + ", reloading application", "debug"); + this.qxOpen(); + this.addGlobalErrorHandler(); + this.setupApplicationLogging(); + this.addOwnFunction("chooseDemo", chooseDemo); + this.getEval(selWin + ".qx.Simulation.chooseDemo('" + this.currentCategory + "','" + this.currentSample + "');"); + } + } + + if (firstSample) { + firstSample = false; + if (this.getConfigSetting("theme", false)) { + var chosenTheme = this.getConfigSetting("theme"); + this.log("Switching theme to " + chosenTheme, "info"); + this.qxClick('qxhv=*/qx.ui.toolbar.ToolBar/*/[@label=Theme]', "", "Clicking Theme button"); + this.qxClick('qxhv=*/qx.ui.toolbar.ToolBar/*/[@label=Theme]/qx.ui.menu.Menu/[@label="' + chosenTheme + '"]', "", "Selecting theme " + chosenTheme); + } + } + + if (this.currentCategory != finalCategory || (this.currentCategory == finalCategory && this.currentSample != finalSample) ) { + this.lastCategory = this.currentCategory; + this.lastSample = this.currentSample; + print("Done playing " + this.lastSample + ", starting next sample"); + + this.killBoxes(); + var runNextSample = qxAppInst + '.playNext()'; + currentCatSam = this.sampleRunner(runNextSample); + this.currentCategory = currentCatSam[0]; + this.currentSample = currentCatSam[1]; + } + else { + this.currentCategory = this.lastCategory; + this.currentSample = this.lastSample; + } + } + } + else { + this.log("Selective run: " + include.length + " demos/categories selected.", "info"); + this.addOwnFunction("chooseDemo", chooseDemo); + this.addOwnFunction("getDemosByCategory", getDemosByCategory); + for (var j=0; j<include.length; j++) { + var cat = include[j].substring(0, include[j].indexOf(':')); + var sam = include[j].substr(include[j].indexOf(':') + 1); + // If the demo name is a wildcard, run all demos from the category + if (sam == "*") { + var getDemos = selWin + ".qx.Simulation.getDemosByCategory('" + cat + "');"; + var categoryDemos = this.getEval(getDemos, "Getting demos in category " + cat); + var categoryDemoArr = categoryDemos.split(","); + for (var k=0; k<categoryDemoArr.length; k++) { + runIncluded = "qx.Simulation.chooseDemo('" + cat + "','" + categoryDemoArr[k] + "');"; + currentCatSam = this.sampleRunner(runIncluded); + this.currentCategory = currentCatSam[0]; + this.currentSample = currentCatSam[1]; + this.killBoxes(); + } + } + else { + if (this.currentCategory && cat != this.currentCategory && this.getConfigSetting("reloadBrowser")) { + print("New category, reloading application"); + this.log("New category " + this.currentCategory + ", reloading application", "debug"); + this.qxOpen(); + this.addGlobalErrorHandler(); + this.setupApplicationLogging(); + this.addOwnFunction("chooseDemo", chooseDemo); + this.addOwnFunction("getDemosByCategory", getDemosByCategory); + } + + runIncluded = "qx.Simulation.chooseDemo('" + cat + "','" + sam + "');"; + currentCatSam = this.sampleRunner(runIncluded); + this.currentCategory = currentCatSam[0]; + this.currentSample = currentCatSam[1]; + this.killBoxes(); + } + } + } + +}; + + +simulation.Simulation.prototype.openLog = function() +{ + if (!this.__logOpened) { + if (this.__sel.isElementPresent(this.locators.toolbarLogButton)) { + this.qxClick(this.locators.toolbarLogButton); + Packages.java.lang.Thread.sleep(2000); + } + else if (this.__sel.isElementPresent(this.locators.overflowButton)) { + this.qxClick(this.locators.overflowButton); + Packages.java.lang.Thread.sleep(2000); + this.qxClick(this.locators.overflowMenuLogFileButton); + Packages.java.lang.Thread.sleep(2000); + } + + this.__logOpened = true; + } +}; + +// - Main -------------------------------------------------------------------- + +(function() { + mySim.testFailed = false; + + var sessionStarted = mySim.startSession(); + + if (!sessionStarted) { + return; + } + + var isAppReady = mySim.waitForCondition(simulation.Simulation.ISQXAPPREADY, 20000, + "Waiting for qooxdoo application"); + + + if (!isAppReady) { + mySim.testFailed = true; + mySim.stop(); + return; + } + + try { + mySim.setupApplicationLogging(); + mySim.addGlobalErrorHandler(); + mySim.runTest(); + } + catch(ex) { + mySim.testFailed = true; + var msg = "Unexpected error while running test: " + ex; + if (mySim.getConfigSetting("debug")) { + print(msg); + } + mySim.log(msg, "error"); + + } + + mySim.log("Global error log contents for Demobrowser", "debug"); + mySim.logGlobalErrors(); + mySim.logResults(); + + mySim.stop(); + +})(); Deleted: trunk/qooxdoo-contrib/Simulator/3.0/tool/selenium/simulation/featureconfigeditor/test_featureconfigeditor.js =================================================================== --- trunk/qooxdoo-contrib/Simulator/trunk/tool/selenium/simulation/featureconfigeditor/test_featureconfigeditor.js 2013-05-02 16:01:36 UTC (rev 21844) +++ trunk/qooxdoo-contrib/Simulator/3.0/tool/selenium/simulation/featureconfigeditor/test_featureconfigeditor.js 2013-07-24 06:55:30 UTC (rev 21855) @@ -1,54 +0,0 @@ -var baseConf = { - 'autName' : 'FeatureConfigEditor', - 'globalTimeout' : 300000, - 'stepSpeed' : '500', - 'debug' : true -}; - -var args = arguments ? arguments : ""; -var simSvn = baseConf.simulatorSvn; -for (var i=0; i<args.length; i++) { - if (args[i].indexOf('simulatorSvn') >= 0) { - simSvn = args[i].substr(args[i].indexOf('simulatorSvn=') + 13); - } -} - -load([simSvn + "/trunk/tool/selenium/simulation/Simulation.js"]); - -var mySim = new simulation.Simulation(baseConf,args); - -var selWin = simulation.Simulation.SELENIUMWINDOW; -var qxAppInst = simulation.Simulation.QXAPPINSTANCE; - -// - Main -------------------------------------------------------------------- -(function() { - mySim.testFailed = false; - - var sessionStarted = mySim.startSession(); - - if (!sessionStarted) { - return; - } - - mySim.__sel.click("//a[contains(text(), 'Launch Configuration Editor')]"); - mySim.setupEnvironment(); - - var isAppReady = mySim.waitForCondition(simulation.Simulation.ISQXAPPREADY, 60000, - "Waiting for qooxdoo application"); - - - if (!isAppReady) { - mySim.testFailed = true; - mySim.stop(); - return; - } - - mySim.setupApplicationLogging(); - mySim.addGlobalErrorHandler(); - java.lang.Thread.sleep(5000); - mySim.logGlobalErrors(); - mySim.logResults(); - - mySim.stop(); - -})(); \ No newline at end of file Copied: trunk/qooxdoo-contrib/Simulator/3.0/tool/selenium/simulation/featureconfigeditor/test_featureconfigeditor.js (from rev 21850, trunk/qooxdoo-contrib/Simulator/trunk/tool/selenium/simulation/featureconfigeditor/test_featureconfigeditor.js) =================================================================== --- trunk/qooxdoo-contrib/Simulator/3.0/tool/selenium/simulation/featureconfigeditor/test_featureconfigeditor.js (rev 0) +++ trunk/qooxdoo-contrib/Simulator/3.0/tool/selenium/simulation/featureconfigeditor/test_featureconfigeditor.js 2013-07-24 06:55:30 UTC (rev 21855) @@ -0,0 +1,54 @@ +var baseConf = { + 'autName' : 'FeatureConfigEditor', + 'globalTimeout' : 300000, + 'stepSpeed' : '500', + 'debug' : true +}; + +var args = arguments ? arguments : ""; +var simSvn = baseConf.simulatorSvn; +for (var i=0; i<args.length; i++) { + if (args[i].indexOf('simulatorSvn') >= 0) { + simSvn = args[i].substr(args[i].indexOf('simulatorSvn=') + 13); + } +} + +load([simSvn + "/trunk/tool/selenium/simulation/Simulation.js"]); + +var mySim = new simulation.Simulation(baseConf,args); + +var selWin = simulation.Simulation.SELENIUMWINDOW; +var qxAppInst = simulation.Simulation.QXAPPINSTANCE; + +// - Main -------------------------------------------------------------------- +(function() { + mySim.testFailed = false; + + var sessionStarted = mySim.startSession(); + + if (!sessionStarted) { + return; + } + + mySim.__sel.click("//a[contains(text(), 'Launch full configuration editor')]"); + mySim.setupEnvironment(); + + var isAppReady = mySim.waitForCondition(simulation.Simulation.ISQXAPPREADY, 60000, + "Waiting for qooxdoo application"); + + + if (!isAppReady) { + mySim.testFailed = true; + mySim.stop(); + return; + } + + mySim.setupApplicationLogging(); + mySim.addGlobalErrorHandler(); + java.lang.Thread.sleep(5000); + mySim.logGlobalErrors(); + mySim.logResults(); + + mySim.stop(); + +})(); Deleted: trunk/qooxdoo-contrib/Simulator/3.0/tool/selenium/simulation/feedreader/test_feedreader.js =================================================================== --- trunk/qooxdoo-contrib/Simulator/trunk/tool/selenium/simulation/feedreader/test_feedreader.js 2013-05-02 16:01:36 UTC (rev 21844) +++ trunk/qooxdoo-contrib/Simulator/3.0/tool/selenium/simulation/feedreader/test_feedreader.js 2013-07-24 06:55:30 UTC (rev 21855) @@ -1,334 +0,0 @@ -var baseConf = { - autName : 'Feedreader', - globalTimeout : 300000, - stepSpeed : '250', - selServer : 'localhost', - selPort : 4444, - testBrowser : '*opera', - autHost : 'http://localhost', - autPath : '/~dwagner/workspace/qooxdoo.trunk/application/feedreader/build/index.html', - simulatorSvn : '/home/dwagner/workspace/qooxdoo.contrib/Simulator', - debug : true -}; - -var args = arguments ? arguments : ""; -var simSvn = baseConf.simulatorSvn; -for (var i=0; i<args.length; i++) { - if (args[i].indexOf('simulatorSvn') >= 0) { - simSvn = args[i].substr(args[i].indexOf('simulatorSvn=') + 13); - } -} - -load([simSvn + "/trunk/tool/selenium/simulation/Simulation.js"]); - -var mySim = new simulation.Simulation(baseConf,args); - -var selWin = simulation.Simulation.SELENIUMWINDOW; -var qxAppInst = simulation.Simulation.QXAPPINSTANCE; - -var locators = { - articleView : 'qxh=qx.ui.container.Composite/qx.ui.splitpane.Pane/qx.ui.splitpane.Pane/[@classname="feedreader.view.desktop.Article"]', - feedTree : 'qxh=qx.ui.container.Composite/qx.ui.splitpane.Pane/qx.ui.tree.Tree', - reloadButton : 'qxh=app:[@classname="feedreader.view.desktop.ToolBar"]/child[3]', - firstFeed : 'qxh=app:qx.ui.tree.Tree/child[0]/child[0]/child[0]', - firstFeedItem : 'qxh=app:[@classname="feedreader.view.desktop.List"]/qx.ui.container.Stack/qx.ui.form.List/child[0]', - preferencesButton : 'qxh=qx.ui.container.Composite/child[1]/child[5]', - preferencesWindow : 'qxh=[@classname="feedreader.view.desktop.PreferenceWindow"]', - buttonItalian : 'qxh=app:[@caption=".*"]/qx.ui.groupbox.GroupBox/[@label="Italiano"]', - buttonOk : 'qxh=app:[@caption=".*"]/qx.ui.container.Composite/[@label="OK"]', - addFeedButton : 'qxh=qx.ui.container.Composite/child[1]/child[0]', - feedWindow : 'qxh=[@classname="feedreader.view.desktop.AddFeedWindow"]', - feedWindowButton : 'qxh=app:[@caption=".*feed.*"]/qx.ui.form.renderer.SinglePlaceholder/qx.ui.container.Composite/qx.ui.form.Button' -}; - -simulation.Simulation.prototype.waitForFeeds = function() -{ - var feedsLoaded = function(treeLocator) { - var tree = selenium.getQxWidgetByLocator(treeLocator); - var ready = true; - var items = tree.getItems(); - for (var i=0,l=items.length; i<l; i++) { - if (items[i].getChildren().length == 0) { - var icon = items[i].getIcon(); - if (!(icon.indexOf('internet-feed-reader.png') >=0 || icon.indexOf('process-stop') >=0 )) { - ready = false; - } - } - } - return ready; - }; - this.addOwnFunction("feedsLoaded", feedsLoaded); - var condition = 'selenium.qxStoredVars["autWindow"].qx.Simulation.feedsLoaded("' + locators.feedTree + '")'; - try { - this.waitForCondition(condition, "30000"); - //this.debug("All feeds finished loading."); - } catch(ex) { - this.log("Feeds not loaded after 30 seconds, clicking reload", "warn"); - this.qxClick(locators.reloadButton); - this.waitForCondition(condition, "30000"); - } -}; - -simulation.Simulation.prototype.checkArticle = function() -{ - var articleScript = 'selenium.getQxObjectFunction(\'' + locators.articleView + '\', "getArticle")'; - var article = this.getEval(articleScript, "Checking for article"); - - var modelClassName = "qx.data.model"; - if (String(article).indexOf(modelClassName) >= 0) { - this.log("Article found.", "info"); - } - else { - this.log("ERROR: No Article found.", "error"); - } -}; - -simulation.Simulation.prototype.checkFeeds = function() -{ - var feedChecker = function() - { - var qxApp = selenium.browserbot.getCurrentWindow().qx.core.Init.getApplication(); - var items = qxApp.getRoot().getChildren()[0].getChildren()[2].getChildren()[0].getItems(); - var invalidFeeds = []; - for (var i=0,l=items.length; i<l; i++) { - if (items[i].getIcon().indexOf("process-stop") >=0) { - invalidFeeds.push(items[i].getLabel()); - } - } - return invalidFeeds.join("|"); - }; - - this.addOwnFunction("checkFeeds", feedChecker); - var invalidFeeds = this.getEval("selenium.qxStoredVars['autWindow'].qx.Simulation.checkFeeds()"); - invalidFeeds = String(invalidFeeds); - if (invalidFeeds != "") { - var invalidFeedArray = invalidFeeds.split("|"); - for (var i = 0, l = invalidFeedArray.length; i < l; i++) { - this.log("Feed not loaded: " + invalidFeedArray[i], "warn"); - } - } - -}; - -simulation.Simulation.prototype.testLocaleSwitch = function() -{ - var staticFeedsLabel = this.tree + ".getItems()[0].getContentElement().getChildren()[2].getChildren()[0].getValue().toString()"; - - var oldLabel = this.getEval(staticFeedsLabel, "Getting label of Static Feeds"); - - // Use the preferences window to change the application language - // Click the preferences button, then check if the prefs window opened. - this.qxClick(locators.preferencesButton, "", "Clicking Preferences button."); - Packages.java.lang.Thread.sleep(2000); - - var prefWindowScript = 'selenium.getQxWidgetByLocator(\'' + locators.preferencesWindow + '\')'; - var isPrefWindowVisible = prefWindowScript + ".getVisibility() == 'visible'"; - this.waitForCondition(isPrefWindowVisible, 10000, "Waiting for Preferences window to open."); - Packages.java.lang.Thread.sleep(2000); - - // Click the "Italiano" radio button. - var radioItalian = locators.buttonItalian; - this.qxClick(radioItalian, "", "Selecting language"); - Packages.java.lang.Thread.sleep(2000); - // Click again just to be sure (bug #2193). - this.qxClick(radioItalian, "", "Selecting language"); - - // Click the "OK" button - this.qxClick(locators.buttonOk, "", "Clicking OK."); - Packages.java.lang.Thread.sleep(2000); - - // Check if the preferences window closed. Click "OK" again if it isn't. - var prefWinVis = this.getEval(isPrefWindowVisible, "Checking if preferences window is visible"); - // getEval returns an object, not a boolean - if (String(prefWinVis) != "false") { - this.qxClick(locators.buttonOk, "", "Clicking OK again."); - Packages.java.lang.Thread.sleep(2000); - } - - var isPrefWindowHidden = prefWindowScript + ".getVisibility() == 'hidden'"; - this.waitForCondition(isPrefWindowHidden, 10000, "Waiting for preferences window to close"); - - // Check if the label of the "Static Feeds" tree folder has changed - var newLabel = this.getEval(staticFeedsLabel, "Getting new 'Static Feeds' label."); - if (oldLabel != newLabel) { - this.log("Language changed successfully.", "info"); - } - else { - this.log("ERROR: Language change failed.", "error"); - } -}; - -simulation.Simulation.prototype.isIe9 = function() -{ - var getBrowser = selWin + '.qx.core.Environment.get("browser.name")'; - var getVersion = selWin + '.qx.core.Environment.get("browser.version")'; - var browser = String(this.getEval(getBrowser)); - var version = String(this.getEval(getVersion)); - version = parseInt(version, 10); - - return (browser == "ie" && version >= 9); -}; - -simulation.Simulation.prototype.testAddFeed = function() -{ - // "type" commands don't work in IE9 - if (this.isIe9()) { - this.log("Skipping testAddFeed", "debug"); - return; - } - - var lastFeedNum = this.getEval(this.tree + '.getItems().length - 1', "Getting last feed's number"); - var getLastFeedLabel = this.tree + ".getItems()[" + lastFeedNum + "].getLabel()"; - var lastFeedLabel = this.getEval(getLastFeedLabel, "Getting last feed's label"); - - // Click "Add Feed" - this.qxClick(locators.addFeedButton, "", "Clicking Add Feed button"); - Packages.java.lang.Thread.sleep(2000); - - var feedWindowScript = 'selenium.getQxWidgetByLocator(\'' + locators.feedWindow + '\')'; - var isFeedWindowVisible = feedWindowScript + ".getVisibility() == 'visible'"; - this.waitForCondition(isFeedWindowVisible, 10000, "Waiting for Add Feed window to open."); - Packages.java.lang.Thread.sleep(2000); - - // Check if the Add Feed window's caption was translated. - var addFeedWindowLabel = feedWindowScript + ".getCaption().toString()"; - var addLabel = this.getEval(addFeedWindowLabel, "Getting Add Feed window's caption"); - - if (addLabel.indexOf('Aggiungi') < 0 ) { - this.log('ERROR: Feed window has unexpected title "' + addLabel + '". Possible translation problem.', "error"); - } - else { - this.log("Feed window has translated title", "info"); - } - - // Enter new feed details - this.qxType(locators.feedWindow + "/qx.ui.form.renderer.SinglePlaceholder/child[1]", "Heise"); - this.qxType(locators.feedWindow + "/qx.ui.form.renderer.SinglePlaceholder/child[2]", "http://www.heise.de/newsticker/heise-atom.xml"); - - this.qxClick(locators.feedWindowButton, "", "Clicking 'Add'."); - Packages.java.lang.Thread.sleep(2000); - - // Check if the Add Feed Window closed. - var feedWinVis = this.getEval(isFeedWindowVisible, "Waiting for Add Feed window to close."); - if (String(feedWinVis) == "true") { - this.log("Add Feed Window still visible, clicking again.", "debug"); - this.qxClick(locators.feedWindowButton, "", "Clicking 'Add'."); - } - - var isFeedWindowHidden = feedWindowScript + ".getVisibility() == 'hidden'"; - this.waitForCondition(isFeedWindowHidden, 10000, "Checking if Add Feed window is closed"); - - // Check if the new feed loaded. - var newLastFeedNum = this.getEval(this.tree + ".getItems().length - 1", "Getting last feed's number"); - var isNewLastFeedLoaded = this.tree + ".getItems()[" + newLastFeedNum + "].getIcon().indexOf('internet-feed-reader.png') >= 0"; - - try { - this.__sel.waitForCondition(isNewLastFeedLoaded, this.feedLoadTimeout.toString()); - } catch(ex) { - this.log("New feed not loaded after 30 seconds, waiting another 30 sec.", "info"); - this.waitForCondition(isNewLastFeedLoaded, this.feedLoadTimeout, "Waiting for new feed to load."); - } - - var getNewLastFeedLabel = this.tree + ".getItems()[" + newLastFeedNum + "].getLabel()"; - var newLastFeedLabel = this.getEval(getNewLastFeedLabel, "Getting new feed's label"); - - if (newLastFeedLabel != lastFeedLabel) { - this.log("New feed loaded correctly.", "info"); - } - else { - this.log("ERROR: New feed has unexpected label: " + newLastFeedLabel, "error"); - } - - // Select the new feed - var treeLastSelect = this.tree + ".addToSelection(" + this.tree + ".getItems()[" + newLastFeedNum + "])"; - this.getEval(treeLastSelect, "Selecting new feed."); - - this.qxClick(locators.firstFeedItem, "", "Selecting first item from new feed."); - this.checkArticle(); -}; - -simulation.Simulation.prototype.checkCombinedImage = function() -{ - // IE uses the AlphaImageLoader so no combined images - if (this.getConfigSetting("testBrowser").indexOf("iexplore") >= 0 ) { - return; - } - var getImageBackground = function(locator) { - var qxImg = selenium.getQxWidgetByLocator(locator); - return qxImg.getContentElement().getDomElement().style.backgroundImage; - } - this.addOwnFunction("getImageBackground", getImageBackground); - - var imgLoc = locators.addFeedButton + "/child[0]"; - var imageBackground = this.getEval('selenium.qxStoredVars["autWindow"].qx.Simulation.getImageBackground("' + imgLoc +'")'); - imageBackground = String(imageBackground); - - if (imageBackground.indexOf("combined") >= 0 || imageBackground.indexOf("base64") >= 0) { - this.log("Add Feed button icon uses combined image.", "info"); - } else { - this.log("Add Feed button icon does not use combined image: " + imageBackground, "error"); - } -}; - -mySim.runTest = function() -{ - this.feedLoadTimeout = 30000; - this.tree = 'selenium.getQxWidgetByLocator("' + locators.feedTree + '")'; - - this.waitForFeeds(); - this.checkFeeds(); - - this.__sel.setSpeed("1000"); - - this.getEval(this.tree + ".resetSelection()", "Resetting tree selection"); - this.qxClick(locators.firstFeed, "", "Sele... [truncated message content] |