From e44a7e37b6c7b5961adaffc62b9042b8d442938e Mon Sep 17 00:00:00 2001 From: mensonge Date: Thu, 13 Nov 2008 09:49:11 +0000 Subject: New feature: basic Ajax suggestion for tags and implementation of Dojo toolkit git-svn-id: https://semanticscuttle.svn.sourceforge.net/svnroot/semanticscuttle/trunk@151 b3834d28-1941-0410-a4f8-b48e95affb8f --- includes/js/dijit/bench/benchReceive.php | 129 ++++++++++++++ includes/js/dijit/bench/benchTool.html | 189 +++++++++++++++++++++ includes/js/dijit/bench/create_widgets.html | 73 ++++++++ .../js/dijit/bench/test_Button-programmatic.html | 75 ++++++++ includes/js/dijit/bench/test_button-results.html | 66 +++++++ .../js/dijit/bench/widget_construction_test.php | 186 ++++++++++++++++++++ 6 files changed, 718 insertions(+) create mode 100644 includes/js/dijit/bench/benchReceive.php create mode 100644 includes/js/dijit/bench/benchTool.html create mode 100644 includes/js/dijit/bench/create_widgets.html create mode 100644 includes/js/dijit/bench/test_Button-programmatic.html create mode 100644 includes/js/dijit/bench/test_button-results.html create mode 100644 includes/js/dijit/bench/widget_construction_test.php (limited to 'includes/js/dijit/bench') diff --git a/includes/js/dijit/bench/benchReceive.php b/includes/js/dijit/bench/benchReceive.php new file mode 100644 index 0000000..6330077 --- /dev/null +++ b/includes/js/dijit/bench/benchReceive.php @@ -0,0 +1,129 @@ +decode(urldecode($_POST['key'])); + // $string = $json->decode($_POST['key']); + + print "

Thank YOU!

"; + print " +

Your results have been added to our database. No + personal information outside of what you see here + has been stored. +

+ +

You can go back + and run more tests, or even better, load up another browser + and the submit your tests again! +

+ +

again ... thanks for your time.

+ + "; + + print "

Results Submitted:

"; + print "
";
+
+		$ua = $string->clientNavigator;
+		$dojov = $string->dojoVersion;
+
+		print "Client: ".$ua."\n";
+		print "Dojo v".$dojov."\n"; 
+
+		if (is_array($string->dataSet)) {
+			print "\nTest Results:";
+			// should client serialize a key, or is this safer?
+			$dataSet = md5(serialize($string)); 
+			foreach ($string->dataSet as $test) {
+				$data = array(
+					'dataSet' => $dataSet,
+					'useragent' => $ua,
+					'dojover' => $dojov,
+					'testNum' => $test->testNum,
+					'testMethod' => $test->testMethod,	
+					'testTime' => $test->testTime,
+					'testAverage' => $test->testAverage,
+					'testCount' => $test->testCount,
+					'dijit' => $test->dijit
+				);
+				print_r($data); 
+				add_rec($table,$data); 
+			}
+		}
+
+		if (is_array($string->errors)) {
+			// not saving errors at this point
+			print "\nErrors:";
+			foreach ($string->errors as $error) {
+				print_r($error); 
+			}
+		}
+	print "
"; +} + +function add_rec($table, $data) { + + if (!is_array($data)) { return FALSE; } + + $keys = array_keys($data); + $values = array_values($data); + $field=0; + + for ($field;$field diff --git a/includes/js/dijit/bench/benchTool.html b/includes/js/dijit/bench/benchTool.html new file mode 100644 index 0000000..b8a9041 --- /dev/null +++ b/includes/js/dijit/bench/benchTool.html @@ -0,0 +1,189 @@ + + + + Dojo interactive benchmark tool + + + + + +
+

Dojo Benchmark Tool

+ +
+
+ + Class:

+ Count:

+ + Method: + + +

+ Run Test + +
+ +
+ +
+

+ * The results of these tests are important to us. Please feel free to submit your dataSet + to Dojotoolkit.org. Your privacy will be respected. + +

+
+
+ + +
+
+
+
+ +

Results:

+ + + diff --git a/includes/js/dijit/bench/create_widgets.html b/includes/js/dijit/bench/create_widgets.html new file mode 100644 index 0000000..9a6f78a --- /dev/null +++ b/includes/js/dijit/bench/create_widgets.html @@ -0,0 +1,73 @@ + + + + PROGRAMMATIC - Dojo Widget Creation Test + + + + + + + + Pass ?count=100 in the query string to change the number of widgets.
+ Pass ?class=form.Button in the query string to change the widget class. +

+ +
+
+ + + diff --git a/includes/js/dijit/bench/test_Button-programmatic.html b/includes/js/dijit/bench/test_Button-programmatic.html new file mode 100644 index 0000000..a9d0cd1 --- /dev/null +++ b/includes/js/dijit/bench/test_Button-programmatic.html @@ -0,0 +1,75 @@ + + + + PROGRAMMATIC - Dojo Button 100 Test + + + + + + +

