[dw-free] Old JS libraries don't play nice with other libraries on the page
[commit: http://hg.dwscoalition.org/dw-free/rev/4e3f8c8ccf16]
http://bugs.dwscoalition.org/show_bug.cgi?id=3531
Add tests to make sure our libraries don't modify core javascript behavior.
Patch by
fu.
Files modified:
http://bugs.dwscoalition.org/show_bug.cgi?id=3531
Add tests to make sure our libraries don't modify core javascript behavior.
Patch by
Files modified:
- views/dev/tests/libfunctions.html
- views/dev/tests/libfunctions.js
--------------------------------------------------------------------------------
diff -r fc9f2c08fc02 -r 4e3f8c8ccf16 views/dev/tests/libfunctions.html
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/views/dev/tests/libfunctions.html Mon Feb 28 20:27:30 2011 +0800
@@ -0,0 +1,7 @@
+<style type="text/css">.ippu { display: none; }</style>
+
+<table id="selectable_t"></table>
+<div id="searchview"></div>
+<div id="searchresults"></div>
+<div id="searchconstraints"></div>
+<button id="checkall"></button>
diff -r fc9f2c08fc02 -r 4e3f8c8ccf16 views/dev/tests/libfunctions.js
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/views/dev/tests/libfunctions.js Mon Feb 28 20:27:30 2011 +0800
@@ -0,0 +1,201 @@
+/* INCLUDE:
+old: js/core.js
+old: js/dom.js
+old: js/json.js
+old: js/httpreq.js
+old: js/hourglass.js
+old: js/inputcomplete.js
+old: js/datasource.js
+old: js/selectable_table.js
+
+old: js/checkallbutton.js
+
+old: js/progressbar.js
+old: js/ljprogressbar.js
+
+old: js/ippu.js
+old: js/lj_ippu.js
+old: js/template.js
+old: js/userpicselect.js
+
+old: js/view.js
+old: js/directorysearch.js
+old: js/directorysearchconstraints.js
+old: js/directorysearchresults.js
+
+old: js/esnmanager.js
+
+old: js/ljwidget.js
+old: js/ljwidget_ippu.js
+old: js/widget_ippu/settingprod.js
+*/
+
+module( "old" );
+test( "misc utils", function() {
+ expect(5);
+
+ var o;
+ o = new Hourglass();
+ o.init();
+ ok( o, "Hourglass" );
+
+ o = new InputComplete();
+ o.init();
+ ok( o, "InputComplete" );
+
+ o = new InputCompleteData();
+ o.init();
+ ok( o, "InputCompleteData" );
+
+ o = new DataSource();
+ o.init();
+ ok( o, "DataSource" );
+
+ o = new SelectableTable();
+ o.init({
+ table: $("userpicselect_t")
+ });
+ ok( o, "SelectableTable" );
+
+});
+test( "LJProgressBar", function() {
+ expect(2);
+
+ var o;
+ o = new ProgressBar();
+ o.init();
+ ok( o, "ProgressBar" );
+
+ o = new LJProgressBar();
+ o.init();
+ ok( o, "LJProgressBar" );
+});
+
+test( "UserpicSelect", function() {
+ expect(4);
+
+ var o;
+ o = new IPPU();
+ o.init();
+ ok( o, "IPPU" );
+
+ o = new LJ_IPPU();
+ o.init();
+ ok( o, "LJ_IPPU" );
+
+ o = new Template();
+ o.init();
+ ok( o, "Template" );
+
+ o = new UserpicSelect();
+ o.init();
+ ok( o, "UserpicSelect" );
+});
+
+test( "Directory", function() {
+ expect(6);
+
+ var o;
+ o = new View();
+ o.init({});
+ ok( o, "View" );
+
+ o = new DirectorySearchView();
+ o.init($("searchview"), {});
+ ok( o, "DirectorySearchView" );
+
+ o = new DirectorySearch();
+ o.init() ;
+ ok( o, "DirectorySearch" );
+
+ o = new DirectorySearchResults();
+ o.init({}, {"resultsView": $("searchresults")});
+ ok( o, "DirectorySearchResults" );
+
+ o = new DirectorySearchConstraintsView();
+ o.init({view: $("searchconstraints")});
+ ok( o, "DirectorySearchConstraintsView" );
+
+ o = new DirectorySearchConstraint();
+ o.init();
+ ok( o, "DirectorySearchConstraint" );
+});
+
+test( "ESN", function() {
+ expect(1);
+
+ var o;
+
+ // possibly unused?
+ o = new ESNManager();
+ o.init();
+ ok( o, "ESNManager" );
+});
+
+test( "Widget", function() {
+ expect(2);
+
+ var o;
+ o = new LJWidget();
+ o.init();
+ ok( o, "LJWidget" );
+
+ o = new LJWidgetIPPU();
+ o.init({});
+ ok( o, "LJWidgetIPPU" );
+
+ // automatically tries to post to something on page refresh, so leaving out
+ // o = new LJWidgetIPPU_SettingProd();
+ // o.init({}, {});
+ // ok( o, "LJWidgetIPPU_SettingProd" );
+});
+
+test( "Check all", function() {
+ expect(1);
+
+ var o;
+ o = new CheckallButton();
+ o.init({ button: $("checkall") });
+ ok( o, "CheckallButton" );
+});
+
+module( "*libfunctions" );
+test( "array tests", function () {
+ expect(4);
+
+ var array = new Array();
+ array.push( "a" );
+ array.push( "b" );
+ array.push( "c" );
+
+ equals( 3, array.length, "Check array size" );
+
+ array.forEach(function(element, index, array) {
+ equals( element, array[index] );
+ });
+});
+
+test("object tests", function() {
+ // expect(1);
+
+ var o = new Object();
+ o["a"] = "apple";
+ o["b"] = "banana";
+ o["c"] = "cat eating a banana";
+
+ var count = 0;
+ for( var key in o ) {
+ count++;
+ }
+ equals( 3, count );
+
+ o = new Object();
+ count = 0;
+ for ( var key in o ) {
+ count++;
+ }
+ equals( 0, count );
+
+});
+
+
--------------------------------------------------------------------------------
