http://git-wip-us.apache.org/repos/asf/openmeetings/blob/1cb3518f/openmeetings-flash/src/main/swf/networkTesting/tests/BaseURLLoadTest.lzx ---------------------------------------------------------------------- diff --git a/openmeetings-flash/src/main/swf/networkTesting/tests/BaseURLLoadTest.lzx b/openmeetings-flash/src/main/swf/networkTesting/tests/BaseURLLoadTest.lzx index 4282969..a0e7eda 100644 --- a/openmeetings-flash/src/main/swf/networkTesting/tests/BaseURLLoadTest.lzx +++ b/openmeetings-flash/src/main/swf/networkTesting/tests/BaseURLLoadTest.lzx @@ -1,146 +1,146 @@ -<?xml version="1.0" encoding="UTF-8" ?> -<!-- - Licensed to the Apache Software Foundation (ASF) under one - or more contributor license agreements. See the NOTICE file - distributed with this work for additional information - regarding copyright ownership. The ASF licenses this file - to you under the Apache License, Version 2.0 (the - "License"); you may not use this file except in compliance - with the License. You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, - software distributed under the License is distributed on an - "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - KIND, either express or implied. See the License for the - specific language governing permissions and limitations - under the License. - ---> -<library> - -<class name="BaseURLLoadTest" extends="NetworkTest"> - - <switch> - <when property="$as3"> - <passthrough> - import flash.events.*; - import flash.net.*; - import flash.utils.*; - </passthrough> - </when> - </switch> - - <attribute name="testsCount" type="number" value="0" /> - <attribute name="testTypeParameter" type="string" value="null" /> - <attribute name="verbose" type="boolean" value="true" /> - - <attribute name="startTime" type="number" value="0" /> - <attribute name="wholeTime" type="number" value="0" /> - <attribute name="maxTime" type="number" value="0" /> - <attribute name="minTime" type="number" value="999999" /> - <attribute name="finishedTestsCount" type="number" value="0" /> - <attribute name="successfulTestsCount" type="number" value="0" /> - - <attribute name="hostUrl" type="string" value="" /> - <attribute name="loaderInited" type="boolean" value="false" /> - <attribute name="request" value="null" /> - <attribute name="loader" value="null" /> - - <method name="initLoader"> - hostUrl = getBaseUrl() + "services/networktest?type=" + testTypeParameter; - request = new URLRequest(hostUrl); - - loader = new URLLoader(); - loader.addEventListener(Event.COMPLETE, this.onComplete); - loader.addEventListener(IOErrorEvent.IO_ERROR, this.onError); - loader.addEventListener(SecurityErrorEvent.SECURITY_ERROR, this.onError); - - loaderInited = true; - </method> - - <method name="start"> - if (!loaderInited) { - this.initLoader(); - } - finishedTestsCount = 0; - successfulTestsCount = 0; - wholeTime = 0; - maxTime = 0; - minTime = 999999; - - this.log(lbl('report.start') + " " + hostUrl); - startTime = getTimer(); - loader.load(request); - </method> - - <method name="forcedStop"> - loader.close(); - this.log("stopped"); - </method> - - <method name="onComplete" args="e"> - <![CDATA[ - var endTime = getTimer(); - var pingTime = endTime - startTime; - wholeTime += pingTime; - if (pingTime > maxTime) { - maxTime = pingTime; - } - if (pingTime < minTime) { - minTime = pingTime; - } - - if (verbose) { - this.log(lbl('ping.load') + " = " + pingTime + " " + lbl('ms')); - } - - finishedTestsCount++; - successfulTestsCount++; - if (finishedTestsCount < testsCount && running) { - startTime = getTimer(); - loader.load(request); - } else { - this.report(); - } - ]]> - </method> - - <method name="onError" args="e"> - <![CDATA[ - if (verbose) { - this.log("Error - " + e); - } - - finishedTestsCount++; - if (finishedTestsCount < testsCount && running) { - startTime = getTimer(); - loader.load(request); - } else { - this.report(); - } - ]]> - </method> - - <method name="report"> - var report = lbl('report') + ":"; - if (successfulTestsCount > 0) { - report += "\n" + this.generateReport(); - } else { - report += " " + lbl('report.con.err'); - } - this.log(report); - - if (successfulTestsCount > 0) { - this.setPassed(); - } else { - this.setFailed(); - } - </method> - - <method name="generateReport" /> - -</class> - -</library> +<?xml version="1.0" encoding="UTF-8" ?> +<!-- + Licensed to the Apache Software Foundation (ASF) under one + or more contributor license agreements. See the NOTICE file + distributed with this work for additional information + regarding copyright ownership. The ASF licenses this file + to you under the Apache License, Version 2.0 (the + "License"); you may not use this file except in compliance + with the License. You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, + software distributed under the License is distributed on an + "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + KIND, either express or implied. See the License for the + specific language governing permissions and limitations + under the License. + +--> +<library> + +<class name="BaseURLLoadTest" extends="NetworkTest"> + + <switch> + <when property="$as3"> + <passthrough> + import flash.events.*; + import flash.net.*; + import flash.utils.*; + </passthrough> + </when> + </switch> + + <attribute name="testsCount" type="number" value="0" /> + <attribute name="testTypeParameter" type="string" value="null" /> + <attribute name="verbose" type="boolean" value="true" /> + + <attribute name="startTime" type="number" value="0" /> + <attribute name="wholeTime" type="number" value="0" /> + <attribute name="maxTime" type="number" value="0" /> + <attribute name="minTime" type="number" value="999999" /> + <attribute name="finishedTestsCount" type="number" value="0" /> + <attribute name="successfulTestsCount" type="number" value="0" /> + + <attribute name="hostUrl" type="string" value="" /> + <attribute name="loaderInited" type="boolean" value="false" /> + <attribute name="request" value="null" /> + <attribute name="loader" value="null" /> + + <method name="initLoader"> + hostUrl = getBaseUrl() + "services/networktest?type=" + testTypeParameter; + request = new URLRequest(hostUrl); + + loader = new URLLoader(); + loader.addEventListener(Event.COMPLETE, this.onComplete); + loader.addEventListener(IOErrorEvent.IO_ERROR, this.onError); + loader.addEventListener(SecurityErrorEvent.SECURITY_ERROR, this.onError); + + loaderInited = true; + </method> + + <method name="start"> + if (!loaderInited) { + this.initLoader(); + } + finishedTestsCount = 0; + successfulTestsCount = 0; + wholeTime = 0; + maxTime = 0; + minTime = 999999; + + this.log(lbl('report.start') + " " + hostUrl); + startTime = getTimer(); + loader.load(request); + </method> + + <method name="forcedStop"> + loader.close(); + this.log("stopped"); + </method> + + <method name="onComplete" args="e"> + <![CDATA[ + var endTime = getTimer(); + var pingTime = endTime - startTime; + wholeTime += pingTime; + if (pingTime > maxTime) { + maxTime = pingTime; + } + if (pingTime < minTime) { + minTime = pingTime; + } + + if (verbose) { + this.log(lbl('ping.load') + " = " + pingTime + " " + lbl('ms')); + } + + finishedTestsCount++; + successfulTestsCount++; + if (finishedTestsCount < testsCount && running) { + startTime = getTimer(); + loader.load(request); + } else { + this.report(); + } + ]]> + </method> + + <method name="onError" args="e"> + <![CDATA[ + if (verbose) { + this.log("Error - " + e); + } + + finishedTestsCount++; + if (finishedTestsCount < testsCount && running) { + startTime = getTimer(); + loader.load(request); + } else { + this.report(); + } + ]]> + </method> + + <method name="report"> + var report = lbl('report') + ":"; + if (successfulTestsCount > 0) { + report += "\n" + this.generateReport(); + } else { + report += " " + lbl('report.con.err'); + } + this.log(report); + + if (successfulTestsCount > 0) { + this.setPassed(); + } else { + this.setFailed(); + } + </method> + + <method name="generateReport" /> + +</class> + +</library>
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/1cb3518f/openmeetings-flash/src/main/swf/networkTesting/tests/DownloadSpeedTest.lzx ---------------------------------------------------------------------- diff --git a/openmeetings-flash/src/main/swf/networkTesting/tests/DownloadSpeedTest.lzx b/openmeetings-flash/src/main/swf/networkTesting/tests/DownloadSpeedTest.lzx index 5b195e7..dd8a083 100644 --- a/openmeetings-flash/src/main/swf/networkTesting/tests/DownloadSpeedTest.lzx +++ b/openmeetings-flash/src/main/swf/networkTesting/tests/DownloadSpeedTest.lzx @@ -1,50 +1,50 @@ -<?xml version="1.0" encoding="UTF-8" ?> -<!-- - Licensed to the Apache Software Foundation (ASF) under one - or more contributor license agreements. See the NOTICE file - distributed with this work for additional information - regarding copyright ownership. The ASF licenses this file - to you under the Apache License, Version 2.0 (the - "License"); you may not use this file except in compliance - with the License. You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, - software distributed under the License is distributed on an - "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - KIND, either express or implied. See the License for the - specific language governing permissions and limitations - under the License. - ---> -<library> - -<class name="DownloadSpeedTest" extends="BaseURLLoadTest"> - - <handler name="oninit"> - this.setAttribute("testsCount", 1); - this.setAttribute("testName", lbl('dwn')); - this.setAttribute("testTypeParameter", "download"); - this.setAttribute("verbose", false); - this.setAttribute("resultText", true); - </handler> - - <method name="generateReport"> - var mBytes = loader.bytesTotal/(1024*1024); - var timeSec = wholeTime/1000; - var speed = mBytes/timeSec; - - var report = lbl('dwn.bytes') + ": " + mBytes + " " + lbl('mb') + "\n"; - report += lbl('dwn.time') + ": " + timeSec + " " + lbl('sec') + "\n"; - report += lbl('dwn.speed') + ": " + speed + " " + lbl('mb') + "/" + lbl('sec') + "\n"; - - resultLabel.setAttribute("text", ""); - resultLabel.addFormat("%.2f\n%s", speed, lbl('mb') + "/" + lbl('sec')); - - return report; - </method> - -</class> - -</library> +<?xml version="1.0" encoding="UTF-8" ?> +<!-- + Licensed to the Apache Software Foundation (ASF) under one + or more contributor license agreements. See the NOTICE file + distributed with this work for additional information + regarding copyright ownership. The ASF licenses this file + to you under the Apache License, Version 2.0 (the + "License"); you may not use this file except in compliance + with the License. You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, + software distributed under the License is distributed on an + "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + KIND, either express or implied. See the License for the + specific language governing permissions and limitations + under the License. + +--> +<library> + +<class name="DownloadSpeedTest" extends="BaseURLLoadTest"> + + <handler name="oninit"> + this.setAttribute("testsCount", 1); + this.setAttribute("testName", lbl('dwn')); + this.setAttribute("testTypeParameter", "download"); + this.setAttribute("verbose", false); + this.setAttribute("resultText", true); + </handler> + + <method name="generateReport"> + var mBytes = loader.bytesTotal/(1024*1024); + var timeSec = wholeTime/1000; + var speed = mBytes/timeSec; + + var report = lbl('dwn.bytes') + ": " + mBytes + " " + lbl('mb') + "\n"; + report += lbl('dwn.time') + ": " + timeSec + " " + lbl('sec') + "\n"; + report += lbl('dwn.speed') + ": " + speed + " " + lbl('mb') + "/" + lbl('sec') + "\n"; + + resultLabel.setAttribute("text", ""); + resultLabel.addFormat("%.2f\n%s", speed, lbl('mb') + "/" + lbl('sec')); + + return report; + </method> + +</class> + +</library> http://git-wip-us.apache.org/repos/asf/openmeetings/blob/1cb3518f/openmeetings-flash/src/main/swf/networkTesting/tests/JitterTest.lzx ---------------------------------------------------------------------- diff --git a/openmeetings-flash/src/main/swf/networkTesting/tests/JitterTest.lzx b/openmeetings-flash/src/main/swf/networkTesting/tests/JitterTest.lzx index e4b2f3d..2bf8d3e 100644 --- a/openmeetings-flash/src/main/swf/networkTesting/tests/JitterTest.lzx +++ b/openmeetings-flash/src/main/swf/networkTesting/tests/JitterTest.lzx @@ -1,57 +1,57 @@ -<?xml version="1.0" encoding="UTF-8" ?> -<!-- - Licensed to the Apache Software Foundation (ASF) under one - or more contributor license agreements. See the NOTICE file - distributed with this work for additional information - regarding copyright ownership. The ASF licenses this file - to you under the Apache License, Version 2.0 (the - "License"); you may not use this file except in compliance - with the License. You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, - software distributed under the License is distributed on an - "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - KIND, either express or implied. See the License for the - specific language governing permissions and limitations - under the License. - ---> -<library> - -<class name="JitterTest" extends="BaseURLLoadTest"> - - <handler name="oninit"> - this.setAttribute("testsCount", 100); - this.setAttribute("testName", lbl('jitter')); - this.setAttribute("testTypeParameter", "jitter"); - this.setAttribute("verbose", false); - this.setAttribute("resultText", true); - </handler> - - <method name="generateReport"> - <![CDATA[ - var averageTime = wholeTime / successfulTestsCount; - var jitterMax = maxTime - averageTime; - var jitterMin = minTime - averageTime; - var report = lbl('jitter.avg') + ": " + averageTime + " " + lbl('ms') + "\n"; - report += lbl('jitter.min') + ": " + minTime + " " + lbl('ms') + "\n"; - report += lbl('jitter.max') + ": " + maxTime + " " + lbl('ms') + "\n"; - report += lbl('jitter') + ": " + jitterMax + " " + lbl('ms') + "; " + jitterMin + " " + lbl('ms') + " \n"; - - var max = -jitterMin; - if (jitterMax > max) { - max = jitterMax; - } - - resultLabel.setAttribute("text", ""); - resultLabel.addFormat("%.0d\n%s", max, lbl('ms')); - - return report; - ]]> - </method> - -</class> - -</library> +<?xml version="1.0" encoding="UTF-8" ?> +<!-- + Licensed to the Apache Software Foundation (ASF) under one + or more contributor license agreements. See the NOTICE file + distributed with this work for additional information + regarding copyright ownership. The ASF licenses this file + to you under the Apache License, Version 2.0 (the + "License"); you may not use this file except in compliance + with the License. You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, + software distributed under the License is distributed on an + "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + KIND, either express or implied. See the License for the + specific language governing permissions and limitations + under the License. + +--> +<library> + +<class name="JitterTest" extends="BaseURLLoadTest"> + + <handler name="oninit"> + this.setAttribute("testsCount", 100); + this.setAttribute("testName", lbl('jitter')); + this.setAttribute("testTypeParameter", "jitter"); + this.setAttribute("verbose", false); + this.setAttribute("resultText", true); + </handler> + + <method name="generateReport"> + <![CDATA[ + var averageTime = wholeTime / successfulTestsCount; + var jitterMax = maxTime - averageTime; + var jitterMin = minTime - averageTime; + var report = lbl('jitter.avg') + ": " + averageTime + " " + lbl('ms') + "\n"; + report += lbl('jitter.min') + ": " + minTime + " " + lbl('ms') + "\n"; + report += lbl('jitter.max') + ": " + maxTime + " " + lbl('ms') + "\n"; + report += lbl('jitter') + ": " + jitterMax + " " + lbl('ms') + "; " + jitterMin + " " + lbl('ms') + " \n"; + + var max = -jitterMin; + if (jitterMax > max) { + max = jitterMax; + } + + resultLabel.setAttribute("text", ""); + resultLabel.addFormat("%.0d\n%s", max, lbl('ms')); + + return report; + ]]> + </method> + +</class> + +</library> http://git-wip-us.apache.org/repos/asf/openmeetings/blob/1cb3518f/openmeetings-flash/src/main/swf/networkTesting/tests/NetworkTest.lzx ---------------------------------------------------------------------- diff --git a/openmeetings-flash/src/main/swf/networkTesting/tests/NetworkTest.lzx b/openmeetings-flash/src/main/swf/networkTesting/tests/NetworkTest.lzx index 811a3cb..e837748 100644 --- a/openmeetings-flash/src/main/swf/networkTesting/tests/NetworkTest.lzx +++ b/openmeetings-flash/src/main/swf/networkTesting/tests/NetworkTest.lzx @@ -1,128 +1,128 @@ -<?xml version="1.0" encoding="UTF-8" ?> -<!-- - Licensed to the Apache Software Foundation (ASF) under one - or more contributor license agreements. See the NOTICE file - distributed with this work for additional information - regarding copyright ownership. The ASF licenses this file - to you under the Apache License, Version 2.0 (the - "License"); you may not use this file except in compliance - with the License. You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, - software distributed under the License is distributed on an - "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - KIND, either express or implied. See the License for the - specific language governing permissions and limitations - under the License. - ---> -<library> - -<class name="NetworkTest" extends="view"> - - <attribute name="testName" type="string" value="null" /> - <attribute name="protocol" type="string" value="null" /> - <attribute name="host" type="string" value="null" /> - <attribute name="port" type="number" value="null" /> - <attribute name="running" type="boolean" value="false" /> - <attribute name="allTests" type="boolean" value="false" /> - <attribute name="resultText" type="boolean" value="false" /> - - <method name="start" /> - <method name="forcedStop" /> - - <method name="startAllTestsMode"> - allTests = true; - this.setRunning(); - </method> - - <view name="picture"> - <view name="rsc" resource="notrun" width="113" height="113" /> - </view> - <text name="nameLabel" text="${parent.testName}" x="${(parent.picture.rsc.width - this.width)/2}" - y="$once{parent.picture.rsc.height}" - /> - <text name="resultLabel" visible="false" fgcolor="white" align="center" fontsize="16" /> - - <handler name="onclick"> - if (running) { - this.setStopped(); - } else { - allTests = false; - this.setRunning(); - } - </handler> - - <method name="handleAllTestsMode"> - if (allTests) { - canvas.testsView.testAll(); - } - </method> - - <method name="setPassed"> - if (running) { - running=false; - if (resultText) { - picture.rsc.setAttribute("resource", "passed_result"); - var x = (picture.rsc.width - resultLabel.width)/2; - var y = (picture.rsc.height - resultLabel.height)/2; - resultLabel.setAttribute("x", x); - resultLabel.setAttribute("y", y); - resultLabel.setAttribute("visible", true); - } else { - picture.rsc.setAttribute("resource", "passed"); - } - canvas.setAttribute("busy", false); - this.handleAllTestsMode(); - } - </method> - - <method name="setFailed"> - if (running) { - running=false; - picture.rsc.setAttribute("resource", "failed"); - canvas.setAttribute("busy", false); - this.handleAllTestsMode(); - } - </method> - - <method name="setRunning"> - if (canvas.busy) { - return; - } - canvas.setAttribute("busy", true); - this.start(); - running=true; - resultLabel.setAttribute("visible", false); - picture.rsc.setAttribute("resource", "running"); - picture.rsc.play(); - </method> - - <method name="setStopped"> - this.forcedStop(); - running=false; - picture.rsc.setAttribute("resource", "notrun"); - canvas.setAttribute("busy", false); - this.handleAllTestsMode(); - </method> - - <method name="log" args="message"> - var str = testName + ": " + message + "\n"; - canvas.log += str; - if ($debug) Debug.write(str); - </method> - - <method name="getBaseUrl"> - var hostUrl = protocol + "://" + host + ":" + port + canvas.uriContext; - return hostUrl + (hostUrl.slice(-1) == '/' ? '' : '/'); - </method> - - <method name="lbl" args="key"> - return canvas.lbl(key); - </method> - -</class> - -</library> +<?xml version="1.0" encoding="UTF-8" ?> +<!-- + Licensed to the Apache Software Foundation (ASF) under one + or more contributor license agreements. See the NOTICE file + distributed with this work for additional information + regarding copyright ownership. The ASF licenses this file + to you under the Apache License, Version 2.0 (the + "License"); you may not use this file except in compliance + with the License. You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, + software distributed under the License is distributed on an + "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + KIND, either express or implied. See the License for the + specific language governing permissions and limitations + under the License. + +--> +<library> + +<class name="NetworkTest" extends="view"> + + <attribute name="testName" type="string" value="null" /> + <attribute name="protocol" type="string" value="null" /> + <attribute name="host" type="string" value="null" /> + <attribute name="port" type="number" value="null" /> + <attribute name="running" type="boolean" value="false" /> + <attribute name="allTests" type="boolean" value="false" /> + <attribute name="resultText" type="boolean" value="false" /> + + <method name="start" /> + <method name="forcedStop" /> + + <method name="startAllTestsMode"> + allTests = true; + this.setRunning(); + </method> + + <view name="picture"> + <view name="rsc" resource="notrun" width="113" height="113" /> + </view> + <text name="nameLabel" text="${parent.testName}" x="${(parent.picture.rsc.width - this.width)/2}" + y="$once{parent.picture.rsc.height}" + /> + <text name="resultLabel" visible="false" fgcolor="white" align="center" fontsize="16" /> + + <handler name="onclick"> + if (running) { + this.setStopped(); + } else { + allTests = false; + this.setRunning(); + } + </handler> + + <method name="handleAllTestsMode"> + if (allTests) { + canvas.testsView.testAll(); + } + </method> + + <method name="setPassed"> + if (running) { + running=false; + if (resultText) { + picture.rsc.setAttribute("resource", "passed_result"); + var x = (picture.rsc.width - resultLabel.width)/2; + var y = (picture.rsc.height - resultLabel.height)/2; + resultLabel.setAttribute("x", x); + resultLabel.setAttribute("y", y); + resultLabel.setAttribute("visible", true); + } else { + picture.rsc.setAttribute("resource", "passed"); + } + canvas.setAttribute("busy", false); + this.handleAllTestsMode(); + } + </method> + + <method name="setFailed"> + if (running) { + running=false; + picture.rsc.setAttribute("resource", "failed"); + canvas.setAttribute("busy", false); + this.handleAllTestsMode(); + } + </method> + + <method name="setRunning"> + if (canvas.busy) { + return; + } + canvas.setAttribute("busy", true); + this.start(); + running=true; + resultLabel.setAttribute("visible", false); + picture.rsc.setAttribute("resource", "running"); + picture.rsc.play(); + </method> + + <method name="setStopped"> + this.forcedStop(); + running=false; + picture.rsc.setAttribute("resource", "notrun"); + canvas.setAttribute("busy", false); + this.handleAllTestsMode(); + </method> + + <method name="log" args="message"> + var str = testName + ": " + message + "\n"; + canvas.log += str; + if ($debug) Debug.write(str); + </method> + + <method name="getBaseUrl"> + var hostUrl = protocol + "://" + host + ":" + port + canvas.uriContext; + return hostUrl + (hostUrl.slice(-1) == '/' ? '' : '/'); + </method> + + <method name="lbl" args="key"> + return canvas.lbl(key); + </method> + +</class> + +</library> http://git-wip-us.apache.org/repos/asf/openmeetings/blob/1cb3518f/openmeetings-flash/src/main/swf/networkTesting/tests/PingTest.lzx ---------------------------------------------------------------------- diff --git a/openmeetings-flash/src/main/swf/networkTesting/tests/PingTest.lzx b/openmeetings-flash/src/main/swf/networkTesting/tests/PingTest.lzx index 6217cc3..61d484b 100644 --- a/openmeetings-flash/src/main/swf/networkTesting/tests/PingTest.lzx +++ b/openmeetings-flash/src/main/swf/networkTesting/tests/PingTest.lzx @@ -1,43 +1,43 @@ -<?xml version="1.0" encoding="UTF-8" ?> -<!-- - Licensed to the Apache Software Foundation (ASF) under one - or more contributor license agreements. See the NOTICE file - distributed with this work for additional information - regarding copyright ownership. The ASF licenses this file - to you under the Apache License, Version 2.0 (the - "License"); you may not use this file except in compliance - with the License. You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, - software distributed under the License is distributed on an - "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - KIND, either express or implied. See the License for the - specific language governing permissions and limitations - under the License. - ---> -<library> - -<class name="PingTest" extends="BaseURLLoadTest"> - - <handler name="oninit"> - this.setAttribute("testsCount", 10); - this.setAttribute("testName", lbl('ping')); - this.setAttribute("testTypeParameter", "ping"); - </handler> - - <method name="generateReport"> - var averageTime = wholeTime / successfulTestsCount; - var packetsLost = testsCount - successfulTestsCount; - var report = lbl('ping.avg') + ": " + averageTime + " " + lbl('ms') + "\n"; - report += lbl('ping.rcv') + ": " + successfulTestsCount + "\n"; - report += lbl('ping.lost') + ": " + packetsLost + "\n"; - - return report; - </method> - -</class> - -</library> +<?xml version="1.0" encoding="UTF-8" ?> +<!-- + Licensed to the Apache Software Foundation (ASF) under one + or more contributor license agreements. See the NOTICE file + distributed with this work for additional information + regarding copyright ownership. The ASF licenses this file + to you under the Apache License, Version 2.0 (the + "License"); you may not use this file except in compliance + with the License. You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, + software distributed under the License is distributed on an + "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + KIND, either express or implied. See the License for the + specific language governing permissions and limitations + under the License. + +--> +<library> + +<class name="PingTest" extends="BaseURLLoadTest"> + + <handler name="oninit"> + this.setAttribute("testsCount", 10); + this.setAttribute("testName", lbl('ping')); + this.setAttribute("testTypeParameter", "ping"); + </handler> + + <method name="generateReport"> + var averageTime = wholeTime / successfulTestsCount; + var packetsLost = testsCount - successfulTestsCount; + var report = lbl('ping.avg') + ": " + averageTime + " " + lbl('ms') + "\n"; + report += lbl('ping.rcv') + ": " + successfulTestsCount + "\n"; + report += lbl('ping.lost') + ": " + packetsLost + "\n"; + + return report; + </method> + +</class> + +</library> http://git-wip-us.apache.org/repos/asf/openmeetings/blob/1cb3518f/openmeetings-flash/src/main/swf/networkTesting/tests/PortAvailabilityTest.lzx ---------------------------------------------------------------------- diff --git a/openmeetings-flash/src/main/swf/networkTesting/tests/PortAvailabilityTest.lzx b/openmeetings-flash/src/main/swf/networkTesting/tests/PortAvailabilityTest.lzx index 65e1d95..ea60c7e 100644 --- a/openmeetings-flash/src/main/swf/networkTesting/tests/PortAvailabilityTest.lzx +++ b/openmeetings-flash/src/main/swf/networkTesting/tests/PortAvailabilityTest.lzx @@ -1,90 +1,90 @@ -<?xml version="1.0" encoding="UTF-8" ?> -<!-- - Licensed to the Apache Software Foundation (ASF) under one - or more contributor license agreements. See the NOTICE file - distributed with this work for additional information - regarding copyright ownership. The ASF licenses this file - to you under the Apache License, Version 2.0 (the - "License"); you may not use this file except in compliance - with the License. You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, - software distributed under the License is distributed on an - "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - KIND, either express or implied. See the License for the - specific language governing permissions and limitations - under the License. - ---> -<library> - -<class name="PortAvailabilityTest" extends="NetworkTest"> - - <switch> - <when property="$as3"> - <passthrough> - import flash.events.*; - import flash.net.*; - import flash.system.*; - </passthrough> - </when> - </switch> - - <rtmpConnection name="rtmp" debug="true" /> - - <handler name="oninit"> - this.setAttribute("testName", lbl('port')); - </handler> - - <method name="start"> - var hostUrl = protocol + "://" + host + ":" + port + canvas.rtmpUriPath; - rtmp.setAttribute("src", hostUrl); - this.log(": " + lbl('report.start') + " " + hostUrl); - - canvas.publicSID = "networktest"; - rtmp.connect(); - </method> - - <method name="forcedStop"> - this.log(lbl('port.stopped')); - disconnect(); - </method> - - <method name="disconnect"> - rtmp._nc.close(); - rtmp.setAttribute('status', 'disconnected'); - rtmp.setAttribute('stage', 0); - </method> - - <handler name="onconnect" reference="rtmp"> - if (running) { - this.log(lbl('port.avail') + "\n"); - this.setPassed(); - disconnect(); - } - </handler> - - <handler name="onerror" args="e" reference="rtmp"> - if (running) { - this.log(lbl('report.con.err') + " - " + e + "\n"); - this.setFailed(); - } - </handler> - - <handler name="onstatus" args="e" reference="rtmp"> - if (running) { - switch(e) { - case "timed out": - case "connection failed": - this.setFailed(); - break; - } - if($debug) Debug.write(testName + ": RTMP connect status - ", e); - } - </handler> - -</class> - -</library> +<?xml version="1.0" encoding="UTF-8" ?> +<!-- + Licensed to the Apache Software Foundation (ASF) under one + or more contributor license agreements. See the NOTICE file + distributed with this work for additional information + regarding copyright ownership. The ASF licenses this file + to you under the Apache License, Version 2.0 (the + "License"); you may not use this file except in compliance + with the License. You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, + software distributed under the License is distributed on an + "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + KIND, either express or implied. See the License for the + specific language governing permissions and limitations + under the License. + +--> +<library> + +<class name="PortAvailabilityTest" extends="NetworkTest"> + + <switch> + <when property="$as3"> + <passthrough> + import flash.events.*; + import flash.net.*; + import flash.system.*; + </passthrough> + </when> + </switch> + + <rtmpConnection name="rtmp" debug="true" /> + + <handler name="oninit"> + this.setAttribute("testName", lbl('port')); + </handler> + + <method name="start"> + var hostUrl = protocol + "://" + host + ":" + port + canvas.rtmpUriPath; + rtmp.setAttribute("src", hostUrl); + this.log(": " + lbl('report.start') + " " + hostUrl); + + canvas.publicSID = "networktest"; + rtmp.connect(); + </method> + + <method name="forcedStop"> + this.log(lbl('port.stopped')); + disconnect(); + </method> + + <method name="disconnect"> + rtmp._nc.close(); + rtmp.setAttribute('status', 'disconnected'); + rtmp.setAttribute('stage', 0); + </method> + + <handler name="onconnect" reference="rtmp"> + if (running) { + this.log(lbl('port.avail') + "\n"); + this.setPassed(); + disconnect(); + } + </handler> + + <handler name="onerror" args="e" reference="rtmp"> + if (running) { + this.log(lbl('report.con.err') + " - " + e + "\n"); + this.setFailed(); + } + </handler> + + <handler name="onstatus" args="e" reference="rtmp"> + if (running) { + switch(e) { + case "timed out": + case "connection failed": + this.setFailed(); + break; + } + if($debug) Debug.write(testName + ": RTMP connect status - ", e); + } + </handler> + +</class> + +</library> http://git-wip-us.apache.org/repos/asf/openmeetings/blob/1cb3518f/openmeetings-flash/src/main/swf/networkTesting/tests/UploadSpeedTest.lzx ---------------------------------------------------------------------- diff --git a/openmeetings-flash/src/main/swf/networkTesting/tests/UploadSpeedTest.lzx b/openmeetings-flash/src/main/swf/networkTesting/tests/UploadSpeedTest.lzx index 5edca71..92ea5bf 100644 --- a/openmeetings-flash/src/main/swf/networkTesting/tests/UploadSpeedTest.lzx +++ b/openmeetings-flash/src/main/swf/networkTesting/tests/UploadSpeedTest.lzx @@ -1,124 +1,124 @@ -<?xml version="1.0" encoding="UTF-8" ?> -<!-- - Licensed to the Apache Software Foundation (ASF) under one - or more contributor license agreements. See the NOTICE file - distributed with this work for additional information - regarding copyright ownership. The ASF licenses this file - to you under the Apache License, Version 2.0 (the - "License"); you may not use this file except in compliance - with the License. You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, - software distributed under the License is distributed on an - "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - KIND, either express or implied. See the License for the - specific language governing permissions and limitations - under the License. - ---> -<library> - -<class name="UploadSpeedTest" extends="NetworkTest"> - - <switch> - <when property="$as3"> - <passthrough> - import flash.events.*; - import flash.net.*; - import flash.utils.*; - </passthrough> - </when> - </switch> - - <attribute name="startTime" type="number" value="0" /> - - <attribute name="hostUrl" type="string" value="" /> - <attribute name="loaderInited" type="boolean" value="false" /> - <attribute name="vars" value="null" /> - <attribute name="request" value="null" /> - <attribute name="loader" value="null" /> - - <handler name="oninit"> - this.setAttribute("testName", lbl('upl')); - this.setAttribute("resultText", true); - </handler> - - <method name="initLoader"> - hostUrl = getBaseUrl() + "services/networktest"; - loader = new RestCall({ - url: hostUrl - , method: URLRequestMethod.POST - , dataFormat: URLLoaderDataFormat.BINARY - , contentType: "multipart/form-data; charset=utf-8; boundary=" + UploadPostHelper.getBoundary() - , errorCallback: onError - , successCallback: onComplete - }); - vars = UploadPostHelper.getPostData('aaa', getData()); - if ($debug) Debug.write("initLoader:: ");//, vars - loaderInited = true; - </method> - - <method name="start"> - if ($debug) Debug.write("start:: ", request); - if (!loaderInited) { - this.initLoader(); - } - - if ($debug) Debug.write("going to start:: ", loader); - this.log(lbl('report.start') + " " + hostUrl); - startTime = getTimer(); - request = loader.load(vars); - if ($debug) Debug.write("load:: ", request); - </method> - - <method name="forcedStop"> - loader.close(); - this.log("stopped"); - </method> - - <method name="onComplete" args="e"> - if ($debug) Debug.write("onComplete:: ", e); - if (running) { - var endTime = getTimer(); - var loadTime = endTime - startTime; - var loadTimeSec = loadTime/1000; - var mBytes = request.data.length/(1024*1024); - var speed = mBytes / loadTimeSec; - - var report = "report:\n"; - report += lbl('upl.bytes') + ": " + mBytes + " " + lbl('mb') + "\n"; - report += lbl('upl.time') + ": " + loadTimeSec + " " + lbl('sec') + "\n"; - report += lbl('upl.speed') + ": " + speed + " " + lbl('mb') + "/" + lbl('sec') + "\n"; - - resultLabel.setAttribute("text", ""); - resultLabel.addFormat("%.2f\n%s", speed, lbl('mb') + "/" + lbl('sec')); - this.log(report); - this.setPassed(); - } - </method> - - <method name="onError" args="e"> - if ($debug) Debug.write("onError:: ", e); - if (running) { - this.log(lbl('report.error') + " - " + e); - this.setFailed(); - } - </method> - - <!-- returns a 1 Mb string--> - <method name="getData"> - <![CDATA[ - var result:ByteArray = new ByteArray(); - for (var i = 0; i < 64 * 16384; ++i) { - result.writeByte(i % 256); - } - result.position = 0; - return result; - ]]> - </method> - -</class> - -</library> +<?xml version="1.0" encoding="UTF-8" ?> +<!-- + Licensed to the Apache Software Foundation (ASF) under one + or more contributor license agreements. See the NOTICE file + distributed with this work for additional information + regarding copyright ownership. The ASF licenses this file + to you under the Apache License, Version 2.0 (the + "License"); you may not use this file except in compliance + with the License. You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, + software distributed under the License is distributed on an + "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + KIND, either express or implied. See the License for the + specific language governing permissions and limitations + under the License. + +--> +<library> + +<class name="UploadSpeedTest" extends="NetworkTest"> + + <switch> + <when property="$as3"> + <passthrough> + import flash.events.*; + import flash.net.*; + import flash.utils.*; + </passthrough> + </when> + </switch> + + <attribute name="startTime" type="number" value="0" /> + + <attribute name="hostUrl" type="string" value="" /> + <attribute name="loaderInited" type="boolean" value="false" /> + <attribute name="vars" value="null" /> + <attribute name="request" value="null" /> + <attribute name="loader" value="null" /> + + <handler name="oninit"> + this.setAttribute("testName", lbl('upl')); + this.setAttribute("resultText", true); + </handler> + + <method name="initLoader"> + hostUrl = getBaseUrl() + "services/networktest"; + loader = new RestCall({ + url: hostUrl + , method: URLRequestMethod.POST + , dataFormat: URLLoaderDataFormat.BINARY + , contentType: "multipart/form-data; charset=utf-8; boundary=" + UploadPostHelper.getBoundary() + , errorCallback: onError + , successCallback: onComplete + }); + vars = UploadPostHelper.getPostData('aaa', getData()); + if ($debug) Debug.write("initLoader:: ");//, vars + loaderInited = true; + </method> + + <method name="start"> + if ($debug) Debug.write("start:: ", request); + if (!loaderInited) { + this.initLoader(); + } + + if ($debug) Debug.write("going to start:: ", loader); + this.log(lbl('report.start') + " " + hostUrl); + startTime = getTimer(); + request = loader.load(vars); + if ($debug) Debug.write("load:: ", request); + </method> + + <method name="forcedStop"> + loader.close(); + this.log("stopped"); + </method> + + <method name="onComplete" args="e"> + if ($debug) Debug.write("onComplete:: ", e); + if (running) { + var endTime = getTimer(); + var loadTime = endTime - startTime; + var loadTimeSec = loadTime/1000; + var mBytes = request.data.length/(1024*1024); + var speed = mBytes / loadTimeSec; + + var report = "report:\n"; + report += lbl('upl.bytes') + ": " + mBytes + " " + lbl('mb') + "\n"; + report += lbl('upl.time') + ": " + loadTimeSec + " " + lbl('sec') + "\n"; + report += lbl('upl.speed') + ": " + speed + " " + lbl('mb') + "/" + lbl('sec') + "\n"; + + resultLabel.setAttribute("text", ""); + resultLabel.addFormat("%.2f\n%s", speed, lbl('mb') + "/" + lbl('sec')); + this.log(report); + this.setPassed(); + } + </method> + + <method name="onError" args="e"> + if ($debug) Debug.write("onError:: ", e); + if (running) { + this.log(lbl('report.error') + " - " + e); + this.setFailed(); + } + </method> + + <!-- returns a 1 Mb string--> + <method name="getData"> + <![CDATA[ + var result:ByteArray = new ByteArray(); + for (var i = 0; i < 64 * 16384; ++i) { + result.writeByte(i % 256); + } + result.position = 0; + return result; + ]]> + </method> + +</class> + +</library> http://git-wip-us.apache.org/repos/asf/openmeetings/blob/1cb3518f/openmeetings-flash/src/main/swf/networkTesting/tests/library.lzx ---------------------------------------------------------------------- diff --git a/openmeetings-flash/src/main/swf/networkTesting/tests/library.lzx b/openmeetings-flash/src/main/swf/networkTesting/tests/library.lzx index 9b8575d..5021b9c 100644 --- a/openmeetings-flash/src/main/swf/networkTesting/tests/library.lzx +++ b/openmeetings-flash/src/main/swf/networkTesting/tests/library.lzx @@ -1,37 +1,37 @@ -<?xml version="1.0" encoding="UTF-8" ?> -<!-- - Licensed to the Apache Software Foundation (ASF) under one - or more contributor license agreements. See the NOTICE file - distributed with this work for additional information - regarding copyright ownership. The ASF licenses this file - to you under the Apache License, Version 2.0 (the - "License"); you may not use this file except in compliance - with the License. You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, - software distributed under the License is distributed on an - "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - KIND, either express or implied. See the License for the - specific language governing permissions and limitations - under the License. - ---> -<library> - - <resource name="failed" src="resources/failed.png" /> - <resource name="notrun" src="resources/notrun.png" /> - <resource name="passed" src="resources/passed.png" /> - <resource name="passed_result" src="resources/passed_result.png" /> - <resource name="running" src="resources/running.swf" /> - - <include href="BaseURLLoadTest.lzx" /> - <include href="DownloadSpeedTest.lzx" /> - <include href="JitterTest.lzx" /> - <include href="NetworkTest.lzx" /> - <include href="PingTest.lzx" /> - <include href="PortAvailabilityTest.lzx" /> - <include href="UploadSpeedTest.lzx" /> - -</library> +<?xml version="1.0" encoding="UTF-8" ?> +<!-- + Licensed to the Apache Software Foundation (ASF) under one + or more contributor license agreements. See the NOTICE file + distributed with this work for additional information + regarding copyright ownership. The ASF licenses this file + to you under the Apache License, Version 2.0 (the + "License"); you may not use this file except in compliance + with the License. You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, + software distributed under the License is distributed on an + "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + KIND, either express or implied. See the License for the + specific language governing permissions and limitations + under the License. + +--> +<library> + + <resource name="failed" src="resources/failed.png" /> + <resource name="notrun" src="resources/notrun.png" /> + <resource name="passed" src="resources/passed.png" /> + <resource name="passed_result" src="resources/passed_result.png" /> + <resource name="running" src="resources/running.swf" /> + + <include href="BaseURLLoadTest.lzx" /> + <include href="DownloadSpeedTest.lzx" /> + <include href="JitterTest.lzx" /> + <include href="NetworkTest.lzx" /> + <include href="PingTest.lzx" /> + <include href="PortAvailabilityTest.lzx" /> + <include href="UploadSpeedTest.lzx" /> + +</library> http://git-wip-us.apache.org/repos/asf/openmeetings/blob/1cb3518f/openmeetings-flash/src/main/swf/networkTesting/testsView.lzx ---------------------------------------------------------------------- diff --git a/openmeetings-flash/src/main/swf/networkTesting/testsView.lzx b/openmeetings-flash/src/main/swf/networkTesting/testsView.lzx index 9af6811..f4ac847 100644 --- a/openmeetings-flash/src/main/swf/networkTesting/testsView.lzx +++ b/openmeetings-flash/src/main/swf/networkTesting/testsView.lzx @@ -1,105 +1,105 @@ -<?xml version="1.0" encoding="UTF-8" ?> -<!-- - Licensed to the Apache Software Foundation (ASF) under one - or more contributor license agreements. See the NOTICE file - distributed with this work for additional information - regarding copyright ownership. The ASF licenses this file - to you under the Apache License, Version 2.0 (the - "License"); you may not use this file except in compliance - with the License. You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, - software distributed under the License is distributed on an - "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - KIND, either express or implied. See the License for the - specific language governing permissions and limitations - under the License. - ---> -<library> - -<include href="../base/remote/rtmpConnection.lzx" /> -<include href="tests/" /> -<resource name="log" src="resources/edit-copy.png" /> - -<class name="TestsView" extends="view"> - - <attribute name="offset" type="number" value="20" /> - <attribute name="smallOffset" type="number" value="5" /> - - <text name="label" - text="$once{canvas.lbl('click.play')}" - x="${parent.offset}" - y="${parent.offset}" - /> - <view name="logButton" - x="${parent.width - this.rsc.width - parent.offset}" - y="${parent.label.y + (parent.label.height - this.rsc.height)/2}" - > - <image name="rsc" resource="log" height="16" width="16"/> - <handler name="onclick"> - lz.Browser.setClipboard(canvas.log); - </handler> - </view> - - <text name="logLabel" - text="$once{canvas.lbl('copy.log')}" - x="${parent.logButton.x - this.width - parent.smallOffset}" - y="${parent.label.y}" - /> - - <PingTest - name="pingTest" protocol="${canvas.httpProtocol}" host="${canvas.httpHost}" port="${canvas.httpPort}" - x="${parent.offset}" - y="${parent.label.y + parent.label.height + parent.offset/2}" - /> - <PortAvailabilityTest - name="portTest" protocol="${canvas.rtmpProtocol}" host="${canvas.rtmpHost}" port="${canvas.rtmpPort}" - x="${parent.pingTest.x + parent.pingTest.width + parent.offset}" - y="${parent.pingTest.y}" - /> - <JitterTest - name="jitterTest" protocol="${canvas.httpProtocol}" host="${canvas.httpHost}" port="${canvas.httpPort}" - x="${parent.portTest.x + parent.portTest.width + parent.offset}" - y="${parent.pingTest.y}" - /> - <DownloadSpeedTest - name="downloadTest" protocol="${canvas.httpProtocol}" host="${canvas.httpHost}" port="${canvas.httpPort}" - x="${parent.jitterTest.x + parent.jitterTest.width + parent.offset}" - y="${parent.pingTest.y}" - /> - - <UploadSpeedTest - name="uploadTest" protocol="${canvas.httpProtocol}" host="${canvas.httpHost}" port="${canvas.httpPort}" - x="${parent.downloadTest.x + parent.downloadTest.width + parent.offset}" - y="${parent.pingTest.y}" - /> - - <attribute name="currentTestNumber" type="number" value="0" /> - <method name="testAll"> - var nextTest; - if (0 == currentTestNumber) { - nextTest = pingTest; - } else if (1 == currentTestNumber) { - nextTest = portTest; - } else if (2 == currentTestNumber) { - nextTest = jitterTest; - } else if (3 == currentTestNumber) { - nextTest = downloadTest; - } else if (4 == currentTestNumber) { - nextTest = uploadTest; - } else if (5 == currentTestNumber) { - nextTest = null; - } - - if (null != nextTest) { - currentTestNumber++; - nextTest.startAllTestsMode(); - } - </method> - -</class> - -</library> +<?xml version="1.0" encoding="UTF-8" ?> +<!-- + Licensed to the Apache Software Foundation (ASF) under one + or more contributor license agreements. See the NOTICE file + distributed with this work for additional information + regarding copyright ownership. The ASF licenses this file + to you under the Apache License, Version 2.0 (the + "License"); you may not use this file except in compliance + with the License. You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, + software distributed under the License is distributed on an + "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + KIND, either express or implied. See the License for the + specific language governing permissions and limitations + under the License. + +--> +<library> + +<include href="../base/remote/rtmpConnection.lzx" /> +<include href="tests/" /> +<resource name="log" src="resources/edit-copy.png" /> + +<class name="TestsView" extends="view"> + + <attribute name="offset" type="number" value="20" /> + <attribute name="smallOffset" type="number" value="5" /> + + <text name="label" + text="$once{canvas.lbl('click.play')}" + x="${parent.offset}" + y="${parent.offset}" + /> + <view name="logButton" + x="${parent.width - this.rsc.width - parent.offset}" + y="${parent.label.y + (parent.label.height - this.rsc.height)/2}" + > + <image name="rsc" resource="log" height="16" width="16"/> + <handler name="onclick"> + lz.Browser.setClipboard(canvas.log); + </handler> + </view> + + <text name="logLabel" + text="$once{canvas.lbl('copy.log')}" + x="${parent.logButton.x - this.width - parent.smallOffset}" + y="${parent.label.y}" + /> + + <PingTest + name="pingTest" protocol="${canvas.httpProtocol}" host="${canvas.httpHost}" port="${canvas.httpPort}" + x="${parent.offset}" + y="${parent.label.y + parent.label.height + parent.offset/2}" + /> + <PortAvailabilityTest + name="portTest" protocol="${canvas.rtmpProtocol}" host="${canvas.rtmpHost}" port="${canvas.rtmpPort}" + x="${parent.pingTest.x + parent.pingTest.width + parent.offset}" + y="${parent.pingTest.y}" + /> + <JitterTest + name="jitterTest" protocol="${canvas.httpProtocol}" host="${canvas.httpHost}" port="${canvas.httpPort}" + x="${parent.portTest.x + parent.portTest.width + parent.offset}" + y="${parent.pingTest.y}" + /> + <DownloadSpeedTest + name="downloadTest" protocol="${canvas.httpProtocol}" host="${canvas.httpHost}" port="${canvas.httpPort}" + x="${parent.jitterTest.x + parent.jitterTest.width + parent.offset}" + y="${parent.pingTest.y}" + /> + + <UploadSpeedTest + name="uploadTest" protocol="${canvas.httpProtocol}" host="${canvas.httpHost}" port="${canvas.httpPort}" + x="${parent.downloadTest.x + parent.downloadTest.width + parent.offset}" + y="${parent.pingTest.y}" + /> + + <attribute name="currentTestNumber" type="number" value="0" /> + <method name="testAll"> + var nextTest; + if (0 == currentTestNumber) { + nextTest = pingTest; + } else if (1 == currentTestNumber) { + nextTest = portTest; + } else if (2 == currentTestNumber) { + nextTest = jitterTest; + } else if (3 == currentTestNumber) { + nextTest = downloadTest; + } else if (4 == currentTestNumber) { + nextTest = uploadTest; + } else if (5 == currentTestNumber) { + nextTest = null; + } + + if (null != nextTest) { + currentTestNumber++; + nextTest.startAllTestsMode(); + } + </method> + +</class> + +</library>