Creating dojot.form.buttons programmatically

+

+ +
+ +
+Pass "?count=n" in the query string to change the number of buttons. + + + + + diff --git a/includes/js/dijit/bench/test_button-results.html b/includes/js/dijit/bench/test_button-results.html new file mode 100644 index 0000000..c9fa520 --- /dev/null +++ b/includes/js/dijit/bench/test_button-results.html @@ -0,0 +1,66 @@ + + + +

Widget instantiation timing test results

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Computer/OSBrowserParsingProgrammatic
10050010001005001000
MacBook Pro 2.16
OS 10.4 2GB RAM
FF (2.0.0.3)3031724350519510062266
Safari (2.04)192146044631428952403
WebKit Nightly (21223)110540109685458940
Dell Precision 2.13 PPro
XP SP 2 - 2GB RAM
FF (2.0.0.3)282126624842508901766
IE7 (7.0.5730.11)3032079517220311402422
+ + +

If you want to play:

+

+
    +
  1. Run the following tests: + +
    + Change the "count=" to 100, 500, 1000 for each. +

    + Restart the browser between each test/count. Run each test 3 times and record the smallest number. +
  2. +
  3. Record your tests in the copy of this file in SVN: dijit/bench/test_Button-results.html and check it in. Reference ticket #2968.
  4. +
+ diff --git a/includes/js/dijit/bench/widget_construction_test.php b/includes/js/dijit/bench/widget_construction_test.php new file mode 100644 index 0000000..4718c9c --- /dev/null +++ b/includes/js/dijit/bench/widget_construction_test.php @@ -0,0 +1,186 @@ + + + + + test of various synchronous page searching methods + + + + + +

This page contains a huge number of nodes, most of which are "chaff".

+

Here's the relative timings for this page

+
+ + + + + +
var dlg = new blah.ext.LayoutDialog(config.id || blah.util.Dom.generateId(), {
+				autoCreate : true,
+				minWidth:400,
+				minHeight:300,
+				
+				syncHeightBeforeShow: true,
+				shadow:true,
+				fixedcenter: true,
+				center:{autoScroll:false},
+				east:{split:true,initialSize:150,minSize:150,maxSize:250}
+			});
+			dlg.setTitle('Choose an Image');
+			dlg.getEl().addClass('ychooser-dlg');

+
var animated = new blah.ext.Resizable('animated', {
+			    width: 200,
+			    height: 100,
+			    minWidth:100,
+			    minHeight:50,
+			    animate:true,
+			    easing: YAHOO.util.Easing.backIn,
+			    duration:.6
+			});
+

The standard Lorem Ipsum passage, used since the 1500s

+

+ "Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do + eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim + ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut + aliquip ex ea commodo consequat. Duis aute irure dolor in + reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla + pariatur. Excepteur sint occaecat cupidatat non proident, sunt in + culpa qui officia deserunt mollit anim id est laborum." +

+ +

Section 1.10.32 of "de Finibus Bonorum et Malorum", written by Cicero in 45 BC

+ +

+ "Sed ut perspiciatis unde omnis iste natus error sit voluptatem + accusantium doloremque laudantium, totam rem aperiam, eaque ipsa + quae ab illo inventore veritatis et quasi architecto beatae vitae + dicta sunt explicabo. Nemo enim ipsam voluptatem quia voluptas sit + aspernatur aut odit aut fugit, sed quia consequuntur magni dolores + eos qui ratione voluptatem sequi nesciunt. Neque porro quisquam + est, qui dolorem ipsum quia dolor sit amet, consectetur, adipisci + velit, sed quia non numquam eius modi tempora incidunt ut labore et + dolore magnam aliquam quaerat voluptatem. Ut enim ad minima veniam, + quis nostrum exercitationem ullam corporis suscipit laboriosam, + nisi ut aliquid ex ea commodi consequatur? Quis autem vel eum iure + reprehenderit qui in ea voluptate velit esse quam nihil molestiae + consequatur, vel illum qui dolorem eum fugiat quo voluptas nulla + pariatur?" +

+ +

1914 translation by H. Rackham

+ +

+ "But I must explain to you how all this mistaken idea of denouncing + pleasure and praising pain was born and I will give you a complete + account of the system, and expound the actual teachings of the + great explorer of the truth, the master-builder of human happiness. + No one rejects, dislikes, or avoids pleasure itself, because it is + pleasure, but because those who do not know how to pursue pleasure + rationally encounter consequences that are extremely painful. Nor + again is there anyone who loves or pursues or desires to obtain + pain of itself, because it is pain, but because occasionally + circumstances occur in which toil and pain can procure him some + great pleasure. To take a trivial example, which of us ever + undertakes laborious physical exercise, except to obtain some + advantage from it? But who has any right to find fault with a man + who chooses to enjoy a pleasure that has no annoying consequences, + or one who avoids a pain that produces no resultant pleasure?" +

+ + +
+ + + + + + +
+
+ chaff! +
+ + +
item2
+ + +
+ + + +
item
+ + + + + + -- cgit v1.2.3-54-g00ecf