diff --git a/scripts/boot.ru b/scripts/boot.ru deleted file mode 100644 index 328e13c75..000000000 --- a/scripts/boot.ru +++ /dev/null @@ -1,15 +0,0 @@ -#!/usr/bin/env ruby -require 'resque/server' - -AUTH_USER = ENV['USER'] # || 'user' -AUTH_PASS = ENV['PASS'] # || 'password' - -if AUTH_PASS - Resque::Server.use Rack::Auth::Basic do |username, password| - username == AUTH_USER && password == AUTH_PASS - end -end - -Rack::Handler::Mongrel.run Rack::URLMap.new({ - "/resque" => Resque::Server.new -}), :Port => 4567 diff --git a/scripts/build.xml b/scripts/build.xml deleted file mode 100644 index a77d7ca8c..000000000 --- a/scripts/build.xml +++ /dev/null @@ -1,82 +0,0 @@ - - - - - Helioviewer Back-end Apache Ant build.xml - - - - - - - - - - - - - - Unable to find PHPUnit. - To install, follow instructions at: - http://www.phpunit.de/manual/3.4/en/installation.html - - - - - Runs PHPUnit tests. - - Running PHPUnit tests... - - - - - - - - - - - - - - - Unable to find PHP CodeSniffer. - To install, run: - sudo pear install PHP_CodeSniffer - - - - - Checks code against a specified coding standard. - - Checking coding standards - - - - - - - - - - - - - - - - Generates PHP Documentation using phpDocumentor. - - Running phpDocumentor... - - - - - - - Unable to find phpDocumentor - To install, run: - sudo pear install --alldeps PhpDocumentor - - - \ No newline at end of file diff --git a/scripts/jsdoc-toolkit/README.txt b/scripts/jsdoc-toolkit/README.txt deleted file mode 100644 index 3782da88d..000000000 --- a/scripts/jsdoc-toolkit/README.txt +++ /dev/null @@ -1,183 +0,0 @@ -====================================================================== - -DESCRIPTION: - -This is the source code for JsDoc Toolkit, an automatic documentation -generation tool for JavaScript. It is written in JavaScript and is run -from a command line (or terminal) using Java and Mozilla's Rhino -JavaScript runtime engine. - -Using this tool you can automatically turn JavaDoc-like comments in -your JavaScript source code into published output files, such as HTML -or XML. - -For more information, to report a bug, or to browse the technical -documentation for this tool please visit the official JsDoc Toolkit -project homepage at http://code.google.com/p/jsdoc-toolkit/ - -For the most up-to-date documentation on JsDoc Toolkit see the -official wiki at http://code.google.com/p/jsdoc-toolkit/w/list - -====================================================================== - -REQUIREMENTS: - -JsDoc Toolkit is known to work with: -java version "1.6.0_03" -Java(TM) SE Runtime Environment (build 1.6.0_03-b05) -on Windows XP, -and java version "1.5.0_19" -Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_19-b02-304) -on Mac OS X 10.5. - -Other versions of java may or may not work with JsDoc Toolkit. - -====================================================================== - -USAGE: - -Running JsDoc Toolkit requires you to have Java installed on your -computer. For more information see http://www.java.com/getjava/ - -Before running the JsDoc Toolkit app you should change your current -working directory to the jsdoc-toolkit folder. Then follow the -examples below, or as shown on the project wiki. - -On a computer running Windows a valid command line to run JsDoc -Toolkit might look like this: - -> java -jar jsrun.jar app\run.js -a -t=templates\jsdoc mycode.js - -On Mac OS X or Linux the same command would look like this: - -$ java -jar jsrun.jar app/run.js -a -t=templates/jsdoc mycode.js - -The above assumes your current working directory contains jsrun.jar, -the "app" and "templates" subdirectories from the standard JsDoc -Toolkit distribution and that the relative path to the code you wish -to document is "mycode.js". - -The output documentation files will be saved to a new directory named -"out" (by default) in the current directory, or if you specify a --d=somewhere_else option, to the somewhere_else directory. - -For help (usage notes) enter this on the command line: - -$ java -jar jsrun.jar app/run.js --help - -More information about the various command line options used by JsDoc -Toolkit are available on the project wiki. - -====================================================================== - -RUNNING VIA SHELL SCRIPT - -Avi Deitcher has contributed the file jsrun.sh with the following usage notes: - -A script to simplify running jsdoc from the command-line, especially when -running from within a development or build environment such as ant. - -Normally, to run jsdoc, you need a command-line as the following: -java -Djsdoc.dir=/some/long/dir/path/to/jsdoc -jar -/some/long/dir/path/to/jsdoc/jsrun.jar /some/long/dir/path/to/jsdoc/app/run.js --t=template -r=4 /some/long/dir/path/to/my/src/code - -This can get tedious to redo time and again, and difficult to use from within a build environment. - -To simplify the process, jsrun.sh will automatically run this path, as well as passing through any arguments. - -Usage: jsrun.sh - -All will be passed through. -Additionally, jsrun.sh will take the following actions: -1) If the environment variable JSDOCDIR is set, it will add -"-Djsdoc.dir=$JSDOCDIR" to the command-line -2) If the environment variable JSDOCTEMPLATEDIR is set, it will add -"-Djsdoc.template.dir=$JSDOCTEMPLATEDIR" to the command-line -3) java with the appropriate path to jsrun.jar and run.js will be instantiated - -If not variables are set, it is assumed that the path to jsrun.jar and app/ is in the current working directory. - -Example: -# jsrun.sh ./src/ -Assuming JSDOCDIR=/some/path/to/my/jsdoc will cause the following command to -execute: -java -Djsdoc.dir=/some/path/to/my/jsdoc -jar /some/path/to/my/jsdoc/jsrun.jar -/some/path/to/my/jsdoc/app/run.js ./src/ - -====================================================================== - -TESTING: - -To run the suite of unit tests included with JsDoc Toolkit enter this -on the command line: - -$ java -jar jsrun.jar app/run.js -T - -To see a dump of the internal data structure that JsDoc Toolkit has -built from your source files use this command: - -$ java -jar jsrun.jar app/run.js mycode.js -Z - -====================================================================== - -LICENSE: - -JSDoc.pm - -This project is based on the JSDoc.pm tool, created by Michael -Mathews and Gabriel Reid. More information on JsDoc.pm can -be found on the JSDoc.pm homepage: http://jsdoc.sourceforge.net/ - -Complete documentation on JsDoc Toolkit can be found on the project -wiki at http://code.google.com/p/jsdoc-toolkit/w/list - -Rhino - -Rhino (JavaScript in Java) is open source and licensed by Mozilla -under the MPL 1.1 or later/GPL 2.0 or later licenses, the text of -which is available at http://www.mozilla.org/MPL/ - -You can obtain the source code for Rhino from the Mozilla web site at -http://www.mozilla.org/rhino/download.html - -JsDoc Toolkit is a larger work that uses the Rhino JavaScript engine -but is not derived from it in any way. The Rhino library is used -without modification and without any claims whatsoever. - -The Rhino Debugger - -You can obtain more information about the Rhino Debugger from the -Mozilla web site at http://www.mozilla.org/rhino/debugger.html - -JsDoc Toolkit is a larger work that uses the Rhino Debugger but -is not derived from it in any way. The Rhino Debugger is used -without modification and without any claims whatsoever. - -JsDoc Toolkit - -All code specific to JsDoc Toolkit are free, open source and licensed -for use under the X11/MIT License. - -JsDoc Toolkit is Copyright (c)2009 Michael Mathews - -This program is free software; you can redistribute it and/or -modify it under the terms below. - -Permission is hereby granted, free of charge, to any person obtaining -a copy of this software and associated documentation files (the -"Software"), to deal in the Software without restriction, including -without limitation the rights to use, copy, modify, merge, publish, -distribute, sublicense, and/or sell copies of the Software, and to -permit persons to whom the Software is furnished to do so, subject to -the following conditions: The above copyright notice and this -permission notice must be included in all copies or substantial -portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. -IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, -TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE -SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/scripts/jsdoc-toolkit/app/frame.js b/scripts/jsdoc-toolkit/app/frame.js deleted file mode 100644 index 1beb40559..000000000 --- a/scripts/jsdoc-toolkit/app/frame.js +++ /dev/null @@ -1,33 +0,0 @@ -IO.include("frame/Opt.js"); -IO.include("frame/Chain.js"); -IO.include("frame/Link.js"); -IO.include("frame/String.js"); -IO.include("frame/Hash.js"); -IO.include("frame/Namespace.js"); -//IO.include("frame/Reflection.js"); - -/** A few helper functions to make life a little easier. */ - -function defined(o) { - return (o !== undefined); -} - -function copy(o) { // todo check for circular refs - if (o == null || typeof(o) != 'object') return o; - var c = new o.constructor(); - for(var p in o) c[p] = copy(o[p]); - return c; -} - -function isUnique(arr) { - var l = arr.length; - for(var i = 0; i < l; i++ ) { - if (arr.lastIndexOf(arr[i]) > i) return false; - } - return true; -} - -/** Returns the given string with all regex meta characters backslashed. */ -RegExp.escapeMeta = function(str) { - return str.replace(/([$^\\\/()|?+*\[\]{}.-])/g, "\\$1"); -} diff --git a/scripts/jsdoc-toolkit/app/frame/Chain.js b/scripts/jsdoc-toolkit/app/frame/Chain.js deleted file mode 100644 index 506469d18..000000000 --- a/scripts/jsdoc-toolkit/app/frame/Chain.js +++ /dev/null @@ -1,102 +0,0 @@ -/**@constructor*/ -function ChainNode(object, link) { - this.value = object; - this.link = link; // describes this node's relationship to the previous node -} - -/**@constructor*/ -function Chain(valueLinks) { - this.nodes = []; - this.cursor = -1; - - if (valueLinks && valueLinks.length > 0) { - this.push(valueLinks[0], "//"); - for (var i = 1, l = valueLinks.length; i < l; i+=2) { - this.push(valueLinks[i+1], valueLinks[i]); - } - } -} - -Chain.prototype.push = function(o, link) { - if (this.nodes.length > 0 && link) this.nodes.push(new ChainNode(o, link)); - else this.nodes.push(new ChainNode(o)); -} - -Chain.prototype.unshift = function(o, link) { - if (this.nodes.length > 0 && link) this.nodes[0].link = link; - this.nodes.unshift(new ChainNode(o)); - this.cursor++; -} - -Chain.prototype.get = function() { - if (this.cursor < 0 || this.cursor > this.nodes.length-1) return null; - return this.nodes[this.cursor]; -} - -Chain.prototype.first = function() { - this.cursor = 0; - return this.get(); -} - -Chain.prototype.last = function() { - this.cursor = this.nodes.length-1; - return this.get(); -} - -Chain.prototype.next = function() { - this.cursor++; - return this.get(); -} - -Chain.prototype.prev = function() { - this.cursor--; - return this.get(); -} - -Chain.prototype.toString = function() { - var string = ""; - for (var i = 0, l = this.nodes.length; i < l; i++) { - if (this.nodes[i].link) string += " -("+this.nodes[i].link+")-> "; - string += this.nodes[i].value.toString(); - } - return string; -} - -Chain.prototype.joinLeft = function() { - var result = ""; - for (var i = 0, l = this.cursor; i < l; i++) { - if (result && this.nodes[i].link) result += this.nodes[i].link; - result += this.nodes[i].value.toString(); - } - return result; -} - - -/* USAGE: - -var path = "one/two/three.four/five-six"; -var pathChain = new Chain(path.split(/([\/.-])/)); -print(pathChain); - -var lineage = new Chain(); -lineage.push("Port"); -lineage.push("Les", "son"); -lineage.push("Dawn", "daughter"); -lineage.unshift("Purdie", "son"); - -print(lineage); - -// walk left -for (var node = lineage.last(); node !== null; node = lineage.prev()) { - print("< "+node.value); -} - -// walk right -var node = lineage.first() -while (node !== null) { - print(node.value); - node = lineage.next(); - if (node && node.link) print("had a "+node.link+" named"); -} - -*/ \ No newline at end of file diff --git a/scripts/jsdoc-toolkit/app/frame/Dumper.js b/scripts/jsdoc-toolkit/app/frame/Dumper.js deleted file mode 100644 index d8b007b1d..000000000 --- a/scripts/jsdoc-toolkit/app/frame/Dumper.js +++ /dev/null @@ -1,144 +0,0 @@ -/** - * @class -
-This is a lightly modified version of Kevin Jones' JavaScript
-library Data.Dump. To download the original visit:
-    http://openjsan.org/doc/k/ke/kevinj/Data/Dump/
-
-AUTHORS
-
-The Data.Dump JavaScript module is written by Kevin Jones 
-(kevinj@cpan.org), based on Data::Dump by Gisle Aas (gisle@aas.no),
-based on Data::Dumper by Gurusamy Sarathy (gsar@umich.edu).
-
-COPYRIGHT
-
-Copyright 2007 Kevin Jones. Copyright 1998-2000,2003-2004 Gisle Aas.
-Copyright 1996-1998 Gurusamy Sarathy.
-
-This program is free software; you can redistribute it and/or modify
-it under the terms of the Perl Artistic License
-
-See http://www.perl.com/perl/misc/Artistic.html
-
- * @static - */ -Dumper = { - /** @param [...] The objects to dump. */ - dump: function () { - if (arguments.length > 1) - return this._dump(arguments); - else if (arguments.length == 1) - return this._dump(arguments[0]); - else - return "()"; - }, - - _dump: function (obj) { - if (typeof obj == 'undefined') return 'undefined'; - var out; - if (obj.serialize) { return obj.serialize(); } - var type = this._typeof(obj); - if (obj.circularReference) obj.circularReference++; - switch (type) { - case 'circular': - out = "{ //circularReference\n}"; - break; - case 'object': - var pairs = new Array; - - for (var prop in obj) { - if (prop != "circularReference" && obj.hasOwnProperty(prop)) { //hide inherited properties - pairs.push(prop + ': ' + this._dump(obj[prop])); - } - } - - out = '{' + this._format_list(pairs) + '}'; - break; - - case 'string': - for (var prop in Dumper.ESC) { - if (Dumper.ESC.hasOwnProperty(prop)) { - obj = obj.replace(prop, Dumper.ESC[prop]); - } - } - - // Escape UTF-8 Strings - if (obj.match(/^[\x00-\x7f]*$/)) { - out = '"' + obj.replace(/\"/g, "\\\"").replace(/([\n\r]+)/g, "\\$1") + '"'; - } - else { - out = "unescape('"+escape(obj)+"')"; - } - break; - - case 'array': - var elems = new Array; - - for (var i=0; i 60 ? '\n' : ' '; - return nl + list.join(',' + nl) + nl; - }, - - _typeof: function (obj) { - if (obj && obj.circularReference && obj.circularReference > 1) return 'circular'; - if (Array.prototype.isPrototypeOf(obj)) return 'array'; - if (Date.prototype.isPrototypeOf(obj)) return 'date'; - if (typeof obj.nodeType != 'undefined') return 'element'; - return typeof(obj); - }, - - _dump_dom: function (obj) { - return '"' + Dumper.nodeTypes[obj.nodeType] + '"'; - } -}; - -Dumper.ESC = { - "\t": "\\t", - "\n": "\\n", - "\f": "\\f" -}; - -Dumper.nodeTypes = { - 1: "ELEMENT_NODE", - 2: "ATTRIBUTE_NODE", - 3: "TEXT_NODE", - 4: "CDATA_SECTION_NODE", - 5: "ENTITY_REFERENCE_NODE", - 6: "ENTITY_NODE", - 7: "PROCESSING_INSTRUCTION_NODE", - 8: "COMMENT_NODE", - 9: "DOCUMENT_NODE", - 10: "DOCUMENT_TYPE_NODE", - 11: "DOCUMENT_FRAGMENT_NODE", - 12: "NOTATION_NODE" -}; \ No newline at end of file diff --git a/scripts/jsdoc-toolkit/app/frame/Hash.js b/scripts/jsdoc-toolkit/app/frame/Hash.js deleted file mode 100644 index 62cfad646..000000000 --- a/scripts/jsdoc-toolkit/app/frame/Hash.js +++ /dev/null @@ -1,84 +0,0 @@ -/** - @constructor - @example - var _index = new Hash(); - _index.set("a", "apple"); - _index.set("b", "blue"); - _index.set("c", "coffee"); - - for (var p = _index.first(); p; p = _index.next()) { - print(p.key+" is for "+p.value); - } - - */ -var Hash = function() { - this._map = {}; - this._keys = []; - this._vals = []; - this.reset(); -} - -Hash.prototype.set = function(k, v) { - if (k != "") { - this._keys.push(k); - this._map["="+k] = this._vals.length; - this._vals.push(v); - } -} - -Hash.prototype.replace = function(k, k2, v) { - if (k == k2) return; - - var offset = this._map["="+k]; - this._keys[offset] = k2; - if (typeof v != "undefined") this._vals[offset] = v; - this._map["="+k2] = offset; - delete(this._map["="+k]); -} - -Hash.prototype.drop = function(k) { - if (k != "") { - var offset = this._map["="+k]; - this._keys.splice(offset, 1); - this._vals.splice(offset, 1); - delete(this._map["="+k]); - for (var p in this._map) { - if (this._map[p] >= offset) this._map[p]--; - } - if (this._cursor >= offset && this._cursor > 0) this._cursor--; - } -} - -Hash.prototype.get = function(k) { - if (k != "") { - return this._vals[this._map["="+k]]; - } -} - -Hash.prototype.keys = function() { - return this._keys; -} - -Hash.prototype.hasKey = function(k) { - if (k != "") { - return (typeof this._map["="+k] != "undefined"); - } -} - -Hash.prototype.values = function() { - return this._vals; -} - -Hash.prototype.reset = function() { - this._cursor = 0; -} - -Hash.prototype.first = function() { - this.reset(); - return this.next(); -} - -Hash.prototype.next = function() { - if (this._cursor++ < this._keys.length) - return {key: this._keys[this._cursor-1], value: this._vals[this._cursor-1]}; -} \ No newline at end of file diff --git a/scripts/jsdoc-toolkit/app/frame/Link.js b/scripts/jsdoc-toolkit/app/frame/Link.js deleted file mode 100644 index ef5dc0a4d..000000000 --- a/scripts/jsdoc-toolkit/app/frame/Link.js +++ /dev/null @@ -1,153 +0,0 @@ -/** Handle the creation of HTML links to documented symbols. - @constructor -*/ -function Link() { - this.alias = ""; - this.src = ""; - this.file = ""; - this.text = ""; - this.innerName = ""; - this.classLink = false; - this.targetName = ""; - - this.target = function(targetName) { - if (defined(targetName)) this.targetName = targetName; - return this; - } - this.inner = function(inner) { - if (defined(inner)) this.innerName = inner; - return this; - } - this.withText = function(text) { - if (defined(text)) this.text = text; - return this; - } - this.toSrc = function(filename) { - if (defined(filename)) this.src = filename; - return this; - } - this.toSymbol = function(alias) { - if (defined(alias)) this.alias = new String(alias); - return this; - } - this.toClass = function(alias) { - this.classLink = true; - return this.toSymbol(alias); - } - this.toFile = function(file) { - if (defined(file)) this.file = file; - return this; - } - - this.toString = function() { - var linkString; - var thisLink = this; - - if (this.alias) { - linkString = this.alias.replace(/(^|[^a-z$0-9_#.:^-])([|a-z$0-9_#.:^-]+)($|[^a-z$0-9_#.:^-])/i, - function(match, prematch, symbolName, postmatch) { - var symbolNames = symbolName.split("|"); - var links = []; - for (var i = 0, l = symbolNames.length; i < l; i++) { - thisLink.alias = symbolNames[i]; - links.push(thisLink._makeSymbolLink(symbolNames[i])); - } - return prematch+links.join("|")+postmatch; - } - ); - } - else if (this.src) { - linkString = thisLink._makeSrcLink(this.src); - } - else if (this.file) { - linkString = thisLink._makeFileLink(this.file); - } - - return linkString; - } -} - -/** prefixed for hashes */ -Link.hashPrefix = ""; - -/** Appended to the front of relative link paths. */ -Link.base = ""; - -Link.symbolNameToLinkName = function(symbol) { - var linker = ""; - if (symbol.isStatic) linker = "."; - else if (symbol.isInner) linker = "-"; - - return Link.hashPrefix+linker+symbol.name; -} - -/** Create a link to another symbol. */ -Link.prototype._makeSymbolLink = function(alias) { - var linkBase = Link.base+publish.conf.symbolsDir; - var linkTo = Link.symbolSet.getSymbol(alias); - var linkPath; - var target = (this.targetName)? " target=\""+this.targetName+"\"" : ""; - - // is it an internal link? - if (alias.charAt(0) == "#") var linkPath = alias; - - // if there is no symbol by that name just return the name unaltered - else if (!linkTo) return this.text || alias; - - // it's a symbol in another file - else { - if (!linkTo.is("CONSTRUCTOR") && !linkTo.isNamespace) { // it's a method or property - if (linkTo.isEvent) { - linkPath = - (Link.filemap)? Link.filemap[linkTo.memberOf] - : - escape(linkTo.memberOf) || "_global_"; - linkPath += publish.conf.ext + "#event:" + Link.symbolNameToLinkName(linkTo); - } - else { - linkPath = - (Link.filemap)? Link.filemap[linkTo.memberOf] - : - escape(linkTo.memberOf) || "_global_"; - linkPath += publish.conf.ext + "#" + Link.symbolNameToLinkName(linkTo); - } - } - else { - linkPath = (Link.filemap)? Link.filemap[linkTo.alias] : escape(linkTo.alias); - linkPath += publish.conf.ext;// + (this.classLink? "":"#" + Link.hashPrefix + "constructor"); - } - linkPath = linkBase + linkPath - } - - var linkText = this.text || alias; - - var link = {linkPath: linkPath, linkText: linkText, linkInner: (this.innerName? "#"+this.innerName : "")}; - - if (typeof JSDOC.PluginManager != "undefined") { - JSDOC.PluginManager.run("onSymbolLink", link); - } - - return ""+link.linkText+""; -} - -/** Create a link to a source file. */ -Link.prototype._makeSrcLink = function(srcFilePath) { - var target = (this.targetName)? " target=\""+this.targetName+"\"" : ""; - - // transform filepath into a filename - var srcFile = srcFilePath.replace(/\.\.?[\\\/]/g, "").replace(/[:\\\/]/g, "_"); - var outFilePath = Link.base + publish.conf.srcDir + srcFile + publish.conf.ext; - - if (!this.text) this.text = FilePath.fileName(srcFilePath); - return ""+this.text+""; -} - -/** Create a link to a source file. */ -Link.prototype._makeFileLink = function(filePath) { - var target = (this.targetName)? " target=\""+this.targetName+"\"" : ""; - - var outFilePath = Link.base + filePath; - - if (!this.text) this.text = filePath; - return ""+this.text+""; -} \ No newline at end of file diff --git a/scripts/jsdoc-toolkit/app/frame/Namespace.js b/scripts/jsdoc-toolkit/app/frame/Namespace.js deleted file mode 100644 index fa1e41d10..000000000 --- a/scripts/jsdoc-toolkit/app/frame/Namespace.js +++ /dev/null @@ -1,10 +0,0 @@ -_global_ = this; - -function Namespace(name, f) { - var n = name.split("."); - for (var o = _global_, i = 0, l = n.length; i < l; i++) { - o = o[n[i]] = o[n[i]] || {}; - } - - if (f) f(); -} \ No newline at end of file diff --git a/scripts/jsdoc-toolkit/app/frame/Opt.js b/scripts/jsdoc-toolkit/app/frame/Opt.js deleted file mode 100644 index 352f15903..000000000 --- a/scripts/jsdoc-toolkit/app/frame/Opt.js +++ /dev/null @@ -1,134 +0,0 @@ -/** @namespace */ -Opt = { - /** - * Get commandline option values. - * @param {Array} args Commandline arguments. Like ["-a=xml", "-b", "--class=new", "--debug"] - * @param {object} optNames Map short names to long names. Like {a:"accept", b:"backtrace", c:"class", d:"debug"}. - * @return {object} Short names and values. Like {a:"xml", b:true, c:"new", d:true} - */ - get: function(args, optNames) { - var opt = {"_": []}; // the unnamed option allows multiple values - for (var i = 0; i < args.length; i++) { - var arg = new String(args[i]); - var name; - var value; - if (arg.charAt(0) == "-") { - if (arg.charAt(1) == "-") { // it's a longname like --foo - arg = arg.substring(2); - var m = arg.split("="); - name = m.shift(); - value = m.shift(); - if (typeof value == "undefined") value = true; - - for (var n in optNames) { // convert it to a shortname - if (name == optNames[n]) { - name = n; - } - } - } - else { // it's a shortname like -f - arg = arg.substring(1); - var m = arg.split("="); - name = m.shift(); - value = m.shift(); - if (typeof value == "undefined") value = true; - - for (var n in optNames) { // find the matching key - if (name == n || name+'[]' == n) { - name = n; - break; - } - } - } - if (name.match(/(.+)\[\]$/)) { // it's an array type like n[] - name = RegExp.$1; - if (!opt[name]) opt[name] = []; - } - - if (opt[name] && opt[name].push) { - opt[name].push(value); - } - else { - opt[name] = value; - } - } - else { // not associated with any optname - opt._.push(args[i]); - } - } - return opt; - } -} - -/*t: - plan(11, "Testing Opt."); - - is( - typeof Opt, - "object", - "Opt is an object." - ); - - is( - typeof Opt.get, - "function", - "Opt.get is a function." - ); - - var optNames = {a:"accept", b:"backtrace", c:"class", d:"debug", "e[]":"exceptions"}; - var t_options = Opt.get(["-a=xml", "-b", "--class=new", "--debug", "-e=one", "-e=two", "foo", "bar"], optNames); - - is( - t_options.a, - "xml", - "an option defined with a short name can be accessed by its short name." - ); - - is( - t_options.b, - true, - "an option defined with a short name and no value are true." - ); - - is( - t_options.c, - "new", - "an option defined with a long name can be accessed by its short name." - ); - - is( - t_options.d, - true, - "an option defined with a long name and no value are true." - ); - - is( - typeof t_options.e, - "object", - "an option that can accept multiple values is defined." - ); - - is( - t_options.e.length, - 2, - "an option that can accept multiple values can have more than one value." - ); - - is( - t_options.e[1], - "two", - "an option that can accept multiple values can be accessed as an array." - ); - - is( - typeof t_options._, - "object", - "the property '_' is defined for unnamed options." - ); - - is( - t_options._[0], - "foo", - "the property '_' can be accessed as an array." - ); - */ \ No newline at end of file diff --git a/scripts/jsdoc-toolkit/app/frame/Reflection.js b/scripts/jsdoc-toolkit/app/frame/Reflection.js deleted file mode 100644 index 0968f1c64..000000000 --- a/scripts/jsdoc-toolkit/app/frame/Reflection.js +++ /dev/null @@ -1,26 +0,0 @@ -/**@constructor*/ -function Reflection(obj) { - this.obj = obj; -} - -Reflection.prototype.getConstructorName = function() { - if (this.obj.constructor.name) return this.obj.constructor.name; - var src = this.obj.constructor.toSource(); - var name = src.substring(name.indexOf("function")+8, src.indexOf('(')).replace(/ /g,''); - return name; -} - -Reflection.prototype.getMethod = function(name) { - for (var p in this.obj) { - if (p == name && typeof(this.obj[p]) == "function") return this.obj[p]; - } - return null; -} - -Reflection.prototype.getParameterNames = function() { - var src = this.obj.toSource(); - src = src.substring( - src.indexOf("(", 8)+1, src.indexOf(")") - ); - return src.split(/, ?/); -} diff --git a/scripts/jsdoc-toolkit/app/frame/String.js b/scripts/jsdoc-toolkit/app/frame/String.js deleted file mode 100644 index c183c27d5..000000000 --- a/scripts/jsdoc-toolkit/app/frame/String.js +++ /dev/null @@ -1,93 +0,0 @@ -/** - @name String - @class Additions to the core string object. -*/ - -/** @author Steven Levithan, released as public domain. */ -String.prototype.trim = function() { - var str = this.replace(/^\s+/, ''); - for (var i = str.length - 1; i >= 0; i--) { - if (/\S/.test(str.charAt(i))) { - str = str.substring(0, i + 1); - break; - } - } - return str; -} -/*t: - plan(6, "Testing String.prototype.trim."); - - var s = " a bc ".trim(); - is(s, "a bc", "multiple spaces front and back are trimmed."); - - s = "a bc\n\n".trim(); - is(s, "a bc", "newlines only in back are trimmed."); - - s = "\ta bc".trim(); - is(s, "a bc", "tabs only in front are trimmed."); - - s = "\n \t".trim(); - is(s, "", "an all-space string is trimmed to empty."); - - s = "a b\nc".trim(); - is(s, "a b\nc", "a string with no spaces in front or back is trimmed to itself."); - - s = "".trim(); - is(s, "", "an empty string is trimmed to empty."); - -*/ - -String.prototype.balance = function(open, close) { - var i = 0; - while (this.charAt(i) != open) { - if (i == this.length) return [-1, -1]; - i++; - } - - var j = i+1; - var balance = 1; - while (j < this.length) { - if (this.charAt(j) == open) balance++; - if (this.charAt(j) == close) balance--; - if (balance == 0) break; - j++; - if (j == this.length) return [-1, -1]; - } - - return [i, j]; -} -/*t: - plan(16, "Testing String.prototype.balance."); - - var s = "{abc}".balance("{","}"); - is(s[0], 0, "opener in first is found."); - is(s[1], 4, "closer in last is found."); - - s = "ab{c}de".balance("{","}"); - is(s[0], 2, "opener in middle is found."); - is(s[1], 4, "closer in middle is found."); - - s = "a{b{c}de}f".balance("{","}"); - is(s[0], 1, "nested opener is found."); - is(s[1], 8, "nested closer is found."); - - s = "{}".balance("{","}"); - is(s[0], 0, "opener with no content is found."); - is(s[1], 1, "closer with no content is found."); - - s = "".balance("{","}"); - is(s[0], -1, "empty string opener is -1."); - is(s[1], -1, "empty string closer is -1."); - - s = "{abc".balance("{","}"); - is(s[0], -1, "opener with no closer returns -1."); - is(s[1], -1, "no closer returns -1."); - - s = "abc".balance("{","}"); - is(s[0], -1, "no opener or closer returns -1 for opener."); - is(s[1], -1, "no opener or closer returns -1 for closer."); - - s = "aX11/MIT License - * (See the accompanying README file for full details.) - */ - -/** - Yet another unit testing tool for JavaScript. - @author Michael Mathews micmath@gmail.com - @param {object} testCases Properties are testcase names, values are functions to execute as tests. -*/ -function testrun(testCases) { - var ran = 0; - for (t in testCases) { - var result = testCases[t](); - ran++; - } - - return testrun.reportOut+"-------------------------------\n"+((testrun.fails>0)? ":( Failed "+testrun.fails+"/" : ":) Passed all ")+testrun.count+" test"+((testrun.count == 1)? "":"s")+".\n"; -} - - -testrun.count = 0; -testrun.current = null; -testrun.passes = 0; -testrun.fails = 0; -testrun.reportOut = ""; - -/** @private */ -testrun.report = function(text) { - testrun.reportOut += text+"\n"; -} - -/** - Check if test evaluates to true. - @param {string} test To be evaluated. - @param {string} message Optional. To be displayed in the report. - @return {boolean} True if the string test evaluates to true. -*/ -ok = function(test, message) { - testrun.count++; - - var result; - try { - result = eval(test); - - if (result) { - testrun.passes++; - testrun.report(" OK "+testrun.count+" - "+((message != null)? message : "")); - } - else { - testrun.fails++; - testrun.report("NOT OK "+testrun.count+" - "+((message != null)? message : "")); - } - } - catch(e) { - testrun.fails++ - testrun.report("NOT OK "+testrun.count+" - "+((message != null)? message : "")); - - } -} - -/** - Check if test is same as expected. - @param {string} test To be evaluated. - @param {string} expected - @param {string} message Optional. To be displayed in the report. - @return {boolean} True if (test == expected). Note that the comparison is not a strict equality check. -*/ -is = function(test, expected, message) { - testrun.count++; - - var result; - try { - result = eval(test); - - if (result == expected) { - testrun.passes++ - testrun.report(" OK "+testrun.count+" - "+((message != null)? message : "")); - } - else { - testrun.fails++ - testrun.report("NOT OK "+testrun.count+" - "+((message != null)? message : "")); - testrun.report("expected: "+expected); - testrun.report(" got: "+result); - } - } - catch(e) { - testrun.fails++ - testrun.report("NOT OK "+testrun.count+" - "+((message != null)? message : "")); - testrun.report("expected: "+expected); - testrun.report(" got: "+result);} -} - -/** - Check if test matches pattern. - @param {string} test To be evaluated. - @param {string} pattern Used to create a RegExp. - @param {string} message Optional. To be displayed in the report. - @return {boolean} True if test matches pattern. -*/ -like = function(test, pattern, message) { - testrun.count++; - - var result; - try { - result = eval(test); - var rgx = new RegExp(pattern); - - if (rgx.test(result)) { - testrun.passes++ - testrun.report(" OK "+testrun.count+" - "+((message != null)? message : "")); - } - else { - testrun.fails++ - testrun.report("NOT OK "+testrun.count+" - "+((message != null)? message : "")); - testrun.report(" this: "+result); - testrun.report("is not like: "+pattern); - } - } - catch(e) { - testrun.fails++ - testrun.report("NOT OK "+testrun.count+" - "+((message != null)? message : "")); - } -} \ No newline at end of file diff --git a/scripts/jsdoc-toolkit/app/handlers/FOODOC.js b/scripts/jsdoc-toolkit/app/handlers/FOODOC.js deleted file mode 100644 index b208f55b1..000000000 --- a/scripts/jsdoc-toolkit/app/handlers/FOODOC.js +++ /dev/null @@ -1,26 +0,0 @@ -/** - This is the main container for the FOODOC handler. - @namespace -*/ -FOODOC = { -}; - -/** The current version string of this application. */ -FOODOC.VERSION = "1.0"; - -FOODOC.handle = function(srcFile, src) { - LOG.inform("Handling file '" + srcFile + "'"); - - return [ - new JSDOC.Symbol( - "foo", - [], - "VIRTUAL", - new JSDOC.DocComment("/** This is a foo. */") - ) - ]; -}; - -FOODOC.publish = function(symbolgroup) { - LOG.inform("Publishing symbolgroup."); -}; diff --git a/scripts/jsdoc-toolkit/app/handlers/XMLDOC.js b/scripts/jsdoc-toolkit/app/handlers/XMLDOC.js deleted file mode 100755 index 40f87b355..000000000 --- a/scripts/jsdoc-toolkit/app/handlers/XMLDOC.js +++ /dev/null @@ -1,26 +0,0 @@ -/** - * This is the main container for the XMLDOC handler. - * @namespace - * @author Brett Fattori (bfattori@fry.com) - * @version $Revision: 498 $ - */ -XMLDOC = { - -}; - -/** The current version string of this application. */ -XMLDOC.VERSION = "1.0"; - -/** Include the library necessary to handle XML files */ -IO.includeDir("handlers/XMLDOC/"); - -/** - * @type Symbol[] - */ -XMLDOC.handle = function(srcFile, src) { - -}; - -XMLDOC.publish = function(symbolgroup) { - -} \ No newline at end of file diff --git a/scripts/jsdoc-toolkit/app/handlers/XMLDOC/DomReader.js b/scripts/jsdoc-toolkit/app/handlers/XMLDOC/DomReader.js deleted file mode 100755 index 240563daf..000000000 --- a/scripts/jsdoc-toolkit/app/handlers/XMLDOC/DomReader.js +++ /dev/null @@ -1,159 +0,0 @@ -LOG.inform("XMLDOC.DomReader loaded"); - -XMLDOC.DomReader = function(root) { - - this.dom = root; - - /** - * The current node the reader is on - */ - this.node = root; - - /** - * Get the current node the reader is on - * @type XMLDOC.Parser.node - */ - XMLDOC.DomReader.prototype.getNode = function() { - return this.node; - }; - - /** - * Set the node the reader should be positioned on. - * @param node {XMLDOC.Parser.node} - */ - XMLDOC.DomReader.prototype.setNode = function(node) { - this.node = node; - }; - - /** - * A helper method to make sure the current node will - * never return null, unless null is passed as the root. - * @param step {String} An expression to evaluate - should return a node or null - */ - XMLDOC.DomReader.prototype.navigate = function(step) { - var n; - if ((n = step) != null) - { - this.node = n; - return this.node; - } - return null; - }; - - /** - * Get the root node of the current node's document. - */ - XMLDOC.DomReader.prototype.root = function() { - this.navigate(this.dom); - }; - - /** - * Get the parent of the current node. - */ - XMLDOC.DomReader.prototype.parent = function() { - return this.navigate(this.node.parentNode()); - }; - - /** - * Get the first child of the current node. - */ - XMLDOC.DomReader.prototype.firstChild = function() { - return this.navigate(this.node.firstChild()); - }; - - /** - * Get the last child of the current node. - */ - XMLDOC.DomReader.prototype.lastChild = function() { - return this.navigate(this.node.lastChild()); - }; - - /** - * Get the next sibling of the current node. - */ - XMLDOC.DomReader.prototype.nextSibling = function() { - return this.navigate(this.node.nextSibling()); - }; - - /** - * Get the previous sibling of the current node. - */ - XMLDOC.DomReader.prototype.prevSibling = function() { - return this.navigate(this.node.prevSibling()); - }; - - //=============================================================================================== - // Support methods - - /** - * Walk the tree starting with the current node, calling the plug-in for - * each node visited. Each time the plug-in is called, the DomReader - * is passed as the only parameter. Use the {@link XMLDOC.DomReader#getNode} method - * to access the current node. This method uses a depth first traversal pattern. - * - * @param srcFile {String} The source file being evaluated - */ - XMLDOC.DomReader.prototype.getSymbols = function(srcFile) - { - XMLDOC.DomReader.symbols = []; - XMLDOC.DomReader.currentFile = srcFile; - JSDOC.Symbol.srcFile = (srcFile || ""); - - if (defined(JSDOC.PluginManager)) { - JSDOC.PluginManager.run("onDomGetSymbols", this); - } - - return XMLDOC.DomReader.symbols; - }; - - /** - * Find the node with the given name using a depth first traversal. - * Does not modify the DomReader's current node. - * - * @param name {String} The name of the node to find - * @return the node that was found, or null if not found - */ - XMLDOC.DomReader.prototype.findNode = function(name) - { - var findNode = null; - - // Start at the current node and move into the subtree, - // looking for the node with the given name - function deeper(node, find) - { - var look = null; - - if (node) { - if (node.name == find) - { - return node; - } - - if (node.firstChild()) - { - look = deeper(node.firstChild(), find); - } - - if (!look && node.nextSibling()) - { - look = deeper(node.nextSibling(), find); - } - } - - return look; - } - - return deeper(this.getNode().firstChild(), name); - }; - - /** - * Find the next node with the given name using a depth first traversal. - * - * @param name {String} The name of the node to find - */ - XMLDOC.DomReader.prototype.findPreviousNode = function(name) - { - }; - -}; - diff --git a/scripts/jsdoc-toolkit/app/handlers/XMLDOC/XMLDoc.js b/scripts/jsdoc-toolkit/app/handlers/XMLDOC/XMLDoc.js deleted file mode 100755 index e9b3e3ce8..000000000 --- a/scripts/jsdoc-toolkit/app/handlers/XMLDOC/XMLDoc.js +++ /dev/null @@ -1,16 +0,0 @@ -LOG.inform("XMLDOC.symbolize loaded"); - -/** - * Convert the source file to a set of symbols - */ -XMLDOC.symbolize = function(srcFile, src) { - - LOG.inform("Symbolizing file '" + srcFile + "'"); - - // XML files already have a defined structure, so we don't need to - // do anything but parse them. The DOM reader can create a symbol - // table from the parsed XML. - var dr = new XMLDOC.DomReader(XMLDOC.Parser.parse(src)); - return dr.getSymbols(srcFile); - -}; diff --git a/scripts/jsdoc-toolkit/app/handlers/XMLDOC/XMLParse.js b/scripts/jsdoc-toolkit/app/handlers/XMLDOC/XMLParse.js deleted file mode 100755 index 78e8f4556..000000000 --- a/scripts/jsdoc-toolkit/app/handlers/XMLDOC/XMLParse.js +++ /dev/null @@ -1,292 +0,0 @@ -LOG.inform("XMLDOC.Parser loaded"); - -/** - * XML Parser object. Returns an {@link #XMLDOC.Parser.node} which is - * the root element of the parsed document. - *

- * By default, this parser will only handle well formed XML. To - * allow the parser to handle HTML, set the XMLDOC.Parser.strictMode - * variable to false before calling XMLDOC.Parser.parse(). - *

- * Note: If you pass poorly formed XML, it will cause the parser to throw - * an exception. - * - * @author Brett Fattori (bfattori@fry.com) - * @author $Author: micmath $ - * @version $Revision: 497 $ - */ -XMLDOC.Parser = {}; - -/** - * Strict mode setting. Setting this to false allows HTML-style source to - * be parsed. Normally, well formed XML has defined end tags, or empty tags - * are properly formed. Default: true - * @type Boolean - */ -XMLDOC.Parser.strictMode = true; - -/** - * A node in an XML Document. Node types are ROOT, ELEMENT, COMMENT, PI, and TEXT. - * @param parent {XMLDOC.Parser.node} The parent node - * @param name {String} The node name - * @param type {String} One of the types - */ -XMLDOC.Parser.node = function(parent, name, type) -{ - this.name = name; - this.type = type || "ELEMENT"; - this.parent = parent; - this.charData = ""; - this.attrs = {}; - this.nodes = []; - this.cPtr = 0; - - XMLDOC.Parser.node.prototype.getAttributeNames = function() { - var a = []; - for (var o in this.attrs) - { - a.push(o); - } - - return a; - }; - - XMLDOC.Parser.node.prototype.getAttribute = function(attr) { - return this.attrs[attr]; - }; - - XMLDOC.Parser.node.prototype.setAttribute = function(attr, val) { - this.attrs[attr] = val; - }; - - XMLDOC.Parser.node.prototype.getChild = function(idx) { - return this.nodes[idx]; - }; - - XMLDOC.Parser.node.prototype.parentNode = function() { - return this.parent; - }; - - XMLDOC.Parser.node.prototype.firstChild = function() { - return this.nodes[0]; - }; - - XMLDOC.Parser.node.prototype.lastChild = function() { - return this.nodes[this.nodes.length - 1]; - }; - - XMLDOC.Parser.node.prototype.nextSibling = function() { - var p = this.parent; - if (p && (p.nodes.indexOf(this) + 1 != p.nodes.length)) - { - return p.getChild(p.nodes.indexOf(this) + 1); - } - return null; - }; - - XMLDOC.Parser.node.prototype.prevSibling = function() { - var p = this.parent; - if (p && (p.nodes.indexOf(this) - 1 >= 0)) - { - return p.getChild(p.nodes.indexOf(this) - 1); - } - return null; - }; -}; - -/** - * Parse an XML Document from the specified source. The XML should be - * well formed, unless strict mode is disabled, then the parser will - * handle HTML-style XML documents. - * @param src {String} The source to parse - */ -XMLDOC.Parser.parse = function(src) -{ - var A = []; - - // Normailize whitespace - A = src.split("\r\n"); - src = A.join("\n"); - A = src.split("\r"); - src = A.join("\n"); - - // Remove XML and DOCTYPE specifier - src.replace(/<\?XML .*\?>/i, ""); - src.replace(//i, ""); - - // The document is the root node and cannot be modified or removed - var doc = new XMLDOC.Parser.node(null, "ROOT", "DOCUMENT"); - - // Let's break it down - XMLDOC.Parser.eat(doc, src); - - return doc; -}; - -/** - * The XML fragment processing routine. This method is private and should not be called - * directly. - * @param parentNode {XMLDOC.Parser.node} The node which is the parent of this fragment - * @param src {String} The source within the fragment to process - * @private - */ -XMLDOC.Parser.eat = function(parentNode, src) -{ - // A simple tag def - var reTag = new RegExp("<(!|)(\\?|--|)((.|\\s)*?)\\2>","g"); - - // Special tag types - var reCommentTag = //; - var rePITag = /<\?((.|\s)*?)\?>/; - - // A start tag (with potential empty marker) - var reStartTag = /<(.*?)( +([\w_\-]*)=(\"|')(.*)\4)*(\/)?>/; - - // An empty HTML style tag (not proper XML, but we'll accept it so we can process HTML) - var reHTMLEmptyTag = /<(.*?)( +([\w_\-]*)=(\"|')(.*)\4)*>/; - - // Fully enclosing tag with nested tags - var reEnclosingTag = /<(.*?)( +([\w_\-]*)=(\"|')(.*?)\4)*>((.|\s)*?)<\/\1>/; - - // Breaks down attributes - var reAttributes = new RegExp(" +([\\w_\\-]*)=(\"|')(.*?)\\2","g"); - - // Find us a tag - var tag; - while ((tag = reTag.exec(src)) != null) - { - if (tag.index > 0) - { - // The next tag has some text before it - var text = src.substring(0, tag.index).replace(/^[ \t\n]+((.|\n)*?)[ \t\n]+$/, "$1"); - - if (text.length > 0 && (text != "\n")) - { - var txtnode = new XMLDOC.Parser.node(parentNode, "", "TEXT"); - txtnode.charData = text; - - // Append the new text node - parentNode.nodes.push(txtnode); - } - - // Reset the lastIndex of reTag - reTag.lastIndex -= src.substring(0, tag.index).length; - - // Eat the text - src = src.substring(tag.index); - } - - if (reCommentTag.test(tag[0])) - { - // Is this a comment? - var comment = new XMLDOC.Parser.node(parentNode, "", "COMMENT"); - comment.charData = reCommentTag.exec(tag[0])[1]; - - // Append the comment - parentNode.nodes.push(comment); - - // Move the lastIndex of reTag - reTag.lastIndex -= tag[0].length; - - // Eat the tag - src = src.replace(reCommentTag, ""); - } - else if (rePITag.test(tag[0])) - { - // Is this a processing instruction? - var pi = new XMLDOC.Parser.node(parentNode, "", "PI"); - pi.charData = rePITag.exec(tag[0])[1]; - - // Append the processing instruction - parentNode.nodes.push(pi); - - // Move the lastIndex of reTag - reTag.lastIndex -= tag[0].length; - - // Eat the tag - src = src.replace(rePITag, ""); - } - else if (reStartTag.test(tag[0])) - { - // Break it down - var e = reStartTag.exec(tag[0]); - var elem = new XMLDOC.Parser.node(parentNode, e[1], "ELEMENT"); - - // Get attributes from the tag - var a; - while ((a = reAttributes.exec(e[2])) != null ) - { - elem.attrs[a[1]] = a[3]; - } - - // Is this an empty XML-style tag? - if (e[6] == "/") - { - // Append the empty element - parentNode.nodes.push(elem); - - // Move the lastIndex of reTag (include the start tag length) - reTag.lastIndex -= e[0].length; - - // Eat the tag - src = src.replace(reStartTag, ""); - } - else - { - // Check for malformed XML tags - var htmlParsed = false; - var htmlStartTag = reHTMLEmptyTag.exec(src); - - // See if there isn't an end tag within this block - var reHTMLEndTag = new RegExp(""); - var htmlEndTag = reHTMLEndTag.exec(src); - - if (XMLDOC.Parser.strictMode && htmlEndTag == null) - { - // Poorly formed XML fails in strict mode - var err = new Error("Malformed XML passed to XMLDOC.Parser... Error contains malformed 'src'"); - err.src = src; - throw err; - } - else if (htmlEndTag == null) - { - // This is an HTML-style empty tag, store the element for it in non-strict mode - parentNode.nodes.push(elem); - - // Eat the tag - src = src.replace(reHTMLEmptyTag, ""); - htmlParsed = true; - } - - // If we didn't parse HTML-style, it must be an enclosing tag - if (!htmlParsed) - { - var enc = reEnclosingTag.exec(src); - - // Go deeper into the document - XMLDOC.Parser.eat(elem, enc[6]); - - // Append the new element node - parentNode.nodes.push(elem); - - // Eat the tag - src = src.replace(reEnclosingTag, ""); - } - } - - // Reset the lastIndex of reTag - reTag.lastIndex = 0; - } - } - - // No tag was found... append the text if there is any - src = src.replace(/^[ \t\n]+((.|\n)*?)[ \t\n]+$/, "$1"); - if (src.length > 0 && (src != "\n")) - { - var txtNode = new XMLDOC.Parser.node(parentNode, "", "TEXT"); - txtNode.charData = src; - - // Append the new text node - parentNode.nodes.push(txtNode); - } -}; diff --git a/scripts/jsdoc-toolkit/app/lib/JSDOC.js b/scripts/jsdoc-toolkit/app/lib/JSDOC.js deleted file mode 100644 index ca59089a7..000000000 --- a/scripts/jsdoc-toolkit/app/lib/JSDOC.js +++ /dev/null @@ -1,104 +0,0 @@ -/** - @overview - @date $Date: 2009-09-04 07:43:41 +0100 (Fri, 04 Sep 2009) $ - @version $Revision: 814 $ - @location $HeadURL: https://jsdoc-toolkit.googlecode.com/svn/tags/jsdoc_toolkit-2.3.2/jsdoc-toolkit/app/lib/JSDOC.js $ - @name JSDOC.js - */ - -/** - This is the main container for the JSDOC application. - @namespace -*/ -JSDOC = { -}; - -/** - @requires Opt - */ -if (typeof arguments == "undefined") arguments = []; -JSDOC.opt = Opt.get( - arguments, - { - a: "allfunctions", - c: "conf", - d: "directory", - "D[]": "define", - e: "encoding", - "E[]": "exclude", - h: "help", - n: "nocode", - o: "out", - p: "private", - q: "quiet", - r: "recurse", - S: "securemodules", - s: "suppress", - t: "template", - T: "testmode", - u: "unique", - v: "verbose", - x: "ext" - } -); - -/** The current version string of this application. */ -JSDOC.VERSION = "2.3.2"; - -/** Print out usage information and quit. */ -JSDOC.usage = function() { - print("USAGE: java -jar jsrun.jar app/run.js [OPTIONS] ..."); - print(""); - print("OPTIONS:"); - print(" -a or --allfunctions\n Include all functions, even undocumented ones.\n"); - print(" -c or --conf\n Load a configuration file.\n"); - print(" -d= or --directory=\n Output to this directory (defaults to \"out\").\n"); - print(" -D=\"myVar:My value\" or --define=\"myVar:My value\"\n Multiple. Define a variable, available in JsDoc as JSDOC.opt.D.myVar.\n"); - print(" -e= or --encoding=\n Use this encoding to read and write files.\n"); - print(" -E=\"REGEX\" or --exclude=\"REGEX\"\n Multiple. Exclude files based on the supplied regex.\n"); - print(" -h or --help\n Show this message and exit.\n"); - print(" -n or --nocode\n Ignore all code, only document comments with @name tags.\n"); - print(" -o= or --out=\n Print log messages to a file (defaults to stdout).\n"); - print(" -p or --private\n Include symbols tagged as private, underscored and inner symbols.\n"); - print(" -q or --quiet\n Do not output any messages, not even warnings.\n"); - print(" -r= or --recurse=\n Descend into src directories.\n"); - print(" -s or --suppress\n Suppress source code output.\n"); - print(" -S or --securemodules\n Use Secure Modules mode to parse source code.\n"); - print(" -t= or --template=\n Required. Use this template to format the output.\n"); - print(" -T or --test\n Run all unit tests and exit.\n"); - print(" -u or --unique\n Force file names to be unique, but not based on symbol names.\n"); - print(" -v or --verbose\n Provide verbose feedback about what is happening.\n"); - print(" -x=[,EXT]... or --ext=[,EXT]...\n Scan source files with the given extension/s (defaults to js).\n"); - - quit(); -} - -/*t: - plan(4, "Testing JSDOC namespace."); - - is( - typeof JSDOC, - "object", - "JSDOC.usage is a function." - ); - - is( - typeof JSDOC.VERSION, - "string", - "JSDOC.VERSION is a string." - ); - - is( - typeof JSDOC.usage, - "function", - "JSDOC.usage is a function." - ); - - is( - typeof JSDOC.opt, - "object", - "JSDOC.opt is a object." - ); - */ - -if (this.IO) IO.includeDir("lib/JSDOC/"); diff --git a/scripts/jsdoc-toolkit/app/lib/JSDOC/DocComment.js b/scripts/jsdoc-toolkit/app/lib/JSDOC/DocComment.js deleted file mode 100644 index c6c8d7d4f..000000000 --- a/scripts/jsdoc-toolkit/app/lib/JSDOC/DocComment.js +++ /dev/null @@ -1,200 +0,0 @@ -if (typeof JSDOC == "undefined") JSDOC = {}; - -/** - Create a new DocComment. This takes a raw documentation comment, - and wraps it in useful accessors. - @class Represents a documentation comment object. - */ -JSDOC.DocComment = function(/**String*/comment) { - this.init(); - if (typeof comment != "undefined") { - this.parse(comment); - } -} - -JSDOC.DocComment.prototype.init = function() { - this.isUserComment = true; - this.src = ""; - this.meta = ""; - this.tagTexts = []; - this.tags = []; -} - -/** - @requires JSDOC.DocTag - */ -JSDOC.DocComment.prototype.parse = function(/**String*/comment) { - if (comment == "") { - comment = "/** @desc */"; - this.isUserComment = false; - } - - this.src = JSDOC.DocComment.unwrapComment(comment); - - this.meta = ""; - if (this.src.indexOf("#") == 0) { - this.src.match(/#(.+[+-])([\s\S]*)$/); - if (RegExp.$1) this.meta = RegExp.$1; - if (RegExp.$2) this.src = RegExp.$2; - } - - if (typeof JSDOC.PluginManager != "undefined") { - JSDOC.PluginManager.run("onDocCommentSrc", this); - } - - this.fixDesc(); - - this.src = JSDOC.DocComment.shared+"\n"+this.src; - - this.tagTexts = - this.src - .split(/(^|[\r\n])\s*@/) - .filter(function($){return $.match(/\S/)}); - - /** - The tags found in the comment. - @type JSDOC.DocTag[] - */ - this.tags = this.tagTexts.map(function($){return new JSDOC.DocTag($)}); - - if (typeof JSDOC.PluginManager != "undefined") { - JSDOC.PluginManager.run("onDocCommentTags", this); - } -} - -/*t: - plan(5, "testing JSDOC.DocComment"); - requires("../frame/String.js"); - requires("../lib/JSDOC/DocTag.js"); - - var com = new JSDOC.DocComment("/**@foo some\n* comment here*"+"/"); - is(com.tagTexts[0], "foo some\ncomment here", "first tag text is found."); - is(com.tags[0].title, "foo", "the title is found in a comment with one tag."); - - var com = new JSDOC.DocComment("/** @foo first\n* @bar second*"+"/"); - is(com.getTag("bar").length, 1, "getTag() returns one tag by that title."); - - JSDOC.DocComment.shared = "@author John Smith"; - var com = new JSDOC.DocComment("/**@foo some\n* comment here*"+"/"); - is(com.tags[0].title, "author", "shared comment is added."); - is(com.tags[1].title, "foo", "shared comment is added to existing tag."); -*/ - -/** - If no @desc tag is provided, this function will add it. - */ -JSDOC.DocComment.prototype.fixDesc = function() { - if (this.meta && this.meta != "@+") return; - if (/^\s*[^@\s]/.test(this.src)) { - this.src = "@desc "+this.src; - } -} - -/*t: - plan(5, "testing JSDOC.DocComment#fixDesc"); - - var com = new JSDOC.DocComment(); - - com.src = "this is a desc\n@author foo"; - com.fixDesc(); - is(com.src, "@desc this is a desc\n@author foo", "if no @desc tag is provided one is added."); - - com.src = "x"; - com.fixDesc(); - is(com.src, "@desc x", "if no @desc tag is provided one is added to a single character."); - - com.src = "\nx"; - com.fixDesc(); - is(com.src, "@desc \nx", "if no @desc tag is provided one is added to return and character."); - - com.src = " "; - com.fixDesc(); - is(com.src, " ", "if no @desc tag is provided one is not added to just whitespace."); - - com.src = ""; - com.fixDesc(); - is(com.src, "", "if no @desc tag is provided one is not added to empty."); -*/ - -/** - Remove slash-star comment wrapper from a raw comment string. - @type String - */ -JSDOC.DocComment.unwrapComment = function(/**String*/comment) { - if (!comment) return ""; - var unwrapped = comment.replace(/(^\/\*\*|\*\/$)/g, "").replace(/^\s*\* ?/gm, ""); - return unwrapped; -} - -/*t: - plan(5, "testing JSDOC.DocComment.unwrapComment"); - - var com = "/**x*"+"/"; - var unwrapped = JSDOC.DocComment.unwrapComment(com); - is(unwrapped, "x", "a single character jsdoc is found."); - - com = "/***x*"+"/"; - unwrapped = JSDOC.DocComment.unwrapComment(com); - is(unwrapped, "x", "three stars are allowed in the opener."); - - com = "/****x*"+"/"; - unwrapped = JSDOC.DocComment.unwrapComment(com); - is(unwrapped, "*x", "fourth star in the opener is kept."); - - com = "/**x\n * y\n*"+"/"; - unwrapped = JSDOC.DocComment.unwrapComment(com); - is(unwrapped, "x\ny\n", "leading stars and spaces are trimmed."); - - com = "/**x\n * y\n*"+"/"; - unwrapped = JSDOC.DocComment.unwrapComment(com); - is(unwrapped, "x\n y\n", "only first space after leading stars are trimmed."); -*/ - -/** - Provides a printable version of the comment. - @type String - */ -JSDOC.DocComment.prototype.toString = function() { - return this.src; -} - -/*t: - plan(1, "testing JSDOC.DocComment#fixDesc"); - var com = new JSDOC.DocComment(); - com.src = "foo"; - is(""+com, "foo", "stringifying a comment returns the unwrapped src."); -*/ - -/** - Given the title of a tag, returns all tags that have that title. - @type JSDOC.DocTag[] - */ -JSDOC.DocComment.prototype.getTag = function(/**String*/tagTitle) { - return this.tags.filter(function($){return $.title == tagTitle}); -} - -/*t: - plan(1, "testing JSDOC.DocComment#getTag"); - requires("../frame/String.js"); - requires("../lib/JSDOC/DocTag.js"); - - var com = new JSDOC.DocComment("/**@foo some\n* @bar\n* @bar*"+"/"); - is(com.getTag("bar").length, 2, "getTag returns expected number of tags."); -*/ - -/** - Used to store the currently shared tag text. -*/ -JSDOC.DocComment.shared = ""; - -/*t: - plan(2, "testing JSDOC.DocComment.shared"); - requires("../frame/String.js"); - requires("../lib/JSDOC/DocTag.js"); - - JSDOC.DocComment.shared = "@author Michael"; - - var com = new JSDOC.DocComment("/**@foo\n* @foo*"+"/"); - is(com.getTag("author").length, 1, "getTag returns shared tag."); - is(com.getTag("foo").length, 2, "getTag returns unshared tags too."); -*/ \ No newline at end of file diff --git a/scripts/jsdoc-toolkit/app/lib/JSDOC/DocTag.js b/scripts/jsdoc-toolkit/app/lib/JSDOC/DocTag.js deleted file mode 100644 index 77ec07cac..000000000 --- a/scripts/jsdoc-toolkit/app/lib/JSDOC/DocTag.js +++ /dev/null @@ -1,294 +0,0 @@ -if (typeof JSDOC == "undefined") JSDOC = {}; - -/** - @constructor - */ -JSDOC.DocTag = function(src) { - this.init(); - if (typeof src != "undefined") { - this.parse(src); - } -} - -/** - Create and initialize the properties of this. - */ -JSDOC.DocTag.prototype.init = function() { - this.title = ""; - this.type = ""; - this.name = ""; - this.isOptional = false; - this.defaultValue = ""; - this.desc = ""; - - return this; -} - -/** - Populate the properties of this from the given tag src. - @param {string} src - */ -JSDOC.DocTag.prototype.parse = function(src) { - if (typeof src != "string") throw "src must be a string not "+(typeof src); - - try { - src = this.nibbleTitle(src); - if (JSDOC.PluginManager) { - JSDOC.PluginManager.run("onDocTagSynonym", this); - } - - src = this.nibbleType(src); - - // only some tags are allowed to have names. - if (this.title == "param" || this.title == "property" || this.title == "config") { // @config is deprecated - src = this.nibbleName(src); - } - } - catch(e) { - if (LOG) LOG.warn(e); - else throw e; - } - this.desc = src; // whatever is left - - // example tags need to have whitespace preserved - if (this.title != "example") this.desc = this.desc.trim(); - - if (JSDOC.PluginManager) { - JSDOC.PluginManager.run("onDocTag", this); - } -} - -/** - Automatically called when this is stringified. - */ -JSDOC.DocTag.prototype.toString = function() { - return this.desc; -} - -/*t: - plan(1, "testing JSDOC.DocTag#toString"); - - var tag = new JSDOC.DocTag("param {object} date A valid date."); - is(""+tag, "A valid date.", "stringifying a tag returns the desc."); - */ - -/** - Find and shift off the title of a tag. - @param {string} src - @return src - */ -JSDOC.DocTag.prototype.nibbleTitle = function(src) { - if (typeof src != "string") throw "src must be a string not "+(typeof src); - - var parts = src.match(/^\s*(\S+)(?:\s([\s\S]*))?$/); - - if (parts && parts[1]) this.title = parts[1]; - if (parts && parts[2]) src = parts[2]; - else src = ""; - - return src; -} - -/*t: - plan(8, "testing JSDOC.DocTag#nibbleTitle"); - - var tag = new JSDOC.DocTag(); - - tag.init().nibbleTitle("aTitleGoesHere"); - is(tag.title, "aTitleGoesHere", "a title can be found in a single-word string."); - - var src = tag.init().nibbleTitle("aTitleGoesHere and the rest"); - is(tag.title, "aTitleGoesHere", "a title can be found in a multi-word string."); - is(src, "and the rest", "the rest is returned when the title is nibbled off."); - - src = tag.init().nibbleTitle(""); - is(tag.title, "", "given an empty string the title is empty."); - is(src, "", "the rest is empty when the tag is empty."); - - var src = tag.init().nibbleTitle(" aTitleGoesHere\n a description"); - is(tag.title, "aTitleGoesHere", "leading and trailing spaces are not part of the title."); - is(src, " a description", "leading spaces (less one) are part of the description."); - - tag.init().nibbleTitle("a.Title::Goes_Here foo"); - is(tag.title, "a.Title::Goes_Here", "titles with punctuation are allowed."); - */ - -/** - Find and shift off the type of a tag. - @requires frame/String.js - @param {string} src - @return src - */ -JSDOC.DocTag.prototype.nibbleType = function(src) { - if (typeof src != "string") throw "src must be a string not "+(typeof src); - - if (src.match(/^\s*\{/)) { - var typeRange = src.balance("{", "}"); - if (typeRange[1] == -1) { - throw "Malformed comment tag ignored. Tag type requires an opening { and a closing }: "+src; - } - this.type = src.substring(typeRange[0]+1, typeRange[1]).trim(); - this.type = this.type.replace(/\s*,\s*/g, "|"); // multiples can be separated by , or | - src = src.substring(typeRange[1]+1); - } - - return src; -} - -/*t: - plan(5, "testing JSDOC.DocTag.parser.nibbleType"); - requires("../frame/String.js"); - - var tag = new JSDOC.DocTag(); - - tag.init().nibbleType("{String[]} aliases"); - is(tag.type, "String[]", "type can have non-alpha characters."); - - tag.init().nibbleType("{ aTypeGoesHere } etc etc"); - is(tag.type, "aTypeGoesHere", "type is trimmed."); - - tag.init().nibbleType("{ oneType, twoType ,\n threeType } etc etc"); - is(tag.type, "oneType|twoType|threeType", "multiple types can be separated by commas."); - - var error; - try { tag.init().nibbleType("{widget foo"); } - catch(e) { error = e; } - is(typeof error, "string", "malformed tag type throws error."); - isnt(error.indexOf("Malformed"), -1, "error message tells tag is malformed."); - */ - -/** - Find and shift off the name of a tag. - @requires frame/String.js - @param {string} src - @return src - */ -JSDOC.DocTag.prototype.nibbleName = function(src) { - if (typeof src != "string") throw "src must be a string not "+(typeof src); - - src = src.trim(); - - // is optional? - if (src.charAt(0) == "[") { - var nameRange = src.balance("[", "]"); - if (nameRange[1] == -1) { - throw "Malformed comment tag ignored. Tag optional name requires an opening [ and a closing ]: "+src; - } - this.name = src.substring(nameRange[0]+1, nameRange[1]).trim(); - this.isOptional = true; - - src = src.substring(nameRange[1]+1); - - // has default value? - var nameAndValue = this.name.split("="); - if (nameAndValue.length) { - this.name = nameAndValue.shift().trim(); - this.defaultValue = nameAndValue.join("="); - } - } - else { - var parts = src.match(/^(\S+)(?:\s([\s\S]*))?$/); - if (parts) { - if (parts[1]) this.name = parts[1]; - if (parts[2]) src = parts[2].trim(); - else src = ""; - } - } - - return src; -} - -/*t: - requires("../frame/String.js"); - plan(9, "testing JSDOC.DocTag.parser.nibbleName"); - - var tag = new JSDOC.DocTag(); - - tag.init().nibbleName("[foo] This is a description."); - is(tag.isOptional, true, "isOptional syntax is detected."); - is(tag.name, "foo", "optional param name is found."); - - tag.init().nibbleName("[foo] This is a description."); - is(tag.isOptional, true, "isOptional syntax is detected when no type."); - is(tag.name, "foo", "optional param name is found when no type."); - - tag.init().nibbleName("[foo=7] This is a description."); - is(tag.name, "foo", "optional param name is found when default value."); - is(tag.defaultValue, 7, "optional param default value is found when default value."); - - //tag.init().nibbleName("[foo= a value] This is a description."); - //is(tag.defaultValue, " a value", "optional param default value is found when default value has spaces (issue #112)."); - - tag.init().nibbleName("[foo=[]] This is a description."); - is(tag.defaultValue, "[]", "optional param default value is found when default value is [] (issue #95)."); - - tag.init().nibbleName("[foo=a=b] This is a description."); - is(tag.name, "foo", "optional param name is found when default value is a=b."); - is(tag.defaultValue, "a=b", "optional param default value is found when default value is a=b.") - */ - -/*t: - plan(32, "Testing JSDOC.DocTag.parser."); - requires("../frame/String.js"); - - var tag = new JSDOC.DocTag(); - - is(typeof tag, "object", "JSDOC.DocTag.parser with an empty string returns an object."); - is(typeof tag.title, "string", "returned object has a string property 'title'."); - is(typeof tag.type, "string", "returned object has a string property 'type'."); - is(typeof tag.name, "string", "returned object has a string property 'name'."); - is(typeof tag.defaultValue, "string", "returned object has a string property 'defaultValue'."); - is(typeof tag.isOptional, "boolean", "returned object has a boolean property 'isOptional'."); - is(typeof tag.desc, "string", "returned object has a string property 'desc'."); - - tag = new JSDOC.DocTag("param {widget} foo"); - is(tag.title, "param", "param title is found."); - is(tag.name, "foo", "param name is found when desc is missing."); - is(tag.desc, "", "param desc is empty when missing."); - - tag = new JSDOC.DocTag("param {object} date A valid date."); - is(tag.name, "date", "param name is found with a type."); - is(tag.type, "object", "param type is found."); - is(tag.desc, "A valid date.", "param desc is found with a type."); - - tag = new JSDOC.DocTag("param aName a description goes\n here."); - is(tag.name, "aName", "param name is found without a type."); - is(tag.desc, "a description goes\n here.", "param desc is found without a type."); - - tag = new JSDOC.DocTag("param {widget}"); - is(tag.name, "", "param name is empty when it is not given."); - - tag = new JSDOC.DocTag("param {widget} [foo] This is a description."); - is(tag.name, "foo", "optional param name is found."); - - tag = new JSDOC.DocTag("return {aType} This is a description."); - is(tag.type, "aType", "when return tag has no name, type is found."); - is(tag.desc, "This is a description.", "when return tag has no name, desc is found."); - - tag = new JSDOC.DocTag("author Joe Coder "); - is(tag.title, "author", "author tag has a title."); - is(tag.type, "", "the author tag has no type."); - is(tag.name, "", "the author tag has no name."); - is(tag.desc, "Joe Coder ", "author tag has desc."); - - tag = new JSDOC.DocTag("private \t\n "); - is(tag.title, "private", "private tag has a title."); - is(tag.type, "", "the private tag has no type."); - is(tag.name, "", "the private tag has no name."); - is(tag.desc, "", "private tag has no desc."); - - tag = new JSDOC.DocTag("example\n example(code);\n more();"); - is(tag.desc, " example(code);\n more();", "leading whitespace (less one) in examples code is preserved."); - - tag = new JSDOC.DocTag("param theName \n"); - is(tag.name, "theName", "name only is found."); - - tag = new JSDOC.DocTag("type theDesc \n"); - is(tag.desc, "theDesc", "desc only is found."); - - tag = new JSDOC.DocTag("type {theType} \n"); - is(tag.type, "theType", "type only is found."); - - tag = new JSDOC.DocTag(""); - is(tag.title, "", "title is empty when tag is empty."); - */ \ No newline at end of file diff --git a/scripts/jsdoc-toolkit/app/lib/JSDOC/JsDoc.js b/scripts/jsdoc-toolkit/app/lib/JSDOC/JsDoc.js deleted file mode 100644 index 2c4bfb82b..000000000 --- a/scripts/jsdoc-toolkit/app/lib/JSDOC/JsDoc.js +++ /dev/null @@ -1,126 +0,0 @@ -/** - @constructor - @param [opt] Used to override the commandline options. Useful for testing. - @version $Id: JsDoc.js 773 2009-01-24 09:42:04Z micmath $ -*/ -JSDOC.JsDoc = function(/**object*/ opt) { - if (opt) { - JSDOC.opt = opt; - } - - if (JSDOC.opt.h) { - JSDOC.usage(); - quit(); - } - - // defend against options that are not sane - if (JSDOC.opt._.length == 0) { - LOG.warn("No source files to work on. Nothing to do."); - quit(); - } - if (JSDOC.opt.t === true || JSDOC.opt.d === true) { - JSDOC.usage(); - } - - if (typeof JSDOC.opt.d == "string") { - if (!JSDOC.opt.d.charAt(JSDOC.opt.d.length-1).match(/[\\\/]/)) { - JSDOC.opt.d = JSDOC.opt.d+"/"; - } - LOG.inform("Output directory set to '"+JSDOC.opt.d+"'."); - IO.mkPath(JSDOC.opt.d); - } - if (JSDOC.opt.e) IO.setEncoding(JSDOC.opt.e); - - // the -r option: scan source directories recursively - if (typeof JSDOC.opt.r == "boolean") JSDOC.opt.r = 10; - else if (!isNaN(parseInt(JSDOC.opt.r))) JSDOC.opt.r = parseInt(JSDOC.opt.r); - else JSDOC.opt.r = 1; - - // the -D option: define user variables - var D = {}; - if (JSDOC.opt.D) { - for (var i = 0; i < JSDOC.opt.D.length; i++) { - var defineParts = JSDOC.opt.D[i].split(":", 2); - if (defineParts) D[defineParts[0]] = defineParts[1]; - } - } - JSDOC.opt.D = D; - // combine any conf file D options with the commandline D options - if (defined(JSDOC.conf)) for (var c in JSDOC.conf.D) { - if (!defined(JSDOC.opt.D[c])) { - JSDOC.opt.D[c] = JSDOC.conf.D[c]; - } - } - - // Give plugins a chance to initialize - if (defined(JSDOC.PluginManager)) { - JSDOC.PluginManager.run("onInit", JSDOC.opt); - } - - JSDOC.opt.srcFiles = JSDOC.JsDoc._getSrcFiles(); - JSDOC.JsDoc._parseSrcFiles(); - JSDOC.JsDoc.symbolSet = JSDOC.Parser.symbols; -} - -/** - Retrieve source file list. - @returns {String[]} The pathnames of the files to be parsed. - */ -JSDOC.JsDoc._getSrcFiles = function() { - JSDOC.JsDoc.srcFiles = []; - - var ext = ["js"]; - if (JSDOC.opt.x) { - ext = JSDOC.opt.x.split(",").map(function($) {return $.toLowerCase()}); - } - - for (var i = 0; i < JSDOC.opt._.length; i++) { - JSDOC.JsDoc.srcFiles = JSDOC.JsDoc.srcFiles.concat( - IO.ls(JSDOC.opt._[i], JSDOC.opt.r).filter( - function($) { - var thisExt = $.split(".").pop().toLowerCase(); - - if (JSDOC.opt.E) { - for(var n = 0; n < JSDOC.opt.E.length; n++) { - if ($.match(new RegExp(JSDOC.opt.E[n]))) { - LOG.inform("Excluding " + $); - return false; // if the file matches the regex then it's excluded. - } - } - } - - return (ext.indexOf(thisExt) > -1); // we're only interested in files with certain extensions - } - ) - ); - } - - return JSDOC.JsDoc.srcFiles; -} - -JSDOC.JsDoc._parseSrcFiles = function() { - JSDOC.Parser.init(); - for (var i = 0, l = JSDOC.JsDoc.srcFiles.length; i < l; i++) { - var srcFile = JSDOC.JsDoc.srcFiles[i]; - - if (JSDOC.opt.v) LOG.inform("Parsing file: " + srcFile); - - try { - var src = IO.readFile(srcFile); - } - catch(e) { - LOG.warn("Can't read source file '"+srcFile+"': "+e.message); - } - - var tr = new JSDOC.TokenReader(); - var ts = new JSDOC.TokenStream(tr.tokenize(new JSDOC.TextStream(src))); - - JSDOC.Parser.parse(ts, srcFile); - - } - JSDOC.Parser.finish(); - - if (JSDOC.PluginManager) { - JSDOC.PluginManager.run("onFinishedParsing", JSDOC.Parser.symbols); - } -} diff --git a/scripts/jsdoc-toolkit/app/lib/JSDOC/JsPlate.js b/scripts/jsdoc-toolkit/app/lib/JSDOC/JsPlate.js deleted file mode 100644 index bcaebc9c5..000000000 --- a/scripts/jsdoc-toolkit/app/lib/JSDOC/JsPlate.js +++ /dev/null @@ -1,109 +0,0 @@ -/** - @constructor -*/ -JSDOC.JsPlate = function(templateFile) { - if (templateFile) this.template = IO.readFile(templateFile); - - this.templateFile = templateFile; - this.code = ""; - this.parse(); -} - -JSDOC.JsPlate.prototype.parse = function() { - this.template = this.template.replace(/\{#[\s\S]+?#\}/gi, ""); - this.code = "var output=\u001e"+this.template; - - this.code = this.code.replace( - //gi, - function (match, eachName, inName) { - return "\u001e;\rvar $"+eachName+"_keys = keys("+inName+");\rfor(var $"+eachName+"_i = 0; $"+eachName+"_i < $"+eachName+"_keys.length; $"+eachName+"_i++) {\rvar $"+eachName+"_last = ($"+eachName+"_i == $"+eachName+"_keys.length-1);\rvar $"+eachName+"_key = $"+eachName+"_keys[$"+eachName+"_i];\rvar "+eachName+" = "+inName+"[$"+eachName+"_key];\routput+=\u001e"; - } - ); - this.code = this.code.replace(//g, "\u001e;\rif ($1) { output+=\u001e"); - this.code = this.code.replace(//g, "\u001e;}\relse if ($1) { output+=\u001e"); - this.code = this.code.replace(//g, "\u001e;}\relse { output+=\u001e"); - this.code = this.code.replace(/<\/(if|for)>/g, "\u001e;\r};\routput+=\u001e"); - this.code = this.code.replace( - /\{\+\s*([\s\S]+?)\s*\+\}/gi, - function (match, code) { - code = code.replace(/"/g, "\u001e"); // prevent qoute-escaping of inline code - code = code.replace(/(\r?\n)/g, " "); - return "\u001e+ ("+code+") +\u001e"; - } - ); - this.code = this.code.replace( - /\{!\s*([\s\S]+?)\s*!\}/gi, - function (match, code) { - code = code.replace(/"/g, "\u001e"); // prevent qoute-escaping of inline code - code = code.replace(/(\n)/g, " "); - return "\u001e; "+code+";\routput+=\u001e"; - } - ); - this.code = this.code+"\u001e;"; - - this.code = this.code.replace(/(\r?\n)/g, "\\n"); - this.code = this.code.replace(/"/g, "\\\""); - this.code = this.code.replace(/\u001e/g, "\""); -} - -JSDOC.JsPlate.prototype.toCode = function() { - return this.code; -} - -JSDOC.JsPlate.keys = function(obj) { - var keys = []; - if (obj.constructor.toString().indexOf("Array") > -1) { - for (var i = 0; i < obj.length; i++) { - keys.push(i); - } - } - else { - for (var i in obj) { - keys.push(i); - } - } - return keys; -}; - -JSDOC.JsPlate.values = function(obj) { - var values = []; - if (obj.constructor.toString().indexOf("Array") > -1) { - for (var i = 0; i < obj.length; i++) { - values.push(obj[i]); - } - } - else { - for (var i in obj) { - values.push(obj[i]); - } - } - return values; -}; - -JSDOC.JsPlate.prototype.process = function(data, compact) { - var keys = JSDOC.JsPlate.keys; - var values = JSDOC.JsPlate.values; - - try { - eval(this.code); - } - catch (e) { - print(">> There was an error evaluating the compiled code from template: "+this.templateFile); - print(" The error was on line "+e.lineNumber+" "+e.name+": "+e.message); - var lines = this.code.split("\r"); - if (e.lineNumber-2 >= 0) print("line "+(e.lineNumber-1)+": "+lines[e.lineNumber-2]); - print("line "+e.lineNumber+": "+lines[e.lineNumber-1]); - print(""); - } - - if (compact) { // patch by mcbain.asm - // Remove lines that contain only space-characters, usually left by lines in the template - // which originally only contained JSPlate tags or code. This makes it easier to write - // non-tricky templates which still put out nice code (not bloated with extra lines). - // Lines purposely left blank (just a line ending) are left alone. - output = output.replace(/\s+?(\r?)\n/g, "$1\n"); - } - - /*debug*///print(this.code); - return output; -} \ No newline at end of file diff --git a/scripts/jsdoc-toolkit/app/lib/JSDOC/Lang.js b/scripts/jsdoc-toolkit/app/lib/JSDOC/Lang.js deleted file mode 100644 index 62919d7d8..000000000 --- a/scripts/jsdoc-toolkit/app/lib/JSDOC/Lang.js +++ /dev/null @@ -1,144 +0,0 @@ -/** - @namespace -*/ -JSDOC.Lang = { -} - -JSDOC.Lang.isBuiltin = function(name) { - return (JSDOC.Lang.isBuiltin.coreObjects.indexOf(name) > -1); -} -JSDOC.Lang.isBuiltin.coreObjects = ['_global_', 'Array', 'Boolean', 'Date', 'Error', 'Function', 'Math', 'Number', 'Object', 'RegExp', 'String']; - -JSDOC.Lang.whitespace = function(ch) { - return JSDOC.Lang.whitespace.names[ch]; -} -JSDOC.Lang.whitespace.names = { - " ": "SPACE", - "\f": "FORMFEED", - "\t": "TAB", - "\u0009": "UNICODE_TAB", - "\u000A": "UNICODE_NBR", - "\u0008": "VERTICAL_TAB" -}; - -JSDOC.Lang.newline = function(ch) { - return JSDOC.Lang.newline.names[ch]; -} -JSDOC.Lang.newline.names = { - "\n": "NEWLINE", - "\r": "RETURN", - "\u000A": "UNICODE_LF", - "\u000D": "UNICODE_CR", - "\u2029": "UNICODE_PS", - "\u2028": "UNICODE_LS" -}; - -JSDOC.Lang.keyword = function(word) { - return JSDOC.Lang.keyword.names["="+word]; -} -JSDOC.Lang.keyword.names = { - "=break": "BREAK", - "=case": "CASE", - "=catch": "CATCH", - "=const": "VAR", - "=continue": "CONTINUE", - "=default": "DEFAULT", - "=delete": "DELETE", - "=do": "DO", - "=else": "ELSE", - "=false": "FALSE", - "=finally": "FINALLY", - "=for": "FOR", - "=function": "FUNCTION", - "=if": "IF", - "=in": "IN", - "=instanceof": "INSTANCEOF", - "=new": "NEW", - "=null": "NULL", - "=return": "RETURN", - "=switch": "SWITCH", - "=this": "THIS", - "=throw": "THROW", - "=true": "TRUE", - "=try": "TRY", - "=typeof": "TYPEOF", - "=void": "VOID", - "=while": "WHILE", - "=with": "WITH", - "=var": "VAR" -}; - -JSDOC.Lang.punc = function(ch) { - return JSDOC.Lang.punc.names[ch]; -} -JSDOC.Lang.punc.names = { - ";": "SEMICOLON", - ",": "COMMA", - "?": "HOOK", - ":": "COLON", - "||": "OR", - "&&": "AND", - "|": "BITWISE_OR", - "^": "BITWISE_XOR", - "&": "BITWISE_AND", - "===": "STRICT_EQ", - "==": "EQ", - "=": "ASSIGN", - "!==": "STRICT_NE", - "!=": "NE", - "<<": "LSH", - "<=": "LE", - "<": "LT", - ">>>": "URSH", - ">>": "RSH", - ">=": "GE", - ">": "GT", - "++": "INCREMENT", - "--": "DECREMENT", - "+": "PLUS", - "-": "MINUS", - "*": "MUL", - "/": "DIV", - "%": "MOD", - "!": "NOT", - "~": "BITWISE_NOT", - ".": "DOT", - "[": "LEFT_BRACKET", - "]": "RIGHT_BRACKET", - "{": "LEFT_CURLY", - "}": "RIGHT_CURLY", - "(": "LEFT_PAREN", - ")": "RIGHT_PAREN" -}; - -JSDOC.Lang.matching = function(name) { - return JSDOC.Lang.matching.names[name]; -} -JSDOC.Lang.matching.names = { - "LEFT_PAREN": "RIGHT_PAREN", - "RIGHT_PAREN": "LEFT_PAREN", - "LEFT_CURLY": "RIGHT_CURLY", - "RIGHT_CURLY": "LEFT_CURLY", - "LEFT_BRACE": "RIGHT_BRACE", - "RIGHT_BRACE": "LEFT_BRACE" -} - -JSDOC.Lang.isNumber = function(str) { - return /^(\.[0-9]|[0-9]+\.|[0-9])[0-9]*([eE][+-][0-9]+)?$/i.test(str); -} - -JSDOC.Lang.isHexDec = function(str) { - return /^0x[0-9A-F]+$/i.test(str); -} - -JSDOC.Lang.isWordChar = function(str) { - return /^[a-zA-Z0-9$_.]+$/.test(str); -} - -JSDOC.Lang.isSpace = function(str) { - return (typeof JSDOC.Lang.whitespace(str) != "undefined"); -} - -JSDOC.Lang.isNewline = function(str) { - return (typeof JSDOC.Lang.newline(str) != "undefined"); -} \ No newline at end of file diff --git a/scripts/jsdoc-toolkit/app/lib/JSDOC/Parser.js b/scripts/jsdoc-toolkit/app/lib/JSDOC/Parser.js deleted file mode 100644 index f407dd1a1..000000000 --- a/scripts/jsdoc-toolkit/app/lib/JSDOC/Parser.js +++ /dev/null @@ -1,145 +0,0 @@ -if (typeof JSDOC == "undefined") JSDOC = {}; - -/** - @namespace - @requires JSDOC.Walker - @requires JSDOC.Symbol - @requires JSDOC.DocComment -*/ -JSDOC.Parser = { - conf: { - ignoreCode: JSDOC.opt.n, - ignoreAnonymous: true, // factory: true - treatUnderscoredAsPrivate: true, // factory: true - explain: false // factory: false - }, - - addSymbol: function(symbol) { - -if (JSDOC.Parser.rename) { - for (var n in JSDOC.Parser.rename) { - if (symbol.alias.indexOf(n) == 0) { - if (symbol.name == symbol.alias) { - symbol.name = symbol.name.replace(n, JSDOC.Parser.rename[n]); - } - symbol.alias = symbol.alias.replace(n, JSDOC.Parser.rename[n]); - } - } -} - -if (JSDOC.opt.S) { - if (typeof JSDOC.Parser.secureModules == "undefined") JSDOC.Parser.secureModules = {}; - if (/^exports\./.test(symbol.alias)) { - symbol.srcFile.match(/(^|[\\\/])([^\\\/]+)\.js/i); - var fileNS = RegExp.$2; - symbol.alias = symbol.alias.replace(/^exports\./, fileNS); - symbol.name = symbol.name.replace(/^exports\./, ""); - symbol.memberOf = fileNS; - - // need to create the namespace associated with this file first - if (!JSDOC.Parser.secureModules[fileNS]) { - JSDOC.Parser.secureModules[fileNS] = 1; - var nsSymbol = new JSDOC.Symbol(fileNS, [], "GLOBAL", new JSDOC.DocComment("")); - nsSymbol.isNamespace = true; - nsSymbol.srcFile = ""; - nsSymbol.isPrivate = false; - nsSymbol.srcFile = symbol.srcFile; - nsSymbol.desc = (JSDOC.Parser.symbols.getSymbol(symbol.srcFile) || {desc: ""}).desc; - JSDOC.Parser.addSymbol(nsSymbol); - - } - } - else { // a method that is not exported? - if (!symbol.isNamespace) return; - } -} - // if a symbol alias is documented more than once the last one with the user docs wins - if (JSDOC.Parser.symbols.hasSymbol(symbol.alias)) { - var oldSymbol = JSDOC.Parser.symbols.getSymbol(symbol.alias); - if (oldSymbol.comment.isUserComment) { - if (symbol.comment.isUserComment) { // old and new are both documented - LOG.warn("The symbol '"+symbol.alias+"' is documented more than once."); - } - else { // old is documented but new isn't - return; - } - } - } - - // we don't document anonymous things - if (JSDOC.Parser.conf.ignoreAnonymous && symbol.name.match(/\$anonymous\b/)) return; - - // uderscored things may be treated as if they were marked private, this cascades - if (JSDOC.Parser.conf.treatUnderscoredAsPrivate && symbol.name.match(/[.#-]_[^.#-]+$/)) { - if (!symbol.comment.getTag("public").length > 0) symbol.isPrivate = true; - } - - // -p flag is required to document private things - if (!JSDOC.opt.p && symbol.isPrivate) return; // issue #161 fixed by mcbain.asm - - // ignored things are not documented, this doesn't cascade - if (symbol.isIgnored) return; - JSDOC.Parser.symbols.addSymbol(symbol); - }, - - addBuiltin: function(name) { - var builtin = new JSDOC.Symbol(name, [], "CONSTRUCTOR", new JSDOC.DocComment("")); - builtin.isNamespace = true; - builtin.srcFile = ""; - builtin.isPrivate = false; - JSDOC.Parser.addSymbol(builtin); - return builtin; - }, - - init: function() { - JSDOC.Parser.symbols = new JSDOC.SymbolSet(); - JSDOC.Parser.walker = new JSDOC.Walker(); - }, - - finish: function() { - JSDOC.Parser.symbols.relate(); - - // make a litle report about what was found - if (JSDOC.Parser.conf.explain) { - var symbols = JSDOC.Parser.symbols.toArray(); - var srcFile = ""; - for (var i = 0, l = symbols.length; i < l; i++) { - var symbol = symbols[i]; - if (srcFile != symbol.srcFile) { - srcFile = symbol.srcFile; - print("\n"+srcFile+"\n-------------------"); - } - print(i+":\n alias => "+symbol.alias + "\n name => "+symbol.name+ "\n isa => "+symbol.isa + "\n memberOf => " + symbol.memberOf + "\n isStatic => " + symbol.isStatic + ", isInner => " + symbol.isInner+ ", isPrivate => " + symbol.isPrivate); - } - print("-------------------\n"); - } - } -} - -JSDOC.Parser.parse = function(/**JSDOC.TokenStream*/ts, /**String*/srcFile) { - JSDOC.Symbol.srcFile = (srcFile || ""); - JSDOC.DocComment.shared = ""; // shared comments don't cross file boundaries - - if (!JSDOC.Parser.walker) JSDOC.Parser.init(); - JSDOC.Parser.walker.walk(ts); // adds to our symbols - - // filter symbols by option - for (var p = JSDOC.Parser.symbols._index.first(); p; p = JSDOC.Parser.symbols._index.next()) { - var symbol = p.value; - - if (!symbol) continue; - - if (symbol.is("FILE") || symbol.is("GLOBAL")) { - continue; - } - else if (!JSDOC.opt.a && !symbol.comment.isUserComment) { - JSDOC.Parser.symbols.deleteSymbol(symbol.alias); - } - - if (/#$/.test(symbol.alias)) { // we don't document prototypes - JSDOC.Parser.symbols.deleteSymbol(symbol.alias); - } - } - - return JSDOC.Parser.symbols.toArray(); -} diff --git a/scripts/jsdoc-toolkit/app/lib/JSDOC/PluginManager.js b/scripts/jsdoc-toolkit/app/lib/JSDOC/PluginManager.js deleted file mode 100644 index 9c9119310..000000000 --- a/scripts/jsdoc-toolkit/app/lib/JSDOC/PluginManager.js +++ /dev/null @@ -1,33 +0,0 @@ -/** - @namespace Holds functionality related to running plugins. -*/ -JSDOC.PluginManager = { -} - -/** - @param name A unique name that identifies that plugin. - @param handlers A collection of named functions. The names correspond to hooks in the core code. -*/ -JSDOC.PluginManager.registerPlugin = function(/**String*/name, /**Object*/handlers) { - if (!defined(JSDOC.PluginManager.plugins)) - /** The collection of all plugins. Requires a unique name for each. - */ - JSDOC.PluginManager.plugins = {}; - - - JSDOC.PluginManager.plugins[name] = handlers; -} - -/** - @param hook The name of the hook that is being caught. - @param target Any object. This will be passed as the only argument to the handler whose - name matches the hook name. Handlers cannot return a value, so must modify the target - object to have an effect. -*/ -JSDOC.PluginManager.run = function(/**String*/hook, /**Mixed*/target) { - for (var name in JSDOC.PluginManager.plugins) { - if (defined(JSDOC.PluginManager.plugins[name][hook])) { - JSDOC.PluginManager.plugins[name][hook](target); - } - } -} diff --git a/scripts/jsdoc-toolkit/app/lib/JSDOC/Symbol.js b/scripts/jsdoc-toolkit/app/lib/JSDOC/Symbol.js deleted file mode 100644 index c5b76a860..000000000 --- a/scripts/jsdoc-toolkit/app/lib/JSDOC/Symbol.js +++ /dev/null @@ -1,645 +0,0 @@ -if (typeof JSDOC == "undefined") JSDOC = {}; - -/** - Create a new Symbol. - @class Represents a symbol in the source code. - */ -JSDOC.Symbol = function() { - this.init(); - if (arguments.length) this.populate.apply(this, arguments); -} - -JSDOC.Symbol.count = 0; - -JSDOC.Symbol.prototype.init = function() { - this._name = ""; - this._params = []; - this.$args = []; - this.addOn = ""; - this.alias = ""; - this.augments = []; - this.author = ""; - this.classDesc = ""; - this.comment = {}; - this.defaultValue = undefined; - this.deprecated = ""; - this.desc = ""; - this.example = []; - this.exceptions = []; - this.fires = []; - this.id = JSDOC.Symbol.count++; - this.inherits = []; - this.inheritsFrom = []; - this.isa = "OBJECT"; - this.isConstant = false; - this.isEvent = false; - this.isIgnored = false; - this.isInner = false; - this.isNamespace = false; - this.isPrivate = false; - this.isStatic = false; - this.memberOf = ""; - this.methods = []; - this.properties = []; - this.requires = []; - this.returns = []; - this.see = []; - this.since = ""; - this.srcFile = {}; - this.type = ""; - this.version = ""; -} - -JSDOC.Symbol.prototype.serialize = function() { - var keys = []; - for (var p in this) { - keys.push (p); - } - keys = keys.sort(); - - var out = ""; - for (var i in keys) { - if (typeof this[keys[i]] == "function") continue; - out += keys[i]+" => "+Dumper.dump(this[keys[i]])+",\n"; - } - return "\n{\n" + out + "}\n"; -} - -JSDOC.Symbol.prototype.clone = function() { - var clone = new JSDOC.Symbol(); - clone.populate.apply(clone, this.$args); // repopulate using the original arguments - clone.srcFile = this.srcFile; // not the current srcFile, the one when the original was made - return clone; -} - -JSDOC.Symbol.prototype.__defineSetter__("name", - function(n) { n = n.replace(/^_global_[.#-]/, ""); n = n.replace(/\.prototype\.?/g, '#'); this._name = n; } -); -JSDOC.Symbol.prototype.__defineGetter__("name", - function() { return this._name; } -); -JSDOC.Symbol.prototype.__defineSetter__("params", - function(v) { - for (var i = 0, l = v.length; i < l; i++) { - if (v[i].constructor != JSDOC.DocTag) { // may be a generic object parsed from signature, like {type:..., name:...} - this._params[i] = new JSDOC.DocTag("param"+((v[i].type)?" {"+v[i].type+"}":"")+" "+v[i].name); - } - else { - this._params[i] = v[i]; - } - } - } -); -JSDOC.Symbol.prototype.__defineGetter__("params", - function() { return this._params; } -); - -JSDOC.Symbol.prototype.getEvents = function() { - var events = []; - for (var i = 0, l = this.methods.length; i < l; i++) { - if (this.methods[i].isEvent) { - this.methods[i].name = this.methods[i].name.replace("event:", ""); - events.push(this.methods[i]); - } - } - return events; -} - -JSDOC.Symbol.prototype.getMethods = function() { - var nonEvents = []; - for (var i = 0, l = this.methods.length; i < l; i++) { - if (!this.methods[i].isEvent) { - nonEvents.push(this.methods[i]); - } - } - return nonEvents; -} - - -JSDOC.Symbol.prototype.populate = function( - /** String */ name, - /** Object[] */ params, - /** String */ isa, - /** JSDOC.DocComment */ comment -) { - this.$args = arguments; - - this.name = name; - this.alias = this.name; - - this.params = params; - this.isa = (isa == "VIRTUAL")? "OBJECT":isa; - this.comment = comment || new JSDOC.DocComment(""); - this.srcFile = JSDOC.Symbol.srcFile; - - if (this.is("FILE") && !this.alias) this.alias = this.srcFile; - - this.setTags(); - - if (typeof JSDOC.PluginManager != "undefined") { - JSDOC.PluginManager.run("onSymbol", this); - } -} - -JSDOC.Symbol.prototype.setTags = function() { - // @author - var authors = this.comment.getTag("author"); - if (authors.length) { - this.author = authors.map(function($){return $.desc;}).join(", "); - } - - /*t: - plan(34, "testing JSDOC.Symbol"); - - requires("../lib/JSDOC/DocComment.js"); - requires("../frame/String.js"); - requires("../lib/JSDOC/DocTag.js"); - - var sym = new JSDOC.Symbol("foo", [], "OBJECT", new JSDOC.DocComment("/**@author Joe Smith*"+"/")); - is(sym.author, "Joe Smith", "@author tag, author is found."); - */ - - // @desc - var descs = this.comment.getTag("desc"); - if (descs.length) { - this.desc = descs.map(function($){return $.desc;}).join("\n"); // multiple descriptions are concatenated into one - } - - /*t: - var sym = new JSDOC.Symbol("foo", [], "OBJECT", new JSDOC.DocComment("/**@desc This is a description.*"+"/")); - is(sym.desc, "This is a description.", "@desc tag, description is found."); - */ - - // @overview - if (this.is("FILE")) { - if (!this.alias) this.alias = this.srcFile; - - var overviews = this.comment.getTag("overview"); - if (overviews.length) { - this.desc = [this.desc].concat(overviews.map(function($){return $.desc;})).join("\n"); - } - } - - /*t: - var sym = new JSDOC.Symbol("foo", [], "FILE", new JSDOC.DocComment("/**@overview This is an overview.*"+"/")); - is(sym.desc, "\nThis is an overview.", "@overview tag, description is found."); - */ - - // @since - var sinces = this.comment.getTag("since"); - if (sinces.length) { - this.since = sinces.map(function($){return $.desc;}).join(", "); - } - - /*t: - var sym = new JSDOC.Symbol("foo", [], "FILE", new JSDOC.DocComment("/**@since 1.01*"+"/")); - is(sym.since, "1.01", "@since tag, description is found."); - */ - - // @constant - if (this.comment.getTag("constant").length) { - this.isConstant = true; - } - - /*t: - var sym = new JSDOC.Symbol("foo", [], "FILE", new JSDOC.DocComment("/**@constant*"+"/")); - is(sym.isConstant, true, "@constant tag, isConstant set."); - */ - - // @version - var versions = this.comment.getTag("version"); - if (versions.length) { - this.version = versions.map(function($){return $.desc;}).join(", "); - } - - /*t: - var sym = new JSDOC.Symbol("foo", [], "FILE", new JSDOC.DocComment("/**@version 2.0x*"+"/")); - is(sym.version, "2.0x", "@version tag, version is found."); - */ - - // @deprecated - var deprecateds = this.comment.getTag("deprecated"); - if (deprecateds.length) { - this.deprecated = deprecateds.map(function($){return $.desc;}).join("\n"); - } - - /*t: - var sym = new JSDOC.Symbol("foo", [], "FILE", new JSDOC.DocComment("/**@deprecated Use other method.*"+"/")); - is(sym.deprecated, "Use other method.", "@deprecated tag, desc is found."); - */ - - // @example - var examples = this.comment.getTag("example"); - if (examples.length) { - this.example = examples.map( - // trim trailing whitespace - function($) { - $.desc = $.desc.replace(/\s+$/, ""); - return $; - } - ); - } - - /*t: - var sym = new JSDOC.Symbol("foo", [], "FILE", new JSDOC.DocComment("/**@example This\n is an example. \n*"+"/")); - isnt(typeof sym.example[0], "undefined", "@example tag, creates sym.example array."); - is(sym.example[0], "This\n is an example.", "@example tag, desc is found."); - */ - - // @see - var sees = this.comment.getTag("see"); - if (sees.length) { - var thisSee = this.see; - sees.map(function($){thisSee.push($.desc);}); - } - - /*t: - var sym = new JSDOC.Symbol("foo", [], "FILE", new JSDOC.DocComment("/**@see The other thing.*"+"/")); - is(sym.see, "The other thing.", "@see tag, desc is found."); - */ - - // @class - var classes = this.comment.getTag("class"); - if (classes.length) { - this.isa = "CONSTRUCTOR"; - this.classDesc = classes[0].desc; // desc can't apply to the constructor as there is none. - } - - /*t: - var sym = new JSDOC.Symbol("foo", [], "OBJECT", new JSDOC.DocComment("/**@class This describes the class.*"+"/")); - is(sym.isa, "CONSTRUCTOR", "@class tag, makes symbol a constructor."); - is(sym.classDesc, "This describes the class.", "@class tag, class description is found."); - */ - - // @namespace - var namespaces = this.comment.getTag("namespace"); - if (namespaces.length) { - this.classDesc = namespaces[0].desc; - this.isNamespace = true; - } - - /*t: - var sym = new JSDOC.Symbol("foo", [], "OBJECT", new JSDOC.DocComment("/**@namespace This describes the namespace.*"+"/")); - is(sym.classDesc, "This describes the namespace.", "@namespace tag, class description is found."); - */ - - // @param - var params = this.comment.getTag("param"); - if (params.length) { - // user-defined params overwrite those with same name defined by the parser - var thisParams = this.params; - - if (thisParams.length == 0) { // none exist yet, so just bung all these user-defined params straight in - this.params = params; - } - else { // need to overlay these user-defined params on to existing parser-defined params - for (var i = 0, l = params.length; i < l; i++) { - if (thisParams[i]) { - if (params[i].type) thisParams[i].type = params[i].type; - thisParams[i].name = params[i].name; - thisParams[i].desc = params[i].desc; - thisParams[i].isOptional = params[i].isOptional; - thisParams[i].defaultValue = params[i].defaultValue; - } - else thisParams[i] = params[i]; - } - } - } - - /*t: - var sym = new JSDOC.Symbol("foo", [{type: "array", name: "pages"}], "FUNCTION", new JSDOC.DocComment("/**Description.*"+"/")); - is(sym.params.length, 1, "parser defined param is found."); - - sym = new JSDOC.Symbol("foo", [], "FUNCTION", new JSDOC.DocComment("/**Description.\n@param {array} pages*"+"/")); - is(sym.params.length, 1, "user defined param is found."); - is(sym.params[0].type, "array", "user defined param type is found."); - is(sym.params[0].name, "pages", "user defined param name is found."); - - sym = new JSDOC.Symbol("foo", [{type: "array", name: "pages"}], "FUNCTION", new JSDOC.DocComment("/**Description.\n@param {string} uid*"+"/")); - is(sym.params.length, 1, "user defined param overwrites parser defined param."); - is(sym.params[0].type, "string", "user defined param type overwrites parser defined param type."); - is(sym.params[0].name, "uid", "user defined param name overwrites parser defined param name."); - - sym = new JSDOC.Symbol("foo", [{type: "array", name: "pages"}, {type: "number", name: "count"}], "FUNCTION", new JSDOC.DocComment("/**Description.\n@param {string} uid*"+"/")); - is(sym.params.length, 2, "user defined params overlay parser defined params."); - is(sym.params[1].type, "number", "user defined param type overlays parser defined param type."); - is(sym.params[1].name, "count", "user defined param name overlays parser defined param name."); - - sym = new JSDOC.Symbol("foo", [], "FUNCTION", new JSDOC.DocComment("/**Description.\n@param {array} pages The pages description.*"+"/")); - is(sym.params.length, 1, "user defined param with description is found."); - is(sym.params[0].desc, "The pages description.", "user defined param description is found."); - */ - - // @constructor - if (this.comment.getTag("constructor").length) { - this.isa = "CONSTRUCTOR"; - } - - /*t: - var sym = new JSDOC.Symbol("foo", [], "OBJECT", new JSDOC.DocComment("/**@constructor*"+"/")); - is(sym.isa, "CONSTRUCTOR", "@constructor tag, makes symbol a constructor."); - */ - - // @static - if (this.comment.getTag("static").length) { - this.isStatic = true; - if (this.isa == "CONSTRUCTOR") { - this.isNamespace = true; - } - } - - /*t: - var sym = new JSDOC.Symbol("foo", [], "OBJECT", new JSDOC.DocComment("/**@static\n@constructor*"+"/")); - is(sym.isStatic, true, "@static tag, makes isStatic true."); - is(sym.isNamespace, true, "@static and @constructor tag, makes isNamespace true."); - */ - - // @inner - if (this.comment.getTag("inner").length) { - this.isInner = true; - this.isStatic = false; - } - - /*t: - var sym = new JSDOC.Symbol("foo", [], "OBJECT", new JSDOC.DocComment("/**@inner*"+"/")); - is(sym.isStatic, false, "@inner tag, makes isStatic false."); - is(sym.isInner, true, "@inner makes isInner true."); - */ - - // @name - var names = this.comment.getTag("name"); - if (names.length) { - this.name = names[0].desc; - } - - /*t: - // todo - */ - - // @field - if (this.comment.getTag("field").length) { - this.isa = "OBJECT"; - } - - /*t: - var sym = new JSDOC.Symbol("foo", [], "FUNCTION", new JSDOC.DocComment("/**@field*"+"/")); - is(sym.isa, "OBJECT", "@field tag, makes symbol an object."); - */ - - // @function - if (this.comment.getTag("function").length) { - this.isa = "FUNCTION"; - if (/event:/.test(this.alias)) this.isEvent = true; - } - - /*t: - var sym = new JSDOC.Symbol("foo", [], "OBJECT", new JSDOC.DocComment("/**@function*"+"/")); - is(sym.isa, "FUNCTION", "@function tag, makes symbol a function."); - */ - - // @event - var events = this.comment.getTag("event"); - if (events.length) { - this.isa = "FUNCTION"; - this.isEvent = true; - if (!/event:/.test(this.alias)) - this.alias = this.alias.replace(/^(.*[.#-])([^.#-]+)$/, "$1event:$2"); - } - - /*t: - var sym = new JSDOC.Symbol("foo", [], "OBJECT", new JSDOC.DocComment("/**@event*"+"/")); - is(sym.isa, "FUNCTION", "@event tag, makes symbol a function."); - is(sym.isEvent, true, "@event makes isEvent true."); - */ - - // @fires - var fires = this.comment.getTag("fires"); - if (fires.length) { - for (var i = 0; i < fires.length; i++) { - this.fires.push(fires[i].desc); - } - } - - /*t: - // todo - */ - - // @property - var properties = this.comment.getTag("property"); - if (properties.length) { - thisProperties = this.properties; - for (var i = 0; i < properties.length; i++) { - var property = new JSDOC.Symbol(this.alias+"#"+properties[i].name, [], "OBJECT", new JSDOC.DocComment("/**"+properties[i].desc+"\n@name "+properties[i].name+"\n@memberOf "+this.alias+"#*/")); - // TODO: shouldn't the following happen in the addProperty method of Symbol? - property.name = properties[i].name; - property.memberOf = this.alias; - if (properties[i].type) property.type = properties[i].type; - if (properties[i].defaultValue) property.defaultValue = properties[i].defaultValue; - this.addProperty(property); - JSDOC.Parser.addSymbol(property); - } - } - - /*t: - // todo - */ - - // @return - var returns = this.comment.getTag("return"); - if (returns.length) { // there can be many return tags in a single doclet - this.returns = returns; - this.type = returns.map(function($){return $.type}).join(", "); - } - - /*t: - // todo - */ - - // @exception - this.exceptions = this.comment.getTag("throws"); - - /*t: - // todo - */ - - // @requires - var requires = this.comment.getTag("requires"); - if (requires.length) { - this.requires = requires.map(function($){return $.desc}); - } - - /*t: - // todo - */ - - // @type - var types = this.comment.getTag("type"); - if (types.length) { - this.type = types[0].desc; //multiple type tags are ignored - } - - /*t: - // todo - */ - - // @private - if (this.comment.getTag("private").length || this.isInner) { - this.isPrivate = true; - } - - // @ignore - if (this.comment.getTag("ignore").length) { - this.isIgnored = true; - } - - /*t: - // todo - */ - - // @inherits ... as ... - var inherits = this.comment.getTag("inherits"); - if (inherits.length) { - for (var i = 0; i < inherits.length; i++) { - if (/^\s*([a-z$0-9_.#:-]+)(?:\s+as\s+([a-z$0-9_.#:-]+))?/i.test(inherits[i].desc)) { - var inAlias = RegExp.$1; - var inAs = RegExp.$2 || inAlias; - - if (inAlias) inAlias = inAlias.replace(/\.prototype\.?/g, "#"); - - if (inAs) { - inAs = inAs.replace(/\.prototype\.?/g, "#"); - inAs = inAs.replace(/^this\.?/, "#"); - } - - if (inAs.indexOf(inAlias) != 0) { //not a full namepath - var joiner = "."; - if (this.alias.charAt(this.alias.length-1) == "#" || inAs.charAt(0) == "#") { - joiner = ""; - } - inAs = this.alias + joiner + inAs; - } - } - this.inherits.push({alias: inAlias, as: inAs}); - } - } - - /*t: - // todo - */ - - // @augments - this.augments = this.comment.getTag("augments"); - - // @default - var defaults = this.comment.getTag("default"); - if (defaults.length) { - if (this.is("OBJECT")) { - this.defaultValue = defaults[0].desc; - } - } - - /*t: - // todo - */ - - // @memberOf - var memberOfs = this.comment.getTag("memberOf"); - if (memberOfs.length) { - this.memberOf = memberOfs[0].desc; - this.memberOf = this.memberOf.replace(/\.prototype\.?/g, "#"); - } - - /*t: - // todo - */ - - // @public - if (this.comment.getTag("public").length) { - this.isPrivate = false; - } - - /*t: - // todo - */ - - if (JSDOC.PluginManager) { - JSDOC.PluginManager.run("onSetTags", this); - } -} - -JSDOC.Symbol.prototype.is = function(what) { - return this.isa === what; -} - -JSDOC.Symbol.prototype.isBuiltin = function() { - return JSDOC.Lang.isBuiltin(this.alias); -} - -JSDOC.Symbol.prototype.setType = function(/**String*/comment, /**Boolean*/overwrite) { - if (!overwrite && this.type) return; - var typeComment = JSDOC.DocComment.unwrapComment(comment); - this.type = typeComment; -} - -JSDOC.Symbol.prototype.inherit = function(symbol) { - if (!this.hasMember(symbol.name) && !symbol.isInner) { - if (symbol.is("FUNCTION")) - this.methods.push(symbol); - else if (symbol.is("OBJECT")) - this.properties.push(symbol); - } -} - -JSDOC.Symbol.prototype.hasMember = function(name) { - return (this.hasMethod(name) || this.hasProperty(name)); -} - -JSDOC.Symbol.prototype.addMember = function(symbol) { - if (symbol.is("FUNCTION")) { this.addMethod(symbol); } - else if (symbol.is("OBJECT")) { this.addProperty(symbol); } -} - -JSDOC.Symbol.prototype.hasMethod = function(name) { - var thisMethods = this.methods; - for (var i = 0, l = thisMethods.length; i < l; i++) { - if (thisMethods[i].name == name) return true; - if (thisMethods[i].alias == name) return true; - } - return false; -} - -JSDOC.Symbol.prototype.addMethod = function(symbol) { - var methodAlias = symbol.alias; - var thisMethods = this.methods; - for (var i = 0, l = thisMethods.length; i < l; i++) { - if (thisMethods[i].alias == methodAlias) { - thisMethods[i] = symbol; // overwriting previous method - return; - } - } - thisMethods.push(symbol); // new method with this alias -} - -JSDOC.Symbol.prototype.hasProperty = function(name) { - var thisProperties = this.properties; - for (var i = 0, l = thisProperties.length; i < l; i++) { - if (thisProperties[i].name == name) return true; - if (thisProperties[i].alias == name) return true; - } - return false; -} - -JSDOC.Symbol.prototype.addProperty = function(symbol) { - var propertyAlias = symbol.alias; - var thisProperties = this.properties; - for (var i = 0, l = thisProperties.length; i < l; i++) { - if (thisProperties[i].alias == propertyAlias) { - thisProperties[i] = symbol; // overwriting previous property - return; - } - } - - thisProperties.push(symbol); // new property with this alias -} - -JSDOC.Symbol.srcFile = ""; //running reference to the current file being parsed diff --git a/scripts/jsdoc-toolkit/app/lib/JSDOC/SymbolSet.js b/scripts/jsdoc-toolkit/app/lib/JSDOC/SymbolSet.js deleted file mode 100644 index 82657e44e..000000000 --- a/scripts/jsdoc-toolkit/app/lib/JSDOC/SymbolSet.js +++ /dev/null @@ -1,241 +0,0 @@ -/** @constructor */ -JSDOC.SymbolSet = function() { - this.init(); -} - -JSDOC.SymbolSet.prototype.init = function() { - this._index = new Hash(); -} - -JSDOC.SymbolSet.prototype.keys = function() { - return this._index.keys(); -} - -JSDOC.SymbolSet.prototype.hasSymbol = function(alias) { - return this._index.hasKey(alias); -} - -JSDOC.SymbolSet.prototype.addSymbol = function(symbol) { - if (this.hasSymbol(symbol.alias)) { - LOG.warn("Overwriting symbol documentation for: "+symbol.alias + "."); - } - this._index.set(symbol.alias, symbol); -} - -JSDOC.SymbolSet.prototype.getSymbol = function(alias) { - if (this.hasSymbol(alias)) return this._index.get(alias); -} - -JSDOC.SymbolSet.prototype.getSymbolByName = function(name) { - for (var p = this._index.first(); p; p = this._index.next()) { - var symbol = p.value; - if (symbol.name == name) return symbol; - } -} - -JSDOC.SymbolSet.prototype.toArray = function() { - return this._index.values(); -} - -JSDOC.SymbolSet.prototype.deleteSymbol = function(alias) { - if (!this.hasSymbol(alias)) return; - this._index.drop(alias); -} - -JSDOC.SymbolSet.prototype.renameSymbol = function(oldName, newName) { - // todo: should check if oldname or newname already exist - this._index.replace(oldName, newName); - this._index.get(newName).alias = newName; - return newName; -} - -JSDOC.SymbolSet.prototype.relate = function() { - this.resolveBorrows(); - this.resolveMemberOf(); - this.resolveAugments(); -} - -JSDOC.SymbolSet.prototype.resolveBorrows = function() { - for (var p = this._index.first(); p; p = this._index.next()) { - var symbol = p.value; - if (symbol.is("FILE") || symbol.is("GLOBAL")) continue; - - var borrows = symbol.inherits; - for (var i = 0; i < borrows.length; i++) { - -if (/#$/.test(borrows[i].alias)) { - LOG.warn("Attempted to borrow entire instance of "+borrows[i].alias+" but that feature is not yet implemented."); - return; -} - var borrowed = this.getSymbol(borrows[i].alias); - - if (!borrowed) { - LOG.warn("Can't borrow undocumented "+borrows[i].alias+"."); - continue; - } - - if (borrows[i].as == borrowed.alias) { - var assumedName = borrowed.name.split(/([#.-])/).pop(); - borrows[i].as = symbol.name+RegExp.$1+assumedName; - LOG.inform("Assuming borrowed as name is "+borrows[i].as+" but that feature is experimental."); - } - - var borrowAsName = borrows[i].as; - var borrowAsAlias = borrowAsName; - if (!borrowAsName) { - LOG.warn("Malformed @borrow, 'as' is required."); - continue; - } - - if (borrowAsName.length > symbol.alias.length && borrowAsName.indexOf(symbol.alias) == 0) { - borrowAsName = borrowAsName.replace(borrowed.alias, "") - } - else { - var joiner = ""; - if (borrowAsName.charAt(0) != "#") joiner = "."; - borrowAsAlias = borrowed.alias + joiner + borrowAsName; - } - - borrowAsName = borrowAsName.replace(/^[#.]/, ""); - - if (this.hasSymbol(borrowAsAlias)) continue; - - var clone = borrowed.clone(); - clone.name = borrowAsName; - clone.alias = borrowAsAlias; - this.addSymbol(clone); - } - } -} - -JSDOC.SymbolSet.prototype.resolveMemberOf = function() { - for (var p = this._index.first(); p; p = this._index.next()) { - var symbol = p.value; - if (symbol.is("FILE") || symbol.is("GLOBAL")) continue; - - // the memberOf value was provided in the @memberOf tag - else if (symbol.memberOf) { - - // like foo.bar is a memberOf foo - if (symbol.alias.indexOf(symbol.memberOf) == 0) { - var memberMatch = new RegExp("^("+symbol.memberOf+")[.#-]?(.+)$"); - var aliasParts = symbol.alias.match(memberMatch); - - if (aliasParts) { - symbol.memberOf = aliasParts[1]; - symbol.name = aliasParts[2]; - } - - var nameParts = symbol.name.match(memberMatch); - - if (nameParts) { - symbol.name = nameParts[2]; - } - } - // like bar is a memberOf foo - else { - var joiner = symbol.memberOf.charAt(symbol.memberOf.length-1); - if (!/[.#-]/.test(joiner)) symbol.memberOf += "."; - this.renameSymbol(symbol.alias, symbol.memberOf + symbol.name); - } - } - // the memberOf must be calculated - else { - var parts = symbol.alias.match(/^(.*[.#-])([^.#-]+)$/); - if (parts) { - symbol.memberOf = parts[1]; - symbol.name = parts[2]; - } - } - - // set isStatic, isInner - if (symbol.memberOf) { - switch (symbol.memberOf.charAt(symbol.memberOf.length-1)) { - case '#' : - symbol.isStatic = false; - symbol.isInner = false; - break; - case '.' : - symbol.isStatic = true; - symbol.isInner = false; - break; - case '-' : - symbol.isStatic = false; - symbol.isInner = true; - break; - default: // memberOf ends in none of the above - symbol.isStatic = true; - break; - } - } - - // unowned methods and fields belong to the global object - if (!symbol.is("CONSTRUCTOR") && !symbol.isNamespace && symbol.memberOf == "") { - symbol.memberOf = "_global_"; - } - - // clean up - if (symbol.memberOf.match(/[.#-]$/)) { - symbol.memberOf = symbol.memberOf.substr(0, symbol.memberOf.length-1); - } - // add to parent's methods or properties list - if (symbol.memberOf) { - - var container = this.getSymbol(symbol.memberOf); - if (!container) { - if (JSDOC.Lang.isBuiltin(symbol.memberOf)) container = JSDOC.Parser.addBuiltin(symbol.memberOf); - else { - LOG.warn("Trying to document "+symbol.name +" as a member of undocumented symbol "+symbol.memberOf+"."); - } - } - - if (container) container.addMember(symbol); - } - } -} - -JSDOC.SymbolSet.prototype.resolveAugments = function() { - for (var p = this._index.first(); p; p = this._index.next()) { - var symbol = p.value; - - if (symbol.alias == "_global_" || symbol.is("FILE")) continue; - JSDOC.SymbolSet.prototype.walk.apply(this, [symbol]); - } -} - -JSDOC.SymbolSet.prototype.walk = function(symbol) { - var augments = symbol.augments; - for(var i = 0; i < augments.length; i++) { - var contributer = this.getSymbol(augments[i]); - if (!contributer && JSDOC.Lang.isBuiltin(''+augments[i])) { - contributer = new JSDOC.Symbol("_global_."+augments[i], [], augments[i], new JSDOC.DocComment("Built in.")); - contributer.isNamespace = true; - contributer.srcFile = ""; - contributer.isPrivate = false; - JSDOC.Parser.addSymbol(contributer); - } - - if (contributer) { - if (contributer.augments.length) { - JSDOC.SymbolSet.prototype.walk.apply(this, [contributer]); - } - - symbol.inheritsFrom.push(contributer.alias); - //if (!isUnique(symbol.inheritsFrom)) { - // LOG.warn("Can't resolve augments: Circular reference: "+symbol.alias+" inherits from "+contributer.alias+" more than once."); - //} - //else { - var cmethods = contributer.methods; - var cproperties = contributer.properties; - - for (var ci = 0, cl = cmethods.length; ci < cl; ci++) { - if (!cmethods[ci].isStatic) symbol.inherit(cmethods[ci]); - } - for (var ci = 0, cl = cproperties.length; ci < cl; ci++) { - if (!cproperties[ci].isStatic) symbol.inherit(cproperties[ci]); - } - //} - } - else LOG.warn("Can't augment contributer: "+augments[i]+", not found."); - } -} diff --git a/scripts/jsdoc-toolkit/app/lib/JSDOC/TextStream.js b/scripts/jsdoc-toolkit/app/lib/JSDOC/TextStream.js deleted file mode 100644 index ccc48a87d..000000000 --- a/scripts/jsdoc-toolkit/app/lib/JSDOC/TextStream.js +++ /dev/null @@ -1,41 +0,0 @@ - -/** - @constructor -*/ -JSDOC.TextStream = function(text) { - if (typeof(text) == "undefined") text = ""; - text = ""+text; - this.text = text; - this.cursor = 0; -} - -JSDOC.TextStream.prototype.look = function(n) { - if (typeof n == "undefined") n = 0; - - if (this.cursor+n < 0 || this.cursor+n >= this.text.length) { - var result = new String(""); - result.eof = true; - return result; - } - return this.text.charAt(this.cursor+n); -} - -JSDOC.TextStream.prototype.next = function(n) { - if (typeof n == "undefined") n = 1; - if (n < 1) return null; - - var pulled = ""; - for (var i = 0; i < n; i++) { - if (this.cursor+i < this.text.length) { - pulled += this.text.charAt(this.cursor+i); - } - else { - var result = new String(""); - result.eof = true; - return result; - } - } - - this.cursor += n; - return pulled; -} \ No newline at end of file diff --git a/scripts/jsdoc-toolkit/app/lib/JSDOC/Token.js b/scripts/jsdoc-toolkit/app/lib/JSDOC/Token.js deleted file mode 100644 index fb7f9d949..000000000 --- a/scripts/jsdoc-toolkit/app/lib/JSDOC/Token.js +++ /dev/null @@ -1,18 +0,0 @@ -if (typeof JSDOC == "undefined") JSDOC = {}; - -/** - @constructor -*/ -JSDOC.Token = function(data, type, name) { - this.data = data; - this.type = type; - this.name = name; -} - -JSDOC.Token.prototype.toString = function() { - return "<"+this.type+" name=\""+this.name+"\">"+this.data+""; -} - -JSDOC.Token.prototype.is = function(what) { - return this.name === what || this.type === what; -} \ No newline at end of file diff --git a/scripts/jsdoc-toolkit/app/lib/JSDOC/TokenReader.js b/scripts/jsdoc-toolkit/app/lib/JSDOC/TokenReader.js deleted file mode 100644 index 9f658fb9f..000000000 --- a/scripts/jsdoc-toolkit/app/lib/JSDOC/TokenReader.js +++ /dev/null @@ -1,332 +0,0 @@ -if (typeof JSDOC == "undefined") JSDOC = {}; - -/** - @class Search a {@link JSDOC.TextStream} for language tokens. -*/ -JSDOC.TokenReader = function() { - this.keepDocs = true; - this.keepWhite = false; - this.keepComments = false; -} - -/** - @type {JSDOC.Token[]} - */ -JSDOC.TokenReader.prototype.tokenize = function(/**JSDOC.TextStream*/stream) { - var tokens = []; - /**@ignore*/ tokens.last = function() { return tokens[tokens.length-1]; } - /**@ignore*/ tokens.lastSym = function() { - for (var i = tokens.length-1; i >= 0; i--) { - if (!(tokens[i].is("WHIT") || tokens[i].is("COMM"))) return tokens[i]; - } - } - - while (!stream.look().eof) { - if (this.read_mlcomment(stream, tokens)) continue; - if (this.read_slcomment(stream, tokens)) continue; - if (this.read_dbquote(stream, tokens)) continue; - if (this.read_snquote(stream, tokens)) continue; - if (this.read_regx(stream, tokens)) continue; - if (this.read_numb(stream, tokens)) continue; - if (this.read_punc(stream, tokens)) continue; - if (this.read_newline(stream, tokens)) continue; - if (this.read_space(stream, tokens)) continue; - if (this.read_word(stream, tokens)) continue; - - // if execution reaches here then an error has happened - tokens.push(new JSDOC.Token(stream.next(), "TOKN", "UNKNOWN_TOKEN")); - } - return tokens; -} - -/** - @returns {Boolean} Was the token found? - */ -JSDOC.TokenReader.prototype.read_word = function(/**JSDOC.TokenStream*/stream, tokens) { - var found = ""; - while (!stream.look().eof && JSDOC.Lang.isWordChar(stream.look())) { - found += stream.next(); - } - - if (found === "") { - return false; - } - else { - var name; - if ((name = JSDOC.Lang.keyword(found))) tokens.push(new JSDOC.Token(found, "KEYW", name)); - else tokens.push(new JSDOC.Token(found, "NAME", "NAME")); - return true; - } -} - -/** - @returns {Boolean} Was the token found? - */ -JSDOC.TokenReader.prototype.read_punc = function(/**JSDOC.TokenStream*/stream, tokens) { - var found = ""; - var name; - while (!stream.look().eof && JSDOC.Lang.punc(found+stream.look())) { - found += stream.next(); - } - - if (found === "") { - return false; - } - else { - tokens.push(new JSDOC.Token(found, "PUNC", JSDOC.Lang.punc(found))); - return true; - } -} - -/** - @returns {Boolean} Was the token found? - */ -JSDOC.TokenReader.prototype.read_space = function(/**JSDOC.TokenStream*/stream, tokens) { - var found = ""; - - while (!stream.look().eof && JSDOC.Lang.isSpace(stream.look())) { - found += stream.next(); - } - - if (found === "") { - return false; - } - else { - if (this.collapseWhite) found = " "; - if (this.keepWhite) tokens.push(new JSDOC.Token(found, "WHIT", "SPACE")); - return true; - } -} - -/** - @returns {Boolean} Was the token found? - */ -JSDOC.TokenReader.prototype.read_newline = function(/**JSDOC.TokenStream*/stream, tokens) { - var found = ""; - - while (!stream.look().eof && JSDOC.Lang.isNewline(stream.look())) { - found += stream.next(); - } - - if (found === "") { - return false; - } - else { - if (this.collapseWhite) found = "\n"; - if (this.keepWhite) tokens.push(new JSDOC.Token(found, "WHIT", "NEWLINE")); - return true; - } -} - -/** - @returns {Boolean} Was the token found? - */ -JSDOC.TokenReader.prototype.read_mlcomment = function(/**JSDOC.TokenStream*/stream, tokens) { - if (stream.look() == "/" && stream.look(1) == "*") { - var found = stream.next(2); - - while (!stream.look().eof && !(stream.look(-1) == "/" && stream.look(-2) == "*")) { - found += stream.next(); - } - - // to start doclet we allow /** or /*** but not /**/ or /**** - if (/^\/\*\*([^\/]|\*[^*])/.test(found) && this.keepDocs) tokens.push(new JSDOC.Token(found, "COMM", "JSDOC")); - else if (this.keepComments) tokens.push(new JSDOC.Token(found, "COMM", "MULTI_LINE_COMM")); - return true; - } - return false; -} - -/** - @returns {Boolean} Was the token found? - */ -JSDOC.TokenReader.prototype.read_slcomment = function(/**JSDOC.TokenStream*/stream, tokens) { - var found; - if ( - (stream.look() == "/" && stream.look(1) == "/" && (found=stream.next(2))) - || - (stream.look() == "<" && stream.look(1) == "!" && stream.look(2) == "-" && stream.look(3) == "-" && (found=stream.next(4))) - ) { - - while (!stream.look().eof && !JSDOC.Lang.isNewline(stream.look())) { - found += stream.next(); - } - - if (this.keepComments) { - tokens.push(new JSDOC.Token(found, "COMM", "SINGLE_LINE_COMM")); - } - return true; - } - return false; -} - -/** - @returns {Boolean} Was the token found? - */ -JSDOC.TokenReader.prototype.read_dbquote = function(/**JSDOC.TokenStream*/stream, tokens) { - if (stream.look() == "\"") { - // find terminator - var string = stream.next(); - - while (!stream.look().eof) { - if (stream.look() == "\\") { - if (JSDOC.Lang.isNewline(stream.look(1))) { - do { - stream.next(); - } while (!stream.look().eof && JSDOC.Lang.isNewline(stream.look())); - string += "\\\n"; - } - else { - string += stream.next(2); - } - } - else if (stream.look() == "\"") { - string += stream.next(); - tokens.push(new JSDOC.Token(string, "STRN", "DOUBLE_QUOTE")); - return true; - } - else { - string += stream.next(); - } - } - } - return false; // error! unterminated string -} - -/** - @returns {Boolean} Was the token found? - */ -JSDOC.TokenReader.prototype.read_snquote = function(/**JSDOC.TokenStream*/stream, tokens) { - if (stream.look() == "'") { - // find terminator - var string = stream.next(); - - while (!stream.look().eof) { - if (stream.look() == "\\") { // escape sequence - string += stream.next(2); - } - else if (stream.look() == "'") { - string += stream.next(); - tokens.push(new JSDOC.Token(string, "STRN", "SINGLE_QUOTE")); - return true; - } - else { - string += stream.next(); - } - } - } - return false; // error! unterminated string -} - -/** - @returns {Boolean} Was the token found? - */ -JSDOC.TokenReader.prototype.read_numb = function(/**JSDOC.TokenStream*/stream, tokens) { - if (stream.look() === "0" && stream.look(1) == "x") { - return this.read_hex(stream, tokens); - } - - var found = ""; - - while (!stream.look().eof && JSDOC.Lang.isNumber(found+stream.look())){ - found += stream.next(); - } - - if (found === "") { - return false; - } - else { - if (/^0[0-7]/.test(found)) tokens.push(new JSDOC.Token(found, "NUMB", "OCTAL")); - else tokens.push(new JSDOC.Token(found, "NUMB", "DECIMAL")); - return true; - } -} -/*t: - requires("../lib/JSDOC/TextStream.js"); - requires("../lib/JSDOC/Token.js"); - requires("../lib/JSDOC/Lang.js"); - - plan(3, "testing JSDOC.TokenReader.prototype.read_numb"); - - //// setup - var src = "function foo(num){while (num+8.0 >= 0x20 && num < 0777){}}"; - var tr = new JSDOC.TokenReader(); - var tokens = tr.tokenize(new JSDOC.TextStream(src)); - - var hexToken, octToken, decToken; - for (var i = 0; i < tokens.length; i++) { - if (tokens[i].name == "HEX_DEC") hexToken = tokens[i]; - if (tokens[i].name == "OCTAL") octToken = tokens[i]; - if (tokens[i].name == "DECIMAL") decToken = tokens[i]; - } - //// - - is(decToken.data, "8.0", "decimal number is found in source."); - is(hexToken.data, "0x20", "hexdec number is found in source (issue #99)."); - is(octToken.data, "0777", "octal number is found in source."); -*/ - -/** - @returns {Boolean} Was the token found? - */ -JSDOC.TokenReader.prototype.read_hex = function(/**JSDOC.TokenStream*/stream, tokens) { - var found = stream.next(2); - - while (!stream.look().eof) { - if (JSDOC.Lang.isHexDec(found) && !JSDOC.Lang.isHexDec(found+stream.look())) { // done - tokens.push(new JSDOC.Token(found, "NUMB", "HEX_DEC")); - return true; - } - else { - found += stream.next(); - } - } - return false; -} - -/** - @returns {Boolean} Was the token found? - */ -JSDOC.TokenReader.prototype.read_regx = function(/**JSDOC.TokenStream*/stream, tokens) { - var last; - if ( - stream.look() == "/" - && - ( - - ( - !(last = tokens.lastSym()) // there is no last, the regex is the first symbol - || - ( - !last.is("NUMB") - && !last.is("NAME") - && !last.is("RIGHT_PAREN") - && !last.is("RIGHT_BRACKET") - ) - ) - ) - ) { - var regex = stream.next(); - - while (!stream.look().eof) { - if (stream.look() == "\\") { // escape sequence - regex += stream.next(2); - } - else if (stream.look() == "/") { - regex += stream.next(); - - while (/[gmi]/.test(stream.look())) { - regex += stream.next(); - } - - tokens.push(new JSDOC.Token(regex, "REGX", "REGX")); - return true; - } - else { - regex += stream.next(); - } - } - // error: unterminated regex - } - return false; -} diff --git a/scripts/jsdoc-toolkit/app/lib/JSDOC/TokenStream.js b/scripts/jsdoc-toolkit/app/lib/JSDOC/TokenStream.js deleted file mode 100644 index 1eeb44cbb..000000000 --- a/scripts/jsdoc-toolkit/app/lib/JSDOC/TokenStream.js +++ /dev/null @@ -1,133 +0,0 @@ -if (typeof JSDOC == "undefined") JSDOC = {}; - -/** - @constructor -*/ -JSDOC.TokenStream = function(tokens) { - this.tokens = (tokens || []); - this.rewind(); -} - -/** - @constructor - @private -*/ -function VoidToken(/**String*/type) { - this.toString = function() {return ""}; - this.is = function(){return false;} -} - -JSDOC.TokenStream.prototype.rewind = function() { - this.cursor = -1; -} - -/** - @type JSDOC.Token -*/ -JSDOC.TokenStream.prototype.look = function(/**Number*/n, /**Boolean*/considerWhitespace) { - if (typeof n == "undefined") n = 0; - - if (considerWhitespace == true) { - if (this.cursor+n < 0 || this.cursor+n > this.tokens.length) return {}; - return this.tokens[this.cursor+n]; - } - else { - var count = 0; - var i = this.cursor; - - while (true) { - if (i < 0) return new JSDOC.Token("", "VOID", "START_OF_STREAM"); - else if (i > this.tokens.length) return new JSDOC.Token("", "VOID", "END_OF_STREAM"); - - if (i != this.cursor && (this.tokens[i] === undefined || this.tokens[i].is("WHIT"))) { - if (n < 0) i--; else i++; - continue; - } - - if (count == Math.abs(n)) { - return this.tokens[i]; - } - count++; - (n < 0)? i-- : i++; - } - - return new JSDOC.Token("", "VOID", "STREAM_ERROR"); // because null isn't an object and caller always expects an object - } -} - -/** - @type JSDOC.Token|JSDOC.Token[] -*/ -JSDOC.TokenStream.prototype.next = function(/**Number*/howMany) { - if (typeof howMany == "undefined") howMany = 1; - if (howMany < 1) return null; - var got = []; - - for (var i = 1; i <= howMany; i++) { - if (this.cursor+i >= this.tokens.length) { - return null; - } - got.push(this.tokens[this.cursor+i]); - } - this.cursor += howMany; - - if (howMany == 1) { - return got[0]; - } - else return got; -} - -/** - @type JSDOC.Token[] -*/ -JSDOC.TokenStream.prototype.balance = function(/**String*/start, /**String*/stop) { - if (!stop) stop = JSDOC.Lang.matching(start); - - var depth = 0; - var got = []; - var started = false; - - while ((token = this.look())) { - if (token.is(start)) { - depth++; - started = true; - } - - if (started) { - got.push(token); - } - - if (token.is(stop)) { - depth--; - if (depth == 0) return got; - } - if (!this.next()) break; - } -} - -JSDOC.TokenStream.prototype.getMatchingToken = function(/**String*/start, /**String*/stop) { - var depth = 0; - var cursor = this.cursor; - - if (!start) { - start = JSDOC.Lang.matching(stop); - depth = 1; - } - if (!stop) stop = JSDOC.Lang.matching(start); - - while ((token = this.tokens[cursor])) { - if (token.is(start)) { - depth++; - } - - if (token.is(stop) && cursor) { - depth--; - if (depth == 0) return this.tokens[cursor]; - } - cursor++; - } -} - -JSDOC.TokenStream.prototype.insertAhead = function(/**JSDOC.Token*/token) { - this.tokens.splice(this.cursor+1, 0, token); -} \ No newline at end of file diff --git a/scripts/jsdoc-toolkit/app/lib/JSDOC/Util.js b/scripts/jsdoc-toolkit/app/lib/JSDOC/Util.js deleted file mode 100644 index 6d7edb368..000000000 --- a/scripts/jsdoc-toolkit/app/lib/JSDOC/Util.js +++ /dev/null @@ -1,32 +0,0 @@ -/** - * @namespace - * @deprecated Use {@link FilePath} instead. - */ -JSDOC.Util = { -} - -/** - * @deprecated Use {@link FilePath.fileName} instead. - */ -JSDOC.Util.fileName = function(path) { - LOG.warn("JSDOC.Util.fileName is deprecated. Use FilePath.fileName instead."); - var nameStart = Math.max(path.lastIndexOf("/")+1, path.lastIndexOf("\\")+1, 0); - return path.substring(nameStart); -} - -/** - * @deprecated Use {@link FilePath.fileExtension} instead. - */ -JSDOC.Util.fileExtension = function(filename) { - LOG.warn("JSDOC.Util.fileExtension is deprecated. Use FilePath.fileExtension instead."); - return filename.split(".").pop().toLowerCase(); -}; - -/** - * @deprecated Use {@link FilePath.dir} instead. - */ -JSDOC.Util.dir = function(path) { - LOG.warn("JSDOC.Util.dir is deprecated. Use FilePath.dir instead."); - var nameStart = Math.max(path.lastIndexOf("/")+1, path.lastIndexOf("\\")+1, 0); - return path.substring(0, nameStart-1); -} diff --git a/scripts/jsdoc-toolkit/app/lib/JSDOC/Walker.js b/scripts/jsdoc-toolkit/app/lib/JSDOC/Walker.js deleted file mode 100644 index befec4d35..000000000 --- a/scripts/jsdoc-toolkit/app/lib/JSDOC/Walker.js +++ /dev/null @@ -1,474 +0,0 @@ -if (typeof JSDOC == "undefined") JSDOC = {}; - -/** @constructor */ -JSDOC.Walker = function(/**JSDOC.TokenStream*/ts) { - this.init(); - if (typeof ts != "undefined") { - this.walk(ts); - } -} - -JSDOC.Walker.prototype.init = function() { - this.ts = null; - - var globalSymbol = new JSDOC.Symbol("_global_", [], "GLOBAL", new JSDOC.DocComment("")); - globalSymbol.isNamespace = true; - globalSymbol.srcFile = ""; - globalSymbol.isPrivate = false; - JSDOC.Parser.addSymbol(globalSymbol); - this.lastDoc = null; - this.token = null; - - /** - The chain of symbols under which we are currently nested. - @type Array - */ - this.namescope = [globalSymbol]; - this.namescope.last = function(n){ if (!n) n = 0; return this[this.length-(1+n)] || "" }; -} - -JSDOC.Walker.prototype.walk = function(/**JSDOC.TokenStream*/ts) { - this.ts = ts; - while (this.token = this.ts.look()) { - if (this.token.popNamescope) { - - var symbol = this.namescope.pop(); - if (symbol.is("FUNCTION")) { - if (this.ts.look(1).is("LEFT_PAREN") && symbol.comment.getTag("function").length == 0) { - symbol.isa = "OBJECT"; - } - } - } - this.step(); - if (!this.ts.next()) break; - } -} - -JSDOC.Walker.prototype.step = function() { - if (this.token.is("JSDOC")) { // it's a doc comment - - var doc = new JSDOC.DocComment(this.token.data); - - - if (doc.getTag("exports").length > 0) { - var exports = doc.getTag("exports")[0]; - - exports.desc.match(/(\S+) as (\S+)/i); - var n1 = RegExp.$1; - var n2 = RegExp.$2; - - if (!n1 && n2) throw "@exports tag requires a value like: 'name as ns.name'"; - - JSDOC.Parser.rename = (JSDOC.Parser.rename || {}); - JSDOC.Parser.rename[n1] = n2 - } - - if (doc.getTag("lends").length > 0) { - var lends = doc.getTag("lends")[0]; - - var name = lends.desc - if (!name) throw "@lends tag requires a value."; - - var symbol = new JSDOC.Symbol(name, [], "OBJECT", doc); - - this.namescope.push(symbol); - - var matching = this.ts.getMatchingToken("LEFT_CURLY"); - if (matching) matching.popNamescope = name; - else LOG.warn("Mismatched } character. Can't parse code in file " + symbol.srcFile + "."); - - this.lastDoc = null; - return true; - } - else if (doc.getTag("name").length > 0 && doc.getTag("overview").length == 0) { // it's a virtual symbol - var virtualName = doc.getTag("name")[0].desc; - if (!virtualName) throw "@name tag requires a value."; - - var symbol = new JSDOC.Symbol(virtualName, [], "VIRTUAL", doc); - - JSDOC.Parser.addSymbol(symbol); - - this.lastDoc = null; - return true; - } - else if (doc.meta) { // it's a meta doclet - if (doc.meta == "@+") JSDOC.DocComment.shared = doc.src; - else if (doc.meta == "@-") JSDOC.DocComment.shared = ""; - else if (doc.meta == "nocode+") JSDOC.Parser.conf.ignoreCode = true; - else if (doc.meta == "nocode-") JSDOC.Parser.conf.ignoreCode = JSDOC.opt.n; - else throw "Unrecognized meta comment: "+doc.meta; - - this.lastDoc = null; - return true; - } - else if (doc.getTag("overview").length > 0) { // it's a file overview - symbol = new JSDOC.Symbol("", [], "FILE", doc); - - JSDOC.Parser.addSymbol(symbol); - - this.lastDoc = null; - return true; - } - else { - this.lastDoc = doc; - return false; - } - } - else if (!JSDOC.Parser.conf.ignoreCode) { // it's code - if (this.token.is("NAME")) { // it's the name of something - var symbol; - var name = this.token.data; - var doc = null; if (this.lastDoc) doc = this.lastDoc; - var params = []; - - // it's inside an anonymous object - if (this.ts.look(1).is("COLON") && this.ts.look(-1).is("LEFT_CURLY") && !(this.ts.look(-2).is("JSDOC") || this.namescope.last().comment.getTag("lends").length || this.ts.look(-2).is("ASSIGN") || this.ts.look(-2).is("COLON"))) { - name = "$anonymous"; - name = this.namescope.last().alias+"-"+name - - params = []; - - symbol = new JSDOC.Symbol(name, params, "OBJECT", doc); - - JSDOC.Parser.addSymbol(symbol); - - this.namescope.push(symbol); - - var matching = this.ts.getMatchingToken(null, "RIGHT_CURLY"); - if (matching) matching.popNamescope = name; - else LOG.warn("Mismatched } character. Can't parse code in file " + symbol.srcFile + "."); - } - // function foo() {} - else if (this.ts.look(-1).is("FUNCTION") && this.ts.look(1).is("LEFT_PAREN")) { - var isInner; - - if (this.lastDoc) doc = this.lastDoc; - name = this.namescope.last().alias+"-"+name; - if (!this.namescope.last().is("GLOBAL")) isInner = true; - - params = JSDOC.Walker.onParamList(this.ts.balance("LEFT_PAREN")); - - symbol = new JSDOC.Symbol(name, params, "FUNCTION", doc); - if (isInner) symbol.isInner = true; - - if (this.ts.look(1).is("JSDOC")) { - var inlineReturn = ""+this.ts.look(1).data; - inlineReturn = inlineReturn.replace(/(^\/\*\* *| *\*\/$)/g, ""); - symbol.type = inlineReturn; - } - - JSDOC.Parser.addSymbol(symbol); - - this.namescope.push(symbol); - - var matching = this.ts.getMatchingToken("LEFT_CURLY"); - if (matching) matching.popNamescope = name; - else LOG.warn("Mismatched } character. Can't parse code in file " + symbol.srcFile + "."); - } - // foo = function() {} - else if (this.ts.look(1).is("ASSIGN") && this.ts.look(2).is("FUNCTION")) { - var isInner; - if (this.ts.look(-1).is("VAR") || this.isInner) { - name = this.namescope.last().alias+"-"+name - if (!this.namescope.last().is("GLOBAL")) isInner = true; - } - else if (name.indexOf("this.") == 0) { - name = this.resolveThis(name); - } - - if (this.lastDoc) doc = this.lastDoc; - params = JSDOC.Walker.onParamList(this.ts.balance("LEFT_PAREN")); - - symbol = new JSDOC.Symbol(name, params, "FUNCTION", doc); - if (isInner) symbol.isInner = true; - - if (this.ts.look(1).is("JSDOC")) { - var inlineReturn = ""+this.ts.look(1).data; - inlineReturn = inlineReturn.replace(/(^\/\*\* *| *\*\/$)/g, ""); - symbol.type = inlineReturn; - } - - JSDOC.Parser.addSymbol(symbol); - - this.namescope.push(symbol); - - var matching = this.ts.getMatchingToken("LEFT_CURLY"); - if (matching) matching.popNamescope = name; - else LOG.warn("Mismatched } character. Can't parse code in file " + symbol.srcFile + "."); - } - // foo = new function() {} or foo = (function() {} - else if (this.ts.look(1).is("ASSIGN") && (this.ts.look(2).is("NEW") || this.ts.look(2).is("LEFT_PAREN")) && this.ts.look(3).is("FUNCTION")) { - var isInner; - if (this.ts.look(-1).is("VAR") || this.isInner) { - name = this.namescope.last().alias+"-"+name - if (!this.namescope.last().is("GLOBAL")) isInner = true; - } - else if (name.indexOf("this.") == 0) { - name = this.resolveThis(name); - } - - this.ts.next(3); // advance past the "new" or "(" - - if (this.lastDoc) doc = this.lastDoc; - params = JSDOC.Walker.onParamList(this.ts.balance("LEFT_PAREN")); - - symbol = new JSDOC.Symbol(name, params, "OBJECT", doc); - if (isInner) symbol.isInner = true; - - if (this.ts.look(1).is("JSDOC")) { - var inlineReturn = ""+this.ts.look(1).data; - inlineReturn = inlineReturn.replace(/(^\/\*\* *| *\*\/$)/g, ""); - symbol.type = inlineReturn; - } - - JSDOC.Parser.addSymbol(symbol); - - symbol.scopeType = "INSTANCE"; - this.namescope.push(symbol); - - var matching = this.ts.getMatchingToken("LEFT_CURLY"); - if (matching) matching.popNamescope = name; - else LOG.warn("Mismatched } character. Can't parse code in file " + symbol.srcFile + "."); - } - // foo: function() {} - else if (this.ts.look(1).is("COLON") && this.ts.look(2).is("FUNCTION")) { - name = (this.namescope.last().alias+"."+name).replace("#.", "#"); - - if (this.lastDoc) doc = this.lastDoc; - params = JSDOC.Walker.onParamList(this.ts.balance("LEFT_PAREN")); - - if (doc && doc.getTag("constructs").length) { - name = name.replace(/\.prototype(\.|$)/, "#"); - - if (name.indexOf("#") > -1) name = name.match(/(^[^#]+)/)[0]; - else name = this.namescope.last().alias; - - symbol = new JSDOC.Symbol(name, params, "CONSTRUCTOR", doc); - } - else { - symbol = new JSDOC.Symbol(name, params, "FUNCTION", doc); - } - - if (this.ts.look(1).is("JSDOC")) { - var inlineReturn = ""+this.ts.look(1).data; - inlineReturn = inlineReturn.replace(/(^\/\*\* *| *\*\/$)/g, ""); - symbol.type = inlineReturn; - } - - JSDOC.Parser.addSymbol(symbol); - - this.namescope.push(symbol); - - var matching = this.ts.getMatchingToken("LEFT_CURLY"); - if (matching) matching.popNamescope = name; - else LOG.warn("Mismatched } character. Can't parse code in file " + symbol.srcFile + "."); - } - // foo = {} - else if (this.ts.look(1).is("ASSIGN") && this.ts.look(2).is("LEFT_CURLY")) { - var isInner; - if (this.ts.look(-1).is("VAR") || this.isInner) { - name = this.namescope.last().alias+"-"+name - if (!this.namescope.last().is("GLOBAL")) isInner = true; - } - else if (name.indexOf("this.") == 0) { - name = this.resolveThis(name); - } - - if (this.lastDoc) doc = this.lastDoc; - - symbol = new JSDOC.Symbol(name, params, "OBJECT", doc); - if (isInner) symbol.isInner = true; - - - if (doc) JSDOC.Parser.addSymbol(symbol); - - this.namescope.push(symbol); - - var matching = this.ts.getMatchingToken("LEFT_CURLY"); - if (matching) matching.popNamescope = name; - else LOG.warn("Mismatched } character. Can't parse code in file " + symbol.srcFile + "."); - } - // var foo; - else if (this.ts.look(1).is("SEMICOLON")) { - var isInner; - - if (this.ts.look(-1).is("VAR") || this.isInner) { - name = this.namescope.last().alias+"-"+name - if (!this.namescope.last().is("GLOBAL")) isInner = true; - - if (this.lastDoc) doc = this.lastDoc; - - symbol = new JSDOC.Symbol(name, params, "OBJECT", doc); - if (isInner) symbol.isInner = true; - - - if (doc) JSDOC.Parser.addSymbol(symbol); - } - } - // foo = x - else if (this.ts.look(1).is("ASSIGN")) { - var isInner; - if (this.ts.look(-1).is("VAR") || this.isInner) { - name = this.namescope.last().alias+"-"+name - if (!this.namescope.last().is("GLOBAL")) isInner = true; - } - else if (name.indexOf("this.") == 0) { - name = this.resolveThis(name); - } - - if (this.lastDoc) doc = this.lastDoc; - - symbol = new JSDOC.Symbol(name, params, "OBJECT", doc); - if (isInner) symbol.isInner = true; - - - if (doc) JSDOC.Parser.addSymbol(symbol); - } - // foo: {} - else if (this.ts.look(1).is("COLON") && this.ts.look(2).is("LEFT_CURLY")) { - name = (this.namescope.last().alias+"."+name).replace("#.", "#"); - - if (this.lastDoc) doc = this.lastDoc; - - symbol = new JSDOC.Symbol(name, params, "OBJECT", doc); - - - if (doc) JSDOC.Parser.addSymbol(symbol); - - this.namescope.push(symbol); - - var matching = this.ts.getMatchingToken("LEFT_CURLY"); - if (matching) matching.popNamescope = name; - else LOG.warn("Mismatched } character. Can't parse code in file " + symbol.srcFile + "."); - } - // foo: x - else if (this.ts.look(1).is("COLON")) { - name = (this.namescope.last().alias+"."+name).replace("#.", "#");; - - if (this.lastDoc) doc = this.lastDoc; - - symbol = new JSDOC.Symbol(name, params, "OBJECT", doc); - - - if (doc) JSDOC.Parser.addSymbol(symbol); - } - // foo(...) - else if (this.ts.look(1).is("LEFT_PAREN")) { - if (typeof JSDOC.PluginManager != "undefined") { - var functionCall = {name: name}; - - var cursor = this.ts.cursor; - params = JSDOC.Walker.onParamList(this.ts.balance("LEFT_PAREN")); - this.ts.cursor = cursor; - - for (var i = 0; i < params.length; i++) - functionCall["arg" + (i + 1)] = params[i].name; - - JSDOC.PluginManager.run("onFunctionCall", functionCall); - if (functionCall.doc) { - this.ts.insertAhead(new JSDOC.Token(functionCall.doc, "COMM", "JSDOC")); - } - } - } - this.lastDoc = null; - } - else if (this.token.is("FUNCTION")) { // it's an anonymous function - if ( - (!this.ts.look(-1).is("COLON") || !this.ts.look(-1).is("ASSIGN")) - && !this.ts.look(1).is("NAME") - ) { - if (this.lastDoc) doc = this.lastDoc; - - name = "$anonymous"; - name = this.namescope.last().alias+"-"+name - - params = JSDOC.Walker.onParamList(this.ts.balance("LEFT_PAREN")); - - symbol = new JSDOC.Symbol(name, params, "FUNCTION", doc); - - JSDOC.Parser.addSymbol(symbol); - - this.namescope.push(symbol); - - var matching = this.ts.getMatchingToken("LEFT_CURLY"); - if (matching) matching.popNamescope = name; - else LOG.warn("Mismatched } character. Can't parse code in file " + symbol.srcFile + "."); - } - } - } - return true; -} - -/** - Resolves what "this." means when it appears in a name. - @param name The name that starts with "this.". - @returns The name with "this." resolved. - */ -JSDOC.Walker.prototype.resolveThis = function(name) { - name.match(/^this\.(.+)$/) - var nameFragment = RegExp.$1; - if (!nameFragment) return name; - - var symbol = this.namescope.last(); - var scopeType = symbol.scopeType || symbol.isa; - - // if we are in a constructor function, `this` means the instance - if (scopeType == "CONSTRUCTOR") { - name = symbol.alias+"#"+nameFragment; - } - - // if we are in an anonymous constructor function, `this` means the instance - else if (scopeType == "INSTANCE") { - name = symbol.alias+"."+nameFragment; - } - - // if we are in a function, `this` means the container (possibly the global) - else if (scopeType == "FUNCTION") { - // in a method of a prototype, so `this` means the constructor - if (symbol.alias.match(/(^.*)[#.-][^#.-]+/)) { - var parentName = RegExp.$1; - var parent = JSDOC.Parser.symbols.getSymbol(parentName); - - if (!parent) { - if (JSDOC.Lang.isBuiltin(parentName)) parent = JSDOC.Parser.addBuiltin(parentName); - else { - if (symbol.alias.indexOf("$anonymous") < 0) // these will be ignored eventually - LOG.warn("Trying to document "+symbol.alias+" without first documenting "+parentName+"."); - } - } - if (parent) name = parentName+(parent.is("CONSTRUCTOR")?"#":".")+nameFragment; - } - else { - parent = this.namescope.last(1); - name = parent.alias+(parent.is("CONSTRUCTOR")?"#":".")+nameFragment; - } - } - // otherwise it means the global - else { - name = nameFragment; - } - - return name; -} - -JSDOC.Walker.onParamList = function(/**Array*/paramTokens) { - if (!paramTokens) { - LOG.warn("Malformed parameter list. Can't parse code."); - return []; - } - var params = []; - for (var i = 0, l = paramTokens.length; i < l; i++) { - if (paramTokens[i].is("JSDOC")) { - var paramType = paramTokens[i].data.replace(/(^\/\*\* *| *\*\/$)/g, ""); - - if (paramTokens[i+1] && paramTokens[i+1].is("NAME")) { - i++; - params.push({type: paramType, name: paramTokens[i].data}); - } - } - else if (paramTokens[i].is("NAME")) { - params.push({name: paramTokens[i].data}); - } - } - return params; -} diff --git a/scripts/jsdoc-toolkit/app/main.js b/scripts/jsdoc-toolkit/app/main.js deleted file mode 100644 index 9b78182c1..000000000 --- a/scripts/jsdoc-toolkit/app/main.js +++ /dev/null @@ -1,111 +0,0 @@ -/** - * @version $Id: main.js 795 2009-06-19 07:03:22Z micmath $ - */ - -function main() { - IO.include("lib/JSDOC.js"); - IO.includeDir("plugins/"); - - // process the options - - // the -c option: options are defined in a configuration file - if (JSDOC.opt.c) { - eval("JSDOC.conf = " + IO.readFile(JSDOC.opt.c)); - - LOG.inform("Using configuration file at '"+JSDOC.opt.c+"'."); - - for (var c in JSDOC.conf) { - if (c !== "D" && !defined(JSDOC.opt[c])) { // commandline overrules config file - JSDOC.opt[c] = JSDOC.conf[c]; - } - } - - if (typeof JSDOC.conf["_"] != "undefined") { - JSDOC.opt["_"] = JSDOC.opt["_"].concat(JSDOC.conf["_"]); - } - - LOG.inform("With configuration: "); - for (var o in JSDOC.opt) { - LOG.inform(" "+o+": "+JSDOC.opt[o]); - } - } - - // be verbose - if (JSDOC.opt.v) LOG.verbose = true; - - // send log messages to a file - if (JSDOC.opt.o) LOG.out = IO.open(JSDOC.opt.o); - - // run the unit tests - if (JSDOC.opt.T) { - LOG.inform("JsDoc Toolkit running in test mode at "+new Date()+"."); - IO.include("frame/Testrun.js"); - IO.include("test.js"); - } - else { - // a template must be defined and must be a directory path - if (!JSDOC.opt.t && System.getProperty("jsdoc.template.dir")) { - JSDOC.opt.t = System.getProperty("jsdoc.template.dir"); - } - if (JSDOC.opt.t && !JSDOC.opt.t.charAt(JSDOC.opt.t.length-1).match(/[\\\/]/)) { - JSDOC.opt.t += SYS.slash; - } - - // verbose messages about the options we were given - LOG.inform("JsDoc Toolkit main() running at "+new Date()+"."); - LOG.inform("With options: "); - for (var o in JSDOC.opt) { - LOG.inform(" "+o+": "+JSDOC.opt[o]); - } - - // initialize and build a symbolSet from your code - JSDOC.JsDoc(); - - // debugger's option: dump the entire symbolSet produced from your code - if (JSDOC.opt.Z) { - LOG.warn("So you want to see the data structure, eh? This might hang if you have circular refs..."); - IO.include("frame/Dumper.js"); - var symbols = JSDOC.JsDoc.symbolSet.toArray(); - for (var i = 0, l = symbols.length; i < l; i++) { - var symbol = symbols[i]; - print("// symbol: " + symbol.alias); - print(symbol.serialize()); - } - } - else { - if (typeof JSDOC.opt.t != "undefined") { - try { - // a file named "publish.js" must exist in the template directory - load(JSDOC.opt.t+"publish.js"); - - // and must define a function named "publish" - if (!publish) { - LOG.warn("No publish() function is defined in that template so nothing to do."); - } - else { - // which will be called with the symbolSet produced from your code - publish(JSDOC.JsDoc.symbolSet); - } - } - catch(e) { - LOG.warn("Sorry, that doesn't seem to be a valid template: "+JSDOC.opt.t+"publish.js : "+e); - } - } - else { - LOG.warn("No template given. Might as well read the usage notes."); - JSDOC.usage(); - } - } - } - - // notify of any warnings - if (!JSDOC.opt.q && LOG.warnings.length) { - print(LOG.warnings.length+" warning"+(LOG.warnings.length != 1? "s":"")+"."); - } - - // stop sending log messages to a file - if (LOG.out) { - LOG.out.flush(); - LOG.out.close(); - } -} \ No newline at end of file diff --git a/scripts/jsdoc-toolkit/app/plugins/commentSrcJson.js b/scripts/jsdoc-toolkit/app/plugins/commentSrcJson.js deleted file mode 100644 index e826b5722..000000000 --- a/scripts/jsdoc-toolkit/app/plugins/commentSrcJson.js +++ /dev/null @@ -1,20 +0,0 @@ -JSDOC.PluginManager.registerPlugin( - "JSDOC.commentSrcJson", - { - onDocCommentSrc: function(comment) { - var json; - if (/^\s*@json\b/.test(comment)) { - comment.src = new String(comment.src).replace("@json", ""); - - eval("json = "+comment.src); - var tagged = ""; - for (var i in json) { - var tag = json[i]; - // todo handle cases where tag is an object - tagged += "@"+i+" "+tag+"\n"; - } - comment.src = tagged; - } - } - } -); \ No newline at end of file diff --git a/scripts/jsdoc-toolkit/app/plugins/frameworkPrototype.js b/scripts/jsdoc-toolkit/app/plugins/frameworkPrototype.js deleted file mode 100644 index 9c417518b..000000000 --- a/scripts/jsdoc-toolkit/app/plugins/frameworkPrototype.js +++ /dev/null @@ -1,16 +0,0 @@ -JSDOC.PluginManager.registerPlugin( - "JSDOC.frameworkPrototype", - { - onPrototypeClassCreate: function(classCreator) { - var desc = ""; - if (classCreator.comment) { - desc = classCreator.comment; - } - var insert = desc+"/** @name "+classCreator.name+"\n@constructor\n@scope "+classCreator.name+".prototype */" - - insert = insert.replace(/\*\/\/\*\*/g, "\n"); - /*DEBUG*///print("insert is "+insert); - classCreator.addComment.data = insert; - } - } -); diff --git a/scripts/jsdoc-toolkit/app/plugins/functionCall.js b/scripts/jsdoc-toolkit/app/plugins/functionCall.js deleted file mode 100644 index 6f87705ee..000000000 --- a/scripts/jsdoc-toolkit/app/plugins/functionCall.js +++ /dev/null @@ -1,10 +0,0 @@ -JSDOC.PluginManager.registerPlugin( - "JSDOC.functionCall", - { - onFunctionCall: function(functionCall) { - if (functionCall.name == "dojo.define" && functionCall.arg1) { - functionCall.doc = "/** @lends "+eval(functionCall.arg1)+".prototype */"; - } - } - } -); \ No newline at end of file diff --git a/scripts/jsdoc-toolkit/app/plugins/publishSrcHilite.js b/scripts/jsdoc-toolkit/app/plugins/publishSrcHilite.js deleted file mode 100644 index 65514f2c9..000000000 --- a/scripts/jsdoc-toolkit/app/plugins/publishSrcHilite.js +++ /dev/null @@ -1,62 +0,0 @@ -JSDOC.PluginManager.registerPlugin( - "JSDOC.publishSrcHilite", - { - onPublishSrc: function(src) { - if (src.path in JsHilite.cache) { - return; // already generated src code - } - else JsHilite.cache[src.path] = true; - - try { - var sourceCode = IO.readFile(src.path); - } - catch(e) { - print(e.message); - quit(); - } - - var hiliter = new JsHilite(sourceCode, src.charset); - src.hilited = hiliter.hilite(); - } - } -); - -function JsHilite(src, charset) { - - var tr = new JSDOC.TokenReader(); - - tr.keepComments = true; - tr.keepDocs = true; - tr.keepWhite = true; - - this.tokens = tr.tokenize(new JSDOC.TextStream(src)); - - // TODO is redefining toString() the best way? - JSDOC.Token.prototype.toString = function() { - return ""+this.data.replace(/"; - } - - if (!charset) charset = "utf-8"; - - this.header = ' '+ - "

";
-	this.footer = "
"; - this.showLinenumbers = true; -} - -JsHilite.cache = {}; - -JsHilite.prototype.hilite = function() { - var hilited = this.tokens.join(""); - var line = 1; - if (this.showLinenumbers) hilited = hilited.replace(/(^|\n)/g, function(m){return m+""+((line<10)? " ":"")+((line<100)? " ":"")+(line++)+" "}); - - return this.header+hilited+this.footer; -} \ No newline at end of file diff --git a/scripts/jsdoc-toolkit/app/plugins/symbolLink.js b/scripts/jsdoc-toolkit/app/plugins/symbolLink.js deleted file mode 100644 index c87f1ca7b..000000000 --- a/scripts/jsdoc-toolkit/app/plugins/symbolLink.js +++ /dev/null @@ -1,10 +0,0 @@ -JSDOC.PluginManager.registerPlugin( - "JSDOC.symbolLink", - { - onSymbolLink: function(link) { - // modify link.linkPath (the href part of the link) - // or link.linkText (the text displayed) - // or link.linkInner (the #name part of the link) - } - } -); \ No newline at end of file diff --git a/scripts/jsdoc-toolkit/app/plugins/tagParamConfig.js b/scripts/jsdoc-toolkit/app/plugins/tagParamConfig.js deleted file mode 100644 index 3ea8a1be2..000000000 --- a/scripts/jsdoc-toolkit/app/plugins/tagParamConfig.js +++ /dev/null @@ -1,31 +0,0 @@ -JSDOC.PluginManager.registerPlugin( - "JSDOC.tagParamConfig", - { - onDocCommentTags: function(comment) { - var currentParam = null; - var tags = comment.tags; - for (var i = 0, l = tags.length; i < l; i++) { - - if (tags[i].title == "param") { - if (tags[i].name.indexOf(".") == -1) { - currentParam = i; - } - } - else if (tags[i].title == "config") { - tags[i].title = "param"; - if (currentParam == null) { - tags[i].name = "arguments"+"."+tags[i].name; - } - else if (tags[i].name.indexOf(tags[currentParam].name+".") != 0) { - tags[i].name = tags[currentParam].name+"."+tags[i].name; - } - currentParam != null - //tags[currentParam].properties.push(tags[i]); - } - else { - currentParam = null; - } - } - } - } -); diff --git a/scripts/jsdoc-toolkit/app/plugins/tagSynonyms.js b/scripts/jsdoc-toolkit/app/plugins/tagSynonyms.js deleted file mode 100644 index 49a874f19..000000000 --- a/scripts/jsdoc-toolkit/app/plugins/tagSynonyms.js +++ /dev/null @@ -1,43 +0,0 @@ -JSDOC.PluginManager.registerPlugin( - "JSDOC.tagSynonyms", - { - onDocCommentSrc: function(comment) { - comment.src = comment.src.replace(/@methodOf\b/i, "@function\n@memberOf"); - comment.src = comment.src.replace(/@fieldOf\b/i, "@field\n@memberOf"); - }, - - onDocCommentTags: function(comment) { - for (var i = 0, l = comment.tags.length; i < l; i++) { - var title = comment.tags[i].title.toLowerCase(); - var syn; - if ((syn = JSDOC.tagSynonyms.synonyms["="+title])) { - comment.tags[i].title = syn; - } - } - } - } -); - -new Namespace( - "JSDOC.tagSynonyms", - function() { - JSDOC.tagSynonyms.synonyms = { - "=member": "memberOf", - "=memberof": "memberOf", - "=description": "desc", - "=exception": "throws", - "=argument": "param", - "=returns": "return", - "=classdescription": "class", - "=fileoverview": "overview", - "=extends": "augments", - "=base": "augments", - "=projectdescription": "overview", - "=classdescription": "class", - "=link": "see", - "=borrows": "inherits", - "=scope": "lends", - "=construct": "constructor" - } - } -); \ No newline at end of file diff --git a/scripts/jsdoc-toolkit/app/run.js b/scripts/jsdoc-toolkit/app/run.js deleted file mode 100644 index 1f875cdbb..000000000 --- a/scripts/jsdoc-toolkit/app/run.js +++ /dev/null @@ -1,348 +0,0 @@ -/** - * @fileOverview - * A bootstrap script that creates some basic required objects - * for loading other scripts. - * @author Michael Mathews, micmath@gmail.com - * @version $Id: run.js 756 2009-01-07 21:32:58Z micmath $ - */ - -/** - * @namespace Keep track of any messages from the running script. - */ -LOG = { - warn: function(msg, e) { - if (JSDOC.opt.q) return; - if (e) msg = e.fileName+", line "+e.lineNumber+": "+msg; - - msg = ">> WARNING: "+msg; - LOG.warnings.push(msg); - if (LOG.out) LOG.out.write(msg+"\n"); - else print(msg); - }, - - inform: function(msg) { - if (JSDOC.opt.q) return; - msg = " > "+msg; - if (LOG.out) LOG.out.write(msg+"\n"); - else if (typeof LOG.verbose != "undefined" && LOG.verbose) print(msg); - } -}; -LOG.warnings = []; -LOG.verbose = false -LOG.out = undefined; - -/** - * @class Manipulate a filepath. - */ -function FilePath(absPath, separator) { - this.slash = separator || "/"; - this.root = this.slash; - this.path = []; - this.file = ""; - - var parts = absPath.split(/[\\\/]/); - if (parts) { - if (parts.length) this.root = parts.shift() + this.slash; - if (parts.length) this.file = parts.pop() - if (parts.length) this.path = parts; - } - - this.path = this.resolvePath(); -} - -/** Collapse any dot-dot or dot items in a filepath. */ -FilePath.prototype.resolvePath = function() { - var resolvedPath = []; - for (var i = 0; i < this.path.length; i++) { - if (this.path[i] == "..") resolvedPath.pop(); - else if (this.path[i] != ".") resolvedPath.push(this.path[i]); - } - return resolvedPath; -} - -/** Trim off the filename. */ -FilePath.prototype.toDir = function() { - if (this.file) this.file = ""; - return this; -} - -/** Go up a directory. */ -FilePath.prototype.upDir = function() { - this.toDir(); - if (this.path.length) this.path.pop(); - return this; -} - -FilePath.prototype.toString = function() { - return this.root - + this.path.join(this.slash) - + ((this.path.length > 0)? this.slash : "") - + this.file; -} - -/** - * Turn a path into just the name of the file. - */ -FilePath.fileName = function(path) { - var nameStart = Math.max(path.lastIndexOf("/")+1, path.lastIndexOf("\\")+1, 0); - return path.substring(nameStart); -} - -/** - * Get the extension of a filename - */ -FilePath.fileExtension = function(filename) { - return filename.split(".").pop().toLowerCase(); -}; - -/** - * Turn a path into just the directory part. - */ -FilePath.dir = function(path) { - var nameStart = Math.max(path.lastIndexOf("/")+1, path.lastIndexOf("\\")+1, 0); - return path.substring(0, nameStart-1); -} - - -importClass(java.lang.System); - -/** - * @namespace A collection of information about your system. - */ -SYS = { - /** - * Information about your operating system: arch, name, version. - * @type string - */ - os: [ - new String(System.getProperty("os.arch")), - new String(System.getProperty("os.name")), - new String(System.getProperty("os.version")) - ].join(", "), - - /** - * Which way does your slash lean. - * @type string - */ - slash: System.getProperty("file.separator")||"/", - - /** - * The path to the working directory where you ran java. - * @type string - */ - userDir: new String(System.getProperty("user.dir")), - - /** - * Where is Java's home folder. - * @type string - */ - javaHome: new String(System.getProperty("java.home")), - - /** - * The absolute path to the directory containing this script. - * @type string - */ - pwd: undefined -}; - -// jsrun appends an argument, with the path to here. -if (arguments[arguments.length-1].match(/^-j=(.+)/)) { - if (RegExp.$1.charAt(0) == SYS.slash || RegExp.$1.charAt(1) == ":") { // absolute path to here - SYS.pwd = new FilePath(RegExp.$1).toDir().toString(); - } - else { // relative path to here - SYS.pwd = new FilePath(SYS.userDir + SYS.slash + RegExp.$1).toDir().toString(); - } - arguments.pop(); -} -else { - print("The run.js script requires you use jsrun.jar."); - quit(); -} - -// shortcut -var File = Packages.java.io.File; - -/** - * @namespace A collection of functions that deal with reading a writing to disk. - */ -IO = { - - /** - * Create a new file in the given directory, with the given name and contents. - */ - saveFile: function(/**string*/ outDir, /**string*/ fileName, /**string*/ content) { - var out = new Packages.java.io.PrintWriter( - new Packages.java.io.OutputStreamWriter( - new Packages.java.io.FileOutputStream(outDir+SYS.slash+fileName), - IO.encoding - ) - ); - out.write(content); - out.flush(); - out.close(); - }, - - /** - * @type string - */ - readFile: function(/**string*/ path) { - if (!IO.exists(path)) { - throw "File doesn't exist there: "+path; - } - return readFile(path, IO.encoding); - }, - - /** - * @param inFile - * @param outDir - * @param [fileName=The original filename] - */ - copyFile: function(/**string*/ inFile, /**string*/ outDir, /**string*/ fileName) { - if (fileName == null) fileName = FilePath.fileName(inFile); - - var inFile = new File(inFile); - var outFile = new File(outDir+SYS.slash+fileName); - - var bis = new Packages.java.io.BufferedInputStream(new Packages.java.io.FileInputStream(inFile), 4096); - var bos = new Packages.java.io.BufferedOutputStream(new Packages.java.io.FileOutputStream(outFile), 4096); - var theChar; - while ((theChar = bis.read()) != -1) { - bos.write(theChar); - } - bos.close(); - bis.close(); - }, - - /** - * Creates a series of nested directories. - */ - mkPath: function(/**Array*/ path) { - if (path.constructor != Array) path = path.split(/[\\\/]/); - var make = ""; - for (var i = 0, l = path.length; i < l; i++) { - make += path[i] + SYS.slash; - if (! IO.exists(make)) { - IO.makeDir(make); - } - } - }, - - /** - * Creates a directory at the given path. - */ - makeDir: function(/**string*/ path) { - (new File(path)).mkdir(); - }, - - /** - * @type string[] - * @param dir The starting directory to look in. - * @param [recurse=1] How many levels deep to scan. - * @returns An array of all the paths to files in the given dir. - */ - ls: function(/**string*/ dir, /**number*/ recurse, _allFiles, _path) { - if (_path === undefined) { // initially - var _allFiles = []; - var _path = [dir]; - } - if (_path.length == 0) return _allFiles; - if (recurse === undefined) recurse = 1; - - dir = new File(dir); - if (!dir.directory) return [String(dir)]; - var files = dir.list(); - - for (var f = 0; f < files.length; f++) { - var file = String(files[f]); - if (file.match(/^\.[^\.\/\\]/)) continue; // skip dot files - - if ((new File(_path.join(SYS.slash)+SYS.slash+file)).list()) { // it's a directory - _path.push(file); - if (_path.length-1 < recurse) IO.ls(_path.join(SYS.slash), recurse, _allFiles, _path); - _path.pop(); - } - else { - _allFiles.push((_path.join(SYS.slash)+SYS.slash+file).replace(SYS.slash+SYS.slash, SYS.slash)); - } - } - - return _allFiles; - }, - - /** - * @type boolean - */ - exists: function(/**string*/ path) { - file = new File(path); - - if (file.isDirectory()){ - return true; - } - if (!file.exists()){ - return false; - } - if (!file.canRead()){ - return false; - } - return true; - }, - - /** - * - */ - open: function(/**string*/ path, /**string*/ append) { - var append = true; - var outFile = new File(path); - var out = new Packages.java.io.PrintWriter( - new Packages.java.io.OutputStreamWriter( - new Packages.java.io.FileOutputStream(outFile, append), - IO.encoding - ) - ); - return out; - }, - - /** - * Sets {@link IO.encoding}. - * Encoding is used when reading and writing text to files, - * and in the meta tags of HTML output. - */ - setEncoding: function(/**string*/ encoding) { - if (/ISO-8859-([0-9]+)/i.test(encoding)) { - IO.encoding = "ISO8859_"+RegExp.$1; - } - else { - IO.encoding = encoding; - } - }, - - /** - * @default "utf-8" - * @private - */ - encoding: "utf-8", - - /** - * Load the given script. - */ - include: function(relativePath) { - load(SYS.pwd+relativePath); - }, - - /** - * Loads all scripts from the given directory path. - */ - includeDir: function(path) { - if (!path) return; - - for (var lib = IO.ls(SYS.pwd+path), i = 0; i < lib.length; i++) - if (/\.js$/i.test(lib[i])) load(lib[i]); - } -} - -// now run the application -IO.include("frame.js"); -IO.include("main.js"); - -main(); diff --git a/scripts/jsdoc-toolkit/app/t/TestDoc.js b/scripts/jsdoc-toolkit/app/t/TestDoc.js deleted file mode 100644 index c0768b71c..000000000 --- a/scripts/jsdoc-toolkit/app/t/TestDoc.js +++ /dev/null @@ -1,144 +0,0 @@ -var TestDoc = { - fails: 0, - plans: 0, - passes: 0, - results: [] -}; - -TestDoc.record = function(result) { - TestDoc.results.push(result); - if (typeof result.verdict == "boolean") { - if (result.verdict === false) TestDoc.fails++; - if (result.verdict === true) TestDoc.passes++; - } -} - -TestDoc.prove = function(filePath) { - if (typeof document != "undefined" && typeof document.write != "undefined") { - if (TestDoc.console) print = function(s) { TestDoc.console.appendChild(document.createTextNode(s+"\n")); } - else print = function(s) { document.write(s+"
"); } - } - TestDoc.run(TestDoc.readFile(filePath)); -} - -TestDoc.run = function(src) { - try { eval(src); } catch(e) { print("# ERROR! "+e); } - - var chunks = src.split(/\/\*t:/); - - var run = function(chunk) { - // local shortcuts - var is = TestDoc.assertEquals; - var isnt = TestDoc.assertNotEquals; - var plan = TestDoc.plan; - var requires = TestDoc.requires; - - try { eval(chunk); } catch(e) { print("# ERROR! "+e); } - } - for (var start = -1, end = 0; (start = src.indexOf("/*t:", end)) > end; start = end) { - run( - src.substring( - start+4, - (end = src.indexOf("*/", start)) - ) - ); - } -} - -TestDoc.Result = function(verdict, message) { - this.verdict = verdict; - this.message = message; -} - -TestDoc.Result.prototype.toString = function() { - if (typeof this.verdict == "boolean") { - return (this.verdict? "ok" : "not ok") + " " + (++TestDoc.report.counter) + " - " + this.message; - } - - return "# " + this.message; -} - -TestDoc.requires = function(file) { - if (!TestDoc.requires.loaded[file]) { - load(file); - TestDoc.requires.loaded[file] = true; - } -} -TestDoc.requires.loaded = {}; - -TestDoc.report = function() { - TestDoc.report.counter = 0; - print("1.."+TestDoc.plans); - for (var i = 0; i < TestDoc.results.length; i++) { - print(TestDoc.results[i]); - } - print("----------------------------------------"); - if (TestDoc.fails == 0 && TestDoc.passes == TestDoc.plans) { - print("All tests successful."); - } - else { - print("Failed " + TestDoc.fails + "/" + TestDoc.plans + " tests, "+((TestDoc.plans == 0)? 0 : Math.round(TestDoc.passes/(TestDoc.passes+TestDoc.fails)*10000)/100)+"% okay. Planned to run "+TestDoc.plans+", did run "+(TestDoc.passes+TestDoc.fails)+".") - } -} - -TestDoc.plan = function(n, message) { - TestDoc.plans += n; - TestDoc.record(new TestDoc.Result(null, message+" ("+n+" tests)")); -} - -TestDoc.assertEquals = function(a, b, message) { - var result = (a == b); - if (!result) message += "\n#\n# " + a + " does not equal " + b + "\n#"; - TestDoc.record(new TestDoc.Result(result, message)); -} - -TestDoc.assertNotEquals = function(a, b, message) { - var result = (a != b); - if (!result) message += "\n#\n# " + a + " equals " + b + "\n#"; - TestDoc.record(new TestDoc.Result(result, message)); -} - -TestDoc.readFile = (function(){ - // rhino - if (typeof readFile == "function") { - return function(url) { - var text = readFile(url); - return text || ""; - } - } - - // a web browser - else { - return function(url) { - var httpRequest; - - if (window.XMLHttpRequest) { // Mozilla, Safari, etc - httpRequest = new XMLHttpRequest(); - } - else if (window.ActiveXObject) { // IE - try { - httpRequest = new ActiveXObject("Msxml2.XMLHTTP"); - } - catch (e) { - try { - httpRequest = new ActiveXObject("Microsoft.XMLHTTP"); - } - catch (e) { - } - } - } - - if (!httpRequest) { throw "Cannot create HTTP Request."; } - - httpRequest.open('GET', url, false); - httpRequest.send(''); - if (httpRequest.readyState == 4) { - if (httpRequest.status >= 400) { - throw "The HTTP Request returned an error code: "+httpRequest.status; - } - } - - return httpRequest.responseText || ""; - } - } -})(); diff --git a/scripts/jsdoc-toolkit/app/t/runner.js b/scripts/jsdoc-toolkit/app/t/runner.js deleted file mode 100644 index 3f9fb4c96..000000000 --- a/scripts/jsdoc-toolkit/app/t/runner.js +++ /dev/null @@ -1,13 +0,0 @@ -// try: java -jar ../../jsrun.jar runner.js - -load("TestDoc.js"); - -TestDoc.prove("../frame/Opt.js"); -TestDoc.prove("../lib/JSDOC.js"); -TestDoc.prove("../frame/String.js"); -TestDoc.prove("../lib/JSDOC/DocTag.js"); -TestDoc.prove("../lib/JSDOC/DocComment.js"); -TestDoc.prove("../lib/JSDOC/TokenReader.js"); -TestDoc.prove("../lib/JSDOC/Symbol.js"); - -TestDoc.report(); diff --git a/scripts/jsdoc-toolkit/app/test.js b/scripts/jsdoc-toolkit/app/test.js deleted file mode 100644 index 787d84f72..000000000 --- a/scripts/jsdoc-toolkit/app/test.js +++ /dev/null @@ -1,325 +0,0 @@ -load("app/frame/Dumper.js"); -function symbolize(opt) { - symbols = null; - JSDOC.JsDoc(opt); - symbols = JSDOC.JsDoc.symbolSet; -} - -var testCases = [ - function() { - symbolize({a:true, p:true, _: [SYS.pwd+"test/overview.js"]}); - //print(Dumper.dump(symbols)); - is('symbols.getSymbolByName("My Cool Library").name', 'My Cool Library', 'File overview can be found by alias.'); - } - , - function() { - symbolize({_: [SYS.pwd+"test/name.js"]}); - - is('symbols.getSymbol("Response").name', "Response", 'Virtual class name is found.'); - is('symbols.getSymbol("Response#text").alias', "Response#text", 'Virtual method name is found.'); - is('symbols.getSymbol("Response#text").memberOf', "Response", 'Virtual method parent name is found.'); - } - , - function() { - symbolize({a:true, p:true, _: [SYS.pwd+"test/prototype.js"]}); - - is('symbols.getSymbol("Article").name', "Article", 'Function set to constructor prototype with inner constructor name is found.'); - is('symbols.getSymbol("Article").hasMethod("init")', true, 'The initializer method name of prototype function is correct.'); - is('symbols.getSymbol("Article").hasMember("counter")', true, 'A static property set in the prototype definition is found.'); - is('symbols.getSymbol("Article").hasMember("title")', true, 'An instance property set in the prototype is found.'); - is('symbols.getSymbol("Article#title").isStatic', false, 'An instance property has isStatic set to false.'); - is('symbols.getSymbol("Article.counter").name', "counter", 'A static property set in the initializer has the name set correctly.'); - is('symbols.getSymbol("Article.counter").memberOf', "Article", 'A static property set in the initializer has the memberOf set correctly.'); - is('symbols.getSymbol("Article.counter").isStatic', true, 'A static property set in the initializer has isStatic set to true.'); - } - , - function() { - symbolize({a:true, _: [SYS.pwd+"test/prototype_oblit.js"]}); - - is('symbols.getSymbol("Article").name', "Article", 'Oblit set to constructor prototype name is found.'); - is('typeof symbols.getSymbol("Article.prototype")', "undefined", 'The prototype oblit is not a symbol.'); - is('symbols.getSymbol("Article#getTitle").name', "getTitle", 'The nonstatic method name of prototype oblit is correct.'); - is('symbols.getSymbol("Article#getTitle").alias', "Article#getTitle", 'The alias of non-static method of prototype oblit is correct.'); - is('symbols.getSymbol("Article#getTitle").isStatic', false, 'The isStatic of a nonstatic method of prototype oblit is correct.'); - is('symbols.getSymbol("Article.getTitle").name', "getTitle", 'The static method name of prototype oblit is correct.'); - is('symbols.getSymbol("Article.getTitle").isStatic', true, 'The isStatic of a static method of prototype oblit is correct.'); - is('symbols.getSymbol("Article#getTitle").isa', "FUNCTION", 'The isa of non-static method of prototype oblit is correct.'); - is('symbols.getSymbol("Article.getTitle").alias', "Article.getTitle", 'The alias of a static method of prototype oblit is correct.'); - is('symbols.getSymbol("Article.getTitle").isa', "FUNCTION", 'The isa of static method of prototype oblit is correct.'); - } - , - function() { - symbolize({a:true, p:true, _: [SYS.pwd+"test/prototype_oblit_constructor.js"]}); - - is('symbols.getSymbol("Article").name', "Article", 'Oblit set to constructor prototype with inner constructor name is found.'); - is('symbols.getSymbol("Article#init").name', "init", 'The initializer method name of prototype oblit is correct.'); - is('symbols.getSymbol("Article").hasMember("pages")', true, 'Property set by initializer method "this" is on the outer constructor.'); - is('symbols.getSymbol("Article#Title").name', "Title", 'Name of the inner constructor name is found.'); - is('symbols.getSymbol("Article#Title").memberOf', "Article", 'The memberOf of the inner constructor name is found.'); - is('symbols.getSymbol("Article#Title").isa', "CONSTRUCTOR", 'The isa of the inner constructor name is constructor.'); - is('symbols.getSymbol("Article#Title").hasMember("title")', true, 'A property set on the inner constructor "this" is on the inner constructor.'); - } - , - function() { - symbolize({a:true, p:true, _: [SYS.pwd+"test/inner.js"]}); - - is('symbols.getSymbol("Outer").name', "Outer", 'Outer constructor prototype name is found.'); - is('symbols.getSymbol("Outer").methods.length', 1, 'Inner function doesnt appear as a method of the outer.'); - is('symbols.getSymbol("Outer").hasMethod("open")', true, 'Outer constructors methods arent affected by inner function.'); - is('symbols.getSymbol("Outer-Inner").alias', "Outer-Inner", 'Alias of inner function is found.'); - is('symbols.getSymbol("Outer-Inner").isa', "CONSTRUCTOR", 'isa of inner function constructor is found.'); - is('symbols.getSymbol("Outer-Inner").memberOf', "Outer", 'The memberOf of inner function is found.'); - is('symbols.getSymbol("Outer-Inner").name', "Inner", 'The name of inner function is found.'); - is('symbols.getSymbol("Outer-Inner#name").name', "name", 'A member of the inner function constructor, attached to "this" is found on inner.'); - is('symbols.getSymbol("Outer-Inner#name").memberOf', "Outer-Inner", 'The memberOf of an inner function member is found.'); - } - , - function() { - symbolize({a:true, _: [SYS.pwd+"test/prototype_nested.js"]}); - - is('symbols.getSymbol("Word").name', "Word", 'Base constructor name is found.'); - is('symbols.getSymbol("Word").hasMethod("reverse")', true, 'Base constructor method is found.'); - is('symbols.getSymbol("Word").methods.length', 1, 'Base constructor has only one method.'); - is('symbols.getSymbol("Word").memberOf', "", 'Base constructor memberOf is empty.'); - is('symbols.getSymbol("Word#reverse").name', "reverse", 'Member of constructor prototype name is found.'); - is('symbols.getSymbol("Word#reverse").memberOf', "Word", 'Member of constructor prototype memberOf is found.'); - is('symbols.getSymbol("Word#reverse.utf8").name', "utf8", 'Member of constructor prototype method name is found.'); - is('symbols.getSymbol("Word#reverse.utf8").memberOf', "Word#reverse", 'Static nested member memberOf is found.'); - } - , - function() { - symbolize({a:true, _: [SYS.pwd+"test/namespace_nested.js"]}); - - is('symbols.getSymbol("ns1").name', "ns1", 'Base namespace name is found.'); - is('symbols.getSymbol("ns1").memberOf', "", 'Base namespace memberOf is empty (its a constructor).'); - is('symbols.getSymbol("ns1.ns2").name', "ns2", 'Nested namespace name is found.'); - is('symbols.getSymbol("ns1.ns2").alias', "ns1.ns2", 'Nested namespace alias is found.'); - is('symbols.getSymbol("ns1.ns2").memberOf', "ns1", 'Nested namespace memberOf is found.'); - is('symbols.getSymbol("ns1.ns2.Function1").name', "Function1", 'Method of nested namespace name is found.'); - is('symbols.getSymbol("ns1.ns2.Function1").memberOf', "ns1.ns2", 'Constructor of nested namespace memberOf is found.'); - } - , - function() { - symbolize({a:true, p:true, _: [SYS.pwd+"test/functions_nested.js"]}); - - is('symbols.getSymbol("Zop").name', "Zop", 'Any constructor name is found.'); - is('symbols.getSymbol("Zop").isa', "CONSTRUCTOR", 'It isa constructor.'); - is('symbols.getSymbol("Zop").hasMethod("zap")', true, 'Its method name, set later, is in methods array.'); - is('symbols.getSymbol("Foo").name', "Foo", 'The containing constructor name is found.'); - is('symbols.getSymbol("Foo").hasMethod("methodOne")', true, 'Its method name is found.'); - is('symbols.getSymbol("Foo").hasMethod("methodTwo")', true, 'Its second method name is found.'); - is('symbols.getSymbol("Foo#methodOne").alias', "Foo#methodOne", 'A methods alias is found.'); - is('symbols.getSymbol("Foo#methodOne").isStatic', false, 'A methods is not static.'); - is('symbols.getSymbol("Bar").name', "Bar", 'A global function declared inside another function is found.'); - is('symbols.getSymbol("Bar").isa', "FUNCTION", 'It isa function.'); - is('symbols.getSymbol("Bar").memberOf', "_global_", 'It is global.'); - is('symbols.getSymbol("Foo-inner").name', "inner", 'An inner functions name is found.'); - is('symbols.getSymbol("Foo-inner").memberOf', "Foo", 'It is member of the outer function.'); - is('symbols.getSymbol("Foo-inner").isInner', true, 'It is an inner function.'); - } - , - function() { - symbolize({a:true, _: [SYS.pwd+"test/memberof_constructor.js"]}); - - is('symbols.getSymbol("Circle#Tangent").name', "Tangent", 'Constructor set on prototype using @member has correct name.'); - is('symbols.getSymbol("Circle#Tangent").memberOf', "Circle", 'Constructor set on prototype using @member has correct memberOf.'); - is('symbols.getSymbol("Circle#Tangent").alias', "Circle#Tangent", 'Constructor set on prototype using @member has correct alias.'); - is('symbols.getSymbol("Circle#Tangent").isa', "CONSTRUCTOR", 'Constructor set on prototype using @member has correct isa.'); - is('symbols.getSymbol("Circle#Tangent").isStatic', false, 'Constructor set on prototype using @member is not static.'); - is('symbols.getSymbol("Circle#Tangent#getDiameter").name', "getDiameter", 'Method set on prototype using @member has correct name.'); - is('symbols.getSymbol("Circle#Tangent#getDiameter").memberOf', "Circle#Tangent", 'Method set on prototype using @member has correct memberOf.'); - is('symbols.getSymbol("Circle#Tangent#getDiameter").alias', "Circle#Tangent#getDiameter", 'Method set on prototype using @member has correct alias.'); - is('symbols.getSymbol("Circle#Tangent#getDiameter").isa', "FUNCTION", 'Method set on prototype using @member has correct isa.'); - is('symbols.getSymbol("Circle#Tangent#getDiameter").isStatic', false, 'Method set on prototype using @member is not static.'); - } - , - function() { - symbolize({a:true, p: true, _: [SYS.pwd+"test/memberof.js"]}); - - is('symbols.getSymbol("pack.install").alias', "pack.install", 'Using @memberOf sets alias, when parent name is in memberOf tag.'); - is('symbols.getSymbol("pack.install.overwrite").name', "install.overwrite", 'Using @memberOf sets name, even if the name is dotted.'); - is('symbols.getSymbol("pack.install.overwrite").memberOf', "pack", 'Using @memberOf sets memberOf.'); - is('symbols.getSymbol("pack.install.overwrite").isStatic', true, 'Using @memberOf with value not ending in octothorp sets isStatic to true.'); - } - , - function() { - symbolize({a:true, p:true, _: [SYS.pwd+"test/borrows.js"]}); - - is('symbols.getSymbol("Layout").name', "Layout", 'Constructor can be found.'); - is('symbols.getSymbol("Layout").hasMethod("init")', true, 'Constructor method name can be found.'); - is('symbols.getSymbol("Layout").hasMember("orientation")', true, 'Constructor property name can be found.'); - - is('symbols.getSymbol("Page").hasMethod("reset")', true, 'Second constructor method name can be found.'); - is('symbols.getSymbol("Page").hasMember("orientation")', true, 'Second constructor borrowed property name can be found in properties.'); - is('symbols.getSymbol("Page#orientation").memberOf', "Page", 'Second constructor borrowed property memberOf can be found.'); - is('symbols.getSymbol("Page-getInnerElements").alias', "Page-getInnerElements", 'Can borrow an inner function and it is still inner.'); - is('symbols.getSymbol("Page.units").alias', "Page.units", 'Can borrow a static function and it is still static.'); - - is('symbols.getSymbol("ThreeColumnPage#init").alias', "ThreeColumnPage#init", 'Third constructor method can be found even though method with same name is borrowed.'); - is('symbols.getSymbol("ThreeColumnPage#reset").alias', "ThreeColumnPage#reset", 'Borrowed method can be found.'); - is('symbols.getSymbol("ThreeColumnPage#orientation").alias', "ThreeColumnPage#orientation", 'Twice borrowed method can be found.'); - - } - , - function() { - symbolize({a:true, p:true, _: [SYS.pwd+"test/borrows2.js"]}); - - is('symbols.getSymbol("Foo").hasMethod("my_zop")', true, 'Borrowed method can be found.'); - is('symbols.getSymbol("Bar").hasMethod("my_zip")', true, 'Second borrowed method can be found.'); - } - , - function() { - symbolize({a:true, p:true, _: [SYS.pwd+"test/constructs.js"]}); - - is('symbols.getSymbol("Person").hasMethod("say")', true, 'The constructs tag creates a class that lends can add a method to.'); - } - , - function() { - symbolize({a: true, _: [SYS.pwd+"test/augments.js", SYS.pwd+"test/augments2.js"]}); - - is('symbols.getSymbol("Page").augments[0]', "Layout", 'An augmented class can be found.'); - is('symbols.getSymbol("Page#reset").alias', "Page#reset", 'Method of augmenter can be found.'); - is('symbols.getSymbol("Page").hasMethod("Layout#init")', true, 'Method from augmented can be found.'); - is('symbols.getSymbol("Page").hasMember("Layout#orientation")', true, 'Property from augmented can be found.'); - is('symbols.getSymbol("Page").methods.length', 3, 'Methods of augmented class are included in methods array.'); - - is('symbols.getSymbol("ThreeColumnPage").augments[0]', "Page", 'The extends tag is a synonym for augments.'); - is('symbols.getSymbol("ThreeColumnPage").hasMethod("ThreeColumnPage#init")', true, 'Local method overrides augmented method of same name.'); - is('symbols.getSymbol("ThreeColumnPage").methods.length', 3, 'Local method count is right.'); - - is('symbols.getSymbol("NewsletterPage").augments[0]', "ThreeColumnPage", 'Can augment across file boundaries.'); - is('symbols.getSymbol("NewsletterPage").augments.length', 2, 'Multiple augments are supported.'); - is('symbols.getSymbol("NewsletterPage").inherits[0].alias', "Junkmail#annoy", 'Inherited method with augments.'); - is('symbols.getSymbol("NewsletterPage").methods.length', 6, 'Methods of augmented class are included in methods array across files.'); - is('symbols.getSymbol("NewsletterPage").properties.length', 1, 'Properties of augmented class are included in properties array across files.'); - } - , - function() { - symbolize({a:true, _: [SYS.pwd+"test/static_this.js"]}); - - is('symbols.getSymbol("box.holder").name', "holder", 'Static namespace name can be found.'); - is('symbols.getSymbol("box.holder.foo").name', "foo", 'Static namespace method name can be found.'); - is('symbols.getSymbol("box.holder").isStatic', true, 'Static namespace method is static.'); - - is('symbols.getSymbol("box.holder.counter").name', "counter", 'Instance namespace property name set on "this" can be found.'); - is('symbols.getSymbol("box.holder.counter").alias', "box.holder.counter", 'Instance namespace property alias set on "this" can be found.'); - is('symbols.getSymbol("box.holder.counter").memberOf', "box.holder", 'Static namespace property memberOf set on "this" can be found.'); - } - , - function() { - symbolize({a:true, p: true, _: [SYS.pwd+"test/lend.js"]}); - - is('symbols.getSymbol("Person").name', "Person", 'Class defined in lend comment is found.'); - is('symbols.getSymbol("Person").hasMethod("initialize")', true, 'Lent instance method name can be found.'); - is('symbols.getSymbol("Person").hasMethod("say")', true, 'Second instance method can be found.'); - is('symbols.getSymbol("Person#sing").isStatic', false, 'Instance method is known to be not static.'); - - is('symbols.getSymbol("Person.getCount").name', "getCount", 'Static method name from second lend comment can be found.'); - is('symbols.getSymbol("Person.getCount").isStatic', true, 'Static method from second lend comment is known to be static.'); - - is('LOG.warnings.filter(function($){if($.indexOf("notok") > -1) return $}).length', 1, 'A warning is emitted when lending to an undocumented parent.'); - } - , - function() { - symbolize({a:true, _: [SYS.pwd+"test/param_inline.js"]}); - - is('symbols.getSymbol("Layout").params[0].type', "int", 'Inline param name is set.'); - is('symbols.getSymbol("Layout").params[0].desc', "The number of columns.", 'Inline param desc is set from comment.'); - is('symbols.getSymbol("Layout#getElement").params[0].name', "id", 'User defined param documentation takes precedence over parser defined.'); - is('symbols.getSymbol("Layout#getElement").params[0].isOptional', true, 'Default for param is to not be optional.'); - is('symbols.getSymbol("Layout#getElement").params[1].isOptional', false, 'Can mark a param as being optional.'); - is('symbols.getSymbol("Layout#getElement").params[1].type', "number|string", 'Type of inline param doc can have multiple values.'); - is('symbols.getSymbol("Layout#Canvas").params[0].type', "", 'Type can be not defined for some params.'); - is('symbols.getSymbol("Layout#Canvas").params[2].type', "int", 'Type can be defined inline for only some params.'); - is('symbols.getSymbol("Layout#rotate").params.length', 0, 'Docomments inside function sig is ignored without a param.'); - is('symbols.getSymbol("Layout#init").params[2].type', "zoppler", 'Doc comment type overrides inline type for param with same name.'); - } - , - function() { - symbolize({a: true, _: [SYS.pwd+"test/shared.js", SYS.pwd+"test/shared2.js"]}); - - is('symbols.getSymbol("Array#some").name', 'some', 'The name of a symbol in a shared section is found.'); - is('symbols.getSymbol("Array#some").alias', 'Array#some', 'The alias of a symbol in a shared section is found.'); - is('symbols.getSymbol("Array#some").desc', "Extension to builtin array.", 'A description can be shared.'); - is('symbols.getSymbol("Array#filter").desc', "Extension to builtin array.\nChange every element of an array.", 'A shared description is appended.'); - is('symbols.getSymbol("Queue").desc', "A first in, first out data structure.", 'A description is not shared when outside a shared section.'); - is('symbols.getSymbol("Queue.rewind").alias', "Queue.rewind", 'Second shared tag can be started.'); - is('symbols.getSymbol("startOver").alias', "startOver", 'Shared tag doesnt cross over files.'); - } - , - function() { - symbolize({a: true, _: [SYS.pwd+"test/config.js"]}); - is('symbols.getSymbol("Contact").params[0].name', 'person', 'The name of a param is found.'); - is('symbols.getSymbol("Contact").params[1].name', 'person.name', 'The name of a param set with a dot name is found.'); - is('symbols.getSymbol("Contact").params[2].name', 'person.age', 'The name of a second param set with a dot name is found.'); - is('symbols.getSymbol("Contact").params[4].name', 'connection', 'The name of a param after config is found.'); - - is('symbols.getSymbol("Family").params[0].name', 'persons', 'Another name of a param is found.'); - is('symbols.getSymbol("Family").params[1].name', 'persons.Father', 'The name of a param+config is found.'); - is('symbols.getSymbol("Family").params[2].name', 'persons.Mother', 'The name of a second param+config is found.'); - is('symbols.getSymbol("Family").params[3].name', 'persons.Children', 'The name of a third param+config is found.'); - } - , - function() { - symbolize({a:true, p:true, _: [SYS.pwd+"test/ignore.js"]}); - is('LOG.warnings.filter(function($){if($.indexOf("undocumented symbol Ignored") > -1) return $}).length', 1, 'A warning is emitted when documenting members of an ignored parent.'); - } - , - function() { - symbolize({a:true, p:true, _: [SYS.pwd+"test/functions_anon.js"]}); - is('symbols.getSymbol("a.b").alias', 'a.b', 'In anonymous constructor this is found to be the container object.'); - is('symbols.getSymbol("a.f").alias', 'a.f', 'In anonymous constructor this can have a method.'); - is('symbols.getSymbol("a.c").alias', 'a.c', 'In anonymous constructor method this is found to be the container object.'); - is('symbols.getSymbol("g").alias', 'g', 'In anonymous function executed inline this is the global.'); - is('symbols.getSymbol("bar2.p").alias', 'bar2.p', 'In named constructor executed inline this is the container object.'); - is('symbols.getSymbol("module.pub").alias', 'module.pub', 'In parenthesized anonymous function executed inline function scoped variables arent documented.'); - } - , - function() { - symbolize({a:true, p:true, _: [SYS.pwd+"test/oblit_anon.js"]}); - is('symbols.getSymbol("opt").name', 'opt', 'Anonymous object properties are created.'); - is('symbols.getSymbol("opt.conf.keep").alias', 'opt.conf.keep', 'Anonymous object first property is assigned to $anonymous.'); - is('symbols.getSymbol("opt.conf.base").alias', 'opt.conf.base', 'Anonymous object second property is assigned to $anonymous.'); - } - , - function() { - symbolize({a:true, p:true, _: [SYS.pwd+"test/params_optional.js"]}); - is('symbols.getSymbol("Document").params.length', 3, 'Correct number of params are found when optional param syntax is used.'); - is('symbols.getSymbol("Document").params[1].name', "id", 'Name of optional param is found.'); - is('symbols.getSymbol("Document").params[1].isOptional', true, 'Optional param is marked isOptional.'); - is('symbols.getSymbol("Document").params[2].name', "title", 'Name of optional param with default value is found.'); - is('symbols.getSymbol("Document").params[2].isOptional', true, 'Optional param with default value is marked isOptional.'); - is('symbols.getSymbol("Document").params[2].defaultValue', " This is untitled.", 'Optional param default value is found.'); - } - , - function() { - symbolize({a:true, p:true, _: [SYS.pwd+"test/synonyms.js"]}); - is('symbols.getSymbol("myObject.myFunc").type', 'function', 'Type can be set to function.'); - } - , - function() { - symbolize({a:true, p:true, _: [SYS.pwd+"test/event.js"]}); - is('symbols.getSymbol("Kitchen#event:cakeEaten").isEvent', true, 'Function with event prefix is an event.'); - is('symbols.getSymbol("Kitchen#cakeEaten").isa', "FUNCTION", 'Function with same name as event isa function.'); - } - , - function() { - symbolize({x:"js", a:true, _: [SYS.pwd+"test/scripts/"]}); - is('JSDOC.JsDoc.srcFiles.length', 1, 'Only js files are scanned when -x=js.'); - } - , - function() { - symbolize({x:"js", a:true, _: [SYS.pwd+"test/exports.js"]}); - is('symbols.getSymbol("mxn.Map#doThings").name', 'doThings', 'Exports creates a documentation alias that can have methods.'); - } - , - function() { - symbolize({p:true, a:true, _: [SYS.pwd+"test/module.js"]}); - is('symbols.getSymbol("myProject.myModule.myPublicMethod").name', 'myPublicMethod', 'A function wrapped in parens can be recognized.'); - is('symbols.getSymbol("myProject.myModule-myPrivateMethod").name', 'myPrivateMethod', 'A private method in the scope of a function wrapped in parens can be recognized.'); - is('symbols.getSymbol("myProject.myModule-myPrivateVar").name', 'myPrivateVar', 'A private member in the scope of a function wrapped in parens can be recognized.'); - } -]; - -//// run and print results -print(testrun(testCases)); diff --git a/scripts/jsdoc-toolkit/app/test/addon.js b/scripts/jsdoc-toolkit/app/test/addon.js deleted file mode 100644 index 888620533..000000000 --- a/scripts/jsdoc-toolkit/app/test/addon.js +++ /dev/null @@ -1,24 +0,0 @@ -String.prototype.reverse = function() { -} - -String.prototype.reverse.utf8 = function() { -} - -Function.count = function() { -} - -/** @memberOf Function */ -Function.count.reset = function() { -} - -/** @memberOf Function */ -count.getValue = function() { -} - -/** @memberOf Function.prototype */ -getSig = function() { -} - -/** @memberOf Function.prototype */ -Function.prototype.getProps = function() { -} diff --git a/scripts/jsdoc-toolkit/app/test/anon_inner.js b/scripts/jsdoc-toolkit/app/test/anon_inner.js deleted file mode 100644 index 227eeee55..000000000 --- a/scripts/jsdoc-toolkit/app/test/anon_inner.js +++ /dev/null @@ -1,14 +0,0 @@ -/** - * @name bar - * @namespace - */ - -new function() { - /** - * @name bar-foo - * @function - * @param {number} x - */ - function foo(x) { - } -} \ No newline at end of file diff --git a/scripts/jsdoc-toolkit/app/test/augments.js b/scripts/jsdoc-toolkit/app/test/augments.js deleted file mode 100644 index 12e706ebc..000000000 --- a/scripts/jsdoc-toolkit/app/test/augments.js +++ /dev/null @@ -1,31 +0,0 @@ -/** -@constructor -*/ -function Layout(p) { - this.init = function(p) { - } - - this.getId = function() { - } - - /** @type Page */ - this.orientation = "landscape"; -} - -/** -@constructor -@augments Layout -*/ -function Page() { - this.reset = function(b) { - } -} - -/** -@extends Page -@constructor -*/ -function ThreeColumnPage() { - this.init = function(resetCode) { - } -} diff --git a/scripts/jsdoc-toolkit/app/test/augments2.js b/scripts/jsdoc-toolkit/app/test/augments2.js deleted file mode 100644 index e8388f0f8..000000000 --- a/scripts/jsdoc-toolkit/app/test/augments2.js +++ /dev/null @@ -1,26 +0,0 @@ -/** -@constructor -*/ -function LibraryItem() { - this.reserve = function() { - } -} - -/** -@constructor -*/ -function Junkmail() { - this.annoy = function() { - } -} - -/** -@inherits Junkmail.prototype.annoy as pester -@augments ThreeColumnPage -@augments LibraryItem -@constructor -*/ -function NewsletterPage() { - this.getHeadline = function() { - } -} diff --git a/scripts/jsdoc-toolkit/app/test/borrows.js b/scripts/jsdoc-toolkit/app/test/borrows.js deleted file mode 100644 index a5d8ea4aa..000000000 --- a/scripts/jsdoc-toolkit/app/test/borrows.js +++ /dev/null @@ -1,46 +0,0 @@ -/** -@constructor -*/ -function Layout(p) { - /** initilize 1 */ - this.init = function(p) { - } - - /** get the id */ - this.getId = function() { - } - - /** @type string */ - this.orientation = "landscape"; - - function getInnerElements(elementSecretId){ - } -} - -/** A static method. */ -Layout.units = function() { -} - -/** -@constructor -@borrows Layout#orientation -@borrows Layout-getInnerElements -@borrows Layout.units -*/ -function Page() { - /** reset the page */ - this.reset = function(b) { - } -} - -/** -@constructor -@borrows Layout.prototype.orientation as this.orientation -@borrows Layout.prototype.init as #init -@inherits Page.prototype.reset as #reset -*/ -function ThreeColumnPage() { - /** initilize 2 */ - this.init = function(p) { - } -} diff --git a/scripts/jsdoc-toolkit/app/test/borrows2.js b/scripts/jsdoc-toolkit/app/test/borrows2.js deleted file mode 100644 index c0d5ea21f..000000000 --- a/scripts/jsdoc-toolkit/app/test/borrows2.js +++ /dev/null @@ -1,23 +0,0 @@ -// testing circular borrows - -/** - @class - @borrows Bar#zop as this.my_zop -*/ -function Foo() { - /** this is a zip. */ - this.zip = function() {} - - this.my_zop = new Bar().zop; -} - -/** - @class - @borrows Foo#zip as this.my_zip -*/ -function Bar() { - /** this is a zop. */ - this.zop = function() {} - - this.my_zip = new Foo().zip; -} \ No newline at end of file diff --git a/scripts/jsdoc-toolkit/app/test/config.js b/scripts/jsdoc-toolkit/app/test/config.js deleted file mode 100644 index 0748a210a..000000000 --- a/scripts/jsdoc-toolkit/app/test/config.js +++ /dev/null @@ -1,22 +0,0 @@ -/** - * @constructor - * @param person The person. - * @param {string} person.name The person's name. - * @config {integer} age The person's age. - * @config [id=1] Optional id number to use. - * @param connection - */ -function Contact(person, connection) { - -} - -/** - * @constructor - * @param persons - * @config {string} Father The paternal person. - * @config {string} Mother The maternal person. - * @config {string[]} Children And the rest. - */ -function Family(/**Object*/persons) { - -} diff --git a/scripts/jsdoc-toolkit/app/test/constructs.js b/scripts/jsdoc-toolkit/app/test/constructs.js deleted file mode 100644 index cca5dbd38..000000000 --- a/scripts/jsdoc-toolkit/app/test/constructs.js +++ /dev/null @@ -1,18 +0,0 @@ -var Person = makeClass( - /** - @scope Person - */ - { - /** - This is just another way to define a constructor. - @constructs - @param {string} name The name of the person. - */ - initialize: function(name) { - this.name = name; - }, - say: function(message) { - return this.name + " says: " + message; - } - } -); \ No newline at end of file diff --git a/scripts/jsdoc-toolkit/app/test/encoding.js b/scripts/jsdoc-toolkit/app/test/encoding.js deleted file mode 100644 index ba6421931..000000000 --- a/scripts/jsdoc-toolkit/app/test/encoding.js +++ /dev/null @@ -1,10 +0,0 @@ - -/** - * @Constructor - * @desc é…置文件 - * @class 什么也ä¸è¿”回 - */ -function Test(conf) { - // do something; -} - diff --git a/scripts/jsdoc-toolkit/app/test/encoding_other.js b/scripts/jsdoc-toolkit/app/test/encoding_other.js deleted file mode 100644 index b144da4cf..000000000 --- a/scripts/jsdoc-toolkit/app/test/encoding_other.js +++ /dev/null @@ -1,12 +0,0 @@ - -/** - * @Constructor - * @desc ðïîÛ - * @class ßàáâãäåæçèçìëêíîï °±²³´µ¡¶·¸¹ - */ -function Test(conf) { - // do something; -} - -// run with commanline option -e=iso-8859-5 - diff --git a/scripts/jsdoc-toolkit/app/test/event.js b/scripts/jsdoc-toolkit/app/test/event.js deleted file mode 100644 index 7e41d6f63..000000000 --- a/scripts/jsdoc-toolkit/app/test/event.js +++ /dev/null @@ -1,54 +0,0 @@ -/** - * @name Kitchen - * @constructor - * @fires Bakery#event:donutOrdered - */ - -/** - * Fired when some cake is eaten. - * @name Kitchen#event:cakeEaten - * @function - * @param {Number} pieces The number of pieces eaten. - */ - -/** - * Find out if cake was eaten. - * @name Kitchen#cakeEaten - * @function - * @param {Boolean} wasEaten - */ - -/** - * @name getDesert - * @function - * @fires Kitchen#event:cakeEaten - */ - -/** - * @name Bakery - * @constructor - * @extends Kitchen - */ - -/** - * Fired when a donut order is made. - * @name Bakery#event:donutOrdered - * @event - * @param {Event} e The event object. - * @param {String} [e.topping] Optional sprinkles. - */ - -/** - * @constructor - * @borrows Bakery#event:donutOrdered as this.event:cakeOrdered - */ -function CakeShop() { -} - -/** @event */ -CakeShop.prototype.icingReady = function(isPink) { -} - -/** @event */ -function amHungry(/**Boolean*/enoughToEatAHorse) { -} \ No newline at end of file diff --git a/scripts/jsdoc-toolkit/app/test/exports.js b/scripts/jsdoc-toolkit/app/test/exports.js deleted file mode 100644 index 63a87cb4d..000000000 --- a/scripts/jsdoc-toolkit/app/test/exports.js +++ /dev/null @@ -1,14 +0,0 @@ -/** @namespace */ -var mxn = {}; - -(function(){ - /** @exports Map as mxn.Map */ - var Map = - /** @constructor */ - mxn.Map = function() { - }; - - /** A method. */ - Map.prototype.doThings = function() { - }; -})(); \ No newline at end of file diff --git a/scripts/jsdoc-toolkit/app/test/functions_anon.js b/scripts/jsdoc-toolkit/app/test/functions_anon.js deleted file mode 100644 index e9dd6c1be..000000000 --- a/scripts/jsdoc-toolkit/app/test/functions_anon.js +++ /dev/null @@ -1,39 +0,0 @@ -/** an anonymous constructor executed inline */ -a = new function() { - /** a.b*/ - this.b = 1; - /** a.f */ - this.f = function() { - /** a.c */ - this.c = 2; - } -} - - -/** - named function executed inline -*/ -bar1 = function Zoola1() { - /** property of global */ - this.g = 1; -}(); - -/** - named constructor executed inline -*/ -bar2 = new function Zoola2() { - /** property of bar */ - this.p = 1; -}; - -/** module pattern */ -module = (function () { - /** won't appear in documentation */ - var priv = 1; - - /** @scope module */ - return { - /** will appear as a property of module */ - pub: 1 - } -})(); diff --git a/scripts/jsdoc-toolkit/app/test/functions_nested.js b/scripts/jsdoc-toolkit/app/test/functions_nested.js deleted file mode 100644 index f044fafee..000000000 --- a/scripts/jsdoc-toolkit/app/test/functions_nested.js +++ /dev/null @@ -1,33 +0,0 @@ -/** @constructor */ -function Zop() { -} - -/** - @class -*/ -Foo = function(id) { - // this is a bit twisted, but if you call Foo() you will then - // modify Foo(). This is kinda, sorta non-insane, because you - // would have to call Foo() 100% of the time to use Foo's methods - Foo.prototype.methodOne = function(bar) { - alert(bar); - }; - - // same again - Foo.prototype.methodTwo = function(bar2) { - alert(bar2); - }; - - // and these are only executed if the enclosing function is actually called - // and who knows if that will ever happen? - Bar = function(pez) { - alert(pez); - }; - Zop.prototype.zap = function(p){ - alert(p); - }; - - // but this is only visible inside Foo - function inner() { - } -}; diff --git a/scripts/jsdoc-toolkit/app/test/global.js b/scripts/jsdoc-toolkit/app/test/global.js deleted file mode 100644 index 5ea489496..000000000 --- a/scripts/jsdoc-toolkit/app/test/global.js +++ /dev/null @@ -1,13 +0,0 @@ -/** ecks */ -var x = [1, 2, 4]; - -var y = { - foo: function(){ - } -} - -bar = function() { -} - -function zop() { -} diff --git a/scripts/jsdoc-toolkit/app/test/globals.js b/scripts/jsdoc-toolkit/app/test/globals.js deleted file mode 100644 index 3f83fb1f9..000000000 --- a/scripts/jsdoc-toolkit/app/test/globals.js +++ /dev/null @@ -1,25 +0,0 @@ -function example(/**Circle*/a, b) { - /** a global defined in function */ - var number = a; - - var hideNumber = function(){ - } - - setNumber = function(){ - } - alert('You have chosen: ' + b); -} - -function initPage() { - var supported = document.createElement && document.getElementsByTagName; - if (!supported) return; - // start of DOM script - var x = document.getElementById('writeroot'); - // etc. -} - -/** an example var */ -var document = new Document(x, y); - -var getNumber = function(){ -} \ No newline at end of file diff --git a/scripts/jsdoc-toolkit/app/test/ignore.js b/scripts/jsdoc-toolkit/app/test/ignore.js deleted file mode 100644 index d3fac9ed5..000000000 --- a/scripts/jsdoc-toolkit/app/test/ignore.js +++ /dev/null @@ -1,10 +0,0 @@ -/** - * A test constructor. - * @constructor - * @ignore - */ -function Ignored() { - /** a method */ - this.bar = function() { - } -} \ No newline at end of file diff --git a/scripts/jsdoc-toolkit/app/test/inner.js b/scripts/jsdoc-toolkit/app/test/inner.js deleted file mode 100644 index 37cfa9dc2..000000000 --- a/scripts/jsdoc-toolkit/app/test/inner.js +++ /dev/null @@ -1,16 +0,0 @@ -/** - * @constructor - */ -function Outer() { - /** - * @constructor - */ - function Inner(name) { - /** The name of this. */ - this.name = name; - } - - this.open = function(name) { - return (new Inner(name)); - } -} \ No newline at end of file diff --git a/scripts/jsdoc-toolkit/app/test/jsdoc_test.js b/scripts/jsdoc-toolkit/app/test/jsdoc_test.js deleted file mode 100644 index 081771285..000000000 --- a/scripts/jsdoc-toolkit/app/test/jsdoc_test.js +++ /dev/null @@ -1,477 +0,0 @@ -/** - * @fileoverview This file is to be used for testing the JSDoc parser - * It is not intended to be an example of good JavaScript OO-programming, - * nor is it intended to fulfill any specific purpose apart from - * demonstrating the functionality of the - * JSDoc parser - * - * @author Gabriel Reid gab_reid@users.sourceforge.net - * @version 0.1 - */ - - -/** - * Construct a new Shape object. - * @class This is the basic Shape class. - * It can be considered an abstract class, even though no such thing - * really existing in JavaScript - * @constructor - * @throws MemoryException if there is no more memory - * @throws GeneralShapeException rarely (if ever) - * @return {Shape|Coordinate} A new shape. - */ -function Shape(){ - - /** - * This is an example of a function that is not given as a property - * of a prototype, but instead it is assigned within a constructor. - * For inner functions like this to be picked up by the parser, the - * function that acts as a constructor must be denoted with - * the @constructor tag in its comment. - * @type String - */ - this.getClassName = function(){ - return "Shape"; - } - - /** - * This is an inner method, just used here as an example - * @since version 0.5 - * @author Sue Smart - */ - function addReference(){ - // Do nothing... - } - -} - -/** - * Create a new Hexagon instance. - * @extends Shape - * @class Hexagon is a class that is a logical sublcass of - * {@link Shape} (thanks to the @extends tag), but in - * reality it is completely unrelated to Shape. - * @param {int} sideLength The length of one side for the new Hexagon - * @example - * var h = new Hexagon(2); - * @example - * if (hasHex) { - * hex = new Hexagon(5); - * color = hex.getColor(); - * } - */ -function Hexagon(sideLength) { -} - - -/** - * This is an unattached (static) function that adds two integers together. - * @param {int} One The first number to add - * @param {int} Two The second number to add - * @author Gabriel Reid - * @deprecated So you shouldn't use it anymore! Use {@link Shape#getClassName} instead. - */ -function Add(One, Two){ - return One + Two; -} - - -/** - * The color of this shape - * @type Color - */ -Shape.prototype.color = null; - -/** - * The border of this shape. - * @field - * @type int - */ -Shape.prototype.border = function(){return border;}; - -/* - * These are all the instance method implementations for Shape - */ - -/** - * Get the coordinates of this shape. It is assumed that we're always talking - * about shapes in a 2D location here. - * @requires The {@link Shape} class - * @returns A Coordinate object representing the location of this Shape - * @type Coordinate[] - */ -Shape.prototype.getCoords = function(){ - return this.coords; -} - -/** - * Get the color of this shape. - * @see #setColor - * @see The Color library. - * @link Shape - * @type Color - */ -Shape.prototype.getColor = function(){ - return this.color; -} - -/** - * Set the coordinates for this Shape - * @param {Coordinate} coordinates The coordinates to set for this Shape - */ -Shape.prototype.setCoords = function(coordinates){ - this.coords = coordinates; -} - -/** - * Set the color for this Shape - * @param {Color} color The color to set for this Shape - * @param other There is no other param, but it can still be documented if - * optional parameters are used - * @throws NonExistantColorException (no, not really!) - * @see #getColor - */ -Shape.prototype.setColor = function(color){ - this.color = color; -} - -/** - * Clone this shape - * @returns A copy of this shape - * @type Shape - * @author Gabriel Reid - */ -Shape.prototype.clone = function(){ - return new Shape(); -} - -/** - * Create a new Rectangle instance. - * @class A basic rectangle class, inherits from Shape. - * This class could be considered a concrete implementation class - * @constructor - * @param {int} width The optional width for this Rectangle - * @param {int} height Thie optional height for this Rectangle - * @author Gabriel Reid - * @see Shape is the base class for this - * @augments Shape - * @hilited - */ -function Rectangle(width, // This is the width - height // This is the height - ){ - if (width){ - this.width = width; - if (height){ - this.height = height; - } - } -} - - -/* Inherit from Shape */ -Rectangle.prototype = new Shape(); - -/** - * Value to represent the width of the Rectangle. - *
Text in bold and italic and a - * link to SourceForge - * @private - * @type int - */ -Rectangle.prototype.width = 0; - -/** - * Value to represent the height of the Rectangle - * @private - * @type int - */ -Rectangle.prototype.height = 0; - -/** - * Get the type of this object. - * @type String - */ -Rectangle.prototype.getClassName= function(){ - return "Rectangle"; -} - -/** - * Get the value of the width for the Rectangle - * @type int - * @see Rectangle#setWidth - */ -Rectangle.prototype.getWidth = function(){ - return this.width; -} - -/** - * Get the value of the height for the Rectangle. - * Another getter is the {@link Shape#getColor} method in the - * {@link Shape} base class. - * @return The height of this Rectangle - * @type int - * @see Rectangle#setHeight - */ -Rectangle.prototype.getHeight = function(){ - return this.height; -} - -/** - * Set the width value for this Rectangle. - * @param {int} width The width value to be set - * @see #setWidth - */ -Rectangle.prototype.setWidth = function(width){ - this.width = width; -} - -/** - * Set the height value for this Rectangle. - * @param {int} height The height value to be set - * @see #getHeight - */ -Rectangle.prototype.setHeight = function(height){ - this.height = height; -} - -/** - * Get the value for the total area of this Rectangle - * @return total area of this Rectangle - * @type int - */ -Rectangle.prototype.getArea = function(){ - return width * height; -} - - -/** - * Create a new Square instance. - * @class A Square is a subclass of {@link Rectangle} - * @param {int} width The optional width for this Rectangle - * @param {int} height The optional height for this Rectangle - * @augments Rectangle - */ -function Square(width, height){ - if (width){ - this.width = width; - if (height){ - this.height = height; - } - } - -} - -/* Square is a subclass of Rectangle */ -Square.prototype = new Rectangle(); - -/** - * Set the width value for this Shape. - * @param {int} width The width value to be set - * @see #getWidth - */ -Square.prototype.setWidth = function(width){ - this.width = this.height = width; -} - -/** - * Set the height value for this Shape - * Sets the {@link Rectangle#height} attribute in the Rectangle. - * @param {int} height The height value to be set - */ -Square.prototype.setHeight = function(height){ - this.height = this.width = height; -} - - -/** - * Create a new Circle instance based on a radius. - * @class Circle class is another subclass of Shape - * @extends Shape - * @param {int} radius The optional radius of this {@link Circle } - * @mixin Square.prototype.setWidth as this.setDiameter - */ -function Circle(radius){ - if (radius) { - /** The radius of the this Circle. */ - this.radius = radius; - } -} - -/* Circle inherits from {@link Shape} */ -Circle.prototype = new Shape(); - -/** - * The radius value for this Circle - * @private - * @type int - */ -Circle.prototype.radius = 0; - -/** - * A very simple class (static) field that is also a constant - * @final - * @type float - */ -Circle.PI = 3.14; - -/** - * Get the radius value for this Circle - * @type int - * @see #setRadius - */ -Circle.prototype.getRadius = function(){ - return this.radius; -} - -/** - * Set the radius value for this Circle - * @param {int} radius The {@link Circle#radius} value to set - * @see #getRadius - */ -Circle.prototype.setRadius = function(radius){ - this.radius = radius; -} - -/** - * An example of a class (static) method that acts as a factory for Circle - * objects. Given a radius value, this method creates a new Circle. - * @param {int} radius The radius value to use for the new Circle. - * @type Circle - */ -Circle.createCircle = function(radius){ - return new Circle(radius); -} - - -/** - * Create a new Coordinate instance based on x and y grid data. - * @class Coordinate is a class that can encapsulate location information. - * @param {int} [x=0] The optional x portion of the Coordinate - * @param {int} [y=0] The optinal y portion of the Coordinate - */ -function Coordinate(x, y){ - if (x){ - this.x = x; - if (y){ - this.y = y; - } - } -} - -/** - * The x portion of the Coordinate - * @type int - * @see #getX - * @see #setX - */ -Coordinate.prototype.x = 0; - -/** - * The y portion of the Coordinate - * @type int - * @see #getY - * @see #setY - */ -Coordinate.prototype.y = 0; - -/** - * Gets the x portion of the Coordinate. - * @type int - * @see #setX - */ -Coordinate.prototype.getX = function(){ - return this.x; -} - -/** - * Get the y portion of the Coordinate. - * @type int - * @see #setY - */ -Coordinate.prototype.getY = function(){ - return this.y; -} - -/** - * Sets the x portion of the Coordinate. - * @param {int} x The x value to set - * @see #getX - */ -Coordinate.prototype.setX = function(x){ - this.x = x; -} - -/** - * Sets the y portion of the Coordinate. - * @param {int} y The y value to set - * @see #getY - */ -Coordinate.prototype.setY = function(y){ - this.y = y; -} - -/** - * @class This class exists to demonstrate the assignment of a class prototype - * as an anonymous block. - */ -function ShapeFactory(){ -} - -ShapeFactory.prototype = { - /** - * Creates a new {@link Shape} instance. - * @return A new {@link Shape} - * @type Shape - */ - createShape: function(){ - return new Shape(); - } -} - -/** - * An example of a singleton class - * @param ... Arguments represent {@link coordinate}s in the shape. - * @constructor - */ -MySingletonShapeFactory = function(){ - - /** - * Get the next {@link Shape} - * @type Shape - * @return A new {@link Shape} - */ - this.getShape = function(){ - return null; - } - -} - - -/** - * Create a new Foo instance. - * @class This is the Foo class. It exists to demonstrate 'nested' classes. - * @constructor - * @see Foo.Bar - */ -function Foo(){} - -/** - * Creates a new instance of Bar. - * @class This class exists to demonstrate 'nested' classes. - * @constructor - * @see Foo.Bar - */ -function Bar(){} - -/** - * Nested class - * @constructor - */ -Foo.Bar = function(){ - /** The x. */ this.x = 2; -} - -Foo.Bar.prototype = new Bar(); -/** The y. */ -Foo.Bar.prototype.y = '3'; diff --git a/scripts/jsdoc-toolkit/app/test/lend.js b/scripts/jsdoc-toolkit/app/test/lend.js deleted file mode 100644 index 92b15d5ad..000000000 --- a/scripts/jsdoc-toolkit/app/test/lend.js +++ /dev/null @@ -1,33 +0,0 @@ - /** @class */ -var Person = Class.create( - /** - @lends Person.prototype - */ - { - initialize: function(name) { - this.name = name; - }, - say: function(message) { - return this.name + ': ' + message; - } - } - ); - -/** @lends Person.prototype */ -{ - /** like say but more musical */ - sing: function(song) { - } -} - -/** @lends Person */ -{ - getCount: function() { - } -} - -/** @lends Unknown.prototype */ -{ - notok: function() { - } -} \ No newline at end of file diff --git a/scripts/jsdoc-toolkit/app/test/memberof.js b/scripts/jsdoc-toolkit/app/test/memberof.js deleted file mode 100644 index 883bbdeb0..000000000 --- a/scripts/jsdoc-toolkit/app/test/memberof.js +++ /dev/null @@ -1,19 +0,0 @@ -/** @constructor */ -pack = function() { - this.init = function(){} - function config(){} -} - - pack.build = function(task) {}; - -/** @memberOf pack */ -pack.install = function() {} - -/** @memberOf pack */ -pack.install.overwrite = function() {} - -/** @memberOf pack */ -clean = function() {} - -/** @memberOf pack-config */ -install = function() {}; diff --git a/scripts/jsdoc-toolkit/app/test/memberof_constructor.js b/scripts/jsdoc-toolkit/app/test/memberof_constructor.js deleted file mode 100644 index 80fde735c..000000000 --- a/scripts/jsdoc-toolkit/app/test/memberof_constructor.js +++ /dev/null @@ -1,17 +0,0 @@ -/** @constructor */ -function Circle(){} - -/** - @constructor - @memberOf Circle# - */ -Circle.prototype.Tangent = function(){}; - -// renaming Circle#Tangent to Circle#Circle#Tangent - -/** - @memberOf Circle#Tangent# - */ -Circle.prototype.Tangent.prototype.getDiameter = function(){}; - - diff --git a/scripts/jsdoc-toolkit/app/test/module.js b/scripts/jsdoc-toolkit/app/test/module.js deleted file mode 100644 index 5b3fe42c5..000000000 --- a/scripts/jsdoc-toolkit/app/test/module.js +++ /dev/null @@ -1,17 +0,0 @@ -/** @namespace */ -myProject = myProject || {}; - -/** @namespace */ -myProject.myModule = (function () { - /** describe myPrivateVar here */ - var myPrivateVar = ""; - - var myPrivateMethod = function () { - } - - /** @scope myProject.myModule */ - return { - myPublicMethod: function () { - } - }; -})(); \ No newline at end of file diff --git a/scripts/jsdoc-toolkit/app/test/name.js b/scripts/jsdoc-toolkit/app/test/name.js deleted file mode 100644 index e88a51a71..000000000 --- a/scripts/jsdoc-toolkit/app/test/name.js +++ /dev/null @@ -1,19 +0,0 @@ -/** - @name Response - @class -*/ - -Response.prototype = { - /** - @name Response#text - @function - @description - Gets the body of the response as plain text - @returns {String} - Response as text - */ - - text: function() { - return this.nativeResponse.responseText; - } -} \ No newline at end of file diff --git a/scripts/jsdoc-toolkit/app/test/namespace_nested.js b/scripts/jsdoc-toolkit/app/test/namespace_nested.js deleted file mode 100644 index 46cafa2fa..000000000 --- a/scripts/jsdoc-toolkit/app/test/namespace_nested.js +++ /dev/null @@ -1,23 +0,0 @@ -/** - @namespace This is the first namespace. -*/ -ns1 = {}; - -/** - This is the second namespace. - @namespace -*/ -ns1.ns2 = {}; - -/** - This part of ns1.ns2 - @constructor -*/ -ns1.ns2.Function1 = function() { -}; - -ns1.staticFunction = function() { -}; - -/** A static field in a namespace. */ -ns1.ns2.staticField = 1; diff --git a/scripts/jsdoc-toolkit/app/test/nocode.js b/scripts/jsdoc-toolkit/app/test/nocode.js deleted file mode 100644 index 1cf99bc98..000000000 --- a/scripts/jsdoc-toolkit/app/test/nocode.js +++ /dev/null @@ -1,13 +0,0 @@ -/**#nocode+*/ - /** - @name star - @function - */ - function blahblah() { - - } -/**#nocode-*/ - -function yaddayadda() { - -} \ No newline at end of file diff --git a/scripts/jsdoc-toolkit/app/test/oblit_anon.js b/scripts/jsdoc-toolkit/app/test/oblit_anon.js deleted file mode 100644 index 8d9e9413e..000000000 --- a/scripts/jsdoc-toolkit/app/test/oblit_anon.js +++ /dev/null @@ -1,20 +0,0 @@ -/** the options */ -opt = Opt.get( - arguments, - { - d: "directory", - c: "conf", - "D[]": "define" - } -); - -/** configuration */ -opt.conf = { - /** keep */ - keep: true, - /** base */ - base: getBase(this, {p: properties}) -} - - - diff --git a/scripts/jsdoc-toolkit/app/test/overview.js b/scripts/jsdoc-toolkit/app/test/overview.js deleted file mode 100644 index 1dfc09b1f..000000000 --- a/scripts/jsdoc-toolkit/app/test/overview.js +++ /dev/null @@ -1,20 +0,0 @@ -/** - * @overview This "library" contains a - * lot of classes and functions. - * @example -
-	var x (x < 1);
-	alert("This 'is' \"code\"");
- 
- * @name My Cool Library - * @author Joe Smith jsmith@company.com - * @version 0.1 - */ - -/** - * Gets the current foo - * @param {String} fooId The unique identifier for the foo. - * @return {Object} Returns the current foo. - */ -function getFoo(fooID){ -} \ No newline at end of file diff --git a/scripts/jsdoc-toolkit/app/test/param_inline.js b/scripts/jsdoc-toolkit/app/test/param_inline.js deleted file mode 100644 index 09845b283..000000000 --- a/scripts/jsdoc-toolkit/app/test/param_inline.js +++ /dev/null @@ -1,37 +0,0 @@ -/** - @constructor - @param columns The number of columns. -*/ -function Layout(/**int*/columns){ - /** - @param [id] The id of the element. - @param elName The name of the element. - */ - this.getElement = function( - /** string */ elName, - /** number|string */ id - ) { - }; - - /** - @constructor - */ - this.Canvas = function(top, left, /**int*/width, height) { - /** Is it initiated yet? */ - this.initiated = true; - } - - this.rotate = function(/**nothing*/) { - } - - /** - @param x - @param y - @param {zoppler} z*/ - this.init = function(x, y, /**abbler*/z) { - /** The xyz. */ - this.xyz = x+y+z; - this.getXyz = function() { - } - } -} diff --git a/scripts/jsdoc-toolkit/app/test/params_optional.js b/scripts/jsdoc-toolkit/app/test/params_optional.js deleted file mode 100644 index 18bf59829..000000000 --- a/scripts/jsdoc-toolkit/app/test/params_optional.js +++ /dev/null @@ -1,8 +0,0 @@ - -/** - * @param {Page[]} pages - * @param {number} [id] Specifies the id, if applicable. - * @param {String} [title = This is untitled.] Specifies the title. - */ -function Document(pages, id, title){ -} \ No newline at end of file diff --git a/scripts/jsdoc-toolkit/app/test/prototype.js b/scripts/jsdoc-toolkit/app/test/prototype.js deleted file mode 100644 index 114700837..000000000 --- a/scripts/jsdoc-toolkit/app/test/prototype.js +++ /dev/null @@ -1,17 +0,0 @@ -/** @constructor */ -function Article() { -} - -Article.prototype.init = function(title) { - /** the instance title */ - this.title = title; - - /** the static counter */ - Article.counter = 1; -} - -a = new Article(); -a.Init("my title"); - -print(a.title); -print(Article.counter); \ No newline at end of file diff --git a/scripts/jsdoc-toolkit/app/test/prototype_nested.js b/scripts/jsdoc-toolkit/app/test/prototype_nested.js deleted file mode 100644 index e8ca1ced2..000000000 --- a/scripts/jsdoc-toolkit/app/test/prototype_nested.js +++ /dev/null @@ -1,9 +0,0 @@ -/** @constructor */ -function Word() { -} - -Word.prototype.reverse = function() { -} - -Word.prototype.reverse.utf8 = function() { -} \ No newline at end of file diff --git a/scripts/jsdoc-toolkit/app/test/prototype_oblit.js b/scripts/jsdoc-toolkit/app/test/prototype_oblit.js deleted file mode 100644 index 6cfc39caf..000000000 --- a/scripts/jsdoc-toolkit/app/test/prototype_oblit.js +++ /dev/null @@ -1,13 +0,0 @@ -/** @constructor */ -function Article() { -} - -Article.prototype = { - /** instance get title */ - getTitle: function(){ - } -} - -/** static get title */ -Article.getTitle = function(){ -} \ No newline at end of file diff --git a/scripts/jsdoc-toolkit/app/test/prototype_oblit_constructor.js b/scripts/jsdoc-toolkit/app/test/prototype_oblit_constructor.js deleted file mode 100644 index 924824864..000000000 --- a/scripts/jsdoc-toolkit/app/test/prototype_oblit_constructor.js +++ /dev/null @@ -1,24 +0,0 @@ -/** @constructor */ -function Article() { -} - -Article.prototype = { - /** @constructor */ - Title: function(title) { - /** the value of the Title instance */ - this.title = title; - }, - - init: function(pages) { - /** the value of the pages of the Article instance */ - this.pages = pages; - } -} - -f = new Article(); -f.init("one two three"); - -t = new f.Title("my title"); - -print(f.pages); -print(t.title); \ No newline at end of file diff --git a/scripts/jsdoc-toolkit/app/test/public.js b/scripts/jsdoc-toolkit/app/test/public.js deleted file mode 100644 index 35d34f6f0..000000000 --- a/scripts/jsdoc-toolkit/app/test/public.js +++ /dev/null @@ -1,10 +0,0 @@ -/**@constructor*/ -function Foo() { - /** - @public - @static - @field - */ - var bar = function(x) { - } -} \ No newline at end of file diff --git a/scripts/jsdoc-toolkit/app/test/scripts/code.js b/scripts/jsdoc-toolkit/app/test/scripts/code.js deleted file mode 100644 index e9d7ed2ec..000000000 --- a/scripts/jsdoc-toolkit/app/test/scripts/code.js +++ /dev/null @@ -1,5 +0,0 @@ -/** - @class - */ -function thisiscode() { -} \ No newline at end of file diff --git a/scripts/jsdoc-toolkit/app/test/scripts/notcode.txt b/scripts/jsdoc-toolkit/app/test/scripts/notcode.txt deleted file mode 100644 index fcd737e77..000000000 --- a/scripts/jsdoc-toolkit/app/test/scripts/notcode.txt +++ /dev/null @@ -1,5 +0,0 @@ -(This is not code) -function foo(){{{{ -( -! -@ \ No newline at end of file diff --git a/scripts/jsdoc-toolkit/app/test/shared.js b/scripts/jsdoc-toolkit/app/test/shared.js deleted file mode 100644 index e1c277a6f..000000000 --- a/scripts/jsdoc-toolkit/app/test/shared.js +++ /dev/null @@ -1,42 +0,0 @@ - -/** - * Builtin object. - * @class - * @name Array - */ - -/**#@+ - * Extension to builtin array. - * @memberOf Array - * @method - */ - -/** - * @returns Boolen if some array members... - */ -Array.prototype.some = function(){}; - -/** - * Change every element of an array. - * @returns Filtered array copy. - */ -Array.prototype.filter = function(){}; - -/**#@-*/ - - -/** - * A first in, first out data structure. - * @constructor - */ -Queue = function(){}; - -/**#@+ - * Extension to Queue. - * @memberOf Queue - */ - -rewind = function(){ -} - -// should close automatically here. \ No newline at end of file diff --git a/scripts/jsdoc-toolkit/app/test/shared2.js b/scripts/jsdoc-toolkit/app/test/shared2.js deleted file mode 100644 index 3f7736a77..000000000 --- a/scripts/jsdoc-toolkit/app/test/shared2.js +++ /dev/null @@ -1,2 +0,0 @@ -startOver = function(){ -} \ No newline at end of file diff --git a/scripts/jsdoc-toolkit/app/test/shortcuts.js b/scripts/jsdoc-toolkit/app/test/shortcuts.js deleted file mode 100644 index f738f1e1c..000000000 --- a/scripts/jsdoc-toolkit/app/test/shortcuts.js +++ /dev/null @@ -1,22 +0,0 @@ -// /**#=+ -// * { -// * 'D': 'Date.prototype', -// * '$N': 'Number' -// * } -// */ -// var D = Date.prototype, -// $N = Number; -// -// D.locale = function(){ -// }; -// -// /** -// @return {string} The cardinal number string. -// */ -// $N.nth = function(n){ -// }; -// -// LOAD.file = function(){ -// } -// -// /**#=-*/ \ No newline at end of file diff --git a/scripts/jsdoc-toolkit/app/test/static_this.js b/scripts/jsdoc-toolkit/app/test/static_this.js deleted file mode 100644 index 9407b20f3..000000000 --- a/scripts/jsdoc-toolkit/app/test/static_this.js +++ /dev/null @@ -1,13 +0,0 @@ -/** the parent */ -var box = {}; - -/** @namespace */ -box.holder = {} - -box.holder.foo = function() { - /** the counter */ - this.counter = 1; -} - -box.holder.foo(); -print(box.holder.counter); diff --git a/scripts/jsdoc-toolkit/app/test/synonyms.js b/scripts/jsdoc-toolkit/app/test/synonyms.js deleted file mode 100644 index 09066b98f..000000000 --- a/scripts/jsdoc-toolkit/app/test/synonyms.js +++ /dev/null @@ -1,31 +0,0 @@ -/** - @class - @inherits Bar#zop as #my_zop -*/ -function Foo() { - /** this is a zip. */ - this.zip = function() {} - - /** from Bar */ - this.my_zop = new Bar().zop; -} - -/** - @class - @borrows Foo#zip as this.my_zip -*/ -function Bar() { - /** this is a zop. */ - this.zop = function() {} - - /** from Foo */ - this.my_zip = new Foo().zip; -} - -/** @namespace */ -var myObject = { - /** - @type function - */ - myFunc: getFunction() -} \ No newline at end of file diff --git a/scripts/jsdoc-toolkit/app/test/tosource.js b/scripts/jsdoc-toolkit/app/test/tosource.js deleted file mode 100644 index 706d47652..000000000 --- a/scripts/jsdoc-toolkit/app/test/tosource.js +++ /dev/null @@ -1,23 +0,0 @@ -/** - * @param {Object} object - * @return {string} - */ -function valueOf(object) {} - -/** - * @param {Object} object - * @return {string} - */ -function toString(object) {} - -/** - * @param {Object} object - * @return {string} - */ -function toSource(object) {} - -/** - * @param {Object} object - * @return {string} - */ -function constructor(object) {} \ No newline at end of file diff --git a/scripts/jsdoc-toolkit/app/test/variable_redefine.js b/scripts/jsdoc-toolkit/app/test/variable_redefine.js deleted file mode 100644 index 2c07da09a..000000000 --- a/scripts/jsdoc-toolkit/app/test/variable_redefine.js +++ /dev/null @@ -1,14 +0,0 @@ -/** @constructor */ -function Foo() { - var bar = 1; - bar = 2; // redefining a private - - this.baz = 1; - baz = 2; // global - - /** a private */ - var blap = { - /** in here */ - tada: 1 - } -} \ No newline at end of file diff --git a/scripts/jsdoc-toolkit/changes.txt b/scripts/jsdoc-toolkit/changes.txt deleted file mode 100644 index d664750f3..000000000 --- a/scripts/jsdoc-toolkit/changes.txt +++ /dev/null @@ -1,107 +0,0 @@ -== 2.3.2 == - - * Minor update to the usage notes and corrected the version number displayed in the output. - -== 2.3.1 == - - * Fixed HTML typo in allfiles template. (issue #228) - * Modified template to display version information for classes. - * Modified template to better support multiple methods with the same name. - * Fixed bug that caused template to error when backtick characters appeared around class names. - -== 2.3.0 == - - * Added option -u, --unique to avoid bug that causes multiple symbols with names that differ only by case to overwrite each others output on case-insensitive filesystems. ( issue #162 ) - * Fixed bug where {@links} in @deprecated tags did not resolve. ( issue #220 ) - * Fixed bug that caused parens around a function to make it to be unrecognized. ( issue #213 ) - * Fixed bug prevented explicit links to named anchors from working (thanks katgao.pku). ( issue #215 ) - * Fixed bug that prevented full description from appearing in file overview. ( issue #224 ) - -== 2.2.1 == - - * Fixed bug with class template, where sorting of methods was accidentally removed (thanks dezfowler). - * Added missing test files for the @exports unit tests. - -== 2.2.0 == - - * Fixed bug that caused exception when given a folder containing non-js files, even with the x commandline option set to "js". ( issue #193 ) - * Fixed typo in index template [patch submitted by olle]. ( issue #198 ) - * Modified @borrows tag experimentally to allow for missing "as ..." clause. - * Added support for the @exports tag, to allow one symbol to be documented as another. - * Added support for the -S option to document code following the Secure Modules pattern. - -== 2.1.0 == - - * Added support for the @event tag. - * Fixed bug that prevented the : character from appearing in symbol names. - * Fixed bug that prevented underscored symbols marked with @public being tagged as private. (issue #184 ) - * Fixed bug that randomly affected the @memberOf tag when the name of the symbol did not include the parent name. - * Fixed bug that prevented templates that were not in the jsdoc-toolkit folder from being found. ( issue #176 ) - * Added ability to check for trailing slash on template path. ( issue #177 ) - * Modified classDesc so that it no longer is appended with the constructor desc. - * Fixed call to plugin onDocCommentSrc. - * Added missing support for inline doc comments for function return types. ( issue #189 ) - * Added command line option -q, --quiet. - * Added command line option -E, --exclude. ( issue #143 ) - * Added 2 more hooks for plugins. ( issue #163 ) - * Added support for extending built-ins. ( issue #160 ) - * Added "compact" option to JSDOC.JsPlate.prototype.process. ( issue #159 ) - * @augments no longer documents static members as inherited. ( issue #138 ) - * @link to a class now goes to the page for that class, not the constructor. ( issue #178 ) - * Warnings of mismatched curly brace now include filename. ( issue #166 ) - * Fixed bug affecting template paths loaded via a configuration file when the trailing slash is missing. ( issue #191 ) - * Minor optimizations. - -== 2.0.2 == - - * Fixed bug that sometimes caused an example of division in the source code to be interpretted as a regex by the JsDoc Toolkit analyzer. ( issue #158 ) - * Fixed a bug that prevented private variables marked as @public from appearing in the documentation. ( issue #161 ) - * Fixed bug that prevented variable names with underscored properties from appearing in summaries. ( issue #173 ) - -== 2.0.1 == - - * Fixed bug that prevented @fileOverview tag from being recognized. - * Added support for @fieldOf as a synonym for @field plus @memberOf. - * Added support for @name tag in a @fileOverview comment to control the displayed name of the file. - * Added support for multiple @example tags. ( issue #152 ) - * Modified style sheet of jsdoc template to make more readable. ( issue #151 ) - * Fixed bug that prevented @since documentation from displaying correctly when it appeared in a class. ( issue #150 ) - * Fixed bug that caused inhertited properties to sometimes not resolve correctly. ( issue #144 ) - * Modified so that trailing whitespace in @example is always trimmed. ( issue #153 ) - * Added support for elseif to JsPlate. (hat tip to fredck) - * Added support for @location urls in the @overview comment to the jsdoc template. - -== Changes From Versions 1.4.0 to 2.0.0 == - - * Upgraded included version of Rhino from 1.6 to 1.7R1. - * Removed circular references in parsed documentation objects. - * Improved inheritance handling, now properties and events can be inherited same as methods. - * Improved handling of cross-file relationships, now having two related objects in separate files is not a problem. - * Improved ability to recognize membership of previously defined objects. - * Added ability to redefine parsing behavior with plugins. - * @methodOf is a synonym for @function and @memberOf. - * Added @default to document default values of members that are objects. - * Added ability to parse and refer to inner functions. - * Fixed bug that appeared when calling a method to set properties of the instance referred to by "this". - * Added ability to automatically create links to other symbols. - * New "jsdoc" template now produces fully W3C valid XHTML. - * Inline parameter type hint comments are now documented. - * Fixed error: Locally scoped variables (declared with var) no longer appear as global. - * It is now possible to run JsDoc Toolkit from any directory. - * Added support for inline {@link ...} tags. - * Added support for the -H command-line option to allow for custom content handlers. - * Tag names @inherits and @scope changed to @borrows and @lends. - ? Combining @constructor in a doclet with @lends now supported. - * Multiple @lend tags now supported. - * Added support for the @constructs tag, used inside a @lends block. - * Added support for the @constant tag. - * Fixed bug that prevented the use of [] as a default value. - * Added support for the @field tag. - * Added support for the @public tag (applied to inner functions). - * @namespace tag can now be applied to functions, not just object literals. - * Added support for the -s command line option to suppress source code output. - * Added new unit test framework. - * Underscored symbols are now treated as if they have a @private tag by default. - * Improved support for anonymous constructors. - * Added support for the nocode meta tag. - \ No newline at end of file diff --git a/scripts/jsdoc-toolkit/conf/sample.conf b/scripts/jsdoc-toolkit/conf/sample.conf deleted file mode 100644 index ad0f08e65..000000000 --- a/scripts/jsdoc-toolkit/conf/sample.conf +++ /dev/null @@ -1,31 +0,0 @@ -/* - This is an example of one way you could set up a configuration file to more - conveniently define some commandline options. You might like to do this if - you frequently reuse the same options. Note that you don't need to define - every option in this file, you can combine a configuration file with - additional options on the commandline if your wish. - - You would include this configuration file by running JsDoc Toolkit like so: - java -jar jsrun.jar app/run.js -c=conf/sample.conf - -*/ - -{ - // source files to use - _: ['app/test/jsdoc_test.js'], - - // document all functions, even uncommented ones - a: true, - - // including those marked @private - p: true, - - // some extra variables I want to include - D: {generatedBy: "Michael Mathews", copyright: "2008"}, - - // use this directory as the output directory - d: "docs", - - // use this template - t: "templates/jsdoc" -} \ No newline at end of file diff --git a/scripts/jsdoc-toolkit/java/build.xml b/scripts/jsdoc-toolkit/java/build.xml deleted file mode 100644 index bb845ce3a..000000000 --- a/scripts/jsdoc-toolkit/java/build.xml +++ /dev/null @@ -1,36 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/scripts/jsdoc-toolkit/java/build_1.4.xml b/scripts/jsdoc-toolkit/java/build_1.4.xml deleted file mode 100644 index ab408a4c4..000000000 --- a/scripts/jsdoc-toolkit/java/build_1.4.xml +++ /dev/null @@ -1,36 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/scripts/jsdoc-toolkit/java/classes/js.jar b/scripts/jsdoc-toolkit/java/classes/js.jar deleted file mode 100644 index 0352cb180..000000000 Binary files a/scripts/jsdoc-toolkit/java/classes/js.jar and /dev/null differ diff --git a/scripts/jsdoc-toolkit/java/src/JsDebugRun.java b/scripts/jsdoc-toolkit/java/src/JsDebugRun.java deleted file mode 100755 index 319a5c67b..000000000 --- a/scripts/jsdoc-toolkit/java/src/JsDebugRun.java +++ /dev/null @@ -1,21 +0,0 @@ -/** - * A trivial bootstrap class that simply adds the path to the - * .js file as an argument to the Rhino call. This little hack - * allows the code in the .js file to have access to it's own - * path via the Rhino arguments object. This is necessary to - * allow the .js code to find resource files in a location - * relative to itself. - * - * USAGE: java -jar jsdebug.jar path/to/file.js - */ -public class JsDebugRun { - public static void main(String[] args) { - String[] jsargs = {"-j="+args[0]}; - - String[] allArgs = new String[jsargs.length + args.length]; - System.arraycopy(args, 0, allArgs, 0, args.length); - System.arraycopy(jsargs, 0, allArgs, args.length ,jsargs.length); - - org.mozilla.javascript.tools.debugger.Main.main(allArgs); - } -} diff --git a/scripts/jsdoc-toolkit/java/src/JsRun.java b/scripts/jsdoc-toolkit/java/src/JsRun.java deleted file mode 100644 index 25f519a95..000000000 --- a/scripts/jsdoc-toolkit/java/src/JsRun.java +++ /dev/null @@ -1,21 +0,0 @@ -/** - * A trivial bootstrap class that simply adds the path to the - * .js file as an argument to the Rhino call. This little hack - * allows the code in the .js file to have access to it's own - * path via the Rhino arguments object. This is necessary to - * allow the .js code to find resource files in a location - * relative to itself. - * - * USAGE: java -jar jsrun.jar path/to/file.js - */ -public class JsRun { - public static void main(String[] args) { - String[] jsargs = {"-j="+args[0]}; - - String[] allArgs = new String[jsargs.length + args.length]; - System.arraycopy(args, 0, allArgs, 0, args.length); - System.arraycopy(jsargs, 0, allArgs, args.length ,jsargs.length); - - org.mozilla.javascript.tools.shell.Main.main(allArgs); - } -} diff --git a/scripts/jsdoc-toolkit/jsdebug.jar b/scripts/jsdoc-toolkit/jsdebug.jar deleted file mode 100644 index a0ac7daa6..000000000 Binary files a/scripts/jsdoc-toolkit/jsdebug.jar and /dev/null differ diff --git a/scripts/jsdoc-toolkit/jsrun.jar b/scripts/jsdoc-toolkit/jsrun.jar deleted file mode 100644 index 49c03f4c6..000000000 Binary files a/scripts/jsdoc-toolkit/jsrun.jar and /dev/null differ diff --git a/scripts/jsdoc-toolkit/jsrun.sh b/scripts/jsdoc-toolkit/jsrun.sh deleted file mode 100644 index 74ca79c05..000000000 --- a/scripts/jsdoc-toolkit/jsrun.sh +++ /dev/null @@ -1,52 +0,0 @@ -#!/bin/ksh - -# launcher script for jsdoc -# Author: Avi Deitcher -# -# This program is released under the MIT License as follows: - -# Copyright (c) 2008-2009 Atomic Inc -# -#Permission is hereby granted, free of charge, to any person -#obtaining a copy of this software and associated documentation -#files (the "Software"), to deal in the Software without -#restriction, including without limitation the rights to use, -#copy, modify, merge, publish, distribute, sublicense, and/or sell -#copies of the Software, and to permit persons to whom the -#Software is furnished to do so, subject to the following -#conditions: -## -#The above copyright notice and this permission notice shall be -#included in all copies or substantial portions of the Software. -# -#THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -#EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES -#OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -#NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT -#HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, -#WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING -#FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR -#OTHER DEALINGS IN THE SOFTWARE. -# - - -if [[ -n "$JSDOCDIR" ]]; then - _DOCDIR="-Djsdoc.dir=$JSDOCDIR" - _APPDIR="$JSDOCDIR/app" - _BASEDIR="$JSDOCDIR" -else - _DOCDIR="" - _APPDIR="./app" - _BASEDIR="." -fi - -if [[ -n "$JSDOCTEMPLATEDIR" ]]; then - _TDIR="-Djsdoc.template.dir=$JSDOCTEMPLATEDIR" -else - _TDIR="" -fi - -CMD="java $_DOCDIR $_TDIR -jar $_BASEDIR/jsrun.jar $_APPDIR/run.js $@" -echo $CMD -$CMD - diff --git a/scripts/jsdoc-toolkit/templates/jsdoc/allclasses.tmpl b/scripts/jsdoc-toolkit/templates/jsdoc/allclasses.tmpl deleted file mode 100644 index 32f43582f..000000000 --- a/scripts/jsdoc-toolkit/templates/jsdoc/allclasses.tmpl +++ /dev/null @@ -1,17 +0,0 @@ -
{+new Link().toFile("index.html").withText("Class Index")+} -| {+new Link().toFile("files.html").withText("File Index")+}
-
-

Classes

-
    - -
  • {! - if (thisClass.alias == "_global_") { - output += ""+new Link().toClass(thisClass.alias)+""; - } - else { - output += new Link().toClass(thisClass.alias); - } - !}
  • -
    -
-
\ No newline at end of file diff --git a/scripts/jsdoc-toolkit/templates/jsdoc/allfiles.tmpl b/scripts/jsdoc-toolkit/templates/jsdoc/allfiles.tmpl deleted file mode 100644 index 4c7de1cd5..000000000 --- a/scripts/jsdoc-toolkit/templates/jsdoc/allfiles.tmpl +++ /dev/null @@ -1,56 +0,0 @@ - - - - - {! Link.base = ""; /* all generated links will be relative to this */ !} - JsDoc Reference - File Index - - - - - - - {+include("static/header.html")+} - -
- {+publish.classesIndex+} -
- -
-

File Index

- - -
-

{+new Link().toSrc(item.alias).withText(item.name)+}

- {+resolveLinks(item.desc)+} -
- -
Author:
-
{+item.author+}
-
- -
Version:
-
{+item.version+}
-
- {! var locations = item.comment.getTag('location').map(function($){return $.toString().replace(/(^\$ ?| ?\$$)/g, '').replace(/^HeadURL: https:/g, 'http:');}) !} - -
Location:
- -
{+location+}
-
-
-
-
-
-
- -
-
- ©{+JSDOC.opt.D.copyright+}
- Documentation generated by JsDoc Toolkit {+JSDOC.VERSION+} on {+new Date()+} -
- - \ No newline at end of file diff --git a/scripts/jsdoc-toolkit/templates/jsdoc/class.tmpl b/scripts/jsdoc-toolkit/templates/jsdoc/class.tmpl deleted file mode 100644 index 181ed1188..000000000 --- a/scripts/jsdoc-toolkit/templates/jsdoc/class.tmpl +++ /dev/null @@ -1,649 +0,0 @@ - - - - - - {! Link.base = "../"; /* all generated links will be relative to this */ !} - JsDoc Reference - {+data.alias+} - - - - - - - - {+include("static/header.html")+} - - - -
- - {+publish.classesIndex+} - -
- -
- -

- {! - var classType = ""; - - if (data.isBuiltin()) { - classType += "Built-In "; - } - - if (data.isNamespace) { - if (data.is('FUNCTION')) { - classType += "Function "; - } - classType += "Namespace "; - } - else { - classType += "Class "; - } - !} - {+classType+}{+data.alias+} -

- - -

-
Version - {+ data.version +}.
-
-
Extends - {+ - data.augments - .sort() - .map( - function($) { return new Link().toSymbol($); } - ) - .join(", ") - +}.
-
- - {+resolveLinks(data.classDesc)+} - - {# isn't defined in any file #} -
Defined in: {+new Link().toSrc(data.srcFile)+}. -
-

- - - - - - - - - - - - - - - - - -
{+classType+}Summary
Constructor AttributesConstructor Name and Description
{! - if (data.isPrivate) output += "<private> "; - if (data.isInner) output += "<inner> "; - !}  -
- {+ new Link().toSymbol(data.alias).inner('constructor')+}{+ makeSignature(data.params) +} -
-
{+resolveLinks(summarize(data.desc))+}
-
-
- - - - {! var ownProperties = data.properties.filter(function($){return $.memberOf == data.alias && !$.isNamespace}).sort(makeSortby("name")); !} - - - - - - - - - - - - - - - - - -
Field Summary
Field AttributesField Name and Description
{! - if (member.isPrivate) output += "<private> "; - if (member.isInner) output += "<inner> "; - if (member.isStatic) output += "<static> "; - if (member.isConstant) output += "<constant> "; - !}  -
- {+member.memberOf+}.{+new Link().toSymbol(member.alias).withText(member.name)+} -
-
{+resolveLinks(summarize(member.desc))+}
-
-
- - -
- {! - var borrowedMembers = data.properties.filter(function($) {return $.memberOf != data.alias}); - - var contributers = []; - borrowedMembers.map(function($) {if (contributers.indexOf($.memberOf) < 0) contributers.push($.memberOf)}); - for (var i = 0, l = contributers.length; i < l; i++) { - output += - "
Fields borrowed from class "+new Link().toSymbol(contributers[i])+":
" - + - "
" + - borrowedMembers - .filter( - function($) { return $.memberOf == contributers[i] } - ) - .sort(makeSortby("name")) - .map( - function($) { return new Link().toSymbol($.alias).withText($.name) } - ) - .join(", ") - + - "
"; - } - !} -
-
-
- - - - {! var ownMethods = data.methods.filter(function($){return $.memberOf == data.alias && !$.isNamespace}).sort(makeSortby("name")); !} - - - - - - - - - - - - - - - - - -
Method Summary
Method AttributesMethod Name and Description
{! - if (member.isPrivate) output += "<private> "; - if (member.isInner) output += "<inner> "; - if (member.isStatic) output += "<static> "; - !}  -
{+member.memberOf+}.{+new Link().toSymbol(member.alias).withText(member.name.replace(/\^\d+$/, ''))+}{+makeSignature(member.params)+} -
-
{+resolveLinks(summarize(member.desc))+}
-
-
- - -
- {! - var borrowedMembers = data.methods.filter(function($) {return $.memberOf != data.alias}); - var contributers = []; - borrowedMembers.map(function($) {if (contributers.indexOf($.memberOf) < 0) contributers.push($.memberOf)}); - for (var i = 0, l = contributers.length; i < l; i++) { - output += - "
Methods borrowed from class "+new Link().toSymbol(contributers[i])+":
" - + - "
" + - borrowedMembers - .filter( - function($) { return $.memberOf == contributers[i] } - ) - .sort(makeSortby("name")) - .map( - function($) { return new Link().toSymbol($.alias).withText($.name) } - ) - .join(", ") - + - "
"; - } - - !} -
-
-
- - - {! var ownEvents = data.events.filter(function($){return $.memberOf == data.alias && !$.isNamespace}).sort(makeSortby("name")); !} - - - - - - - - - - - - - - - - - -
Event Summary
Event AttributesEvent Name and Description
{! - if (member.isPrivate) output += "<private> "; - if (member.isInner) output += "<inner> "; - if (member.isStatic) output += "<static> "; - !}  -
{+member.memberOf+}.{+new Link().toSymbol(member.alias).withText(member.name)+}{+makeSignature(member.params)+} -
-
{+resolveLinks(summarize(member.desc))+}
-
-
- - -
- {! - var borrowedMembers = data.events.filter(function($) {return $.memberOf != data.alias}); - var contributers = []; - borrowedMembers.map(function($) {if (contributers.indexOf($.memberOf) < 0) contributers.push($.memberOf)}); - for (var i = 0, l = contributers.length; i < l; i++) { - output += - "
Events borrowed from class "+new Link().toSymbol(contributers[i])+":
" - + - "
" + - borrowedMembers - .filter( - function($) { return $.memberOf == contributers[i] } - ) - .sort(makeSortby("name")) - .map( - function($) { return new Link().toSymbol($.alias).withText($.name) } - ) - .join(", ") - + - "
"; - } - - !} -
-
-
- - - -
-
- {+classType+}Detail -
- -
{! - if (data.isPrivate) output += "<private> "; - if (data.isInner) output += "<inner> "; - !} - {+ data.alias +}{+ makeSignature(data.params) +} -
- -
- {+resolveLinks(data.desc)+} -
Author: {+data.author+}.
-
- - - -
{+example+}
-
-
- - - -
-
Parameters:
- -
- {+((item.type)?""+("{"+(new Link().toSymbol(item.type)+"} ")) : "")+} {+item.name+} - Optional, Default: {+item.defaultValue+} -
-
{+resolveLinks(item.desc)+}
-
-
-
- -
-
Deprecated:
-
- {+resolveLinks(data.deprecated)+} -
-
-
- -
-
Since:
-
{+ data.since +}
-
-
- -
-
Throws:
- -
- {+((item.type)?"{"+(new Link().toSymbol(item.type))+"} " : "")+} {+item.name+} -
-
{+resolveLinks(item.desc)+}
-
-
-
- -
-
Returns:
- -
{+((item.type)?"{"+(new Link().toSymbol(item.type))+"} " : "")+}{+resolveLinks(item.desc)+}
-
-
-
- -
-
Requires:
- -
{+ resolveLinks(item) +}
-
-
-
- -
-
See:
- -
{+ new Link().toSymbol(item) +}
-
-
-
- -
-
- - - -
- Field Detail -
- - -
{! - if (member.isPrivate) output += "<private> "; - if (member.isInner) output += "<inner> "; - if (member.isStatic) output += "<static> "; - if (member.isConstant) output += "<constant> "; - !} - - {{+new Link().toSymbol(member.type)+}} - {+member.memberOf+}.{+member.name+} - -
-
- {+resolveLinks(member.desc)+} - -
- Defined in: {+new Link().toSrc(member.srcFile)+}. -
-
Author: {+member.author+}.
-
- - - -
{+example+}
-
-
- - -
-
Deprecated:
-
- {+ resolveLinks(member.deprecated) +} -
-
-
- -
-
Since:
-
{+ member.since +}
-
-
- -
-
See:
- -
{+ new Link().toSymbol(item) +}
-
-
-
- -
-
Default Value:
-
- {+resolveLinks(member.defaultValue)+} -
-
-
- -
-
-
- - - -
- Method Detail -
- - -
{! - if (member.isPrivate) output += "<private> "; - if (member.isInner) output += "<inner> "; - if (member.isStatic) output += "<static> "; - !} - - {{+new Link().toSymbol(member.type)+}} - {+member.memberOf+}.{+member.name.replace(/\^\d+$/, '')+}{+makeSignature(member.params)+} - -
-
- {+resolveLinks(member.desc)+} - -
- Defined in: {+new Link().toSrc(member.srcFile)+}. -
-
Author: {+member.author+}.
-
- - - -
{+example+}
-
-
- - -
-
Parameters:
- -
- {+((item.type)?"{"+(new Link().toSymbol(item.type))+"} " : "")+}{+item.name+} - Optional, Default: {+item.defaultValue+} -
-
{+resolveLinks(item.desc)+}
-
-
-
- -
-
Deprecated:
-
- {+ resolveLinks(member.deprecated) +} -
-
-
- -
-
Since:
-
{+ member.since +}
-
- -
- -
-
Throws:
- -
- {+((item.type)?"{"+(new Link().toSymbol(item.type))+"} " : "")+} {+item.name+} -
-
{+resolveLinks(item.desc)+}
-
-
-
- -
-
Returns:
- -
{+((item.type)?"{"+(new Link().toSymbol(item.type))+"} " : "")+}{+resolveLinks(item.desc)+}
-
-
-
- -
-
Requires:
- -
{+ resolveLinks(item) +}
-
-
-
- -
-
See:
- -
{+ new Link().toSymbol(item) +}
-
-
-
- -
-
-
- - - -
- Event Detail -
- - -
{! - if (member.isPrivate) output += "<private> "; - if (member.isInner) output += "<inner> "; - if (member.isStatic) output += "<static> "; - !} - - {{+new Link().toSymbol(member.type)+}} - {+member.memberOf+}.{+member.name+}{+makeSignature(member.params)+} - -
-
- {+resolveLinks(member.desc)+} - -
- Defined in: {+new Link().toSrc(member.srcFile)+}. -
-
Author: {+member.author+}.
-
- - - -
{+example+}
-
-
- - -
-
Parameters:
- -
- {+((item.type)?"{"+(new Link().toSymbol(item.type))+"} " : "")+}{+item.name+} - Optional, Default: {+item.defaultValue+} -
-
{+ resolveLinks(item.desc) +}
-
-
-
- -
-
Deprecated:
-
- {+ resolveLinks(member.deprecated) +} -
-
-
- -
-
Since:
-
{+ member.since +}
-
- -
- -
-
Throws:
- -
- {+((item.type)?"{"+(new Link().toSymbol(item.type))+"} " : "")+} {+item.name+} -
-
{+ resolveLinks(item.desc) +}
-
-
-
- -
-
Returns:
- -
{+((item.type)?"{"+(new Link().toSymbol(item.type))+"} " : "")+}{+resolveLinks(item.desc)+}
-
-
-
- -
-
Requires:
- -
{+ resolveLinks(item) +}
-
-
-
- -
-
See:
- -
{+ new Link().toSymbol(item) +}
-
-
-
- -
-
-
- -
-
- - - -
- ©{+JSDOC.opt.D.copyright+}
- Documentation generated by JsDoc Toolkit {+JSDOC.VERSION+} on {+new Date()+} -
- - diff --git a/scripts/jsdoc-toolkit/templates/jsdoc/index.tmpl b/scripts/jsdoc-toolkit/templates/jsdoc/index.tmpl deleted file mode 100644 index a5dc1158e..000000000 --- a/scripts/jsdoc-toolkit/templates/jsdoc/index.tmpl +++ /dev/null @@ -1,39 +0,0 @@ - - - - - - JsDoc Reference - Index - - - - - - - {+include("static/header.html")+} - -
- {+publish.classesIndex+} -
- -
-

Class Index

- - -
-

{+(new Link().toSymbol(thisClass.alias))+}

- {+resolveLinks(summarize(thisClass.classDesc))+} -
-
-
- -
-
- ©{+JSDOC.opt.D.copyright+}
- Documentation generated by JsDoc Toolkit {+JSDOC.VERSION+} on {+new Date()+} -
- - \ No newline at end of file diff --git a/scripts/jsdoc-toolkit/templates/jsdoc/publish.js b/scripts/jsdoc-toolkit/templates/jsdoc/publish.js deleted file mode 100644 index 446c92b13..000000000 --- a/scripts/jsdoc-toolkit/templates/jsdoc/publish.js +++ /dev/null @@ -1,200 +0,0 @@ -/** Called automatically by JsDoc Toolkit. */ -function publish(symbolSet) { - publish.conf = { // trailing slash expected for dirs - ext: ".html", - outDir: JSDOC.opt.d || SYS.pwd+"../out/jsdoc/", - templatesDir: JSDOC.opt.t || SYS.pwd+"../templates/jsdoc/", - symbolsDir: "symbols/", - srcDir: "symbols/src/" - }; - - // is source output is suppressed, just display the links to the source file - if (JSDOC.opt.s && defined(Link) && Link.prototype._makeSrcLink) { - Link.prototype._makeSrcLink = function(srcFilePath) { - return "<"+srcFilePath+">"; - } - } - - // create the folders and subfolders to hold the output - IO.mkPath((publish.conf.outDir+"symbols/src").split("/")); - - // used to allow Link to check the details of things being linked to - Link.symbolSet = symbolSet; - - // create the required templates - try { - var classTemplate = new JSDOC.JsPlate(publish.conf.templatesDir+"class.tmpl"); - var classesTemplate = new JSDOC.JsPlate(publish.conf.templatesDir+"allclasses.tmpl"); - } - catch(e) { - print("Couldn't create the required templates: "+e); - quit(); - } - - // some ustility filters - function hasNoParent($) {return ($.memberOf == "")} - function isaFile($) {return ($.is("FILE"))} - function isaClass($) {return ($.is("CONSTRUCTOR") || $.isNamespace)} - - // get an array version of the symbolset, useful for filtering - var symbols = symbolSet.toArray(); - - // create the hilited source code files - var files = JSDOC.opt.srcFiles; - for (var i = 0, l = files.length; i < l; i++) { - var file = files[i]; - var srcDir = publish.conf.outDir + "symbols/src/"; - makeSrcFile(file, srcDir); - } - - // get a list of all the classes in the symbolset - var classes = symbols.filter(isaClass).sort(makeSortby("alias")); - - // create a filemap in which outfiles must be to be named uniquely, ignoring case - if (JSDOC.opt.u) { - var filemapCounts = {}; - Link.filemap = {}; - for (var i = 0, l = classes.length; i < l; i++) { - var lcAlias = classes[i].alias.toLowerCase(); - - if (!filemapCounts[lcAlias]) filemapCounts[lcAlias] = 1; - else filemapCounts[lcAlias]++; - - Link.filemap[classes[i].alias] = - (filemapCounts[lcAlias] > 1)? - lcAlias+"_"+filemapCounts[lcAlias] : lcAlias; - } - } - - // create a class index, displayed in the left-hand column of every class page - Link.base = "../"; - publish.classesIndex = classesTemplate.process(classes); // kept in memory - - // create each of the class pages - for (var i = 0, l = classes.length; i < l; i++) { - var symbol = classes[i]; - - symbol.events = symbol.getEvents(); // 1 order matters - symbol.methods = symbol.getMethods(); // 2 - - var output = ""; - output = classTemplate.process(symbol); - - IO.saveFile(publish.conf.outDir+"symbols/", ((JSDOC.opt.u)? Link.filemap[symbol.alias] : symbol.alias) + publish.conf.ext, output); - } - - // regenerate the index with different relative links, used in the index pages - Link.base = ""; - publish.classesIndex = classesTemplate.process(classes); - - // create the class index page - try { - var classesindexTemplate = new JSDOC.JsPlate(publish.conf.templatesDir+"index.tmpl"); - } - catch(e) { print(e.message); quit(); } - - var classesIndex = classesindexTemplate.process(classes); - IO.saveFile(publish.conf.outDir, "index"+publish.conf.ext, classesIndex); - classesindexTemplate = classesIndex = classes = null; - - // create the file index page - try { - var fileindexTemplate = new JSDOC.JsPlate(publish.conf.templatesDir+"allfiles.tmpl"); - } - catch(e) { print(e.message); quit(); } - - var documentedFiles = symbols.filter(isaFile); // files that have file-level docs - var allFiles = []; // not all files have file-level docs, but we need to list every one - - for (var i = 0; i < files.length; i++) { - allFiles.push(new JSDOC.Symbol(files[i], [], "FILE", new JSDOC.DocComment("/** */"))); - } - - for (var i = 0; i < documentedFiles.length; i++) { - var offset = files.indexOf(documentedFiles[i].alias); - allFiles[offset] = documentedFiles[i]; - } - - allFiles = allFiles.sort(makeSortby("name")); - - // output the file index page - var filesIndex = fileindexTemplate.process(allFiles); - IO.saveFile(publish.conf.outDir, "files"+publish.conf.ext, filesIndex); - fileindexTemplate = filesIndex = files = null; -} - - -/** Just the first sentence (up to a full stop). Should not break on dotted variable names. */ -function summarize(desc) { - if (typeof desc != "undefined") - return desc.match(/([\w\W]+?\.)[^a-z0-9_$]/i)? RegExp.$1 : desc; -} - -/** Make a symbol sorter by some attribute. */ -function makeSortby(attribute) { - return function(a, b) { - if (a[attribute] != undefined && b[attribute] != undefined) { - a = a[attribute].toLowerCase(); - b = b[attribute].toLowerCase(); - if (a < b) return -1; - if (a > b) return 1; - return 0; - } - } -} - -/** Pull in the contents of an external file at the given path. */ -function include(path) { - var path = publish.conf.templatesDir+path; - return IO.readFile(path); -} - -/** Turn a raw source file into a code-hilited page in the docs. */ -function makeSrcFile(path, srcDir, name) { - if (JSDOC.opt.s) return; - - if (!name) { - name = path.replace(/\.\.?[\\\/]/g, "").replace(/[\\\/]/g, "_"); - name = name.replace(/\:/g, "_"); - } - - var src = {path: path, name:name, charset: IO.encoding, hilited: ""}; - - if (defined(JSDOC.PluginManager)) { - JSDOC.PluginManager.run("onPublishSrc", src); - } - - if (src.hilited) { - IO.saveFile(srcDir, name+publish.conf.ext, src.hilited); - } -} - -/** Build output for displaying function parameters. */ -function makeSignature(params) { - if (!params) return "()"; - var signature = "(" - + - params.filter( - function($) { - return $.name.indexOf(".") == -1; // don't show config params in signature - } - ).map( - function($) { - return $.name; - } - ).join(", ") - + - ")"; - return signature; -} - -/** Find symbol {@link ...} strings in text and turn into html links */ -function resolveLinks(str, from) { - str = str.replace(/\{@link ([^} ]+) ?\}/gi, - function(match, symbolName) { - return new Link().toSymbol(symbolName); - } - ); - - return str; -} diff --git a/scripts/jsdoc-toolkit/templates/jsdoc/static/default.css b/scripts/jsdoc-toolkit/templates/jsdoc/static/default.css deleted file mode 100644 index 97e021ef6..000000000 --- a/scripts/jsdoc-toolkit/templates/jsdoc/static/default.css +++ /dev/null @@ -1,162 +0,0 @@ -/* default.css */ -body -{ - font: 12px "Lucida Grande", Tahoma, Arial, Helvetica, sans-serif; - width: 800px; -} - -.header -{ - clear: both; - background-color: #ccc; - padding: 8px; -} - -h1 -{ - font-size: 150%; - font-weight: bold; - padding: 0; - margin: 1em 0 0 .3em; -} - -hr -{ - border: none 0; - border-top: 1px solid #7F8FB1; - height: 1px; -} - -pre.code -{ - display: block; - padding: 8px; - border: 1px dashed #ccc; -} - -#index -{ - margin-top: 24px; - float: left; - width: 160px; - position: absolute; - left: 8px; - background-color: #F3F3F3; - padding: 8px; -} - -#content -{ - margin-left: 190px; - width: 600px; -} - -.classList -{ - list-style-type: none; - padding: 0; - margin: 0 0 0 8px; - font-family: arial, sans-serif; - font-size: 1em; - overflow: auto; -} - -.classList li -{ - padding: 0; - margin: 0 0 8px 0; -} - -.summaryTable { width: 100%; } - -h1.classTitle -{ - font-size:170%; - line-height:130%; -} - -h2 { font-size: 110%; } -caption, div.sectionTitle -{ - background-color: #7F8FB1; - color: #fff; - font-size:130%; - text-align: left; - padding: 2px 6px 2px 6px; - border: 1px #7F8FB1 solid; -} - -div.sectionTitle { margin-bottom: 8px; } -.summaryTable thead { display: none; } - -.summaryTable td -{ - vertical-align: top; - padding: 4px; - border-bottom: 1px #7F8FB1 solid; - border-right: 1px #7F8FB1 solid; -} - -/*col#summaryAttributes {}*/ -.summaryTable td.attributes -{ - border-left: 1px #7F8FB1 solid; - width: 140px; - text-align: right; -} - -td.attributes, .fixedFont -{ - line-height: 15px; - color: #002EBE; - font-family: "Courier New",Courier,monospace; - font-size: 13px; -} - -.summaryTable td.nameDescription -{ - text-align: left; - font-size: 13px; - line-height: 15px; -} - -.summaryTable td.nameDescription, .description -{ - line-height: 15px; - padding: 4px; - padding-left: 4px; -} - -.summaryTable { margin-bottom: 8px; } - -ul.inheritsList -{ - list-style: square; - margin-left: 20px; - padding-left: 0; -} - -.detailList { - margin-left: 20px; - line-height: 15px; -} -.detailList dt { margin-left: 20px; } - -.detailList .heading -{ - font-weight: bold; - padding-bottom: 6px; - margin-left: 0; -} - -.light, td.attributes, .light a:link, .light a:visited -{ - color: #777; - font-style: italic; -} - -.fineprint -{ - text-align: right; - font-size: 10px; -} \ No newline at end of file diff --git a/scripts/jsdoc-toolkit/templates/jsdoc/static/header.html b/scripts/jsdoc-toolkit/templates/jsdoc/static/header.html deleted file mode 100644 index 353b735a4..000000000 --- a/scripts/jsdoc-toolkit/templates/jsdoc/static/header.html +++ /dev/null @@ -1,2 +0,0 @@ - \ No newline at end of file diff --git a/scripts/jsdoc-toolkit/templates/jsdoc/static/index.html b/scripts/jsdoc-toolkit/templates/jsdoc/static/index.html deleted file mode 100644 index 661f6f67d..000000000 --- a/scripts/jsdoc-toolkit/templates/jsdoc/static/index.html +++ /dev/null @@ -1,19 +0,0 @@ - - - - - Generated Javascript Documentation - - - - - - <body> - <p> - This document is designed to be viewed using the frames feature. If you see this message, you are using a non-frame-capable web client. - </p> - </body> - - - \ No newline at end of file diff --git a/scripts/jsdoc-toolkit/templates/jsdoc/symbol.tmpl b/scripts/jsdoc-toolkit/templates/jsdoc/symbol.tmpl deleted file mode 100644 index f8f4bd1f6..000000000 --- a/scripts/jsdoc-toolkit/templates/jsdoc/symbol.tmpl +++ /dev/null @@ -1,35 +0,0 @@ - - {+data.name+} - {+data.memberOf+} - {+data.isStatic+} - {+data.isa+} - {+data.desc+} - {+data.classDesc+} - - - - {+method.name+} - {+method.memberOf+} - {+method.isStatic+} - {+method.desc+} - - - {+param.type+} - {+param.name+} - {+param.desc+} - {+param.defaultValue+} - - - - - - - - {+property.name+} - {+property.memberOf+} - {+property.isStatic+} - {+property.desc+} - {+property.type+} - - - diff --git a/scripts/jsunit/app/BaseUiManager.js b/scripts/jsunit/app/BaseUiManager.js deleted file mode 100644 index b6ce836c1..000000000 --- a/scripts/jsunit/app/BaseUiManager.js +++ /dev/null @@ -1,36 +0,0 @@ -JsUnit.BaseUiManager = function() { -} - -JsUnit.BaseUiManager.prototype.makeHTMLSafe = function (string) { - string = string.replace(/&/g, '&'); - string = string.replace(//g, '>'); - return string; -} - -JsUnit.BaseUiManager.prototype.problemDetailMessageFor = function (excep) { - if (excep.isJsUnitFailure) { - var result = ''; - if (excep.comment != null) - result += ('"' + excep.comment + '"\n'); - - result += excep.jsUnitMessage; - - if (excep.stackTrace) - result += '\n\nStack trace follows:\n' + excep.stackTrace; - return result; - } - else { - var result = 'Error message is:\n"'; - result += - (typeof(excep.description) == 'undefined') ? - excep : - excep.description; - result += '"'; - - if (typeof(excep.stack) != 'undefined') // Mozilla only - result += '\n\nStack trace follows:\n' + excep.stack; - return result; - } -} - diff --git a/scripts/jsunit/app/ClassicUiManager.js b/scripts/jsunit/app/ClassicUiManager.js deleted file mode 100644 index 6f40a78a8..000000000 --- a/scripts/jsunit/app/ClassicUiManager.js +++ /dev/null @@ -1,288 +0,0 @@ -JsUnit.ClassicUiManager = function(testManager) { - this._testManager = testManager; -} - -JsUnit.Util.inherit(JsUnit.BaseUiManager, JsUnit.ClassicUiManager); - -JsUnit.ClassicUiManager.prototype.onLoad = function(mainFrame) { - var mainData = mainFrame.frames.mainData; - - // form elements on mainData frame - this.testFileName = mainData.document.testRunnerForm.testFileName; - this.runButton = mainData.document.testRunnerForm.runButton; - this.stopButton = mainData.document.testRunnerForm.stopButton; - this.traceLevel = mainData.document.testRunnerForm.traceLevel; - this.closeTraceWindowOnNewRun = mainData.document.testRunnerForm.closeTraceWindowOnNewRun; - this.timeout = mainData.document.testRunnerForm.timeout; - this.setUpPageTimeout = mainData.document.testRunnerForm.setUpPageTimeout; - - // image output - this.progressBar = mainFrame.frames.mainProgress.document.progress; - - this.problemsListField = mainFrame.frames.mainErrors.document.testRunnerForm.problemsList; - - // 'layer' output frames - this.uiFrames = new Object(); - this.uiFrames.mainStatus = mainFrame.frames.mainStatus; - - var mainCounts = mainFrame.frames.mainCounts; - - this.uiFrames.mainCountsErrors = mainCounts.frames.mainCountsErrors; - this.uiFrames.mainCountsFailures = mainCounts.frames.mainCountsFailures; - this.uiFrames.mainCountsRuns = mainCounts.frames.mainCountsRuns; - - this._windowForAllProblemMessages = null; - - this._traceWindow = null; - this.popupWindowsBlocked = false; -} - -JsUnit.ClassicUiManager.prototype.getUiFrameUrl = function() { - return './app/main-frame.html'; -} - -JsUnit.ClassicUiManager.prototype.getTestFileName = function() { - return this.testFileName.value; -} - -JsUnit.ClassicUiManager.prototype.getTraceLevel = function() { - var levelNumber = eval(this.traceLevel.value); - return JsUnitTraceLevel.findByLevelNumber(levelNumber); -} - -JsUnit.ClassicUiManager.prototype.starting = function () { - this._setRunButtonEnabled(false); - this._clearProblemsList(); - - this.initializeTracer(); - - var traceLevel = this.getTraceLevel(); - if (traceLevel != JsUnitTraceLevel.NONE) { - this.openTracer(); - } -} - -JsUnit.ClassicUiManager.prototype.finishing = function () { - this._setRunButtonEnabled(true); - - this.finalizeTracer(); -} - -JsUnit.ClassicUiManager.prototype.submittingResults = function () { - this.runButton.disabled = true; - this.stopButton.disabled = true; -} - -JsUnit.ClassicUiManager.prototype.initializeTracer = function() { - if (this._traceWindow != null && this.closeTraceWindowOnNewRun.checked) - this._traceWindow.close(); - this._traceWindow = null; -} - -JsUnit.ClassicUiManager.prototype.finalizeTracer = function() { - if (this._traceWindow != null) { - this._traceWindow.document.write('<\/body>\n<\/html>'); - this._traceWindow.document.close(); - } -} - -JsUnit.ClassicUiManager.prototype.openTracer = function() { - var traceWindow = this._getTraceWindow(); - if (traceWindow) { - traceWindow.focus(); - } - else { - this.fatalError('Tracing requires popup windows, and popups are blocked in your browser.\n\nPlease enable popups if you wish to use tracing.'); - } -} - -JsUnit.ClassicUiManager.prototype._clearProblemsList = function () { - var listField = this.problemsListField; - var initialLength = listField.options.length; - - for (var i = 0; i < initialLength; i++) - listField.remove(0); -} - -JsUnit.ClassicUiManager.prototype._setRunButtonEnabled = function (b) { - this.runButton.disabled = !b; - this.stopButton.disabled = b; -} - -JsUnit.ClassicUiManager.prototype._setTextOnLayer = function (layerName, str) { - try { - var content; - if (content = this.uiFrames[layerName].document.getElementById('content')) - content.innerHTML = str; - else - throw new Error("No content div found."); - } - catch (e) { - var html = ''; - html += ''; - html += '<\/head>'; - html += '
'; - html += str; - html += '<\/div><\/body>'; - html += '<\/html>'; - this.uiFrames[layerName].document.write(html); - this.uiFrames[layerName].document.close(); - } -} - -JsUnit.ClassicUiManager.prototype.setStatus = function (str) { - this._setTextOnLayer('mainStatus', 'Status:<\/b> ' + str); -} - -JsUnit.ClassicUiManager.prototype._setErrors = function (n) { - this._setTextOnLayer('mainCountsErrors', 'Errors: <\/b>' + n); -} - -JsUnit.ClassicUiManager.prototype._setFailures = function (n) { - this._setTextOnLayer('mainCountsFailures', 'Failures:<\/b> ' + n); -} - -JsUnit.ClassicUiManager.prototype._setTotal = function (n) { - this._setTextOnLayer('mainCountsRuns', 'Runs:<\/b> ' + n); -} - -JsUnit.ClassicUiManager.prototype._setProgressBarImage = function (imgName) { - this.progressBar.src = imgName; -} - -JsUnit.ClassicUiManager.prototype._setProgressBarWidth = function (w) { - this.progressBar.width = w; -} - -JsUnit.ClassicUiManager.prototype.updateProgressIndicators = function (totalCount, errorCount, failureCount, progressBarProportion) { - this._setTotal(totalCount); - this._setErrors(errorCount); - this._setFailures(failureCount); - this._setProgressBarWidth(300 * progressBarProportion); - - if (errorCount > 0 || failureCount > 0) - this._setProgressBarImage('../images/red.gif'); - else - this._setProgressBarImage('../images/green.gif'); -} - -JsUnit.ClassicUiManager.prototype.testCompleted = function (test) { - if (test.status != 'success') { - var listField = this.problemsListField; - var exceptionText = this.problemDetailMessageFor(test.exception); - this._testManager._addOption(listField, exceptionText, test.message); - } -} - -JsUnit.ClassicUiManager.prototype.showMessageForSelectedProblemTest = function () { - var problemTestIndex = this.problemsListField.selectedIndex; - if (problemTestIndex != -1) - this.fatalError(this.problemsListField[problemTestIndex].value); -} - -JsUnit.ClassicUiManager.prototype.showMessagesForAllProblemTests = function () { - if (this.problemsListField.length == 0) - return; - - this._tryToCloseWindow(this._windowForAllProblemMessages); - - var body = '

Tests with problems (' + this.problemsListField.length + ' total) - JsUnit<\/p>' - + '

Running on ' + navigator.userAgent + '

'; - - for (var i = 0; i < this.problemsListField.length; i++) { - body += '

'; - body += '' + (i + 1) + '. '; - body += this.problemsListField[i].text; - body += '<\/b><\/p>

';
-        body += this.makeHTMLSafe(this.problemsListField[i].value);
-        body += '<\/pre><\/p>';
-    }
-
-    this._windowForAllProblemMessages = this._createWindow("Tests with problems", body);
-}
-
-JsUnit.ClassicUiManager.prototype.showLog = function() {
-    this._tryToCloseWindow(this.logWindow);
-
-    var body = "
";
-
-    var log = this._testManager.log;
-    for (var i = 0; i < log.length; i++) {
-        body += log[i];
-        body += "\n";
-    }
-
-    body += "
"; - - this.logWindow = this._createWindow("Log", body); -} - -JsUnit.ClassicUiManager.prototype._tryToCloseWindow = function(w) { - try { - if (w && !w.closed) w.close(); - } catch(e) { - } -} - -JsUnit.ClassicUiManager.prototype._createWindow = function(title, body) { - var w = window.open('', '', 'width=600, height=350,status=no,resizable=yes,scrollbars=yes'); - var resDoc = w.document; - resDoc.write(''); - resDoc.write(title); - resDoc.write(' - JsUnit<\/title><head><body>'); - resDoc.write(body); - resDoc.write('<\/body><\/html>'); - resDoc.close(); -} - - -JsUnit.ClassicUiManager.prototype.fatalError = function(aMessage) { - if (this._testManager._params.shouldSuppressDialogs()) // todo: huh? - this.setStatus(aMessage); - else - alert(aMessage); -} - -JsUnit.ClassicUiManager.prototype.userConfirm = function(aMessage) { - if (this._testManager._params.shouldSuppressDialogs()) // todo: huh? - return false; - else - return confirm(aMessage); -} - -JsUnit.ClassicUiManager.prototype.addedTraceData = function(theTest, traceMessage) { - if (this.getTraceLevel().matches(traceMessage.traceLevel)) { - var traceString = traceMessage.message; - if (traceMessage.value) - traceString += ': ' + traceMessage.value; - var prefix = theTest.testPage.url + ":" + theTest.testName + " - "; - this._writeToTraceWindow(prefix, traceString, traceMessage.traceLevel); - } -} - -JsUnit.ClassicUiManager.prototype._writeToTraceWindow = function(prefix, traceString, traceLevel) { - var htmlToAppend = '<p class="jsUnitDefault">' + prefix + '<font color="' + traceLevel.getColor() + '">' + traceString + '</font><\/p>\n'; - this._getTraceWindow().document.write(htmlToAppend); -} - -JsUnit.ClassicUiManager.prototype._getTraceWindow = function() { - if (this._traceWindow == null && !this._testManager._params.shouldSubmitResults() && !this.popupWindowsBlocked) { - this._traceWindow = window.open('', '', 'width=600, height=350,status=no,resizable=yes,scrollbars=yes'); - if (!this._traceWindow) - this.popupWindowsBlocked = true; - else { - var resDoc = this._traceWindow.document; - resDoc.write('<html>\n<head>\n<link rel="stylesheet" href="css/jsUnitStyle.css">\n<title>Tracing - JsUnit<\/title>\n<head>\n<body>'); - resDoc.write('<h2>Tracing - JsUnit<\/h2>\n'); - resDoc.write('<p class="jsUnitDefault"><i>(Traces are color coded: '); - resDoc.write('<font color="' + JsUnitTraceLevel.WARNING.getColor() + '">Warning</font> - '); - resDoc.write('<font color="' + JsUnitTraceLevel.INFO.getColor() + '">Information</font> - '); - resDoc.write('<font color="' + JsUnitTraceLevel.DEBUG.getColor() + '">Debug</font>'); - resDoc.write(')</i></p>'); - } - } - return this._traceWindow; -} - -JsUnit.ClassicUiManager.prototype.learnedOfTestPage = function() { -} diff --git a/scripts/jsunit/app/ModernUiManager.js b/scripts/jsunit/app/ModernUiManager.js deleted file mode 100644 index c224ed246..000000000 --- a/scripts/jsunit/app/ModernUiManager.js +++ /dev/null @@ -1,282 +0,0 @@ -Function.prototype.bind = function() { - var __method = this, args = Array.prototype.slice.call(arguments, 1), object = arguments[0]; - return function() { - return __method.apply(object, args.concat(Array.prototype.slice.call(arguments))); - } -} - -JsUnit.ModernUiManager = function(testManager) { - this._testManager = testManager; - - this._recentlyUpdated = []; - this._recentlyUpdatedClearTime = 0; -} - -JsUnit.Util.inherit(JsUnit.BaseUiManager, JsUnit.ModernUiManager); - -JsUnit.ModernUiManager.prototype.onLoad = function(uiWindow) { - this._uiWindow = uiWindow; - this._uiDoc = uiWindow.document; - - this._testFileInput = this._uiDoc.getElementById("testFileInput"); - - this._statusTextNode = this._findTextNode("status"); - this._runCountTextNode = this._findTextNode("runCount"); - this._errorCountTextNode = this._findTextNode("errorCount"); - this._failureCountTextNode = this._findTextNode("failureCount"); - this._elapsedTimeTextNode = this._findTextNode("elapsedTime"); - - this._progressBar = this._uiDoc.getElementById("progress"); - - // tests info area - this._testsInfoDiv = this._uiDoc.getElementById("testsInfo"); - this._testsInfoCompleteDiv = this._uiDoc.getElementById("testsInfoComplete"); - this._testsInfoCurrentSuiteDiv = this._uiDoc.getElementById("testsInfoCurrentSuite"); - this._testsInfoCurrentTestTextNode = this._findTextNode("testsInfoCurrentTest"); - - this._testResultTestDiv = this._uiDoc.getElementById("testResultTest"); - this._testResultDetailsDiv = this._uiDoc.getElementById("testResultDetails"); - - this.showPassed(false); -} - -JsUnit.ModernUiManager.prototype.getUiFrameUrl = function() { - return './app/modernUi.html'; -} - -JsUnit.ModernUiManager.prototype.getTestFileName = function() { - return this._testFileInput.value; -} - -JsUnit.ModernUiManager.prototype.getTraceLevel = function() { - return JsUnitTraceLevel.NONE; -} - -JsUnit.ModernUiManager.prototype.starting = function () { - this._testsInfoCompleteDiv.innerHTML = ''; - this._testResultDetailsDiv.innerHTML = ''; -} - -JsUnit.ModernUiManager.prototype.submittingResults = function () { -} - -JsUnit.ModernUiManager.prototype.showMessageForSelectedProblemTest = function () { -} - -JsUnit.ModernUiManager.prototype.showMessagesForAllProblemTests = function () { -} - -JsUnit.ModernUiManager.prototype.showLog = function() { -} - -JsUnit.ModernUiManager.prototype.fatalError = function(aMessage) { - if (this._testManager._params.shouldSuppressDialogs()) // todo: huh? - this.setStatus(aMessage); - else - alert(aMessage); -} - -JsUnit.ModernUiManager.prototype.userConfirm = function(aMessage) { - if (this._testManager._params.shouldSuppressDialogs()) // todo: huh? - return false; - else - return confirm(aMessage); -} - -Object.extend = function(obj, extendWith) { - for (var name in extendWith) { - obj[name] = extendWith[name]; - } -} - -Object.extend(JsUnit.ModernUiManager.prototype, { - _findTextNode: function(id) { - var element = this._uiDoc.getElementById(id); - if (element.childNodes.length == 1) { - return element.childNodes[0]; - } - var node = this._uiDoc.createTextNode(""); - element.appendChild(node); - return node; - }, - - _setSpanText: function(span, text) { - span.innerHTML = text; - }, - - _setTextNode: function(textNode, text) { - textNode.data = text; - }, - - setStatus: function(str) { - this._setTextNode(this._statusTextNode, str); - }, - - _addRecentlyUpdated: function(element) { - var cssClasses = element.getAttribute("class"); - if (cssClasses.indexOf(" recentlyUpdated") > -1) return; - - element.setAttribute("class", cssClasses + " recentlyUpdated"); - this._recentlyUpdated.push(element); - - this._testsInfoDiv.scrollTop = element.offsetTop - 30; - }, - - _clearRecentlyUpdated: function(clearAll) { - if (this._recentlyUpdated.length == 0) return; - - var time = new Date().getTime(); - if (!clearAll && time < this._recentlyUpdatedClearTime + 250) return; - this._recentlyUpdatedClearTime = time; - var lastToClear = this._recentlyUpdated.length; - if (!clearAll) lastToClear--; - for (var i = 0; i < lastToClear; i++) { - var element = this._recentlyUpdated[i]; - var cssClasses = element.getAttribute("class").replace(" recentlyUpdated", ""); - element.setAttribute("class", cssClasses); - } - }, - - finishing: function () { - this._clearRecentlyUpdated(true); - this._setTextNode(this._testsInfoCurrentTestTextNode, ""); - }, - - _setProgressBarImage: function (imgName) { - this._progressBar.src = imgName; - }, - - _setProgressBarWidth: function (w) { - this._progressBar.width = w; - }, - - updateProgressIndicators: function (totalCount, errorCount, failureCount, progressBarProportion) { - this._setTextNode(this._runCountTextNode, totalCount); - this._setTextNode(this._errorCountTextNode, errorCount); - this._setTextNode(this._failureCountTextNode, failureCount); - this._setProgressBarWidth(300 * progressBarProportion); - - if (errorCount > 0 || failureCount > 0) - this._setProgressBarImage('../images/red.gif'); - else - this._setProgressBarImage('../images/green.gif'); - -// this._setTextNode(this._elapsedTimeTextNode, this.elapsedTime()); - }, - - learnedOfTestPage: function(testPage) { - testPage.headerElement = this._uiDoc.createElement("li"); - testPage.headerElement.innerHTML = testPage.url; - - testPage.testListElement = this._uiDoc.createElement("ul"); - - this._testsInfoCompleteDiv.appendChild(testPage.headerElement); - this._testsInfoCompleteDiv.appendChild(testPage.testListElement); - - this._testPageUpdate(testPage, JsUnit.TestPage.STATUS_CHANGE_EVENT); - testPage.listen(this._testPageUpdate.bind(this)); - }, - - _testPageUpdate: function(testPage, event) { - if (event == JsUnit.TestPage.READY_EVENT) { - for (var i = 0; i < testPage.tests.length; i++) { - var theTest = testPage.tests[i]; - theTest.listen(this.testCompleted.bind(this)); - this._displayTestResult(theTest); - } - } - testPage.headerElement.setAttribute("class", "testPage " + testPage.getStatus()); - this._addRecentlyUpdated(testPage.headerElement); - }, - - testCompleted: function(test) { - this._updateTestResultStatus(test); - }, - - - _showDetails: function(theTest) { - var div = theTest.div; - this._testResultTestDiv.innerHTML = theTest.testPage.url + "." + theTest.testName; - var text; - switch (theTest.status) { - case 'success': - text = "Test succeeded!"; - break; - case 'failure': - case 'error': - text = theTest.message + ":\n"; - text += this.problemDetailMessageFor(theTest.exception); - break; - default: - throw new Error("unknown status '" + theTest.status + "'"); - } - - var traceMessages = theTest.traceMessages; - if (traceMessages.length > 0) { - text += "<blockquote>"; - for (var i = 0; i < traceMessages.length; i++) { - text += "<span style=\"color: " + traceMessages[i].traceLevel.getColor() + "\">"; - text += traceMessages[i].message; - text += "</span>\n"; - } - text += "</blockquote>"; - } - - text = this.makeHTMLSafe(text).split('\n').join("\n<br />\n"); - text = text.replace(/(Stack trace follows:\n)/, "$1<div class=\"stackTrace\">") + "</div>"; - this._testResultDetailsDiv.innerHTML = text; - }, - - _displayTestResult: function(theTest) { - var timeTaken = theTest.timeTaken; - - var manager = this; - var clicked = function() { - manager._showDetails.call(manager, theTest); - }; - - var div = this._createItem("  " + theTest.testName, theTest.status, clicked); - theTest.div = div; - theTest.testPage.testListElement.appendChild(div); - this._updateTestResultStatus(theTest); - - this._testPageUpdate(theTest.testPage); - this._clearRecentlyUpdated(false); - }, - - _updateTestResultStatus: function(theTest) { - var element = theTest.div; - element.setAttribute("class", "testResult " + theTest.status); - this._addRecentlyUpdated(element); - }, - - _createItem: function(name, status, onClick) { - var div = this._uiDoc.createElement("li"); - if (div.addEventListener) { - div.addEventListener("click", onClick, true); - } else if (div.attachEvent) { - div.attachEvent('on' + "click", onClick); - } - -// div.addNode(document.createTextNode(theTest.getFunctionName())); - div.innerHTML = name; - return div; - }, - - _displayTestException: function(problemValue, problemMessage) { - var listField = this.problemsListField; - this._addOption(listField, problemValue, problemMessage); - }, - - addedTraceData: function(theTest, traceMessage) { - }, - - showPassed: function(shouldShow) { - this._testsInfoCompleteDiv.setAttribute("class", shouldShow ? "showPassed" : "hidePassed"); - }, - - _last: null - -}); - - diff --git a/scripts/jsunit/app/css/jsUnitStyle.css b/scripts/jsunit/app/css/jsUnitStyle.css deleted file mode 100644 index a6ba3cc62..000000000 --- a/scripts/jsunit/app/css/jsUnitStyle.css +++ /dev/null @@ -1,103 +0,0 @@ -body { - margin-top: 0; - margin-bottom: 0; - font-family: Trebuchet MS, Verdana, Arial, Sans-serif; - color: #000; - font-size: 0.8em; -} - -.button { - color: #000000; - font-family: 'trebuchet ms', helvetica, sans-serif; - font-size: 100%; - font-weight: bold; - background-color: #dddddd; - border: 1px solid; - border-top-color: #696; - border-left-color: #696; - border-right-color: #363; - border-bottom-color: #363; -} - -table { - font-size: 1em; -} - -a:link, a:visited { - color: #0000AA; - text-decoration: underline; -} - -a:hover { - color: #810; - text-decoration: underline; -} - -h1 { - font-size: 1.2em; - font-weight: bold; - color: #039; - font-family: Trebuchet MS, Verdana, Arial, Helvetica, sans-serif; -} - -h2 { - font-weight: bold; - color: #039; - font-family: Trebuchet MS, Verdana, Arial, Helvetica, sans-serif; -} - -h3 { - font-weight: bold; - color: #039; - text-decoration: underline; - font-family: Trebuchet MS, Verdana, Arial, Helvetica, sans-serif; -} - -h4 { - color: #039; - font-family: Trebuchet MS, Verdana, Arial, Helvetica, sans-serif; - font-size: 1em; -} - -.jsUnitTestResultSuccess { - color: #000; -} - -.jsUnitTestResultNotSuccess { - color: #F00; -} - -.rb0roundbox { - background: url( ../images/nt0.gif ) repeat; -} - -.rb0top div { - background: url( ../images/tl0.gif ) no-repeat top left; -} - -.rb0top { - background: url( ../images/tr0.gif ) no-repeat top right; -} - -.rb0bot div { - background: url( ../images/bl0.gif ) no-repeat bottom left; -} - -.rb0bot { - background: url( ../images/br0.gif ) no-repeat bottom right; -} - -.rb0top div, .rb0top, .rb0bot div, .rb0bot { - width: 100%; - height: 7px; - font-size: 1px; -} - -.rb0content { - margin: 0 7px; -} - -.rb0roundbox { - width: 100%; - margin: 4px auto; -} diff --git a/scripts/jsunit/app/css/modernStyle.css b/scripts/jsunit/app/css/modernStyle.css deleted file mode 100644 index 88ca9b387..000000000 --- a/scripts/jsunit/app/css/modernStyle.css +++ /dev/null @@ -1,136 +0,0 @@ -html, body { - margin: 0; - padding: 0; - height: 100%; - font-family: Trebuchet MS, Verdana, Arial, Sans-serif; - color: #000; - font-size: 0.9em; -} - -a:link, a:visited { - color: #0000AA; - text-decoration: underline; -} - -a:hover { - color: #810; - text-decoration: underline; -} - -img { - border: none; -} - -blockquote { - margin: 2px 10px; -} - -ul { - padding-left: 10px; - list-style: none; -} - -li { -} - -#infoPanel { - width: 100%; -} - -#ident { - font-size: 1.5em; -} - -#browserInfo { -} - -#pivotalLogo { - padding-top: 5px; -} - -#resultsArea { - width: 100%; -} - -#resultsArea td { - width: 50%; - border: 1px solid black; - vertical-align: top; -} - -#resultsArea td.header { - border: none; -} - -#testResult { - width: 100%; - height: 100%; - padding: 0px; - margin: 0px; -} - -#traceLevelDiv, #timeoutOptionsDiv { - float: right; - padding: 3px; - border: 1px solid black; -} - -#testsInfo { - width: 100%; - height: 200px; - overflow: scroll; -} - -.testPage { - font-weight: bold; -} - -.testPage, .testResult { - width: 100%; -} - -.testPage:hover, .testResult:hover { - background-color: #eeeeee; -} - -.running { - color: orange; -} - -.recentlyUpdated { - display: block !important; -} - -.noTestsYet { - color: lightgray; -} - -.ready { - color: gray; -} - -.running { - color: yellow; -} - -.success { - color: green; -} - -.failure { - color: orange; -} - -.error { - color: red; -} - -.hidePassed .success { - display: none; -} - -.stackTrace { - display: block; - padding-left: 1em; - color: red; -} diff --git a/scripts/jsunit/app/emptyPage.html b/scripts/jsunit/app/emptyPage.html deleted file mode 100644 index 7b8a25d07..000000000 --- a/scripts/jsunit/app/emptyPage.html +++ /dev/null @@ -1,11 +0,0 @@ -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> -<html> -<head> - <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> - <title>emptyPage - - - - - - diff --git a/scripts/jsunit/app/jsUnitCore.js b/scripts/jsunit/app/jsUnitCore.js deleted file mode 100644 index f1fdd154c..000000000 --- a/scripts/jsunit/app/jsUnitCore.js +++ /dev/null @@ -1,977 +0,0 @@ -/** - * @fileoverview - * jsUnitCore.js contains the implementation of the core JsUnit functionality: assertions, JsUnitTestSuites, and JsUnit.Failure. - * An HTML page is considered to be a JsUnit Test Page if it "includes" jsUnitCore.js, i.e. the following line is present: - * - * <script type="text/javascript" src="/path/to/jsUnitCore.js"></script> - * - * @author Edward Hieatt, edward@jsunit.net, http://www.jsunit.net - */ - -var JsUnit = {}; - -/** - * The JsUnit version - * @version - */ -JsUnit.VERSION = 2.2; -var JSUNIT_VERSION = JsUnit.VERSION; - -/** - * For convenience, a variable that equals "undefined" - */ -var JSUNIT_UNDEFINED_VALUE; - -/** - * Whether or not the current test page has been (completely) loaded yet - */ -var isTestPageLoaded = false; - -/** - * Predicate used for testing JavaScript == (i.e. equality excluding type) - */ -JsUnit.DOUBLE_EQUALITY_PREDICATE = function(var1, var2) {return var1 == var2;}; - -/** - * Predicate used for testing JavaScript === (i.e. equality including type) - */ -JsUnit.TRIPLE_EQUALITY_PREDICATE = function(var1, var2) {return var1 === var2;}; - -/** - * Predicate used for testing whether two obects' toStrings are equal - */ -JsUnit.TO_STRING_EQUALITY_PREDICATE = function(var1, var2) {return var1.toString() === var2.toString();}; - -/** - * Hash of predicates for testing equality by primitive type - */ -JsUnit.PRIMITIVE_EQUALITY_PREDICATES = { - 'String': JsUnit.DOUBLE_EQUALITY_PREDICATE, - 'Number': JsUnit.DOUBLE_EQUALITY_PREDICATE, - 'Boolean': JsUnit.DOUBLE_EQUALITY_PREDICATE, - 'Date': JsUnit.TRIPLE_EQUALITY_PREDICATE, - 'RegExp': JsUnit.TO_STRING_EQUALITY_PREDICATE, - 'Function': JsUnit.TO_STRING_EQUALITY_PREDICATE -} - -/** - * Hack for NS62 bug - * @private - */ -JsUnit._fixTop = function() { - var tempTop = top; - if (!tempTop) { - tempTop = window; - while (tempTop.parent) { - tempTop = tempTop.parent; - if (tempTop.top && tempTop.top.jsUnitTestSuite) { - tempTop = tempTop.top; - break; - } - } - } - try { - window.top = tempTop; - } catch (e) { - } -} - -JsUnit._fixTop(); - -/** - * @param Any object - * @return String - the type of the given object - * @private - */ -JsUnit._trueTypeOf = function(something) { - var result = typeof something; - try { - switch (result) { - case 'string': - break; - case 'boolean': - break; - case 'number': - break; - case 'object': - case 'function': - switch (something.constructor) { - case new String().constructor: - result = 'String'; - break; - case new Boolean().constructor: - result = 'Boolean'; - break; - case new Number().constructor: - result = 'Number'; - break; - case new Array().constructor: - result = 'Array'; - break; - case new RegExp().constructor: - result = 'RegExp'; - break; - case new Date().constructor: - result = 'Date'; - break; - case Function: - result = 'Function'; - break; - default: - var m = something.constructor.toString().match(/function\s*([^( ]+)\(/); - if (m) - result = m[1]; - else - break; - } - break; - } - } - finally { - result = result.substr(0, 1).toUpperCase() + result.substr(1); - return result; - } -} - -/** - * @private - */ -JsUnit._displayStringForValue = function(aVar) { - var result = '<' + aVar + '>'; - if (!(aVar === null || aVar === JSUNIT_UNDEFINED_VALUE)) { - result += ' (' + JsUnit._trueTypeOf(aVar) + ')'; - } - return result; -} - -/** - * @private - */ -JsUnit._argumentsIncludeComments = function(expectedNumberOfNonCommentArgs, args) { - return args.length == expectedNumberOfNonCommentArgs + 1; -} -/** - * @private - */ -JsUnit._commentArg = function(expectedNumberOfNonCommentArgs, args) { - if (JsUnit._argumentsIncludeComments(expectedNumberOfNonCommentArgs, args)) - return args[0]; - - return null; -} -/** - * @private - */ -JsUnit._nonCommentArg = function(desiredNonCommentArgIndex, expectedNumberOfNonCommentArgs, args) { - return JsUnit._argumentsIncludeComments(expectedNumberOfNonCommentArgs, args) ? - args[desiredNonCommentArgIndex] : - args[desiredNonCommentArgIndex - 1]; -} - -/** - * @private - */ -JsUnit._validateArguments = function(expectedNumberOfNonCommentArgs, args) { - if (!( args.length == expectedNumberOfNonCommentArgs || - (args.length == expectedNumberOfNonCommentArgs + 1 && (typeof(args[0]) == 'string') || args[0] == null))) - throw new JsUnit.AssertionArgumentError('Incorrect arguments passed to assert function'); -} - -/** - * @private - */ -JsUnit._checkEquals = function(var1, var2) { - return var1 === var2; -} - -/** - * @private - */ -JsUnit._checkNotUndefined = function(aVar) { - return aVar !== JSUNIT_UNDEFINED_VALUE; -} - -/** - * @private - */ -JsUnit._checkNotNull = function(aVar) { - return aVar !== null; -} - -/** - * All assertions ultimately go through this method. - * @private - */ -JsUnit._assert = function(comment, booleanValue, failureMessage) { - if (!booleanValue) - throw new JsUnit.Failure(comment, failureMessage); -} - -/** - * Checks that the given boolean value is true. - * @param comment optional, displayed in the case of failure - * @value value that is expected to be true - * @throws JsUnit.Failure if the given value is not true - * @throws JsUnitInvalidAssertionArgument if the given value is not a boolean or if an incorrect number of arguments is passed - */ -function assert() { - JsUnit._validateArguments(1, arguments); - var booleanValue = JsUnit._nonCommentArg(1, 1, arguments); - - if (typeof(booleanValue) != 'boolean') - throw new JsUnit.AssertionArgumentError('Bad argument to assert(boolean)'); - - JsUnit._assert(JsUnit._commentArg(1, arguments), booleanValue === true, 'Call to assert(boolean) with false'); -} - -/** - * Synonym for assertTrue - * @see #assert - */ -function assertTrue() { - JsUnit._validateArguments(1, arguments); - assert(JsUnit._commentArg(1, arguments), JsUnit._nonCommentArg(1, 1, arguments)); -} - -/** - * Checks that a boolean value is false. - * @param comment optional, displayed in the case of failure - * @value value that is expected to be false - * @throws JsUnit.Failure if value is not false - * @throws JsUnitInvalidAssertionArgument if the given value is not a boolean or if an incorrect number of arguments is passed - */ -function assertFalse() { - JsUnit._validateArguments(1, arguments); - var booleanValue = JsUnit._nonCommentArg(1, 1, arguments); - - if (typeof(booleanValue) != 'boolean') - throw new JsUnit.AssertionArgumentError('Bad argument to assertFalse(boolean)'); - - JsUnit._assert(JsUnit._commentArg(1, arguments), booleanValue === false, 'Call to assertFalse(boolean) with true'); -} - -/** - * Checks that two values are equal (using ===) - * @param comment optional, displayed in the case of failure - * @param expected the expected value - * @param actual the actual value - * @throws JsUnit.Failure if the values are not equal - * @throws JsUnitInvalidAssertionArgument if an incorrect number of arguments is passed - */ -function assertEquals() { - JsUnit._validateArguments(2, arguments); - var var1 = JsUnit._nonCommentArg(1, 2, arguments); - var var2 = JsUnit._nonCommentArg(2, 2, arguments); - JsUnit._assert(JsUnit._commentArg(2, arguments), JsUnit._checkEquals(var1, var2), 'Expected ' + JsUnit._displayStringForValue(var1) + ' but was ' + JsUnit._displayStringForValue(var2)); -} - -/** - * Checks that two values are not equal (using !==) - * @param comment optional, displayed in the case of failure - * @param value1 a value - * @param value2 another value - * @throws JsUnit.Failure if the values are equal - * @throws JsUnitInvalidAssertionArgument if an incorrect number of arguments is passed - */ -function assertNotEquals() { - JsUnit._validateArguments(2, arguments); - var var1 = JsUnit._nonCommentArg(1, 2, arguments); - var var2 = JsUnit._nonCommentArg(2, 2, arguments); - JsUnit._assert(JsUnit._commentArg(2, arguments), var1 !== var2, 'Expected not to be ' + JsUnit._displayStringForValue(var2)); -} - -/** - * Checks that a value is null - * @param comment optional, displayed in the case of failure - * @param value the value - * @throws JsUnit.Failure if the value is not null - * @throws JsUnitInvalidAssertionArgument if an incorrect number of arguments is passed - */ -function assertNull() { - JsUnit._validateArguments(1, arguments); - var aVar = JsUnit._nonCommentArg(1, 1, arguments); - JsUnit._assert(JsUnit._commentArg(1, arguments), aVar === null, 'Expected ' + JsUnit._displayStringForValue(null) + ' but was ' + JsUnit._displayStringForValue(aVar)); -} - -/** - * Checks that a value is not null - * @param comment optional, displayed in the case of failure - * @param value the value - * @throws JsUnit.Failure if the value is null - * @throws JsUnitInvalidAssertionArgument if an incorrect number of arguments is passed - */ -function assertNotNull() { - JsUnit._validateArguments(1, arguments); - var aVar = JsUnit._nonCommentArg(1, 1, arguments); - JsUnit._assert(JsUnit._commentArg(1, arguments), JsUnit._checkNotNull(aVar), 'Expected not to be ' + JsUnit._displayStringForValue(null)); -} - -/** - * Checks that a value is undefined - * @param comment optional, displayed in the case of failure - * @param value the value - * @throws JsUnit.Failure if the value is not undefined - * @throws JsUnitInvalidAssertionArgument if an incorrect number of arguments is passed - */ -function assertUndefined() { - JsUnit._validateArguments(1, arguments); - var aVar = JsUnit._nonCommentArg(1, 1, arguments); - JsUnit._assert(JsUnit._commentArg(1, arguments), aVar === JSUNIT_UNDEFINED_VALUE, 'Expected ' + JsUnit._displayStringForValue(JSUNIT_UNDEFINED_VALUE) + ' but was ' + JsUnit._displayStringForValue(aVar)); -} - -/** - * Checks that a value is not undefined - * @param comment optional, displayed in the case of failure - * @param value the value - * @throws JsUnit.Failure if the value is undefined - * @throws JsUnitInvalidAssertionArgument if an incorrect number of arguments is passed - */ -function assertNotUndefined() { - JsUnit._validateArguments(1, arguments); - var aVar = JsUnit._nonCommentArg(1, 1, arguments); - JsUnit._assert(JsUnit._commentArg(1, arguments), JsUnit._checkNotUndefined(aVar), 'Expected not to be ' + JsUnit._displayStringForValue(JSUNIT_UNDEFINED_VALUE)); -} - -/** - * Checks that a value is NaN (Not a Number) - * @param comment optional, displayed in the case of failure - * @param value the value - * @throws JsUnit.Failure if the value is a number - * @throws JsUnitInvalidAssertionArgument if an incorrect number of arguments is passed - */ -function assertNaN() { - JsUnit._validateArguments(1, arguments); - var aVar = JsUnit._nonCommentArg(1, 1, arguments); - JsUnit._assert(JsUnit._commentArg(1, arguments), isNaN(aVar), 'Expected NaN'); -} - -/** - * Checks that a value is not NaN (i.e. is a number) - * @param comment optional, displayed in the case of failure - * @param value the value - * @throws JsUnit.Failure if the value is not a number - * @throws JsUnitInvalidAssertionArgument if an incorrect number of arguments is passed - */ -function assertNotNaN() { - JsUnit._validateArguments(1, arguments); - var aVar = JsUnit._nonCommentArg(1, 1, arguments); - JsUnit._assert(JsUnit._commentArg(1, arguments), !isNaN(aVar), 'Expected not NaN'); -} - -/** - * Checks that an object is equal to another using === for primitives and their object counterparts but also desceding - * into collections and calling assertObjectEquals for each element - * @param comment optional, displayed in the case of failure - * @param value the expected value - * @param value the actual value - * @throws JsUnit.Failure if the actual value does not equal the expected value - * @throws JsUnitInvalidAssertionArgument if an incorrect number of arguments is passed - */ -function assertObjectEquals() { - JsUnit._validateArguments(2, arguments); - var var1 = JsUnit._nonCommentArg(1, 2, arguments); - var var2 = JsUnit._nonCommentArg(2, 2, arguments); - var failureMessage = JsUnit._commentArg(2, arguments) ? JsUnit._commentArg(2, arguments) : ''; - if (var1 === var2) - return; - - var isEqual = false; - - var typeOfVar1 = JsUnit._trueTypeOf(var1); - var typeOfVar2 = JsUnit._trueTypeOf(var2); - - if (typeOfVar1 == typeOfVar2) { - var primitiveEqualityPredicate = JsUnit.PRIMITIVE_EQUALITY_PREDICATES[typeOfVar1]; - if (primitiveEqualityPredicate) { - isEqual = primitiveEqualityPredicate(var1, var2); - } else { - var expectedKeys = JsUnit.Util.getKeys(var1).sort().join(", "); - var actualKeys = JsUnit.Util.getKeys(var2).sort().join(", "); - if (expectedKeys != actualKeys) { - JsUnit._assert(failureMessage, false, 'Expected keys "' + expectedKeys + '" but found "' + actualKeys + '"'); - } - for (var i in var1) { - assertObjectEquals(failureMessage + ' found nested ' + typeOfVar1 + '@' + i + '\n', var1[i], var2[i]); - } - isEqual = true; - } - } - JsUnit._assert(failureMessage, isEqual, 'Expected ' + JsUnit._displayStringForValue(var1) + ' but was ' + JsUnit._displayStringForValue(var2)); -} - -/** - * Checks that an array is equal to another by checking that both are arrays and then comparing their elements using assertObjectEquals - * @param comment optional, displayed in the case of failure - * @param value the expected array - * @param value the actual array - * @throws JsUnit.Failure if the actual value does not equal the expected value - * @throws JsUnitInvalidAssertionArgument if an incorrect number of arguments is passed - */ -function assertArrayEquals() { - JsUnit._validateArguments(2, arguments); - var array1 = JsUnit._nonCommentArg(1, 2, arguments); - var array2 = JsUnit._nonCommentArg(2, 2, arguments); - if (JsUnit._trueTypeOf(array1) != 'Array' || JsUnit._trueTypeOf(array2) != 'Array') { - throw new JsUnit.AssertionArgumentError('Non-array passed to assertArrayEquals'); - } - assertObjectEquals(JsUnit._commentArg(2, arguments), JsUnit._nonCommentArg(1, 2, arguments), JsUnit._nonCommentArg(2, 2, arguments)); -} - -/** - * Checks that a value evaluates to true in the sense that value == true - * @param comment optional, displayed in the case of failure - * @param value the value - * @throws JsUnit.Failure if the actual value does not evaluate to true - * @throws JsUnitInvalidAssertionArgument if an incorrect number of arguments is passed - */ -function assertEvaluatesToTrue() { - JsUnit._validateArguments(1, arguments); - var value = JsUnit._nonCommentArg(1, 1, arguments); - if (!value) - fail(JsUnit._commentArg(1, arguments)); -} - -/** - * Checks that a value evaluates to false in the sense that value == false - * @param comment optional, displayed in the case of failure - * @param value the value - * @throws JsUnit.Failure if the actual value does not evaluate to true - * @throws JsUnitInvalidAssertionArgument if an incorrect number of arguments is passed - */ -function assertEvaluatesToFalse() { - JsUnit._validateArguments(1, arguments); - var value = JsUnit._nonCommentArg(1, 1, arguments); - if (value) - fail(JsUnit._commentArg(1, arguments)); -} - -/** - * Checks that a value is the same as an HTML string by "standardizing" both and comparing the result for equality. - * Standardizing is done by temporarily creating a DIV, setting the innerHTML of the DIV to the string, and asking for - * the innerHTML back. - * @param comment optional, displayed in the case of failure - * @param value1 the expected HTML string - * @param value2 the actual HTML string - * @throws JsUnit.Failure if the standardized actual value does not equal the standardized expected value - * @throws JsUnitInvalidAssertionArgument if an incorrect number of arguments is passed - */ -function assertHTMLEquals() { - JsUnit._validateArguments(2, arguments); - var var1 = JsUnit._nonCommentArg(1, 2, arguments); - var var2 = JsUnit._nonCommentArg(2, 2, arguments); - var var1Standardized = JsUnit.Util.standardizeHTML(var1); - var var2Standardized = JsUnit.Util.standardizeHTML(var2); - - JsUnit._assert(JsUnit._commentArg(2, arguments), var1Standardized === var2Standardized, 'Expected ' + JsUnit._displayStringForValue(var1Standardized) + ' but was ' + JsUnit._displayStringForValue(var2Standardized)); -} - -/** - * Checks that a hash is has the same contents as another by iterating over the expected hash and checking that each - * key's value is present in the actual hash and calling assertEquals on the two values, and then checking that there is - * no key in the actual hash that isn't present in the expected hash. - * @param comment optional, displayed in the case of failure - * @param value the expected hash - * @param value the actual hash - * @throws JsUnit.Failure if the actual hash does not evaluate to true - * @throws JsUnitInvalidAssertionArgument if an incorrect number of arguments is passed - */ -function assertHashEquals() { - JsUnit._validateArguments(2, arguments); - var var1 = JsUnit._nonCommentArg(1, 2, arguments); - var var2 = JsUnit._nonCommentArg(2, 2, arguments); - for (var key in var1) { - assertNotUndefined("Expected hash had key " + key + " that was not found", var2[key]); - assertEquals( - "Value for key " + key + " mismatch - expected = " + var1[key] + ", actual = " + var2[key], - var1[key], var2[key] - ); - } - for (var key in var2) { - assertNotUndefined("Actual hash had key " + key + " that was not expected", var1[key]); - } -} - -/** - * Checks that two value are within a tolerance of one another - * @param comment optional, displayed in the case of failure - * @param value1 a value - * @param value1 another value - * @param tolerance the tolerance - * @throws JsUnit.Failure if the two values are not within tolerance of each other - * @throws JsUnitInvalidAssertionArgument if an incorrect number of arguments is passed - */ -function assertRoughlyEquals() { - JsUnit._validateArguments(3, arguments); - var expected = JsUnit._nonCommentArg(1, 3, arguments); - var actual = JsUnit._nonCommentArg(2, 3, arguments); - var tolerance = JsUnit._nonCommentArg(3, 3, arguments); - assertTrue( - "Expected " + expected + ", but got " + actual + " which was more than " + tolerance + " away", - Math.abs(expected - actual) < tolerance - ); -} - -/** - * Checks that a collection contains a value by checking that collection.indexOf(value) is not -1 - * @param comment optional, displayed in the case of failure - * @param collection the collection - * @param value the value - * @throws JsUnit.Failure if the collection does not contain the value - * @throws JsUnitInvalidAssertionArgument if an incorrect number of arguments are passed - */ -function assertContains() { - JsUnit._validateArguments(2, arguments); - var value = JsUnit._nonCommentArg(1, 2, arguments); - var collection = JsUnit._nonCommentArg(2, 2, arguments); - assertTrue( - "Expected '" + collection + "' to contain '" + value + "'", - collection.indexOf(value) != -1 - ); -} - -/** - * Checks that two arrays have the same contents, ignoring the order of the contents - * @param comment optional, displayed in the case of failure - * @param array1 first array - * @param array2 second array - * @throws JsUnit.Failure if the two arrays contain different contents - * @throws JsUnitInvalidAssertionArgument if an incorrect number of arguments are passed - */ -function assertArrayEqualsIgnoringOrder() { - JsUnit._validateArguments(2, arguments); - var var1 = JsUnit._nonCommentArg(1, 2, arguments); - var var2 = JsUnit._nonCommentArg(2, 2, arguments); - - var notEqualsMessage = "Expected arrays " + JsUnit._displayStringForValue(var1) + " and " + JsUnit._displayStringForValue(var2) + " to be equal (ignoring order)"; - var notArraysMessage = "Expected arguments " + JsUnit._displayStringForValue(var1) + " and " + JsUnit._displayStringForValue(var2) + " to be arrays"; - - JsUnit._assert(JsUnit._commentArg(2, arguments), JsUnit._checkNotNull(var1), notEqualsMessage); - JsUnit._assert(JsUnit._commentArg(2, arguments), JsUnit._checkNotNull(var2), notEqualsMessage); - - JsUnit._assert(JsUnit._commentArg(2, arguments), JsUnit._checkNotUndefined(var1.length), notArraysMessage); - JsUnit._assert(JsUnit._commentArg(2, arguments), JsUnit._checkNotUndefined(var1.join), notArraysMessage); - JsUnit._assert(JsUnit._commentArg(2, arguments), JsUnit._checkNotUndefined(var2.length), notArraysMessage); - JsUnit._assert(JsUnit._commentArg(2, arguments), JsUnit._checkNotUndefined(var2.join), notArraysMessage); - - JsUnit._assert(JsUnit._commentArg(1, arguments), JsUnit._checkEquals(var1.length, var2.length), notEqualsMessage); - - for (var i = 0; i < var1.length; i++) { - var found = false; - for (var j = 0; j < var2.length; j++) { - try { - assertObjectEquals(notEqualsMessage, var1[i], var2[j]); - found = true; - } catch (ignored) { - } - } - JsUnit._assert(JsUnit._commentArg(2, arguments), found, notEqualsMessage); - } -} - -/** - * Synonym for assertArrayEqualsIgnoringOrder - * @see #assertArrayEqualsIgnoringOrder - */ -function assertEqualsIgnoringOrder() { - JsUnit._validateArguments(2, arguments); - assertArrayEqualsIgnoringOrder(JsUnit._commentArg(2, arguments), JsUnit._nonCommentArg(1, 2, arguments), JsUnit._nonCommentArg(2, 2, arguments)); -} - -/** - * Causes a failure - * @param failureMessage the message for the failure - */ -function fail(failureMessage) { - throw new JsUnit.Failure("Call to fail()", failureMessage); -} - -/** - * Causes an error - * @param errorMessage the message for the error - */ -function error(errorMessage) { - throw new JsUnitError(errorMessage); -} - -/** - * @class - * A JsUnit.Failure represents an assertion failure (or a call to fail()) during the execution of a Test Function - * @param comment an optional comment about the failure - * @param message the reason for the failure - */ -JsUnit.Failure = function(comment, message) { - /** - * Declaration that this is a JsUnit.Failure - * @ignore - */ - this.isJsUnitFailure = true; - /** - * An optional comment about the failure - */ - this.comment = comment; - /** - * The reason for the failure - */ - this.jsUnitMessage = message; - /** - * The stack trace at the point at which the failure was encountered - */ - this.stackTrace = JsUnit.Util.getStackTrace(); -} - -/** - * @deprecated - */ -JsUnitFailure = JsUnit.Failure; - -/** - * @class - * A JsUnitError represents an error (an exception or a call to error()) during the execution of a Test Function - * @param description the reason for the failure - */ -JsUnit.Error = function(description) { - /** - * The description of the error - */ - this.description = description; - /** - * The stack trace at the point at which the error was encountered - */ - this.stackTrace = JsUnit.Util.getStackTrace(); -} - -/** - * @deprecated - */ -JsUnitError = JsUnit.Error; - -/** - * @class - * A JsUnitAssertionArgumentError represents an invalid call to an assertion function - either an invalid argument type - * or an incorrect number of arguments - * @param description a description of the argument error - */ -JsUnit.AssertionArgumentError = function(description) { - /** - * A description of the argument error - */ - this.description = description; -} - -function isLoaded() { - return isTestPageLoaded; -} - -/** - * @private - */ -function setUp() { -} - -/** - * @private - */ -function tearDown() { -} - -function warn() { - if (top.tracer != null) - top.tracer.warn(arguments[0], arguments[1]); -} - -function inform() { - if (top.tracer != null) - top.tracer.inform(arguments[0], arguments[1]); -} - -function info() { - inform(arguments[0], arguments[1]); -} - -function debug() { - if (top.tracer != null) - top.tracer.debug(arguments[0], arguments[1]); -} - -/** - * @class - * A JsUnitTestSuite represents a suite of JsUnit Test Pages. Test Pages and Test Suites can be added to a - * JsUnitTestSuite - * @constructor - */ -function JsUnitTestSuite() { - /** - * Declares that this object is a JsUnitTestSuite - */ - this.isJsUnitTestSuite = true; - /** - * @private - */ - this._testPages = Array(); - /** - * @private - */ - this._pageIndex = 0; - - for (var i = 0; i < arguments.length; i++) { - if (arguments[i]._testPages) { - this.addTestSuite(arguments[i]); - } else { - this.addTestPage(arguments[i]); - } - } -} - -/** - * Adds a Test Page to the suite - * @param pageName the path to the Test Page - */ -JsUnitTestSuite.prototype.addTestPage = function (page) { - this._testPages[this._testPages.length] = page; -} - -/** - * Adds a Test Suite to the suite - * @param suite another JsUnitTestSuite object - */ - -JsUnitTestSuite.prototype.addTestSuite = function (suite) { - for (var i = 0; i < suite._testPages.length; i++) - this.addTestPage(suite._testPages[i]); -} - -/** - * Whether the suite contains any Test Pages - */ -JsUnitTestSuite.prototype.containsTestPages = function () { - return this._testPages.length > 0; -} - -/** - * Moves the suite on to its next Test Page - */ -JsUnitTestSuite.prototype.nextPage = function () { - return this._testPages[this._pageIndex++]; -} - -/** - * Whether the suite has more Test Pages - */ -JsUnitTestSuite.prototype.hasMorePages = function () { - return this._pageIndex < this._testPages.length; -} - -/** - * Produces a copy of the suite - */ -JsUnitTestSuite.prototype.clone = function () { - var clone = new JsUnitTestSuite(); - clone._testPages = this._testPages; - return clone; -} - -//For legacy support - JsUnitTestSuite used to be called jsUnitTestSuite -jsUnitTestSuite = JsUnitTestSuite; - -function setJsUnitTracer(aJsUnitTracer) { - top.tracer = aJsUnitTracer; -} - -function jsUnitGetParm(name) { - return top.params.get(name); -} - -JsUnit._newOnLoadEvent = function() { - isTestPageLoaded = true; -} - -JsUnit._setOnLoad = function(windowRef, onloadHandler) { - var isKonqueror = navigator.userAgent.indexOf('Konqueror/') != -1; - - if (typeof(windowRef.attachEvent) != 'undefined') { - // Internet Explorer, Opera - windowRef.attachEvent("onload", onloadHandler); - } else if (typeof(windowRef.addEventListener) != 'undefined' && !isKonqueror) { - // Mozilla - // exclude Konqueror due to load issues - windowRef.addEventListener("load", onloadHandler, false); - } else if (typeof(windowRef.document.addEventListener) != 'undefined' && !isKonqueror) { - // DOM 2 Events - // exclude Mozilla, Konqueror due to load issues - windowRef.document.addEventListener("load", onloadHandler, false); - } else if (typeof(windowRef.onload) != 'undefined' && windowRef.onload) { - windowRef.jsunit_original_onload = windowRef.onload; - windowRef.onload = function() { - windowRef.jsunit_original_onload(); - onloadHandler(); - }; - } else { - // browsers that do not support windowRef.attachEvent or - // windowRef.addEventListener will override a page's own onload event - windowRef.onload = onloadHandler; - } -} - -/** - * @class - * @constructor - * Contains utility functions for the JsUnit framework - */ -JsUnit.Util = {}; - -/** - * Standardizes an HTML string by temporarily creating a DIV, setting its innerHTML to the string, and the asking for - * the innerHTML back - * @param html - */ -JsUnit.Util.standardizeHTML = function(html) { - var translator = document.createElement("DIV"); - translator.innerHTML = html; - return JsUnit.Util.trim(translator.innerHTML); -} - -/** - * Returns whether the given string is blank after being trimmed of whitespace - * @param string - */ -JsUnit.Util.isBlank = function(string) { - return JsUnit.Util.trim(string) == ''; -} - -/** - * Implemented here because the JavaScript Array.push(anObject) and Array.pop() functions are not available in IE 5.0 - * @param anArray the array onto which to push - * @param anObject the object to push onto the array - */ -JsUnit.Util.push = function(anArray, anObject) { - anArray[anArray.length] = anObject; -} - -/** - * Implemented here because the JavaScript Array.push(anObject) and Array.pop() functions are not available in IE 5.0 - * @param anArray the array from which to pop - */ -JsUnit.Util.pop = function pop(anArray) { - if (anArray.length >= 1) { - delete anArray[anArray.length - 1]; - anArray.length--; - } -} - -/** - * Returns the name of the given function, or 'anonymous' if it has no name - * @param aFunction - */ -JsUnit.Util.getFunctionName = function(aFunction) { - var regexpResult = aFunction.toString().match(/function(\s*)(\w*)/); - if (regexpResult && regexpResult.length >= 2 && regexpResult[2]) { - return regexpResult[2]; - } - return 'anonymous'; -} - -/** - * Returns the current stack trace - */ -JsUnit.Util.getStackTrace = function() { - var result = ''; - - if (typeof(arguments.caller) != 'undefined') { // IE, not ECMA - for (var a = arguments.caller; a != null; a = a.caller) { - result += '> ' + JsUnit.Util.getFunctionName(a.callee) + '\n'; - if (a.caller == a) { - result += '*'; - break; - } - } - } - else { // Mozilla, not ECMA - // fake an exception so we can get Mozilla's error stack - try - { - foo.bar; - } - catch(exception) - { - var stack = JsUnit.Util.parseErrorStack(exception); - for (var i = 1; i < stack.length; i++) - { - result += '> ' + stack[i] + '\n'; - } - } - } - - return result; -} - -/** - * Returns an array of stack trace elements from the given exception - * @param exception - */ -JsUnit.Util.parseErrorStack = function(exception) { - var stack = []; - var name; - - if (!exception || !exception.stack) { - return stack; - } - - var stacklist = exception.stack.split('\n'); - - for (var i = 0; i < stacklist.length - 1; i++) { - var framedata = stacklist[i]; - - name = framedata.match(/^(\w*)/)[1]; - if (!name) { - name = 'anonymous'; - } - - stack[stack.length] = name; - } - // remove top level anonymous functions to match IE - - while (stack.length && stack[stack.length - 1] == 'anonymous') { - stack.length = stack.length - 1; - } - return stack; -} - -/** - * Strips whitespace from either end of the given string - * @param string - */ -JsUnit.Util.trim = function(string) { - if (string == null) - return null; - - var startingIndex = 0; - var endingIndex = string.length - 1; - - var singleWhitespaceRegex = /\s/; - while (string.substring(startingIndex, startingIndex + 1).match(singleWhitespaceRegex)) - startingIndex++; - - while (string.substring(endingIndex, endingIndex + 1).match(singleWhitespaceRegex)) - endingIndex--; - - if (endingIndex < startingIndex) - return ''; - - return string.substring(startingIndex, endingIndex + 1); -} - -JsUnit.Util.getKeys = function(obj) { - var keys = []; - for (var key in obj) { - JsUnit.Util.push(keys, key); - } - return keys; -} - -JsUnit.Util.inherit = function(superclass, subclass) { - var x = function() {}; - x.prototype = superclass.prototype; - subclass.prototype = new x(); -} - -JsUnit._setOnLoad(window, JsUnit._newOnLoadEvent); diff --git a/scripts/jsunit/app/jsUnitParams.js b/scripts/jsunit/app/jsUnitParams.js deleted file mode 100644 index 2cbafc4b1..000000000 --- a/scripts/jsunit/app/jsUnitParams.js +++ /dev/null @@ -1,113 +0,0 @@ -JsUnit.Params = function(string) { - this.hash = new Object(); - - if (!string) return; - - var i = string.indexOf('?'); - if (i != -1) { - string = string.substring(i + 1); - } - - var parmList = string.split('&'); - var a; - for (j = 0; j < parmList.length; j++) { - a = parmList[j].split('='); - a[0] = unescape(a[0].toLowerCase()); - if (a.length > 1) { - this.hash[a[0]] = unescape(a[1]); - } - else { - this.hash[a[0]] = true; - } - } -} - -JsUnit.Params.prototype.get = function(name) { - if (typeof(this.hash[name]) != 'undefined') { - return this.hash[name]; - } - return null; -} - -JsUnit.Params.prototype.getTestPage = function() { - return this.get('testpage'); -} - -JsUnit.Params.prototype.shouldKickOffTestsAutomatically = function() { - return this.get('autorun') == "true"; -} - -JsUnit.Params.prototype.shouldShowTestFrame = function() { - return this.get('showtestframe'); -} - -JsUnit.Params.prototype.getShowTestFrameHeight = function() { - var param = this.get('showtestframe'); - return param == "true" ? JsUnitTestManager.DEFAULT_TEST_FRAME_HEIGHT : param; -} - -JsUnit.Params.prototype.shouldSuppressDialogs = function() { - return this.shouldSubmitResults() || this.get('suppressdialogs'); -} - -JsUnit.Params.prototype.getPageLoadTimeout = function() { - return this.get('pageloadtimeout') || JsUnitTestManager.TESTPAGE_WAIT_SEC; -} - -JsUnit.Params.prototype.getSetupPageTimeout = function() { - return this.get('setuppagetimeout') || JsUnitTestManager.SETUPPAGE_TIMEOUT; -} - -JsUnit.Params.prototype.getResultId = function() { - if (this.get('resultid')) - return this.get('resultid'); - return ""; -} - -JsUnit.Params.prototype.getBrowserId = function() { - if (this.get('browserid')) - return this.get('browserid'); - return ""; -} - -JsUnit.Params.prototype.shouldSubmitResults = function() { - return this.get('submitresults'); -} - -JsUnit.Params.prototype.getSpecifiedResultUrl = function() { - return this.get('submitresults'); -} - -JsUnit.Params.prototype.wasResultUrlSpecified = function() { - return this.shouldSubmitResults() && this.get('submitresults') != 'true'; -} - -JsUnit.Params.prototype.constructTestParams = function() { - var parms = ''; - - for (var p in this.hash) { - var value = this.hash[p]; - - if (!value || - p == 'testpage' || - p == 'autorun' || - p == 'submitresults' || - p == 'showtestframe' || - p == 'browserid' || - p == 'resultid') { - continue; - } - - if (parms) { - parms += '&'; - } - - parms += escape(p); - - if (typeof(value) != 'boolean') { - parms += '=' + escape(value); - } - } - - return parms; -} diff --git a/scripts/jsunit/app/jsUnitTestManager.js b/scripts/jsunit/app/jsUnitTestManager.js deleted file mode 100644 index bb1782b8b..000000000 --- a/scripts/jsunit/app/jsUnitTestManager.js +++ /dev/null @@ -1,911 +0,0 @@ -JsUnit.TestGroup = function() { - this._testPages = []; - this._index = 0; -} - -JsUnit.TestGroup.prototype.addTestPage = function(testPageUrl) { - var testPage = new JsUnit.TestPage(testPageUrl); - JsUnit.Util.push(this._testPages, testPage); - return testPage; -} - -JsUnit.TestGroup.prototype.hasMorePages = function() { - return this._index < this._testPages.length; -} - -JsUnit.TestGroup.prototype.nextPage = function() { - return this._testPages[this._index++]; -} - - -JsUnit.TestPage = function(url) { - this.url = url; - this.tests = []; - - this.running = false; - - this.successCount = 0; - this.errorCount = 0; - this.failureCount = 0; - - this._listeners = []; -} - -JsUnit.TestPage.STATUS_CHANGE_EVENT = "statusChange"; -JsUnit.TestPage.READY_EVENT = "ready"; - -JsUnit.TestPage.prototype.addTest = function(testName) { - var test = new JsUnit.Test(this, testName); - JsUnit.Util.push(this.tests, test); - return test; -} - -JsUnit.TestPage.prototype.listen = function(callback) { - JsUnit.Util.push(this._listeners, callback); -} - -JsUnit.TestPage.prototype.notify = function(event) { - for (var i = 0; i < this._listeners.length; i++) { - this._listeners[i].call(null, this, event); - } -} - -JsUnit.TestPage.prototype.getStatus = function(testName) { - if (this.tests.length == 0) return 'noTestsYet'; - if (this.running) return 'running'; - - if (this.errorCount > 0) return 'error'; - if (this.failureCount > 0) return 'failure'; - if (this.successCount > 0) return 'success'; - return 'ready'; -} - -JsUnit.Test = function(testPage, testName) { - this.testPage = testPage; - this.testName = testName; - this.traceMessages = []; - this.status = 'ready'; - - this._listeners = []; -} - -JsUnit.Test.prototype.addTraceMessage = function(traceMessage) { - this.traceMessages.push(traceMessage); -} - -JsUnit.Test.prototype.listen = function(callback) { - JsUnit.Util.push(this._listeners, callback); -} - -JsUnit.Test.prototype.notify = function(event) { - for (var i = 0; i < this._listeners.length; i++) { - this._listeners[i].call(null, this, event); - } -} - - -JsUnit.TraceMessage = function(message, value, traceLevel) { - this.message = message; - this.value = value; - this.traceLevel = traceLevel; -} - -function JsUnitTestManager(params) { - this._params = params || new JsUnit.Params(); - - this.log = []; - - this._baseURL = ""; - - this.setup(); - - if (this._params.get("ui") == "modern") { - this._uiManager = new JsUnit.ModernUiManager(this); - } else { - this._uiManager = new JsUnit.ClassicUiManager(this); - } -} - -JsUnitTestManager.prototype.getUiManager = function() { - return this._uiManager; -} - -JsUnitTestManager.prototype.getUiFrameUrl = function() { - return this._uiManager.getUiFrameUrl(); -} - -// call after all frames have loaded -JsUnitTestManager.prototype.onLoad = function() { - var topLevelFrames = top.frames; - - this.container = topLevelFrames.testContainer; - this.documentLoader = topLevelFrames.documentLoader; - - this.containerController = this.container.frames.testContainerController; - this.testFrame = this.container.frames.testFrame; - - this._uiManager.onLoad(topLevelFrames.mainFrame); - - this.resultsFrame = topLevelFrames.mainResults; - this.resultsForm = this.resultsFrame.document.resultsForm; - this.testCaseResultsField = this.resultsFrame.document.resultsForm.testCaseResults; - this.resultsTimeField = this.resultsFrame.document.resultsForm.time; - - var testRunnerFrameset = document.getElementById('testRunnerFrameset'); - if (this._params.shouldShowTestFrame() && testRunnerFrameset) { - testRunnerFrameset.rows = '*,0,0,' + this._params.getShowTestFrameHeight(); - } -} - -// seconds to wait for each test page to load -JsUnitTestManager.TESTPAGE_WAIT_SEC = 10; - -// milliseoncds between test runs -JsUnitTestManager.TIMEOUT_LENGTH = 20; - -// seconds to wait for setUpPage to complete -JsUnitTestManager.SETUPPAGE_TIMEOUT = 10; - -// milliseconds to wait between polls on setUpPages -JsUnitTestManager.SETUPPAGE_INTERVAL = 100; - -JsUnitTestManager.RESTORED_HTML_DIV_ID = "jsUnitRestoredHTML"; - -JsUnitTestManager.DEFAULT_TEST_FRAME_HEIGHT = 250; - - -JsUnitTestManager.prototype.setup = function () { - this.totalCount = 0; - this.errorCount = 0; - this.failureCount = 0; - this._testGroupStack = Array(); - - var initialSuite = new JsUnitTestSuite(); - this.addTestSuite(initialSuite); -} - -JsUnitTestManager.prototype.getTracer = function () { - return top.tracer; -} - -JsUnitTestManager.prototype.maybeRun = function () { - if (this._params.shouldKickOffTestsAutomatically()) { - this.kickOffTests(); - } -} - -JsUnitTestManager.prototype.addTestSuite = function(testSuite) { - var testGroup = new JsUnit.TestGroup(); - - while (testSuite.hasMorePages()) { - var testPage = testGroup.addTestPage(testSuite.nextPage()); - this.notifyUiOfTestPage(testPage); - } - - JsUnit.Util.push(this._testGroupStack, testGroup); -} - -JsUnitTestManager.prototype.kickOffTests = function() { - if (JsUnit.Util.isBlank(this.getTestFileName())) { - this.fatalError('No Test Page specified.'); - return; - } - - this.setup(); - - this._currentTestGroup().addTestPage(this.resolveUserEnteredTestFileName()); - - this.start(); -} - -JsUnitTestManager.prototype.start = function () { - var url = this.resolveUserEnteredTestFileName(); - this._baseURL = this._determineBaseUrl(url); - - this._timeRunStarted = new Date(); - this.initialize(); - setTimeout('top.testManager._nextPage();', JsUnitTestManager.TIMEOUT_LENGTH); -} - -JsUnitTestManager.prototype._determineBaseUrl = function (url) { - var firstQuery = url.indexOf("?"); - if (firstQuery >= 0) { - url = url.substring(0, firstQuery); - } - var lastSlash = url.lastIndexOf("/"); - var lastRevSlash = url.lastIndexOf("\\"); - if (lastRevSlash > lastSlash) { - lastSlash = lastRevSlash; - } - if (lastSlash > 0) { - url = url.substring(0, lastSlash + 1); - } - return url; -} - -JsUnitTestManager.prototype.getBaseURL = function () { - return this._baseURL; -} - -JsUnitTestManager.prototype.notifyUiOfTestPage = function(testPage) { - if (testPage.alreadyNotifiedUi) return; - - this._uiManager.learnedOfTestPage(testPage); - testPage.alreadyNotifiedUi = true; -} - -JsUnitTestManager.prototype.doneLoadingPage = function(testPage) { - this.notifyUiOfTestPage(testPage); - this._currentTestPage = testPage; - if (this.isTestPageSuite()) - this._handleNewSuite(); - else - { - this._testIndex = 0; - var testNames = this.getTestFunctionNames(); - for (var i = 0; i < testNames.length; i++) { - testPage.addTest(testNames[i]); - } - testPage.notify(JsUnit.TestPage.READY_EVENT); - this._numberOfTestsInPage = testNames.length; - this._runTest(); - } -} - -JsUnitTestManager.prototype._handleNewSuite = function () { - var allegedSuite = this.testFrame.suite(); - if (allegedSuite.isJsUnitTestSuite) { - var newSuite = this._cloneTestSuite(allegedSuite); - if (newSuite.containsTestPages()) - this.addTestSuite(newSuite); - this._nextPage(); - } - else { - this.fatalError('Invalid test suite in file ' + this._currentTestPage.url); - this.abort(); - } -} - -/** -* This function handles cloning of a jsUnitTestSuite object. This was added to replace the clone method of the jsUnitTestSuite class due to an IE bug in cross frame scripting. (See also jsunit bug 1522271) -**/ -JsUnitTestManager.prototype._cloneTestSuite = function(suite) { - var clone = new jsUnitTestSuite(); - clone._testPages = suite._testPages.concat(new Array(0)); - return clone; -} - -JsUnitTestManager.prototype._runTest = function () { - if (this._testIndex + 1 > this._numberOfTestsInPage) { - // execute tearDownPage *synchronously* - // (unlike setUpPage which is asynchronous) - if (typeof this.testFrame.tearDownPage == 'function') { - this.testFrame.tearDownPage(); - } - - this._currentTestPage.running = false; - this._currentTestPage.notify(JsUnit.TestPage.STATUS_CHANGE_EVENT); - - this._nextPage(); - return; - } - - if (this._testIndex == 0) { - this._currentTestPage.running = true; - this._currentTestPage.notify(JsUnit.TestPage.STATUS_CHANGE_EVENT); - - this.storeRestoredHTML(); - if (typeof(this.testFrame.setUpPage) == 'function') { - // first test for this page and a setUpPage is defined - if (typeof(this.testFrame.setUpPageStatus) == 'undefined') { - // setUpPage() not called yet, so call it - this.testFrame.setUpPageStatus = false; - this.testFrame.startTime = new Date(); - this.testFrame.setUpPage(); - // try test again later - setTimeout('top.testManager._runTest()', JsUnitTestManager.SETUPPAGE_INTERVAL); - return; - } - - if (this.testFrame.setUpPageStatus != 'complete') { - this.setWindowStatus('setUpPage not completed... ' + this.testFrame.setUpPageStatus + ' ' + (new Date())); - if ((new Date() - this.testFrame.startTime) / 1000 > this.getsetUpPageTimeout()) { - this.fatalError('setUpPage timed out without completing.'); - if (!this.userConfirm('Retry Test Run?')) { - this.abort(); - return; - } - this.testFrame.startTime = (new Date()); - } - // try test again later - setTimeout('top.testManager._runTest()', JsUnitTestManager.SETUPPAGE_INTERVAL); - return; - } - } - } - - this.setWindowStatus(''); - // either not first test, or no setUpPage defined, or setUpPage completed - - var theTest = this._currentTestPage.tests[this._testIndex]; - theTest.status = 'running'; - theTest.notify('statusChange'); - // todo: need to yield back so display will update here... - - this.executeTestFunction(theTest); - this.totalCount++; - this.updateProgressIndicators(); - this._testIndex++; - setTimeout('if (top.testManager) top.testManager._runTest()', JsUnitTestManager.TIMEOUT_LENGTH); -} - -JsUnitTestManager.prototype.setWindowStatus = function(string) { - top.status = string; -} - -JsUnitTestManager.prototype._populateHeaderFields = function(id, browserId, userAgent, jsUnitVersion, baseURL) { - this.resultsForm.id.value = id; - this.resultsForm.browserId.value = browserId; - this.resultsForm.userAgent.value = userAgent; - this.resultsForm.jsUnitVersion.value = jsUnitVersion; - this.resultsForm.url.value = baseURL; - this.resultsForm.cacheBuster.value = new Date().getTime(); -} - -JsUnitTestManager.prototype._submitResultsForm = function() { - var testCasesField = this.testCaseResultsField; - for (var i = 0; i < testCasesField.length; i++) { - testCasesField[i].selected = true; - } - - this.resultsForm.action = this.getSubmitUrl(); - this.resultsForm.submit(); -} - -JsUnitTestManager.prototype.submitResults = function() { - this._uiManager.submittingResults(); - this._populateHeaderFields(this._params.getResultId(), this._params.getBrowserId(), navigator.userAgent, JSUNIT_VERSION, this.resolveUserEnteredTestFileName()); - this._submitResultsForm(); -} - -JsUnitTestManager.prototype._done = function () { - var secondsSinceRunBegan = (new Date() - this._timeRunStarted) / 1000; - this.setStatus('Done (' + secondsSinceRunBegan + ' seconds)'); - - // call the suite teardown function, if defined - if( typeof top.suiteTearDown === 'function' ) { - top.suiteTearDown(); - } - - this._cleanUp(); - if (this._params.shouldSubmitResults()) { - this.resultsTimeField.value = secondsSinceRunBegan; - this.submitResults(); - } -} - -JsUnitTestManager.prototype._nextPage = function () { - this._restoredHTML = null; - if (this._currentTestGroup().hasMorePages()) { - var testPage = this._currentTestGroup().nextPage(); - this.loadPage(testPage); - } - else { - JsUnit.Util.pop(this._testGroupStack); - if (this._currentTestGroup() == null) - this._done(); - else - this._nextPage(); - } -} - -JsUnitTestManager.prototype._currentTestGroup = function () { - var suite = null; - - if (this._testGroupStack && this._testGroupStack.length > 0) - suite = this._testGroupStack[this._testGroupStack.length - 1]; - - return suite; -} - -JsUnitTestManager.prototype.calculateProgressBarProportion = function () { - if (this.totalCount == 0) - return 0; - var currentDivisor = 1; - var result = 0; - - for (var i = 0; i < this._testGroupStack.length; i++) { - var testGroup = this._testGroupStack[i]; - currentDivisor *= testGroup._testPages.length; - result += (testGroup._index - 1) / currentDivisor; - } - result += (this._testIndex + 1) / (this._numberOfTestsInPage * currentDivisor); - return result; -} - -JsUnitTestManager.prototype._cleanUp = function () { - this.containerController.setTestPage('./app/emptyPage.html'); - this.finalize(); -} - -JsUnitTestManager.prototype.abort = function () { - this.setStatus('Aborted'); - this._cleanUp(); -} - -JsUnitTestManager.prototype.getTimeout = function () { - var result = JsUnitTestManager.TESTPAGE_WAIT_SEC; - try { - result = eval(this.timeout.value); - } - catch (e) { - } - return result; -} - -JsUnitTestManager.prototype.getsetUpPageTimeout = function () { - var result = JsUnitTestManager.SETUPPAGE_TIMEOUT; - try { - result = eval(this.setUpPageTimeout.value); - } - catch (e) { - } - return result; -} - -JsUnitTestManager.prototype.isTestPageSuite = function () { - var result = false; - if (typeof(this.testFrame.suite) == 'function') - { - result = true; - } - return result; -} - -JsUnitTestManager.prototype.isTestFunction = function(propertyName, obj) { - return propertyName.substring(0, 4) == 'test' && typeof(obj[propertyName]) == 'function'; -} - -JsUnitTestManager.prototype.getTestFunctionNames = function () { - return this.getTestFunctionNamesFromExposedTestFunctionNames(this.testFrame) || - this.getTestFunctionNamesFromFrameProperties(this.testFrame) || - this.getTestFunctionNamesFromRuntimeObject(this.testFrame) || - this.getTestFunctionNamesUsingPlainTextSearch(this.testFrame); -} - -JsUnitTestManager.prototype.getTestFunctionNamesFromExposedTestFunctionNames = function (testFrame) { - if (testFrame && typeof(testFrame.exposeTestFunctionNames) == 'function') { - return testFrame.exposeTestFunctionNames(); - } else { - return null; - } -} - -JsUnitTestManager.prototype.getTestFunctionNamesFromFrameProperties = function (testFrame) { - var testFunctionNames = []; - - for (var i in testFrame) { - if (this.isTestFunction(i, testFrame)) { - JsUnit.Util.push(testFunctionNames, i); - } - } - - return testFunctionNames.length > 0 ? testFunctionNames : null; -} - -JsUnitTestManager.prototype.getTestFunctionNamesFromRuntimeObject = function (testFrame) { - var testFunctionNames = []; - - if (testFrame.RuntimeObject) { - var runtimeObject = testFrame.RuntimeObject("test*"); - for (var i in runtimeObject) { - if (this.isTestFunction(i, runtimeObject)) { - JsUnit.Util.push(testFunctionNames, i); - } - } - } - - return testFunctionNames.length > 0 ? testFunctionNames : null; -} - -/** - * Method of last resort. This will pick up functions that are commented-out and will not be able to pick up - * tests in included JS files. - */ -JsUnitTestManager.prototype.getTestFunctionNamesUsingPlainTextSearch = function (testFrame) { - var testFunctionNames = []; - - if (testFrame && - testFrame.document && - typeof(testFrame.document.scripts) != 'undefined' && - testFrame.document.scripts.length > 0) { // IE5 and up - var scriptsInTestFrame = testFrame.document.scripts; - - for (i = 0; i < scriptsInTestFrame.length; i++) { - var someNames = this._extractTestFunctionNamesFromScript(scriptsInTestFrame[i]); - if (someNames) { - testFunctionNames = testFunctionNames.concat(someNames); - } - } - } - - return testFunctionNames.length > 0 ? testFunctionNames : null; -} - -JsUnitTestManager.prototype._extractTestFunctionNamesFromScript = function (aScript) { - var result; - var remainingScriptToInspect = aScript.text; - var currentIndex = this._indexOfTestFunctionIn(remainingScriptToInspect); - while (currentIndex != -1) { - if (!result) - result = new Array(); - - var fragment = remainingScriptToInspect.substring(currentIndex, remainingScriptToInspect.length); - result = result.concat(fragment.substring('function '.length, fragment.indexOf('('))); - remainingScriptToInspect = remainingScriptToInspect.substring(currentIndex + 12, remainingScriptToInspect.length); - currentIndex = this._indexOfTestFunctionIn(remainingScriptToInspect); - } - return result; -} - -JsUnitTestManager.prototype._indexOfTestFunctionIn = function (string) { - return string.indexOf('function test'); -} - -JsUnitTestManager.prototype.loadPage = function (testPage) { - this._currentTestPage = testPage; - this._loadAttemptStartTime = new Date(); - this.setStatus('Opening Test Page "' + this._currentTestPage.url + '"'); - this.containerController.setTestPage(this._currentTestPage.url); - this._callBackWhenPageIsLoaded(); -} - -JsUnitTestManager.prototype._callBackWhenPageIsLoaded = function () { - if ((new Date() - this._loadAttemptStartTime) / 1000 > this.getTimeout()) { - this.fatalError('Reading Test Page ' + this._currentTestPage.url + ' timed out.\nMake sure that the file exists and is a Test Page.'); - if (this.userConfirm('Retry Test Run?')) { - this.loadPage(this._currentTestPage); - return; - } else { - this.abort(); - return; - } - } - if (!this._isTestFrameLoaded()) { - setTimeout('if (top.testManager) top.testManager._callBackWhenPageIsLoaded();', JsUnitTestManager.TIMEOUT_LENGTH); - return; - } - this.doneLoadingPage(this._currentTestPage); -} - -JsUnitTestManager.prototype._isTestFrameLoaded = function () { - try { - return this.containerController.isPageLoaded(); - } - catch (e) { - } - return false; -} - -JsUnitTestManager.prototype.executeTestFunction = function (theTest) { - this._currentTest = theTest; - this._testFunctionName = theTest.testName; - this.setStatus('Running test "' + this._testFunctionName + '"'); - var exception = null; - var timeBefore = new Date(); - try { - if (this._restoredHTML) - this.testFrame.document.getElementById(JsUnitTestManager.RESTORED_HTML_DIV_ID).innerHTML = this._restoredHTML; - if (this.testFrame.setUp !== JSUNIT_UNDEFINED_VALUE) - this.testFrame.setUp(); - this.testFrame[this._testFunctionName](); - } - catch (e1) { - exception = e1; - } - finally { - try { - if (this.testFrame.tearDown !== JSUNIT_UNDEFINED_VALUE) - this.testFrame.tearDown(); - } - catch (e2) { - //Unlike JUnit, only assign a tearDown exception to excep if there is not already an exception from the test body - if (exception == null) - exception = e2; - } - } - theTest.timeTaken = new Date() - timeBefore; - - var timeTaken = theTest.timeTaken / 1000; - this._setTestStatus(theTest, exception); - this._uiManager.testCompleted(theTest); - - var serializedTestCaseString = this._currentTestFunctionNameWithTestPageName(true) + "|" + timeTaken + "|"; - if (exception == null) - serializedTestCaseString += "S||"; - else { - if (exception.isJsUnitFailure) - serializedTestCaseString += "F|"; - else { - serializedTestCaseString += "E|"; - } - serializedTestCaseString += this._uiManager.problemDetailMessageFor(exception); - } - this._addOption(this.testCaseResultsField, - serializedTestCaseString, - serializedTestCaseString); -} - -JsUnitTestManager.prototype._currentTestFunctionNameWithTestPageName = function(useFullyQualifiedTestPageName) { - var testURL = this.testFrame.location.href; - var testQuery = testURL.indexOf("?"); - if (testQuery >= 0) { - testURL = testURL.substring(0, testQuery); - } - if (!useFullyQualifiedTestPageName) { - if (testURL.substring(0, this._baseURL.length) == this._baseURL) - testURL = testURL.substring(this._baseURL.length); - } - return testURL + ':' + this._testFunctionName; -} - -JsUnitTestManager.prototype._addOption = function(listField, problemValue, problemMessage) { - if (typeof(listField.ownerDocument) != 'undefined' - && typeof(listField.ownerDocument.createElement) != 'undefined') { - // DOM Level 2 HTML method. - // this is required for Opera 7 since appending to the end of the - // options array does not work, and adding an Option created by new Option() - // and appended by listField.options.add() fails due to WRONG_DOCUMENT_ERR - var problemDocument = listField.ownerDocument; - var errOption = problemDocument.createElement('option'); - errOption.setAttribute('value', problemValue); - errOption.appendChild(problemDocument.createTextNode(problemMessage)); - listField.appendChild(errOption); - } - else { - // new Option() is DOM 0 - - var errOption = new Option(problemMessage, problemValue); - - if (typeof(listField.add) != 'undefined') { - // DOM 2 HTML - try { - listField.add(errOption, null); - } catch(err) { - listField.add(errOption); // IE 5.5 - } - - } - else if (typeof(listField.options.add) != 'undefined') { - // DOM 0 - listField.options.add(errOption, null); - } - else { - // DOM 0 - listField.options[listField.length] = errOption; - } - } -} - -JsUnitTestManager.prototype._setTestStatus = function (test, excep) { - var message = this._currentTestFunctionNameWithTestPageName(false) + ' '; - - if (excep == null) { - test.status = 'success'; - test.testPage.successCount++; - message += 'passed'; - } else { - test.exception = excep; - - if (!excep.isJsUnitFailure) { - this.errorCount++; - test.status = 'error'; - test.testPage.errorCount++; - message += 'had an error'; - } - else { - this.failureCount++; - test.status = 'failure'; - test.testPage.failureCount++; - message += 'failed'; - } - } - - test.message = message; -} - -JsUnitTestManager.prototype.setStatus = function (str) { - this._uiManager.setStatus(str); - this.log.push(str); -} - -JsUnitTestManager.prototype.updateProgressIndicators = function () { - this._uiManager.updateProgressIndicators( - this.totalCount, - this.errorCount, - this.failureCount, - this.calculateProgressBarProportion() - ); -} - -JsUnitTestManager.prototype.initialize = function () { - this.setStatus('Initializing...'); - this._uiManager.starting(); - this.updateProgressIndicators(); - this.setStatus('Done initializing'); -} - -JsUnitTestManager.prototype.finalize = function () { - this._uiManager.finishing(); -} - -JsUnitTestManager.prototype.getTestFileName = function () { - var rawEnteredFileName = this._uiManager.getTestFileName(); - var result = rawEnteredFileName; - - while (result.indexOf('\\') != -1) - result = result.replace('\\', '/'); - - return result; -} - -JsUnitTestManager.prototype.getTestFunctionName = function () { - return this._testFunctionName; -} - -JsUnitTestManager.prototype.resolveUserEnteredTestFileName = function (rawText) { - var userEnteredTestFileName = this.getTestFileName(); - - // only test for file:// since Opera uses a different format - if (userEnteredTestFileName.indexOf('http://') == 0 || userEnteredTestFileName.indexOf('https://') == 0 || userEnteredTestFileName.indexOf('file://') == 0) - return userEnteredTestFileName; - - return this.getTestFileProtocol() + this.getTestFileName(); -} - -JsUnitTestManager.prototype.storeRestoredHTML = function () { - if (document.getElementById && this.testFrame.document.getElementById(JsUnitTestManager.RESTORED_HTML_DIV_ID)) - this._restoredHTML = this.testFrame.document.getElementById(JsUnitTestManager.RESTORED_HTML_DIV_ID).innerHTML; -} - -JsUnitTestManager.prototype.fatalError = function(aMessage) { - this._uiManager.fatalError(aMessage); -} - -JsUnitTestManager.prototype.userConfirm = function(aMessage) { - return this._uiManager.userConfirm(aMessage); -} - -JsUnitTestManager.DEFAULT_SUBMIT_WEBSERVER = "localhost:8080"; - -JsUnitTestManager.prototype._submitUrlFromSpecifiedUrl = function() { - var result = ""; - var specifiedUrl = this._params.getSpecifiedResultUrl(); - if (specifiedUrl.indexOf("http://") != 0) - result = "http://"; - result += specifiedUrl; - return result; -} - -JsUnitTestManager.prototype._submitUrlFromTestRunnerLocation = function() { - var result = "http://"; - var webserver = this.getWebserver(); - var runningOverFileProtocol = webserver == null; - if (runningOverFileProtocol) - webserver = JsUnitTestManager.DEFAULT_SUBMIT_WEBSERVER; - result += webserver; - result += "/jsunit/acceptor"; - return result; -} - -JsUnitTestManager.prototype.getSubmitUrl = function() { - if (this._params.wasResultUrlSpecified()) { - return this._submitUrlFromSpecifiedUrl(); - } else { - return this._submitUrlFromTestRunnerLocation(); - } -} - -JsUnitTestManager.prototype.isFileProtocol = function() { - return this.getTestFileProtocol() == 'file:///'; -} - -JsUnitTestManager.prototype.getTestPageString = function() { - var testPageParameter = this._params.getTestPage(); - var isFileProtocol = this.isFileProtocol(); - var testPageString = ""; - if (testPageParameter) { - if (!isFileProtocol) { - var topLocation = top.location; - if (testPageParameter.indexOf('/') == 0) - testPageString += topLocation.host; - else if (testPageParameter.indexOf('./') == 0) { - testPageString += topLocation.href.substr(0, topLocation.href.indexOf("testRunner.html")); - testPageParameter = testPageParameter.substr(2, testPageParameter.length); - } - } - testPageString += testPageParameter; - var testParms = this._params.constructTestParams(); - if (testParms != '') { - testPageString += '?'; - testPageString += testParms; - } - } - return testPageString; -} - - -JsUnitTestManager.prototype.getTestFileProtocol = function() { - var protocol = top.document.location.protocol; - - if (protocol == "file:") - return "file:///"; - - if (protocol == "http:") - return "http://"; - - if (protocol == 'https:') - return 'https://'; - - if (protocol == "chrome:") - return "chrome://"; - - return null; -} - -JsUnitTestManager.prototype.browserSupportsReadingFullPathFromFileField = function() { - return false; //pretty much all modern browsers disallow this now -} - -JsUnitTestManager.prototype.isOpera = function() { - return navigator.userAgent.toLowerCase().indexOf("opera") != -1; -} - -JsUnitTestManager.prototype.isIE7 = function() { - return navigator.userAgent.toLowerCase().indexOf("msie 7") != -1; -} - -JsUnitTestManager.prototype.isFirefox3 = function() { - return navigator.userAgent.toLowerCase().indexOf("firefox/3") != -1; -} - -JsUnitTestManager.prototype.isSafari4 = function() { - return navigator.userAgent.toLowerCase().indexOf("4.0 safari") != -1; -} - -JsUnitTestManager.prototype.isBeingRunOverHTTP = function() { - return this.getTestFileProtocol() == "http://"; -} - -JsUnitTestManager.prototype.getWebserver = function() { - if (this.isBeingRunOverHTTP()) { - var myUrl = location.href; - var myUrlWithProtocolStripped = myUrl.substring(myUrl.indexOf("/") + 2); - return myUrlWithProtocolStripped.substring(0, myUrlWithProtocolStripped.indexOf("/")); - } - return null; -} - -JsUnitTestManager.prototype.addTraceData = function(message, value, traceLevel) { - var traceMessage = new JsUnit.TraceMessage(message, value, traceLevel); - this._currentTest.addTraceMessage(traceMessage); - - if (!this._params.shouldSubmitResults()) { - this._uiManager.addedTraceData(this._currentTest, traceMessage); - } -} - -if (!Array.prototype.push) { - Array.prototype.push = function (anObject) { - this[this.length] = anObject; - } -} - -if (!Array.prototype.pop) { - Array.prototype.pop = function () { - if (this.length > 0) { - delete this[this.length - 1]; - this.length--; - } - } -} diff --git a/scripts/jsunit/app/jsUnitTracer.js b/scripts/jsunit/app/jsUnitTracer.js deleted file mode 100644 index 9d76d38fa..000000000 --- a/scripts/jsunit/app/jsUnitTracer.js +++ /dev/null @@ -1,48 +0,0 @@ -function JsUnitTraceLevel(levelNumber, color) { - this._levelNumber = levelNumber; - this._color = color; -} - -JsUnitTraceLevel.prototype.matches = function(otherTraceLevel) { - return this._levelNumber >= otherTraceLevel._levelNumber; -} - -JsUnitTraceLevel.prototype.getColor = function() { - return this._color; -} - -JsUnitTraceLevel.findByLevelNumber = function(levelNumber) { - switch (levelNumber) { - case 0: return JsUnitTraceLevel.NONE; - case 1: return JsUnitTraceLevel.WARNING; - case 2: return JsUnitTraceLevel.INFO; - case 3: return JsUnitTraceLevel.DEBUG; - } - return null; -} - -JsUnitTraceLevel.NONE = new JsUnitTraceLevel(0, null); -JsUnitTraceLevel.WARNING = new JsUnitTraceLevel(1, "#FF0000"); -JsUnitTraceLevel.INFO = new JsUnitTraceLevel(2, "#009966"); -JsUnitTraceLevel.DEBUG = new JsUnitTraceLevel(3, "#0000FF"); - -function JsUnitTracer(testManager, params) { - this._testManager = testManager; - this._params = params; -} - -JsUnitTracer.prototype.warn = function() { - this._trace(arguments[0], arguments[1], JsUnitTraceLevel.WARNING); -} - -JsUnitTracer.prototype.inform = function() { - this._trace(arguments[0], arguments[1], JsUnitTraceLevel.INFO); -} - -JsUnitTracer.prototype.debug = function() { - this._trace(arguments[0], arguments[1], JsUnitTraceLevel.DEBUG); -} - -JsUnitTracer.prototype._trace = function(message, value, traceLevel) { - this._testManager.addTraceData(message, value, traceLevel); -} \ No newline at end of file diff --git a/scripts/jsunit/app/main-counts-errors.html b/scripts/jsunit/app/main-counts-errors.html deleted file mode 100644 index 14f94c0c9..000000000 --- a/scripts/jsunit/app/main-counts-errors.html +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - - - - -
Errors: 0
- - \ No newline at end of file diff --git a/scripts/jsunit/app/main-counts-failures.html b/scripts/jsunit/app/main-counts-failures.html deleted file mode 100644 index 88a9f96d7..000000000 --- a/scripts/jsunit/app/main-counts-failures.html +++ /dev/null @@ -1,13 +0,0 @@ - - - - - - - - - -
Failures: 0
- - - diff --git a/scripts/jsunit/app/main-counts-runs.html b/scripts/jsunit/app/main-counts-runs.html deleted file mode 100644 index 38f4bbec4..000000000 --- a/scripts/jsunit/app/main-counts-runs.html +++ /dev/null @@ -1,13 +0,0 @@ - - - - - - - - - -
Runs: 0
- - - diff --git a/scripts/jsunit/app/main-counts.html b/scripts/jsunit/app/main-counts.html deleted file mode 100644 index db2d01936..000000000 --- a/scripts/jsunit/app/main-counts.html +++ /dev/null @@ -1,21 +0,0 @@ - - - - - - - - - - - - - - <body> - <p>jsUnit uses frames in order to remove dependencies upon a browser's implementation of document.getElementById - and HTMLElement.innerHTML.</p> - </body> - - - - diff --git a/scripts/jsunit/app/main-data.html b/scripts/jsunit/app/main-data.html deleted file mode 100644 index e7f8333c8..000000000 --- a/scripts/jsunit/app/main-data.html +++ /dev/null @@ -1,149 +0,0 @@ - - - - - JsUnit main-data.html - - - - - - - - - - - - - - -
-
-
- -
- - JsUnit - -
- -
-
-
  -

JsUnit TestRunner

- Running on - -
- www.jsunit.net  
- JsUnit group  
-
-
- - Powered By Pivotal Labs - -
-
- -
- - - - - - - - -
- - -   - -
-
- -
- - - - - - - - - - - - - - - - - - - - - -
Trace level:   Close old trace window on new run      Page load timeout:  - -       Setup page timeout:  - -
- -
-
- -
- - diff --git a/scripts/jsunit/app/main-frame.html b/scripts/jsunit/app/main-frame.html deleted file mode 100644 index 7c6c54c86..000000000 --- a/scripts/jsunit/app/main-frame.html +++ /dev/null @@ -1,18 +0,0 @@ - - - - jsUnit Main Frame - -> - - - - - - - <body> - <p>Sorry, JsUnit requires frames.</p> - </body> - - - diff --git a/scripts/jsunit/app/main-loader.html b/scripts/jsunit/app/main-loader.html deleted file mode 100644 index 688a38133..000000000 --- a/scripts/jsunit/app/main-loader.html +++ /dev/null @@ -1,36 +0,0 @@ - - - - - jsUnit External Data Document loader - - - - - - - diff --git a/scripts/jsunit/app/main-problems.html b/scripts/jsunit/app/main-problems.html deleted file mode 100644 index 17abb1f61..000000000 --- a/scripts/jsunit/app/main-problems.html +++ /dev/null @@ -1,26 +0,0 @@ - - - - - JsUnit main-problems.html - - - - -
-
-
-

Errors and failures (double-click to see details):

- -
-
- -     - -     - -
-
- - diff --git a/scripts/jsunit/app/main-progress.html b/scripts/jsunit/app/main-progress.html deleted file mode 100644 index 849043cee..000000000 --- a/scripts/jsunit/app/main-progress.html +++ /dev/null @@ -1,25 +0,0 @@ - - - - - JsUnit main-progress.html - - - - - - - - - - -
Progress: - - - - -
progress image
-
- - diff --git a/scripts/jsunit/app/main-results.html b/scripts/jsunit/app/main-results.html deleted file mode 100644 index a27a8eb80..000000000 --- a/scripts/jsunit/app/main-results.html +++ /dev/null @@ -1,39 +0,0 @@ - - - - - JsUnit main-results.html - - - - -
- - - - - - - - - -
- - - diff --git a/scripts/jsunit/app/main-status.html b/scripts/jsunit/app/main-status.html deleted file mode 100644 index 7d3aa7aaf..000000000 --- a/scripts/jsunit/app/main-status.html +++ /dev/null @@ -1,14 +0,0 @@ - - - - - JsUnit main-status.html - - - - - -
Status: Idle
- - - diff --git a/scripts/jsunit/app/modernUi.html b/scripts/jsunit/app/modernUi.html deleted file mode 100644 index 760f3f9e4..000000000 --- a/scripts/jsunit/app/modernUi.html +++ /dev/null @@ -1,157 +0,0 @@ - - - - - JsUnit Modern UI - - - - - - - - - - - - - - - - - -
- - - JsUnit - - Test Runner - -
- - Running on - - -
- www.jsunit.net -
- JsUnit group -
- - - -
- -
- - - - - - - - -
- - -   - - - - - -
- - - - - - - -
Progress: - - - - -
- progress image -
-
- -
- -
Status: (Idle)
- - - - - - - - - - - -
-
- Runs: 0   - Errors: 0   - Failures: 0   - Elapsed: 0 -
-
- Results: -
-
-
    - -
    -
    - -
    -
    -
    -
    -
    -
    -
    -
    - -Show: - - - -
    - - - - - diff --git a/scripts/jsunit/app/testContainer.html b/scripts/jsunit/app/testContainer.html deleted file mode 100644 index 6cd262343..000000000 --- a/scripts/jsunit/app/testContainer.html +++ /dev/null @@ -1,16 +0,0 @@ - - - - - JsUnit Test Container - - - - - - <body> - <p>Sorry, JsUnit requires frames.</p> - </body> - - - diff --git a/scripts/jsunit/app/testContainerController.html b/scripts/jsunit/app/testContainerController.html deleted file mode 100644 index 5bd3e7e4a..000000000 --- a/scripts/jsunit/app/testContainerController.html +++ /dev/null @@ -1,76 +0,0 @@ - - - - - JsUnit Test Container Controller - - - - -Test Container Controller - - diff --git a/scripts/jsunit/bin/mac/readme.txt b/scripts/jsunit/bin/mac/readme.txt deleted file mode 100644 index af364710f..000000000 --- a/scripts/jsunit/bin/mac/readme.txt +++ /dev/null @@ -1,3 +0,0 @@ -This directory contains shell scripts (*.sh) and AppleScripts (*.scpt) to start and stop browsers. - -The shell scripts invoke the AppleScripts, so use the shell scripts. \ No newline at end of file diff --git a/scripts/jsunit/bin/mac/start-firefox.scpt b/scripts/jsunit/bin/mac/start-firefox.scpt deleted file mode 100644 index dd22a356f..000000000 Binary files a/scripts/jsunit/bin/mac/start-firefox.scpt and /dev/null differ diff --git a/scripts/jsunit/bin/mac/start-firefox.sh b/scripts/jsunit/bin/mac/start-firefox.sh deleted file mode 100755 index 9aa0ff4f2..000000000 --- a/scripts/jsunit/bin/mac/start-firefox.sh +++ /dev/null @@ -1,7 +0,0 @@ -#!/bin/sh - -# Starts Firefox. Use this instead of calling the AppleScripts directly. - -osascript bin/mac/stop-firefox.scpt -osascript bin/mac/start-firefox.scpt $1 - diff --git a/scripts/jsunit/bin/mac/start-opera9.scpt b/scripts/jsunit/bin/mac/start-opera9.scpt deleted file mode 100644 index e477b5ba4..000000000 Binary files a/scripts/jsunit/bin/mac/start-opera9.scpt and /dev/null differ diff --git a/scripts/jsunit/bin/mac/start-opera9.sh b/scripts/jsunit/bin/mac/start-opera9.sh deleted file mode 100755 index 79add8d8b..000000000 --- a/scripts/jsunit/bin/mac/start-opera9.sh +++ /dev/null @@ -1,7 +0,0 @@ -#!/bin/sh - -# Starts Opera9. Use this instead of calling the AppleScripts directly. - -osascript bin/mac/stop-opera9.scpt -osascript bin/mac/start-opera9.scpt $1 - diff --git a/scripts/jsunit/bin/mac/start-safari.scpt b/scripts/jsunit/bin/mac/start-safari.scpt deleted file mode 100644 index 3c0820453..000000000 Binary files a/scripts/jsunit/bin/mac/start-safari.scpt and /dev/null differ diff --git a/scripts/jsunit/bin/mac/start-safari.sh b/scripts/jsunit/bin/mac/start-safari.sh deleted file mode 100755 index e920dc673..000000000 --- a/scripts/jsunit/bin/mac/start-safari.sh +++ /dev/null @@ -1,7 +0,0 @@ -#!/bin/sh - -# Starts Safari. Use this instead of calling the AppleScripts directly. - -osascript bin/mac/stop-safari.scpt -osascript bin/mac/start-safari.scpt $1 - diff --git a/scripts/jsunit/bin/mac/stop-firefox.scpt b/scripts/jsunit/bin/mac/stop-firefox.scpt deleted file mode 100644 index 4facedd1d..000000000 Binary files a/scripts/jsunit/bin/mac/stop-firefox.scpt and /dev/null differ diff --git a/scripts/jsunit/bin/mac/stop-firefox.sh b/scripts/jsunit/bin/mac/stop-firefox.sh deleted file mode 100755 index f5c878fb4..000000000 --- a/scripts/jsunit/bin/mac/stop-firefox.sh +++ /dev/null @@ -1,6 +0,0 @@ -#!/bin/sh - -# Stops Firefox. Use this instead of calling the AppleScripts directly. - -osascript bin/mac/stop-firefox.scpt - diff --git a/scripts/jsunit/bin/mac/stop-opera9.scpt b/scripts/jsunit/bin/mac/stop-opera9.scpt deleted file mode 100644 index 8ca86e139..000000000 Binary files a/scripts/jsunit/bin/mac/stop-opera9.scpt and /dev/null differ diff --git a/scripts/jsunit/bin/mac/stop-opera9.sh b/scripts/jsunit/bin/mac/stop-opera9.sh deleted file mode 100755 index c147469d7..000000000 --- a/scripts/jsunit/bin/mac/stop-opera9.sh +++ /dev/null @@ -1,6 +0,0 @@ -#!/bin/sh - -# Stops Opera9. Use this instead of calling the AppleScripts directly. - -osascript bin/mac/stop-opera9.scpt - diff --git a/scripts/jsunit/bin/mac/stop-safari.scpt b/scripts/jsunit/bin/mac/stop-safari.scpt deleted file mode 100644 index f65824a0d..000000000 Binary files a/scripts/jsunit/bin/mac/stop-safari.scpt and /dev/null differ diff --git a/scripts/jsunit/bin/mac/stop-safari.sh b/scripts/jsunit/bin/mac/stop-safari.sh deleted file mode 100755 index 56d20fc7b..000000000 --- a/scripts/jsunit/bin/mac/stop-safari.sh +++ /dev/null @@ -1,6 +0,0 @@ -#!/bin/sh - -# Stops Safari. Use this instead of calling the AppleScripts directly. - -osascript bin/mac/stop-safari.scpt - diff --git a/scripts/jsunit/bin/unix/start-firefox.sh b/scripts/jsunit/bin/unix/start-firefox.sh deleted file mode 100755 index 6dca980d7..000000000 --- a/scripts/jsunit/bin/unix/start-firefox.sh +++ /dev/null @@ -1,3 +0,0 @@ -#!/bin/sh -killall -9 -w firefox-bin -firefox $1 & diff --git a/scripts/jsunit/bin/unix/start-mozilla.sh b/scripts/jsunit/bin/unix/start-mozilla.sh deleted file mode 100755 index 295f78e02..000000000 --- a/scripts/jsunit/bin/unix/start-mozilla.sh +++ /dev/null @@ -1,3 +0,0 @@ -#!/bin/sh -killall -9 -w mozilla-bin -mozilla $1 & diff --git a/scripts/jsunit/bin/unix/start-opera9.sh b/scripts/jsunit/bin/unix/start-opera9.sh deleted file mode 100755 index 74fb31473..000000000 --- a/scripts/jsunit/bin/unix/start-opera9.sh +++ /dev/null @@ -1,3 +0,0 @@ -#!/bin/sh -killall -9 -w opera -opera -nosession $1 & diff --git a/scripts/jsunit/bin/unix/stop-firefox.sh b/scripts/jsunit/bin/unix/stop-firefox.sh deleted file mode 100755 index 074355e74..000000000 --- a/scripts/jsunit/bin/unix/stop-firefox.sh +++ /dev/null @@ -1,2 +0,0 @@ -#!/bin/sh -killall -9 -w firefox-bin diff --git a/scripts/jsunit/bin/unix/stop-mozilla.sh b/scripts/jsunit/bin/unix/stop-mozilla.sh deleted file mode 100755 index 8cddcbf19..000000000 --- a/scripts/jsunit/bin/unix/stop-mozilla.sh +++ /dev/null @@ -1,2 +0,0 @@ -#!/bin/sh -killall -9 -w mozilla-bin diff --git a/scripts/jsunit/bin/unix/stop-opera9.sh b/scripts/jsunit/bin/unix/stop-opera9.sh deleted file mode 100755 index 596f35613..000000000 --- a/scripts/jsunit/bin/unix/stop-opera9.sh +++ /dev/null @@ -1,2 +0,0 @@ -#!/bin/sh -killall -9 -w opera diff --git a/scripts/jsunit/build.xml b/scripts/jsunit/build.xml deleted file mode 100644 index 22cf8438e..000000000 --- a/scripts/jsunit/build.xml +++ /dev/null @@ -1,148 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/scripts/jsunit/build_aggregate.xml b/scripts/jsunit/build_aggregate.xml deleted file mode 100644 index 7448f6b3f..000000000 --- a/scripts/jsunit/build_aggregate.xml +++ /dev/null @@ -1,102 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/scripts/jsunit/css/jsUnitStyle.css b/scripts/jsunit/css/jsUnitStyle.css deleted file mode 100644 index a6ba3cc62..000000000 --- a/scripts/jsunit/css/jsUnitStyle.css +++ /dev/null @@ -1,103 +0,0 @@ -body { - margin-top: 0; - margin-bottom: 0; - font-family: Trebuchet MS, Verdana, Arial, Sans-serif; - color: #000; - font-size: 0.8em; -} - -.button { - color: #000000; - font-family: 'trebuchet ms', helvetica, sans-serif; - font-size: 100%; - font-weight: bold; - background-color: #dddddd; - border: 1px solid; - border-top-color: #696; - border-left-color: #696; - border-right-color: #363; - border-bottom-color: #363; -} - -table { - font-size: 1em; -} - -a:link, a:visited { - color: #0000AA; - text-decoration: underline; -} - -a:hover { - color: #810; - text-decoration: underline; -} - -h1 { - font-size: 1.2em; - font-weight: bold; - color: #039; - font-family: Trebuchet MS, Verdana, Arial, Helvetica, sans-serif; -} - -h2 { - font-weight: bold; - color: #039; - font-family: Trebuchet MS, Verdana, Arial, Helvetica, sans-serif; -} - -h3 { - font-weight: bold; - color: #039; - text-decoration: underline; - font-family: Trebuchet MS, Verdana, Arial, Helvetica, sans-serif; -} - -h4 { - color: #039; - font-family: Trebuchet MS, Verdana, Arial, Helvetica, sans-serif; - font-size: 1em; -} - -.jsUnitTestResultSuccess { - color: #000; -} - -.jsUnitTestResultNotSuccess { - color: #F00; -} - -.rb0roundbox { - background: url( ../images/nt0.gif ) repeat; -} - -.rb0top div { - background: url( ../images/tl0.gif ) no-repeat top left; -} - -.rb0top { - background: url( ../images/tr0.gif ) no-repeat top right; -} - -.rb0bot div { - background: url( ../images/bl0.gif ) no-repeat bottom left; -} - -.rb0bot { - background: url( ../images/br0.gif ) no-repeat bottom right; -} - -.rb0top div, .rb0top, .rb0bot div, .rb0bot { - width: 100%; - height: 7px; - font-size: 1px; -} - -.rb0content { - margin: 0 7px; -} - -.rb0roundbox { - width: 100%; - margin: 4px auto; -} diff --git a/scripts/jsunit/css/modernStyle.css b/scripts/jsunit/css/modernStyle.css deleted file mode 100644 index 88ca9b387..000000000 --- a/scripts/jsunit/css/modernStyle.css +++ /dev/null @@ -1,136 +0,0 @@ -html, body { - margin: 0; - padding: 0; - height: 100%; - font-family: Trebuchet MS, Verdana, Arial, Sans-serif; - color: #000; - font-size: 0.9em; -} - -a:link, a:visited { - color: #0000AA; - text-decoration: underline; -} - -a:hover { - color: #810; - text-decoration: underline; -} - -img { - border: none; -} - -blockquote { - margin: 2px 10px; -} - -ul { - padding-left: 10px; - list-style: none; -} - -li { -} - -#infoPanel { - width: 100%; -} - -#ident { - font-size: 1.5em; -} - -#browserInfo { -} - -#pivotalLogo { - padding-top: 5px; -} - -#resultsArea { - width: 100%; -} - -#resultsArea td { - width: 50%; - border: 1px solid black; - vertical-align: top; -} - -#resultsArea td.header { - border: none; -} - -#testResult { - width: 100%; - height: 100%; - padding: 0px; - margin: 0px; -} - -#traceLevelDiv, #timeoutOptionsDiv { - float: right; - padding: 3px; - border: 1px solid black; -} - -#testsInfo { - width: 100%; - height: 200px; - overflow: scroll; -} - -.testPage { - font-weight: bold; -} - -.testPage, .testResult { - width: 100%; -} - -.testPage:hover, .testResult:hover { - background-color: #eeeeee; -} - -.running { - color: orange; -} - -.recentlyUpdated { - display: block !important; -} - -.noTestsYet { - color: lightgray; -} - -.ready { - color: gray; -} - -.running { - color: yellow; -} - -.success { - color: green; -} - -.failure { - color: orange; -} - -.error { - color: red; -} - -.hidePassed .success { - display: none; -} - -.stackTrace { - display: block; - padding-left: 1em; - color: red; -} diff --git a/scripts/jsunit/doc/generate_jsdoc.sh b/scripts/jsunit/doc/generate_jsdoc.sh deleted file mode 100644 index 76c545cbb..000000000 --- a/scripts/jsunit/doc/generate_jsdoc.sh +++ /dev/null @@ -1 +0,0 @@ -perl ../../JSDoc-1.10.2/jsdoc.pl --project-summary=summary.txt --logo=../images/logo_jsunit.jpg --project-name='JsUnit' --no-sources --page-footer='www.jsunit.net' ../app/jsUnitCore.js ../lib/*.js \ No newline at end of file diff --git a/scripts/jsunit/doc/gotapi.xml b/scripts/jsunit/doc/gotapi.xml deleted file mode 100644 index 47220b241..000000000 --- a/scripts/jsunit/doc/gotapi.xml +++ /dev/null @@ -1,88 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/scripts/jsunit/doc/js_docs_out/Clock.html b/scripts/jsunit/doc/js_docs_out/Clock.html deleted file mode 100644 index 2c5a78ba7..000000000 --- a/scripts/jsunit/doc/js_docs_out/Clock.html +++ /dev/null @@ -1,478 +0,0 @@ - - - - - -Clock - - - - - - - - - - - - - - - - - - - - - -
    -JsUnit - -
    - -
    - - -

    Class Clock

    -
    Object
    -   |
    -   +--Clock
    -
    - - -
    -
    - -
    class - Clock - - -
    - -

    -
    Clock stores callbacks and executes them when it is told to simulate the advancing of time - -
    Defined in jsUnitMockTimeout.js

    -

    - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    - Field Summary
    - <static>  ObjectnowMillis -
    -           The current milliseconds
    - <static>  ObjectscheduledFunctions -
    -           Hash of milliseconds to scheduled functions
    - <static>  ObjecttimeoutsMade -
    -           The number of timeouts executed
    -   - - - - - - - - - - - - - - - - - -
    -Constructor Summary
    - - - Clock() - -
    -             - -
    - - - -  - - - - - - - - - - - - - - - - - - - - - - - - - - -
    -Method Summary
    - - <static> void - - - - - reset() - -
    -            - Resets the clock - clears the scheduledFunctions, the current milliseconds, and the timeouts made count -
    - - <static> void - - - - - scheduleFunction(timeoutKey, funcToCall, millis, recurring) - -
    -            - Schedules a function to be executed at the given number of milliseconds from now -
    - - <static> void - - - - - tick(millis) - -
    -            - Simulate the advancing of time. -
    - - - -

    - - - - - - - - - - -
    Field Detail
    - - - -

    nowMillis

    -
    <static> Object nowMillis
    -
      - The current milliseconds - -
    -
    - - -

    scheduledFunctions

    -
    <static> Object scheduledFunctions
    -
      - Hash of milliseconds to scheduled functions - -
    -
    - - -

    timeoutsMade

    -
    <static> Object timeoutsMade
    -
      - The number of timeouts executed - -
    -
    - - - - - - - - - - - - -
    - Constructor Detail -
    - -

    -Clock

    -
    Clock()
    - - - - - - - - - - - - - -
    - - - - - - - - - - - - -
    - Method Detail -
    - - - - -

    reset

    -
    <static> void reset()
    - -
      Resets the clock - clears the scheduledFunctions, the current milliseconds, and the timeouts made count
    - - - - - - - - - - - -
    - - -

    scheduleFunction

    -
    <static> void scheduleFunction(timeoutKey, funcToCall, millis, recurring)
    - -
      Schedules a function to be executed at the given number of milliseconds from now
    - - - - -
      - Parameters: - -
        timeoutKey - - the ID of the callback -
      - -
        funcToCall - - the function to call -
      - -
        millis - - the number of milliseconds before the callback -
      - -
        recurring - - whether the callback recurs - if true, then the callback will be re-registered after it executes -
      - -
    - - - - - - - - -
    - - -

    tick

    -
    <static> void tick(millis)
    - -
      Simulate the advancing of time. Any functions scheduled in the given interval will be executed
    - - - - -
      - Parameters: - -
        millis - the number of milliseconds by which to advance time -
      - -
    - - - - - - - - -
    - - - - - - - - - - - - - - - - - - - - - - -
    -JsUnit - -
    - - - -
    - -www.jsunit.net - -
    Documentation generated by JSDoc on Sun Sep 9 15:34:58 2007
    - - diff --git a/scripts/jsunit/doc/js_docs_out/GLOBALS.html b/scripts/jsunit/doc/js_docs_out/GLOBALS.html deleted file mode 100644 index 1e94dd15b..000000000 --- a/scripts/jsunit/doc/js_docs_out/GLOBALS.html +++ /dev/null @@ -1,1887 +0,0 @@ - - - - - -GLOBALS - - - - - - - - - - - - - - - - - - - - - -
    -JsUnit - -
    - -
    - - -

    Class GLOBALS

    -
    Object
    -   |
    -   +--GLOBALS
    -
    - - -
    -
    - -
    class - GLOBALS - - -
    - -
    - - - - - - - - - - - - - - - - - - -  - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    -Method Summary
    - - <static> void - - - - - assert() - -
    -            - Checks that the given boolean value is true. -
    - - <static> void - - - - - assertArrayEquals() - -
    -            - Checks that an array is equal to another by checking that both are arrays and then comparing their elements using assertObjectEquals -
    - - <static> void - - - - - assertArrayEqualsIgnoringOrder() - -
    -            - Checks that two arrays have the same contents, ignoring the order of the contents -
    - - <static> void - - - - - assertContains() - -
    -            - Checks that a collection contains a value by checking that collection.indexOf(value) is not -1 -
    - - <static> void - - - - - assertEquals() - -
    -            - Checks that two values are equal (using ===) -
    - - <static> void - - - - - assertEqualsIgnoringOrder() - -
    -            - Synonym for assertArrayEqualsIgnoringOrder -
    - - <static> void - - - - - assertEvaluatesToFalse() - -
    -            - Checks that a value evaluates to false in the sense that value == false -
    - - <static> void - - - - - assertEvaluatesToTrue() - -
    -            - Checks that a value evaluates to true in the sense that value == true -
    - - <static> void - - - - - assertFalse() - -
    -            - Checks that a boolean value is false. -
    - - <static> void - - - - - assertHashEquals() - -
    -            - Checks that a hash is has the same contents as another by iterating over the expected hash and checking that each - key's value is present in the actual hash and calling assertEquals on the two values, and then checking that there is - no key in the actual hash that isn't present in the expected hash. -
    - - <static> void - - - - - assertHTMLEquals() - -
    -            - Checks that a value is the same as an HTML string by "standardizing" both and comparing the result for equality. -
    - - <static> void - - - - - assertNaN() - -
    -            - Checks that a value is NaN (Not a Number) -
    - - <static> void - - - - - assertNotEquals() - -
    -            - Checks that two values are not equal (using !==) -
    - - <static> void - - - - - assertNotNaN() - -
    -            - Checks that a value is not NaN (i.e. -
    - - <static> void - - - - - assertNotNull() - -
    -            - Checks that a value is not null -
    - - <static> void - - - - - assertNotUndefined() - -
    -            - Checks that a value is not undefined -
    - - <static> void - - - - - assertNull() - -
    -            - Checks that a value is null -
    - - <static> void - - - - - assertObjectEquals() - -
    -            - Checks that an object is equal to another using === for primitives and their object counterparts but also desceding - into collections and calling assertObjectEquals for each element -
    - - <static> void - - - - - assertRoughlyEquals() - -
    -            - Checks that two value are within a tolerance of one another -
    - - <static> void - - - - - assertTrue() - -
    -            - Synonym for assertTrue -
    - - <static> void - - - - - assertUndefined() - -
    -            - Checks that a value is undefined -
    - - <static> void - - - - - clearInterval(timeoutKey) - -
    -            - Mocks out clearInterval by clearing Clock's scheduledFunction for the given ID -
    - - <static> void - - - - - clearTimeout(timeoutKey) - -
    -            - Mocks out clearTimeout by clearing Clock's scheduledFunction for the given ID -
    - - <static> Object - - - - - createXmlHttpRequest() - -
    -            - Useful for testing. -
    - - <static> void - - - - - debug() - -
    -            - -
    - - <static> void - - - - - error(errorMessage) - -
    -            - Causes an error -
    - - <static> void - - - - - fail(failureMessage) - -
    -            - Causes a failure -
    - - <static> void - - - - - info() - -
    -            - -
    - - <static> void - - - - - inform() - -
    -            - -
    - - <static> Object - - - - - isLoaded() - -
    -            - -
    - - <static> Object - - - - - jsUnitGetParm(name) - -
    -            - -
    - - <static> void - - - - - jsUnitSetOnLoad(windowRef, onloadHandler) - -
    -            - -
    - - <static> void - - - - - newOnLoadEvent() - -
    -            - -
    - - <static> Object - - - - - setInterval(funcToCall, millis) - -
    -            - Mocks out setInterval by registering the callback with Clock -
    - - <static> void - - - - - setJsUnitTracer(aJsUnitTracer) - -
    -            - -
    - - <static> Object - - - - - setTimeout(funcToCall, millis) - -
    -            - Mocks out setTimeout by registering the callback with Clock -
    - - <static> void - - - - - warn() - -
    -            - -
    - - - -

    - - - - - - - - - - - - - - - - - -


    - - - - - - - - - - - - -
    - Method Detail -
    - - - - -

    assert

    -
    <static> void assert()
    - -
      Checks that the given boolean value is true.
    - - - - -
      - Parameters: - -
        comment - optional, displayed in the case of failure -
      - -
    - - - - - - - -
      - Throws:
        - JsUnitFailure if the given value is not true
        - JsUnitInvalidAssertionArgument if the given value is not a boolean or if an incorrect number of arguments is passed
      -
    - - -
    - - -

    assertArrayEquals

    -
    <static> void assertArrayEquals()
    - -
      Checks that an array is equal to another by checking that both are arrays and then comparing their elements using assertObjectEquals
    - - - - -
      - Parameters: - -
        comment - optional, displayed in the case of failure -
      - -
        value - the expected array -
      - -
        value - the actual array -
      - -
    - - - - - - - -
      - Throws:
        - JsUnitFailure if the actual value does not equal the expected value
        - JsUnitInvalidAssertionArgument if an incorrect number of arguments is passed
      -
    - - -
    - - -

    assertArrayEqualsIgnoringOrder

    -
    <static> void assertArrayEqualsIgnoringOrder()
    - -
      Checks that two arrays have the same contents, ignoring the order of the contents
    - - - - -
      - Parameters: - -
        comment - optional, displayed in the case of failure -
      - -
        array1 - first array -
      - -
        array2 - second array -
      - -
    - - - - - - - -
      - Throws:
        - JsUnitFailure if the two arrays contain different contents
        - JsUnitInvalidAssertionArgument if an incorrect number of arguments are passed
      -
    - - -
    - - -

    assertContains

    -
    <static> void assertContains()
    - -
      Checks that a collection contains a value by checking that collection.indexOf(value) is not -1
    - - - - -
      - Parameters: - -
        comment - optional, displayed in the case of failure -
      - -
        collection - the collection -
      - -
        value - the value -
      - -
    - - - - - - - -
      - Throws:
        - JsUnitFailure if the collection does not contain the value
        - JsUnitInvalidAssertionArgument if an incorrect number of arguments are passed
      -
    - - -
    - - -

    assertEquals

    -
    <static> void assertEquals()
    - -
      Checks that two values are equal (using ===)
    - - - - -
      - Parameters: - -
        comment - optional, displayed in the case of failure -
      - -
        expected - the expected value -
      - -
        actual - the actual value -
      - -
    - - - - - - - -
      - Throws:
        - JsUnitFailure if the values are not equal
        - JsUnitInvalidAssertionArgument if an incorrect number of arguments is passed
      -
    - - -
    - - -

    assertEqualsIgnoringOrder

    -
    <static> void assertEqualsIgnoringOrder()
    - -
      Synonym for assertArrayEqualsIgnoringOrder
    - - - - - - - - - - - - - -
    - - -

    assertEvaluatesToFalse

    -
    <static> void assertEvaluatesToFalse()
    - -
      Checks that a value evaluates to false in the sense that value == false
    - - - - -
      - Parameters: - -
        comment - optional, displayed in the case of failure -
      - -
        value - the value -
      - -
    - - - - - - - -
      - Throws:
        - JsUnitFailure if the actual value does not evaluate to true
        - JsUnitInvalidAssertionArgument if an incorrect number of arguments is passed
      -
    - - -
    - - -

    assertEvaluatesToTrue

    -
    <static> void assertEvaluatesToTrue()
    - -
      Checks that a value evaluates to true in the sense that value == true
    - - - - -
      - Parameters: - -
        comment - optional, displayed in the case of failure -
      - -
        value - the value -
      - -
    - - - - - - - -
      - Throws:
        - JsUnitFailure if the actual value does not evaluate to true
        - JsUnitInvalidAssertionArgument if an incorrect number of arguments is passed
      -
    - - -
    - - -

    assertFalse

    -
    <static> void assertFalse()
    - -
      Checks that a boolean value is false.
    - - - - -
      - Parameters: - -
        comment - optional, displayed in the case of failure -
      - -
    - - - - - - - -
      - Throws:
        - JsUnitFailure if value is not false
        - JsUnitInvalidAssertionArgument if the given value is not a boolean or if an incorrect number of arguments is passed
      -
    - - -
    - - -

    assertHashEquals

    -
    <static> void assertHashEquals()
    - -
      Checks that a hash is has the same contents as another by iterating over the expected hash and checking that each - key's value is present in the actual hash and calling assertEquals on the two values, and then checking that there is - no key in the actual hash that isn't present in the expected hash.
    - - - - -
      - Parameters: - -
        comment - optional, displayed in the case of failure -
      - -
        value - the expected hash -
      - -
        value - the actual hash -
      - -
    - - - - - - - -
      - Throws:
        - JsUnitFailure if the actual hash does not evaluate to true
        - JsUnitInvalidAssertionArgument if an incorrect number of arguments is passed
      -
    - - -
    - - -

    assertHTMLEquals

    -
    <static> void assertHTMLEquals()
    - -
      Checks that a value is the same as an HTML string by "standardizing" both and comparing the result for equality. - Standardizing is done by temporarily creating a DIV, setting the innerHTML of the DIV to the string, and asking for - the innerHTML back.
    - - - - -
      - Parameters: - -
        comment - optional, displayed in the case of failure -
      - -
        value1 - the expected HTML string -
      - -
        value2 - the actual HTML string -
      - -
    - - - - - - - -
      - Throws:
        - JsUnitFailure if the standardized actual value does not equal the standardized expected value
        - JsUnitInvalidAssertionArgument if an incorrect number of arguments is passed
      -
    - - -
    - - -

    assertNaN

    -
    <static> void assertNaN()
    - -
      Checks that a value is NaN (Not a Number)
    - - - - -
      - Parameters: - -
        comment - optional, displayed in the case of failure -
      - -
        value - the value -
      - -
    - - - - - - - -
      - Throws:
        - JsUnitFailure if the value is a number
        - JsUnitInvalidAssertionArgument if an incorrect number of arguments is passed
      -
    - - -
    - - -

    assertNotEquals

    -
    <static> void assertNotEquals()
    - -
      Checks that two values are not equal (using !==)
    - - - - -
      - Parameters: - -
        comment - optional, displayed in the case of failure -
      - -
        value1 - a value -
      - -
        value2 - another value -
      - -
    - - - - - - - -
      - Throws:
        - JsUnitFailure if the values are equal
        - JsUnitInvalidAssertionArgument if an incorrect number of arguments is passed
      -
    - - -
    - - -

    assertNotNaN

    -
    <static> void assertNotNaN()
    - -
      Checks that a value is not NaN (i.e. is a number)
    - - - - -
      - Parameters: - -
        comment - optional, displayed in the case of failure -
      - -
        value - the value -
      - -
    - - - - - - - -
      - Throws:
        - JsUnitFailure if the value is not a number
        - JsUnitInvalidAssertionArgument if an incorrect number of arguments is passed
      -
    - - -
    - - -

    assertNotNull

    -
    <static> void assertNotNull()
    - -
      Checks that a value is not null
    - - - - -
      - Parameters: - -
        comment - optional, displayed in the case of failure -
      - -
        value - the value -
      - -
    - - - - - - - -
      - Throws:
        - JsUnitFailure if the value is null
        - JsUnitInvalidAssertionArgument if an incorrect number of arguments is passed
      -
    - - -
    - - -

    assertNotUndefined

    -
    <static> void assertNotUndefined()
    - -
      Checks that a value is not undefined
    - - - - -
      - Parameters: - -
        comment - optional, displayed in the case of failure -
      - -
        value - the value -
      - -
    - - - - - - - -
      - Throws:
        - JsUnitFailure if the value is undefined
        - JsUnitInvalidAssertionArgument if an incorrect number of arguments is passed
      -
    - - -
    - - -

    assertNull

    -
    <static> void assertNull()
    - -
      Checks that a value is null
    - - - - -
      - Parameters: - -
        comment - optional, displayed in the case of failure -
      - -
        value - the value -
      - -
    - - - - - - - -
      - Throws:
        - JsUnitFailure if the value is not null
        - JsUnitInvalidAssertionArgument if an incorrect number of arguments is passed
      -
    - - -
    - - -

    assertObjectEquals

    -
    <static> void assertObjectEquals()
    - -
      Checks that an object is equal to another using === for primitives and their object counterparts but also desceding - into collections and calling assertObjectEquals for each element
    - - - - -
      - Parameters: - -
        comment - optional, displayed in the case of failure -
      - -
        value - the expected value -
      - -
        value - the actual value -
      - -
    - - - - - - - -
      - Throws:
        - JsUnitFailure if the actual value does not equal the expected value
        - JsUnitInvalidAssertionArgument if an incorrect number of arguments is passed
      -
    - - -
    - - -

    assertRoughlyEquals

    -
    <static> void assertRoughlyEquals()
    - -
      Checks that two value are within a tolerance of one another
    - - - - -
      - Parameters: - -
        comment - optional, displayed in the case of failure -
      - -
        value1 - a value -
      - -
        value1 - another value -
      - -
        tolerance - the tolerance -
      - -
    - - - - - - - -
      - Throws:
        - JsUnitFailure if the two values are not within tolerance of each other
        - JsUnitInvalidAssertionArgument if an incorrect number of arguments is passed
      -
    - - -
    - - -

    assertTrue

    -
    <static> void assertTrue()
    - -
      Synonym for assertTrue
    - - - - - - - - - - - - - -
    - - -

    assertUndefined

    -
    <static> void assertUndefined()
    - -
      Checks that a value is undefined
    - - - - -
      - Parameters: - -
        comment - optional, displayed in the case of failure -
      - -
        value - the value -
      - -
    - - - - - - - -
      - Throws:
        - JsUnitFailure if the value is not undefined
        - JsUnitInvalidAssertionArgument if an incorrect number of arguments is passed
      -
    - - -
    - - -

    clearInterval

    -
    <static> void clearInterval(timeoutKey)
    - -
      Mocks out clearInterval by clearing Clock's scheduledFunction for the given ID
    - - - - - - - - - - - -
    - - -

    clearTimeout

    -
    <static> void clearTimeout(timeoutKey)
    - -
      Mocks out clearTimeout by clearing Clock's scheduledFunction for the given ID
    - - - - - - - - - - - -
    - - -

    createXmlHttpRequest

    -
    <static> Object createXmlHttpRequest()
    - -
      Useful for testing. You can implement createXmlHttpRequest as a global function in your production code by returning - a real request; here, when testing, it returns a MockXmlHttpRequest
    - - - - - - - - - - - -
    - - -

    debug

    -
    <static> void debug()
    - - - - - - - - - - - -
    - - -

    error

    -
    <static> void error(errorMessage)
    - -
      Causes an error
    - - - - -
      - Parameters: - -
        errorMessage - the message for the error -
      - -
    - - - - - - - - -
    - - -

    fail

    -
    <static> void fail(failureMessage)
    - -
      Causes a failure
    - - - - -
      - Parameters: - -
        failureMessage - the message for the failure -
      - -
    - - - - - - - - -
    - - -

    info

    -
    <static> void info()
    - - - - - - - - - - - -
    - - -

    inform

    -
    <static> void inform()
    - - - - - - - - - - - -
    - - -

    isLoaded

    -
    <static> Object isLoaded()
    - - - - - - - - - - - -
    - - -

    jsUnitGetParm

    -
    <static> Object jsUnitGetParm(name)
    - - - - - - - - - - - -
    - - -

    jsUnitSetOnLoad

    -
    <static> void jsUnitSetOnLoad(windowRef, onloadHandler)
    - - - - - - - - - - - -
    - - -

    newOnLoadEvent

    -
    <static> void newOnLoadEvent()
    - - - - - - - - - - - -
    - - -

    setInterval

    -
    <static> Object setInterval(funcToCall, millis)
    - -
      Mocks out setInterval by registering the callback with Clock
    - - - - -
      - Parameters: - -
        funcToCall - -
      - -
        millis - -
      - -
    - - - - -
      - Returns: -
        - the ID of the timeout, which is the index of the scheduledFunction in Clock's list of scheduledFunctions -
      -
    - - - - - -
    - - -

    setJsUnitTracer

    -
    <static> void setJsUnitTracer(aJsUnitTracer)
    - - - - - - - - - - - -
    - - -

    setTimeout

    -
    <static> Object setTimeout(funcToCall, millis)
    - -
      Mocks out setTimeout by registering the callback with Clock
    - - - - -
      - Parameters: - -
        funcToCall - -
      - -
        millis - -
      - -
    - - - - -
      - Returns: -
        - the ID of the timeout, which is the index of the scheduledFunction in Clock's list of scheduledFunctions -
      -
    - - - - - -
    - - -

    warn

    -
    <static> void warn()
    - - - - - - - - - - - -
    - - - - - - - - - - - - - - - - - - - - - - -
    -JsUnit - -
    - - - -
    - -www.jsunit.net - -
    Documentation generated by JSDoc on Sun Sep 9 15:34:58 2007
    - - diff --git a/scripts/jsunit/doc/js_docs_out/JsUnitAssertionArgumentError.html b/scripts/jsunit/doc/js_docs_out/JsUnitAssertionArgumentError.html deleted file mode 100644 index c09d353d1..000000000 --- a/scripts/jsunit/doc/js_docs_out/JsUnitAssertionArgumentError.html +++ /dev/null @@ -1,298 +0,0 @@ - - - - - -JsUnitAssertionArgumentError - - - - - - - - - - - - - - - - - - - - - -
    -JsUnit - -
    - -
    - - -

    Class JsUnitAssertionArgumentError

    -
    Object
    -   |
    -   +--JsUnitAssertionArgumentError
    -
    - - -
    -
    - -
    class - JsUnitAssertionArgumentError - - -
    - -

    -
    A JsUnitAssertionArgumentError represents an invalid call to an assertion function - either an invalid argument type - or an incorrect number of arguments -
    Defined in jsUnitCore.js

    -

    - -
    - - - - - - - - - - - - - - - - - - - - - - -
    - Field Summary
    -  Objectdescription -
    -           A description of the argument error
    -   - - - - - - - - - - - - - - - - - -
    -Constructor Summary
    - - - JsUnitAssertionArgumentError(description) - -
    -             - -
    - - - -  - - - - - -

    - - - - - - - - - - -
    Field Detail
    - - - -

    description

    -
    Object description
    -
      - A description of the argument error - -
    -
    - - - - - - - - - - - - -
    - Constructor Detail -
    - -

    -JsUnitAssertionArgumentError

    -
    JsUnitAssertionArgumentError(description)
    - - - - -
      - Parameters: - -
        description - a description of the argument error -
      - - -
    - - - - - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    -JsUnit - -
    - - - -
    - -www.jsunit.net - -
    Documentation generated by JSDoc on Sun Sep 9 15:34:58 2007
    - - diff --git a/scripts/jsunit/doc/js_docs_out/JsUnitError.html b/scripts/jsunit/doc/js_docs_out/JsUnitError.html deleted file mode 100644 index 3f475cff2..000000000 --- a/scripts/jsunit/doc/js_docs_out/JsUnitError.html +++ /dev/null @@ -1,314 +0,0 @@ - - - - - -JsUnitError - - - - - - - - - - - - - - - - - - - - - -
    -JsUnit - -
    - -
    - - -

    Class JsUnitError

    -
    Object
    -   |
    -   +--JsUnitError
    -
    - - -
    -
    - -
    class - JsUnitError - - -
    - -

    -
    A JsUnitError represents an error (an exception or a call to error()) during the execution of a Test Function -
    Defined in jsUnitCore.js

    -

    - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    - Field Summary
    -  Objectdescription -
    -           The description of the error
    -  ObjectstackTrace -
    -           The stack trace at the point at which the error was encountered
    -   - - - - - - - - - - - - - - - - - -
    -Constructor Summary
    - - - JsUnitError(description) - -
    -             - -
    - - - -  - - - - - -

    - - - - - - - - - - -
    Field Detail
    - - - -

    description

    -
    Object description
    -
      - The description of the error - -
    -
    - - -

    stackTrace

    -
    Object stackTrace
    -
      - The stack trace at the point at which the error was encountered - -
    -
    - - - - - - - - - - - - -
    - Constructor Detail -
    - -

    -JsUnitError

    -
    JsUnitError(description)
    - - - - -
      - Parameters: - -
        description - the reason for the failure -
      - - -
    - - - - - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    -JsUnit - -
    - - - -
    - -www.jsunit.net - -
    Documentation generated by JSDoc on Sun Sep 9 15:34:58 2007
    - - diff --git a/scripts/jsunit/doc/js_docs_out/JsUnitFailure.html b/scripts/jsunit/doc/js_docs_out/JsUnitFailure.html deleted file mode 100644 index 92395cf59..000000000 --- a/scripts/jsunit/doc/js_docs_out/JsUnitFailure.html +++ /dev/null @@ -1,334 +0,0 @@ - - - - - -JsUnitFailure - - - - - - - - - - - - - - - - - - - - - -
    -JsUnit - -
    - -
    - - -

    Class JsUnitFailure

    -
    Object
    -   |
    -   +--JsUnitFailure
    -
    - - -
    -
    - -
    class - JsUnitFailure - - -
    - -

    -
    A JsUnitFailure represents an assertion failure (or a call to fail()) during the execution of a Test Function -
    Defined in jsUnitCore.js

    -

    - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    - Field Summary
    -  Objectcomment -
    -           An optional comment about the failure
    -  ObjectjsUnitMessage -
    -           The reason for the failure
    -  ObjectstackTrace -
    -           The stack trace at the point at which the failure was encountered
    -   - - - - - - - - - - - - - - - - - -
    -Constructor Summary
    - - - JsUnitFailure(comment, message) - -
    -             - -
    - - - -  - - - - - -

    - - - - - - - - - - -
    Field Detail
    - - - -

    comment

    -
    Object comment
    -
      - An optional comment about the failure - -
    -
    - - -

    jsUnitMessage

    -
    Object jsUnitMessage
    -
      - The reason for the failure - -
    -
    - - -

    stackTrace

    -
    Object stackTrace
    -
      - The stack trace at the point at which the failure was encountered - -
    -
    - - - - - - - - - - - - -
    - Constructor Detail -
    - -

    -JsUnitFailure

    -
    JsUnitFailure(comment, message)
    - - - - -
      - Parameters: - -
        comment - an optional comment about the failure -
      - -
        message - the reason for the failure -
      - - -
    - - - - - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    -JsUnit - -
    - - - -
    - -www.jsunit.net - -
    Documentation generated by JSDoc on Sun Sep 9 15:34:58 2007
    - - diff --git a/scripts/jsunit/doc/js_docs_out/JsUnitTestSuite.html b/scripts/jsunit/doc/js_docs_out/JsUnitTestSuite.html deleted file mode 100644 index b95c9053d..000000000 --- a/scripts/jsunit/doc/js_docs_out/JsUnitTestSuite.html +++ /dev/null @@ -1,540 +0,0 @@ - - - - - -JsUnitTestSuite - - - - - - - - - - - - - - - - - - - - - -
    -JsUnit - -
    - -
    - - -

    Class JsUnitTestSuite

    -
    Object
    -   |
    -   +--JsUnitTestSuite
    -
    - - -
    -
    - -
    class - JsUnitTestSuite - - -
    - -

    -
    A JsUnitTestSuite represents a suite of JsUnit Test Pages. Test Pages and Test Suites can be added to a - JsUnitTestSuite -
    Defined in jsUnitCore.js

    -

    - -
    - - - - - - - - - - - - - - - - - - - - - - -
    - Field Summary
    -  ObjectisJsUnitTestSuite -
    -           Declares that this object is a JsUnitTestSuite
    -   - - - - - - - - - - - - - - - - - -
    -Constructor Summary
    - - - JsUnitTestSuite() - -
    -             - -
    - - - -  - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    -Method Summary
    - -  void - - - - - addTestPage(pageName) - -
    -            - Adds a Test Page to the suite -
    - -  void - - - - - addTestSuite(suite) - -
    -            - Adds a Test Suite to the suite -
    - -  Object - - - - - clone() - -
    -            - Produces a copy of the suite -
    - -  Object - - - - - containsTestPages() - -
    -            - Whether the suite contains any Test Pages -
    - -  Object - - - - - hasMorePages() - -
    -            - Whether the suite has more Test Pages -
    - -  Object - - - - - nextPage() - -
    -            - Moves the suite on to its next Test Page -
    - - - -

    - - - - - - - - - - -
    Field Detail
    - - - -

    isJsUnitTestSuite

    -
    Object isJsUnitTestSuite
    -
      - Declares that this object is a JsUnitTestSuite - -
    -
    - - - - - - - - - - - - -
    - Constructor Detail -
    - -

    -JsUnitTestSuite

    -
    JsUnitTestSuite()
    - - - - - - - - - - - - - -
    - - - - - - - - - - - - -
    - Method Detail -
    - - - - -

    addTestPage

    -
    void addTestPage(pageName)
    - -
      Adds a Test Page to the suite
    - - - - -
      - Parameters: - -
        pageName - the path to the Test Page -
      - -
    - - - - - - - - -
    - - -

    addTestSuite

    -
    void addTestSuite(suite)
    - -
      Adds a Test Suite to the suite
    - - - - -
      - Parameters: - -
        suite - another JsUnitTestSuite object -
      - -
    - - - - - - - - -
    - - -

    clone

    -
    Object clone()
    - -
      Produces a copy of the suite
    - - - - - - - - - - - -
    - - -

    containsTestPages

    -
    Object containsTestPages()
    - -
      Whether the suite contains any Test Pages
    - - - - - - - - - - - -
    - - -

    hasMorePages

    -
    Object hasMorePages()
    - -
      Whether the suite has more Test Pages
    - - - - - - - - - - - -
    - - -

    nextPage

    -
    Object nextPage()
    - -
      Moves the suite on to its next Test Page
    - - - - - - - - - - - -
    - - - - - - - - - - - - - - - - - - - - - - -
    -JsUnit - -
    - - - -
    - -www.jsunit.net - -
    Documentation generated by JSDoc on Sun Sep 9 15:34:58 2007
    - - diff --git a/scripts/jsunit/doc/js_docs_out/MockXmlHttpRequest.html b/scripts/jsunit/doc/js_docs_out/MockXmlHttpRequest.html deleted file mode 100644 index 9ee4ee57d..000000000 --- a/scripts/jsunit/doc/js_docs_out/MockXmlHttpRequest.html +++ /dev/null @@ -1,458 +0,0 @@ - - - - - -MockXmlHttpRequest - - - - - - - - - - - - - - - - - - - - - -
    -JsUnit - -
    - -
    - - -

    Class MockXmlHttpRequest

    -
    Object
    -   |
    -   +--MockXmlHttpRequest
    -
    - - -
    -
    - -
    class - MockXmlHttpRequest - - -
    - -

    -
    A MockXmlHttpRequest implements the XmlHttpRequest API. It is intended for use when testing code that deals with AJAX. - -
    Defined in jsUnitAjax.js

    -

    - -
    - - - - - - - - - - - - - - - - - - - - - - -
    - Field Summary
    -  ObjectrequestHeaderNamesToValues -
    -           stores the headers set on the request
    -   - - - - - - - - - - - - - - - - - -
    -Constructor Summary
    - - - MockXmlHttpRequest() - -
    -             - -
    - - - -  - - - - - - - - - - - - - - - - - - - - - - - - - - -
    -Method Summary
    - -  void - - - - - open(method, url, isAsync, userName, password) - -
    -            - Implements open by storing all the arguments -
    - -  void - - - - - send(data) - -
    -            - Implements send by noting that send was called and storing the data given -
    - -  void - - - - - setRequestHeader(label, value) - -
    -            - Implements setRequestHeader by storing each header and its value in a hash -
    - - - -

    - - - - - - - - - - -
    Field Detail
    - - - -

    requestHeaderNamesToValues

    -
    Object requestHeaderNamesToValues
    -
      - stores the headers set on the request - -
    -
    - - - - - - - - - - - - -
    - Constructor Detail -
    - -

    -MockXmlHttpRequest

    -
    MockXmlHttpRequest()
    - - - - - - - - - - - - - -
    - - - - - - - - - - - - -
    - Method Detail -
    - - - - -

    open

    -
    void open(method, url, isAsync, userName, password)
    - -
      Implements open by storing all the arguments
    - - - - -
      - Parameters: - -
        method - -
      - -
        url - -
      - -
        isAsync - -
      - -
        userName - -
      - -
        password - -
      - -
    - - - - - - - - -
    - - -

    send

    -
    void send(data)
    - -
      Implements send by noting that send was called and storing the data given
    - - - - -
      - Parameters: - -
        data - -
      - -
    - - - - - - - - -
    - - -

    setRequestHeader

    -
    void setRequestHeader(label, value)
    - -
      Implements setRequestHeader by storing each header and its value in a hash
    - - - - -
      - Parameters: - -
        label - -
      - -
        value - -
      - -
    - - - - - - - - -
    - - - - - - - - - - - - - - - - - - - - - - -
    -JsUnit - -
    - - - -
    - -www.jsunit.net - -
    Documentation generated by JSDoc on Sun Sep 9 15:34:58 2007
    - - diff --git a/scripts/jsunit/doc/js_docs_out/Utilities.html b/scripts/jsunit/doc/js_docs_out/Utilities.html deleted file mode 100644 index ffbe1dcb2..000000000 --- a/scripts/jsunit/doc/js_docs_out/Utilities.html +++ /dev/null @@ -1,614 +0,0 @@ - - - - - -Utilities - - - - - - - - - - - - - - - - - - - - - -
    -JsUnit - -
    - -
    - - -

    Class Utilities

    -
    Object
    -   |
    -   +--Utilities
    -
    - - -
    -
    - -
    class - Utilities - - -
    - -

    -

    Defined in jsUnitCore.js

    -

    - -
    - - - - - - - - - - - - - - - - - - - - - - - - -
    -Constructor Summary
    - - - Utilities() - -
    -             - -
    - - - -  - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    -Method Summary
    - - <static> Object - - - - - getFunctionName(aFunction) - -
    -            - Returns the name of the given function, or 'anonymous' if it has no name -
    - - <static> Object - - - - - getStackTrace() - -
    -            - Returns the current stack trace -
    - - <static> Object - - - - - isBlank(string) - -
    -            - Returns whether the given string is blank after being trimmed of whitespace -
    - - <static> Object - - - - - parseErrorStack(exception) - -
    -            - Returns an array of stack trace elements from the given exception -
    - - <static> void - - - - - pop(anArray) - -
    -            - Implemented here because the JavaScript Array.push(anObject) and Array.pop() functions are not available in IE 5.0 -
    - - <static> void - - - - - push(anArray, anObject) - -
    -            - Implemented here because the JavaScript Array.push(anObject) and Array.pop() functions are not available in IE 5.0 -
    - - <static> Object - - - - - standardizeHTML(html) - -
    -            - Standardizes an HTML string by temporarily creating a DIV, setting its innerHTML to the string, and the asking for - the innerHTML back -
    - - <static> Object - - - - - trim(string) - -
    -            - Strips whitespace from either end of the given string -
    - - - -

    - - - - - - - - - - - - - - - -
    - Constructor Detail -
    - -

    -Utilities

    -
    Utilities()
    - - - - - - - - - - - - - -
    - - - - - - - - - - - - -
    - Method Detail -
    - - - - -

    getFunctionName

    -
    <static> Object getFunctionName(aFunction)
    - -
      Returns the name of the given function, or 'anonymous' if it has no name
    - - - - -
      - Parameters: - -
        aFunction - -
      - -
    - - - - - - - - -
    - - -

    getStackTrace

    -
    <static> Object getStackTrace()
    - -
      Returns the current stack trace
    - - - - - - - - - - - -
    - - -

    isBlank

    -
    <static> Object isBlank(string)
    - -
      Returns whether the given string is blank after being trimmed of whitespace
    - - - - -
      - Parameters: - -
        string - -
      - -
    - - - - - - - - -
    - - -

    parseErrorStack

    -
    <static> Object parseErrorStack(exception)
    - -
      Returns an array of stack trace elements from the given exception
    - - - - -
      - Parameters: - -
        exception - -
      - -
    - - - - - - - - -
    - - -

    pop

    -
    <static> void pop(anArray)
    - -
      Implemented here because the JavaScript Array.push(anObject) and Array.pop() functions are not available in IE 5.0
    - - - - -
      - Parameters: - -
        anArray - the array from which to pop -
      - -
    - - - - - - - - -
    - - -

    push

    -
    <static> void push(anArray, anObject)
    - -
      Implemented here because the JavaScript Array.push(anObject) and Array.pop() functions are not available in IE 5.0
    - - - - -
      - Parameters: - -
        anArray - the array onto which to push -
      - -
        anObject - the object to push onto the array -
      - -
    - - - - - - - - -
    - - -

    standardizeHTML

    -
    <static> Object standardizeHTML(html)
    - -
      Standardizes an HTML string by temporarily creating a DIV, setting its innerHTML to the string, and the asking for - the innerHTML back
    - - - - -
      - Parameters: - -
        html - -
      - -
    - - - - - - - - -
    - - -

    trim

    -
    <static> Object trim(string)
    - -
      Strips whitespace from either end of the given string
    - - - - -
      - Parameters: - -
        string - -
      - -
    - - - - - - - - -
    - - - - - - - - - - - - - - - - - - - - - - -
    -JsUnit - -
    - - - -
    - -www.jsunit.net - -
    Documentation generated by JSDoc on Sun Sep 9 15:34:58 2007
    - - diff --git a/scripts/jsunit/doc/js_docs_out/allclasses-frame.html b/scripts/jsunit/doc/js_docs_out/allclasses-frame.html deleted file mode 100644 index f80645af4..000000000 --- a/scripts/jsunit/doc/js_docs_out/allclasses-frame.html +++ /dev/null @@ -1,77 +0,0 @@ - - - - - - All Classes - - - - - - -

    - -All Classes -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Clock -
    -
    GLOBALS -
    -
    JsUnitAssertionArgumentError -
    -
    JsUnitError -
    -
    JsUnitFailure -
    -
    JsUnitTestSuite -
    -
    MockXmlHttpRequest -
    -
    Utilities -
    -
    - - - diff --git a/scripts/jsunit/doc/js_docs_out/allclasses-noframe.html b/scripts/jsunit/doc/js_docs_out/allclasses-noframe.html deleted file mode 100644 index 6ed49bca8..000000000 --- a/scripts/jsunit/doc/js_docs_out/allclasses-noframe.html +++ /dev/null @@ -1,78 +0,0 @@ - - - - -JsUnit All Classes - - - - - - - - -

    JsUnit

    - -All Classes -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Clock -
    -
    GLOBALS -
    -
    JsUnitAssertionArgumentError -
    -
    JsUnitError -
    -
    JsUnitFailure -
    -
    JsUnitTestSuite -
    -
    MockXmlHttpRequest -
    -
    Utilities -
    -
    - - - diff --git a/scripts/jsunit/doc/js_docs_out/help-doc.html b/scripts/jsunit/doc/js_docs_out/help-doc.html deleted file mode 100644 index b72ac36ec..000000000 --- a/scripts/jsunit/doc/js_docs_out/help-doc.html +++ /dev/null @@ -1,160 +0,0 @@ - - - - -JsUnit API Help - - - - - - - - - - - - - - - - - - -
    -JsUnit - -
    - - -
    -
    -

    -How This API Document Is Organized

    -
    -This API (Application Programming Interface) document has pages corresponding to the items in the navigation bar, described as follows.

    -Class

    -
    - -

    -Each class has its own separate page. Each of these pages has three sections consisting of a class description, summary tables, and detailed member descriptions:

      -
    • Class inheritance diagram
    • Direct Subclasses
    • Class declaration
    • Class description -

      -

    • Field Summary
    • Constructor Summary
    • Method Summary -

      -

    • Field Detail
    • Constructor Detail
    • Method Detail
    -Each summary entry contains the first sentence from the detailed description for that item.
    - - -

    -Index

    -
    -The Index contains an alphabetic list of all classes, constructors, methods, and fields.
    -

    -Prev/Next

    -These links take you to the next or previous class, interface, package, or related page.

    -Frames/No Frames

    -These links show and hide the HTML frames. All pages are available with or without frames. -

    - - -This help file applies to API documentation generated using the standard doclet. - -
    -


    - - - - - - - - - - - - - -
    -JsUnit - -
    - - -
    - -www.jsunit.net - -
    Documentation generated by JSDoc on Sun Sep 9 15:34:58 2007
    - - diff --git a/scripts/jsunit/doc/js_docs_out/index-all.html b/scripts/jsunit/doc/js_docs_out/index-all.html deleted file mode 100644 index d927a8226..000000000 --- a/scripts/jsunit/doc/js_docs_out/index-all.html +++ /dev/null @@ -1,719 +0,0 @@ - - - - - -Index () - - - - - - - - - - - - - - - - - - -
    -JsUnit - -
    - - -A C D E F G H I J M N O P R S T U W -
    - - -

    -A

    - -
    -
    addTestPage(pageName) - -Instance method in class JsUnitTestSuite -
      -
    - -
    -
    addTestSuite(suite) - -Instance method in class JsUnitTestSuite -
      -
    - -
    -
    assert() - -Class method in class GLOBALS -
      -
    - -
    -
    assertArrayEquals() - -Class method in class GLOBALS -
      -
    - -
    -
    assertArrayEqualsIgnoringOrder() - -Class method in class GLOBALS -
      -
    - -
    -
    assertContains() - -Class method in class GLOBALS -
      -
    - -
    -
    assertEquals() - -Class method in class GLOBALS -
      -
    - -
    -
    assertEqualsIgnoringOrder() - -Class method in class GLOBALS -
      -
    - -
    -
    assertEvaluatesToFalse() - -Class method in class GLOBALS -
      -
    - -
    -
    assertEvaluatesToTrue() - -Class method in class GLOBALS -
      -
    - -
    -
    assertFalse() - -Class method in class GLOBALS -
      -
    - -
    -
    assertHashEquals() - -Class method in class GLOBALS -
      -
    - -
    -
    assertHTMLEquals() - -Class method in class GLOBALS -
      -
    - -
    -
    assertNaN() - -Class method in class GLOBALS -
      -
    - -
    -
    assertNotEquals() - -Class method in class GLOBALS -
      -
    - -
    -
    assertNotNaN() - -Class method in class GLOBALS -
      -
    - -
    -
    assertNotNull() - -Class method in class GLOBALS -
      -
    - -
    -
    assertNotUndefined() - -Class method in class GLOBALS -
      -
    - -
    -
    assertNull() - -Class method in class GLOBALS -
      -
    - -
    -
    assertObjectEquals() - -Class method in class GLOBALS -
      -
    - -
    -
    assertRoughlyEquals() - -Class method in class GLOBALS -
      -
    - -
    -
    assertTrue() - -Class method in class GLOBALS -
      -
    - -
    -
    assertUndefined() - -Class method in class GLOBALS -
      -
    - -
    - -

    -C

    - -
    -
    clearInterval(timeoutKey) - -Class method in class GLOBALS -
      -
    - -
    -
    clearTimeout(timeoutKey) - -Class method in class GLOBALS -
      -
    - -
    -
    Clock - - class Clock -
      -
    - -
    -
    Clock() - -Constructor in class Clock -
      -
    - -
    -
    clone() - -Instance method in class JsUnitTestSuite -
      -
    - -
    -
    comment - -Instance field in class JsUnitFailure -
      -
    - -
    -
    containsTestPages() - -Instance method in class JsUnitTestSuite -
      -
    - -
    -
    createXmlHttpRequest() - -Class method in class GLOBALS -
      -
    - -
    - -

    -D

    - -
    -
    debug() - -Class method in class GLOBALS -
      -
    - -
    -
    description - -Instance field in class JsUnitAssertionArgumentError -
      -
    - -
    -
    description - -Instance field in class JsUnitError -
      -
    - -
    - -

    -E

    - -
    -
    error(errorMessage) - -Class method in class GLOBALS -
      -
    - -
    - -

    -F

    - -
    -
    fail(failureMessage) - -Class method in class GLOBALS -
      -
    - -
    - -

    -G

    - -
    -
    getFunctionName(aFunction) - -Class method in class Utilities -
      -
    - -
    -
    getStackTrace() - -Class method in class Utilities -
      -
    - -
    -
    GLOBALS - - class GLOBALS -
      -
    - -
    - -

    -H

    - -
    -
    hasMorePages() - -Instance method in class JsUnitTestSuite -
      -
    - -
    - -

    -I

    - -
    -
    info() - -Class method in class GLOBALS -
      -
    - -
    -
    inform() - -Class method in class GLOBALS -
      -
    - -
    -
    isBlank(string) - -Class method in class Utilities -
      -
    - -
    -
    isJsUnitTestSuite - -Instance field in class JsUnitTestSuite -
      -
    - -
    -
    isLoaded() - -Class method in class GLOBALS -
      -
    - -
    - -

    -J

    - -
    -
    JsUnitAssertionArgumentError - - class JsUnitAssertionArgumentError -
      -
    - -
    -
    JsUnitAssertionArgumentError(description) - -Constructor in class JsUnitAssertionArgumentError -
      -
    - -
    -
    JsUnitError - - class JsUnitError -
      -
    - -
    -
    JsUnitError(description) - -Constructor in class JsUnitError -
      -
    - -
    -
    JsUnitFailure - - class JsUnitFailure -
      -
    - -
    -
    JsUnitFailure(comment, message) - -Constructor in class JsUnitFailure -
      -
    - -
    -
    jsUnitGetParm(name) - -Class method in class GLOBALS -
      -
    - -
    -
    jsUnitMessage - -Instance field in class JsUnitFailure -
      -
    - -
    -
    jsUnitSetOnLoad(windowRef, onloadHandler) - -Class method in class GLOBALS -
      -
    - -
    -
    JsUnitTestSuite - - class JsUnitTestSuite -
      -
    - -
    -
    JsUnitTestSuite() - -Constructor in class JsUnitTestSuite -
      -
    - -
    - -

    -M

    - -
    -
    MockXmlHttpRequest - - class MockXmlHttpRequest -
      -
    - -
    -
    MockXmlHttpRequest() - -Constructor in class MockXmlHttpRequest -
      -
    - -
    - -

    -N

    - -
    -
    newOnLoadEvent() - -Class method in class GLOBALS -
      -
    - -
    -
    nextPage() - -Instance method in class JsUnitTestSuite -
      -
    - -
    -
    nowMillis - -Class field in class Clock -
      -
    - -
    - -

    -O

    - -
    -
    open(method, url, isAsync, userName, password) - -Instance method in class MockXmlHttpRequest -
      -
    - -
    - -

    -P

    - -
    -
    parseErrorStack(exception) - -Class method in class Utilities -
      -
    - -
    -
    pop(anArray) - -Class method in class Utilities -
      -
    - -
    -
    push(anArray, anObject) - -Class method in class Utilities -
      -
    - -
    - -

    -R

    - -
    -
    requestHeaderNamesToValues - -Instance field in class MockXmlHttpRequest -
      -
    - -
    -
    reset() - -Class method in class Clock -
      -
    - -
    - -

    -S

    - -
    -
    scheduledFunctions - -Class field in class Clock -
      -
    - -
    -
    scheduleFunction(timeoutKey, funcToCall, millis, recurring) - -Class method in class Clock -
      -
    - -
    -
    send(data) - -Instance method in class MockXmlHttpRequest -
      -
    - -
    -
    setInterval(funcToCall, millis) - -Class method in class GLOBALS -
      -
    - -
    -
    setJsUnitTracer(aJsUnitTracer) - -Class method in class GLOBALS -
      -
    - -
    -
    setRequestHeader(label, value) - -Instance method in class MockXmlHttpRequest -
      -
    - -
    -
    setTimeout(funcToCall, millis) - -Class method in class GLOBALS -
      -
    - -
    -
    stackTrace - -Instance field in class JsUnitError -
      -
    - -
    -
    stackTrace - -Instance field in class JsUnitFailure -
      -
    - -
    -
    standardizeHTML(html) - -Class method in class Utilities -
      -
    - -
    - -

    -T

    - -
    -
    tick(millis) - -Class method in class Clock -
      -
    - -
    -
    timeoutsMade - -Class field in class Clock -
      -
    - -
    -
    trim(string) - -Class method in class Utilities -
      -
    - -
    - -

    -U

    - -
    -
    Utilities - - class Utilities -
      -
    - -
    -
    Utilities() - -Constructor in class Utilities -
      -
    - -
    - -

    -W

    - -
    -
    warn() - -Class method in class GLOBALS -
      -
    - -
    - -A C D E F G H I J M N O P R S T U W - - - - - - - - - - - - - - -
    -JsUnit - -
    - - -
    - -www.jsunit.net - -
    Documentation generated by JSDoc on Sun Sep 9 15:34:58 2007
    - - diff --git a/scripts/jsunit/doc/js_docs_out/index.html b/scripts/jsunit/doc/js_docs_out/index.html deleted file mode 100644 index 8a7b7ade2..000000000 --- a/scripts/jsunit/doc/js_docs_out/index.html +++ /dev/null @@ -1,27 +0,0 @@ - - - - -Generated Javascript Documentation - - - - - - - - - - - - - - -<H2> -Frame Alert</H2> - -<P> -This document is designed to be viewed using the frames feature. If you see this message, you are using a non-frame-capable web client. -<BR> -Link to <A HREF="allclasses-frame.html">Non-frame version.</A> - diff --git a/scripts/jsunit/doc/js_docs_out/logo_jsunit.jpg b/scripts/jsunit/doc/js_docs_out/logo_jsunit.jpg deleted file mode 100644 index 31ca10ed4..000000000 Binary files a/scripts/jsunit/doc/js_docs_out/logo_jsunit.jpg and /dev/null differ diff --git a/scripts/jsunit/doc/js_docs_out/overview-frame.html b/scripts/jsunit/doc/js_docs_out/overview-frame.html deleted file mode 100644 index 4928e9dac..000000000 --- a/scripts/jsunit/doc/js_docs_out/overview-frame.html +++ /dev/null @@ -1,47 +0,0 @@ - - - - -Overview () - - - - - - - - -

    JsUnit

    - - - - -
    - - - - - -
    All Classes -

    - -Files -
    - -jsUnitAjax.js
    - -jsUnitCore.js
    - -jsUnitMockTimeout.js
    - -

    - -

    -  - - diff --git a/scripts/jsunit/doc/js_docs_out/overview-jsUnitAjax.js.html b/scripts/jsunit/doc/js_docs_out/overview-jsUnitAjax.js.html deleted file mode 100644 index 5f623e17e..000000000 --- a/scripts/jsunit/doc/js_docs_out/overview-jsUnitAjax.js.html +++ /dev/null @@ -1,36 +0,0 @@ - - - - - - jsUnitAjax.js - - - - - - -

    - -jsUnitAjax.js -
    - - - - - - - - -
    MockXmlHttpRequest -
    -
    - - - diff --git a/scripts/jsunit/doc/js_docs_out/overview-jsUnitCore.js.html b/scripts/jsunit/doc/js_docs_out/overview-jsUnitCore.js.html deleted file mode 100644 index e1f66c34e..000000000 --- a/scripts/jsunit/doc/js_docs_out/overview-jsUnitCore.js.html +++ /dev/null @@ -1,60 +0,0 @@ - - - - - - jsUnitCore.js - - - - - - -

    - -jsUnitCore.js -
    - - - - - - - - - - - - - - - - - - - - - - - - -
    JsUnitAssertionArgumentError -
    -
    JsUnitError -
    -
    JsUnitFailure -
    -
    JsUnitTestSuite -
    -
    Utilities -
    -
    - - - diff --git a/scripts/jsunit/doc/js_docs_out/overview-jsUnitMockTimeout.js.html b/scripts/jsunit/doc/js_docs_out/overview-jsUnitMockTimeout.js.html deleted file mode 100644 index 91f55dc8d..000000000 --- a/scripts/jsunit/doc/js_docs_out/overview-jsUnitMockTimeout.js.html +++ /dev/null @@ -1,36 +0,0 @@ - - - - - - jsUnitMockTimeout.js - - - - - - -

    - -jsUnitMockTimeout.js -
    - - - - - - - - -
    Clock -
    -
    - - - diff --git a/scripts/jsunit/doc/js_docs_out/overview-summary-jsUnitAjax.js.html b/scripts/jsunit/doc/js_docs_out/overview-summary-jsUnitAjax.js.html deleted file mode 100644 index 665ad5fc8..000000000 --- a/scripts/jsunit/doc/js_docs_out/overview-summary-jsUnitAjax.js.html +++ /dev/null @@ -1,201 +0,0 @@ - - - - -JsUnit Overview - - - - - - - - - - - - - - - - - - -
    - -JsUnit -
    - - -
    -
    - -

    jsUnitAjax.js

    - -
    - - - - -

    Summary

    -

    - - jsUnitAjax.js contains a mock implementation of XmlHttpRequest that can be used for testing the sending and receiving - AJAX requests and responses.

    - -

    - -
    - - - - - - - - - - - - -
    - - Class Summary - -
    MockXmlHttpRequestA MockXmlHttpRequest implements the XmlHttpRequest API.
    -
    - - - - - - - - - - - - - - - - - -
    - - Method Summary - -
    - - static Object - - - - - createXmlHttpRequest() - -
    -            - Useful for testing. -
    -

    - - - - - - - - - - - - - - - - - - -
    -JsUnit -
    - - -


    - -www.jsunit.net - -
    Documentation generated by JSDoc on Sun Sep 9 15:34:58 2007
    - - diff --git a/scripts/jsunit/doc/js_docs_out/overview-summary-jsUnitCore.js.html b/scripts/jsunit/doc/js_docs_out/overview-summary-jsUnitCore.js.html deleted file mode 100644 index ff0c8e24f..000000000 --- a/scripts/jsunit/doc/js_docs_out/overview-summary-jsUnitCore.js.html +++ /dev/null @@ -1,759 +0,0 @@ - - - - -JsUnit Overview - - - - - - - - - - - - - - - - - - -
    - -JsUnit -
    - - -
    -
    - -

    jsUnitCore.js

    - -
    - - - - -

    Summary

    -

    - - jsUnitCore.js contains the implementation of the core JsUnit functionality: assertions, JsUnitTestSuites, and JsUnitException. - An HTML page is considered to be a JsUnit Test Page if it "includes" jsUnitCore.js, i.e. the following line is present: - - <script type="text/javascript" src="/path/to/jsUnitCore.js"></script> - -

    Author: Edward Hieatt, edward@jsunit.net, http://www.jsunit.net
    - -

    - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    - - Class Summary - -
    JsUnitAssertionArgumentErrorA JsUnitAssertionArgumentError represents an invalid call to an assertion function - either an invalid argument type - or an incorrect number of arguments -
    JsUnitErrorA JsUnitError represents an error (an exception or a call to error()) during the execution of a Test Function -
    JsUnitFailureA JsUnitFailure represents an assertion failure (or a call to fail()) during the execution of a Test Function -
    JsUnitTestSuiteA JsUnitTestSuite represents a suite of JsUnit Test Pages.
    Utilities 
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    - - Method Summary - -
    - - static void - - - - - assert() - -
    -            - Checks that the given boolean value is true. -
    - - static void - - - - - assertArrayEquals() - -
    -            - Checks that an array is equal to another by checking that both are arrays and then comparing their elements using assertObjectEquals -
    - - static void - - - - - assertArrayEqualsIgnoringOrder() - -
    -            - Checks that two arrays have the same contents, ignoring the order of the contents -
    - - static void - - - - - assertContains() - -
    -            - Checks that a collection contains a value by checking that collection.indexOf(value) is not -1 -
    - - static void - - - - - assertEquals() - -
    -            - Checks that two values are equal (using ===) -
    - - static void - - - - - assertEqualsIgnoringOrder() - -
    -            - Synonym for assertArrayEqualsIgnoringOrder -
    - - static void - - - - - assertEvaluatesToFalse() - -
    -            - Checks that a value evaluates to false in the sense that value == false -
    - - static void - - - - - assertEvaluatesToTrue() - -
    -            - Checks that a value evaluates to true in the sense that value == true -
    - - static void - - - - - assertFalse() - -
    -            - Checks that a boolean value is false. -
    - - static void - - - - - assertHashEquals() - -
    -            - Checks that a hash is has the same contents as another by iterating over the expected hash and checking that each - key's value is present in the actual hash and calling assertEquals on the two values, and then checking that there is - no key in the actual hash that isn't present in the expected hash. -
    - - static void - - - - - assertHTMLEquals() - -
    -            - Checks that a value is the same as an HTML string by "standardizing" both and comparing the result for equality. -
    - - static void - - - - - assertNaN() - -
    -            - Checks that a value is NaN (Not a Number) -
    - - static void - - - - - assertNotEquals() - -
    -            - Checks that two values are not equal (using !==) -
    - - static void - - - - - assertNotNaN() - -
    -            - Checks that a value is not NaN (i.e. -
    - - static void - - - - - assertNotNull() - -
    -            - Checks that a value is not null -
    - - static void - - - - - assertNotUndefined() - -
    -            - Checks that a value is not undefined -
    - - static void - - - - - assertNull() - -
    -            - Checks that a value is null -
    - - static void - - - - - assertObjectEquals() - -
    -            - Checks that an object is equal to another using === for primitives and their object counterparts but also desceding - into collections and calling assertObjectEquals for each element -
    - - static void - - - - - assertRoughlyEquals() - -
    -            - Checks that two value are within a tolerance of one another -
    - - static void - - - - - assertTrue() - -
    -            - Synonym for assertTrue -
    - - static void - - - - - assertUndefined() - -
    -            - Checks that a value is undefined -
    - - static void - - - - - debug() - -
    -            - -
    - - static void - - - - - error(errorMessage) - -
    -            - Causes an error -
    - - static void - - - - - fail(failureMessage) - -
    -            - Causes a failure -
    - - static void - - - - - info() - -
    -            - -
    - - static void - - - - - inform() - -
    -            - -
    - - static Object - - - - - isLoaded() - -
    -            - -
    - - static Object - - - - - jsUnitGetParm(name) - -
    -            - -
    - - static void - - - - - jsUnitSetOnLoad(windowRef, onloadHandler) - -
    -            - -
    - - static void - - - - - newOnLoadEvent() - -
    -            - -
    - - static void - - - - - setJsUnitTracer(aJsUnitTracer) - -
    -            - -
    - - static void - - - - - warn() - -
    -            - -
    -

    - - - - - - - - - - - - - - - - - - -
    -JsUnit -
    - - -


    - -www.jsunit.net - -
    Documentation generated by JSDoc on Sun Sep 9 15:34:58 2007
    - - diff --git a/scripts/jsunit/doc/js_docs_out/overview-summary-jsUnitMockTimeout.js.html b/scripts/jsunit/doc/js_docs_out/overview-summary-jsUnitMockTimeout.js.html deleted file mode 100644 index bd3d0ef02..000000000 --- a/scripts/jsunit/doc/js_docs_out/overview-summary-jsUnitMockTimeout.js.html +++ /dev/null @@ -1,258 +0,0 @@ - - - - -JsUnit Overview - - - - - - - - - - - - - - - - - - -
    - -JsUnit -
    - - -
    -
    - -

    jsUnitMockTimeout.js

    - -
    - - - - -

    Summary

    -

    - - jsUnitMockTimeout.js changes the behavior of setTimeout, clearTimeout, setInterval and clearInterval to provide a - powerful way of testing callbacks. Instead of setting up timed callbacks, the callbacks and the time to their - execution are stored on a class called Clock. When the Clock is told to "advance time", the appropriate callbacks - are executed. In this way, real time is taken out of the picture and the test author has control. - - Contributed by Nathan Wilmes of Pivotal Labs, http://www.pivotallabs.com

    - -

    - -
    - - - - - - - - - - - - -
    - - Class Summary - -
    ClockClock stores callbacks and executes them when it is told to simulate the advancing of time - -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    - - Method Summary - -
    - - static void - - - - - clearInterval(timeoutKey) - -
    -            - Mocks out clearInterval by clearing Clock's scheduledFunction for the given ID -
    - - static void - - - - - clearTimeout(timeoutKey) - -
    -            - Mocks out clearTimeout by clearing Clock's scheduledFunction for the given ID -
    - - static Object - - - - - setInterval(funcToCall, millis) - -
    -            - Mocks out setInterval by registering the callback with Clock -
    - - static Object - - - - - setTimeout(funcToCall, millis) - -
    -            - Mocks out setTimeout by registering the callback with Clock -
    -

    - - - - - - - - - - - - - - - - - - -
    -JsUnit -
    - - -


    - -www.jsunit.net - -
    Documentation generated by JSDoc on Sun Sep 9 15:34:58 2007
    - - diff --git a/scripts/jsunit/doc/js_docs_out/overview-summary.html b/scripts/jsunit/doc/js_docs_out/overview-summary.html deleted file mode 100644 index e6b302aa0..000000000 --- a/scripts/jsunit/doc/js_docs_out/overview-summary.html +++ /dev/null @@ -1,185 +0,0 @@ - - - - -JsUnit Overview - - - - - - - - - - - - - - - - - - -
    - -JsUnit -
    - - -
    -
    - -

    JsUnit

    - -
    - - -

    - This document is the API Specification for - JsUnit. -

    - - - -

    Summary

    -

    - - JsUnit is an open-source unit testing framework for JavaScript. JsUnit conforms to the standards of the xUnit frameworks - it has the usual set of assertions (plus some JavaScript-specific ones), setUp, tearDown, test suites, etc. - -

    - -
    - - - - - - - - - - - - - - - - - - - - - - -
    - - File Summary - -
    jsUnitAjax.jsjsUnitAjax.js contains a mock implementation of XmlHttpRequest that can be used for testing the sending and receiving - AJAX requests and responses.
    jsUnitCore.jsjsUnitCore.js contains the implementation of the core JsUnit functionality: assertions, JsUnitTestSuites, and JsUnitException.
    jsUnitMockTimeout.jsjsUnitMockTimeout.js changes the behavior of setTimeout, clearTimeout, setInterval and clearInterval to provide a - powerful way of testing callbacks.
    -
    - - - - - - - - - - - - - - - - - - - - - -
    -JsUnit -
    - - -
    - -www.jsunit.net - -
    Documentation generated by JSDoc on Sun Sep 9 15:34:58 2007
    - - diff --git a/scripts/jsunit/doc/js_docs_out/overview-tree.html b/scripts/jsunit/doc/js_docs_out/overview-tree.html deleted file mode 100644 index 440ae522e..000000000 --- a/scripts/jsunit/doc/js_docs_out/overview-tree.html +++ /dev/null @@ -1,128 +0,0 @@ - - - - - -JsUnit Class Hierarchy - - - - - - - - - - - - - - - - - - -
    -JsUnit -
    - - -
    -

    Class Hierarchy

    - - - -
    - - - - - - - - - - - - - -
    -JsUnit -
    - - -
    - -www.jsunit.net - -
    Documentation generated by JSDoc on Sun Sep 9 15:34:58 2007
    - - diff --git a/scripts/jsunit/doc/js_docs_out/stylesheet.css b/scripts/jsunit/doc/js_docs_out/stylesheet.css deleted file mode 100644 index 7a35c0c18..000000000 --- a/scripts/jsunit/doc/js_docs_out/stylesheet.css +++ /dev/null @@ -1,39 +0,0 @@ -/* JSDoc style sheet */ - -/* Define colors, fonts and other style attributes here to override the defaults */ - -/* Page background color */ -body { background-color: #FFFFFF } - -/* Table colors */ -.TableHeadingColor { background: #CCCCFF } /* Dark mauve */ -.TableSubHeadingColor { background: #EEEEFF } /* Light mauve */ -.TableRowColor { background: #FFFFFF } /* White */ - -/* Font used in left-hand frame lists */ -.FrameTitleFont { font-size: 10pt; font-family: Helvetica, Arial, san-serif } -.FrameHeadingFont { font-size: 10pt; font-family: Helvetica, Arial, san-serif } -.FrameItemFont { font-size: 10pt; font-family: Helvetica, Arial, san-serif } - -/* Example of smaller, sans-serif font in frames */ -/* .FrameItemFont { font-size: 10pt; font-family: Helvetica, Arial, sans-serif } */ - -/* Navigation bar fonts and colors */ -.NavBarCell1 { background-color:#EEEEFF;}/* Light mauve */ -.NavBarCell1Rev { background-color:#00008B;}/* Dark Blue */ -.NavBarFont1 { font-family: Arial, Helvetica, sans-serif; color:#000000;} -.NavBarFont1Rev { font-family: Arial, Helvetica, sans-serif; color:#FFFFFF;} - -.NavBarCell2 { font-family: Arial, Helvetica, sans-serif; background-color:#FFFFFF;} -.NavBarCell3 { font-family: Arial, Helvetica, sans-serif; background-color:#FFFFFF;} - -.jsdoc_ctime { font-family: Arial, Helvetica, sans-serif; font-size: 9pt; - text-align: right } - -/* Sourcecode view */ -.sourceview { background: #FFFFFF } -.attrib { color: #DD7777 } -.comment { color: #55AA55 } -.reserved { color: #FF5555 } -.literal { color: #5555FF } - diff --git a/scripts/jsunit/doc/jsunit.ppt b/scripts/jsunit/doc/jsunit.ppt deleted file mode 100644 index 79961305c..000000000 Binary files a/scripts/jsunit/doc/jsunit.ppt and /dev/null differ diff --git a/scripts/jsunit/doc/summary.txt b/scripts/jsunit/doc/summary.txt deleted file mode 100644 index 7af53f0ee..000000000 --- a/scripts/jsunit/doc/summary.txt +++ /dev/null @@ -1 +0,0 @@ -JsUnit is an open-source unit testing framework for JavaScript. JsUnit conforms to the standards of the xUnit frameworks - it has the usual set of assertions (plus some JavaScript-specific ones), setUp, tearDown, test suites, etc. \ No newline at end of file diff --git a/scripts/jsunit/images/bl0.gif b/scripts/jsunit/images/bl0.gif deleted file mode 100644 index d40c3cea2..000000000 Binary files a/scripts/jsunit/images/bl0.gif and /dev/null differ diff --git a/scripts/jsunit/images/br0.gif b/scripts/jsunit/images/br0.gif deleted file mode 100644 index 03b3440e6..000000000 Binary files a/scripts/jsunit/images/br0.gif and /dev/null differ diff --git a/scripts/jsunit/images/green.gif b/scripts/jsunit/images/green.gif deleted file mode 100644 index b57ca3425..000000000 Binary files a/scripts/jsunit/images/green.gif and /dev/null differ diff --git a/scripts/jsunit/images/logo_jsunit.jpg b/scripts/jsunit/images/logo_jsunit.jpg deleted file mode 100644 index 31ca10ed4..000000000 Binary files a/scripts/jsunit/images/logo_jsunit.jpg and /dev/null differ diff --git a/scripts/jsunit/images/nt0.gif b/scripts/jsunit/images/nt0.gif deleted file mode 100644 index 7045da26a..000000000 Binary files a/scripts/jsunit/images/nt0.gif and /dev/null differ diff --git a/scripts/jsunit/images/pivotal.gif b/scripts/jsunit/images/pivotal.gif deleted file mode 100644 index 8795b7560..000000000 Binary files a/scripts/jsunit/images/pivotal.gif and /dev/null differ diff --git a/scripts/jsunit/images/red.gif b/scripts/jsunit/images/red.gif deleted file mode 100644 index 262550d9b..000000000 Binary files a/scripts/jsunit/images/red.gif and /dev/null differ diff --git a/scripts/jsunit/images/tl0.gif b/scripts/jsunit/images/tl0.gif deleted file mode 100644 index fa057df02..000000000 Binary files a/scripts/jsunit/images/tl0.gif and /dev/null differ diff --git a/scripts/jsunit/images/tr0.gif b/scripts/jsunit/images/tr0.gif deleted file mode 100644 index da574611f..000000000 Binary files a/scripts/jsunit/images/tr0.gif and /dev/null differ diff --git a/scripts/jsunit/java/bin/jsunit.jar b/scripts/jsunit/java/bin/jsunit.jar deleted file mode 100644 index 1b7a334fe..000000000 Binary files a/scripts/jsunit/java/bin/jsunit.jar and /dev/null differ diff --git a/scripts/jsunit/java/lib/axis_1.4/LICENSE b/scripts/jsunit/java/lib/axis_1.4/LICENSE deleted file mode 100644 index 6b0b1270f..000000000 --- a/scripts/jsunit/java/lib/axis_1.4/LICENSE +++ /dev/null @@ -1,203 +0,0 @@ - - Apache License - Version 2.0, January 2004 - http://www.apache.org/licenses/ - - TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION - - 1. Definitions. - - "License" shall mean the terms and conditions for use, reproduction, - and distribution as defined by Sections 1 through 9 of this document. - - "Licensor" shall mean the copyright owner or entity authorized by - the copyright owner that is granting the License. - - "Legal Entity" shall mean the union of the acting entity and all - other entities that control, are controlled by, or are under common - control with that entity. For the purposes of this definition, - "control" means (i) the power, direct or indirect, to cause the - direction or management of such entity, whether by contract or - otherwise, or (ii) ownership of fifty percent (50%) or more of the - outstanding shares, or (iii) beneficial ownership of such entity. - - "You" (or "Your") shall mean an individual or Legal Entity - exercising permissions granted by this License. - - "Source" form shall mean the preferred form for making modifications, - including but not limited to software source code, documentation - source, and configuration files. - - "Object" form shall mean any form resulting from mechanical - transformation or translation of a Source form, including but - not limited to compiled object code, generated documentation, - and conversions to other media types. - - "Work" shall mean the work of authorship, whether in Source or - Object form, made available under the License, as indicated by a - copyright notice that is included in or attached to the work - (an example is provided in the Appendix below). - - "Derivative Works" shall mean any work, whether in Source or Object - form, that is based on (or derived from) the Work and for which the - editorial revisions, annotations, elaborations, or other modifications - represent, as a whole, an original work of authorship. For the purposes - of this License, Derivative Works shall not include works that remain - separable from, or merely link (or bind by name) to the interfaces of, - the Work and Derivative Works thereof. - - "Contribution" shall mean any work of authorship, including - the original version of the Work and any modifications or additions - to that Work or Derivative Works thereof, that is intentionally - submitted to Licensor for inclusion in the Work by the copyright owner - or by an individual or Legal Entity authorized to submit on behalf of - the copyright owner. For the purposes of this definition, "submitted" - means any form of electronic, verbal, or written communication sent - to the Licensor or its representatives, including but not limited to - communication on electronic mailing lists, source code control systems, - and issue tracking systems that are managed by, or on behalf of, the - Licensor for the purpose of discussing and improving the Work, but - excluding communication that is conspicuously marked or otherwise - designated in writing by the copyright owner as "Not a Contribution." - - "Contributor" shall mean Licensor and any individual or Legal Entity - on behalf of whom a Contribution has been received by Licensor and - subsequently incorporated within the Work. - - 2. Grant of Copyright License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - copyright license to reproduce, prepare Derivative Works of, - publicly display, publicly perform, sublicense, and distribute the - Work and such Derivative Works in Source or Object form. - - 3. Grant of Patent License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - (except as stated in this section) patent license to make, have made, - use, offer to sell, sell, import, and otherwise transfer the Work, - where such license applies only to those patent claims licensable - by such Contributor that are necessarily infringed by their - Contribution(s) alone or by combination of their Contribution(s) - with the Work to which such Contribution(s) was submitted. If You - institute patent litigation against any entity (including a - cross-claim or counterclaim in a lawsuit) alleging that the Work - or a Contribution incorporated within the Work constitutes direct - or contributory patent infringement, then any patent licenses - granted to You under this License for that Work shall terminate - as of the date such litigation is filed. - - 4. Redistribution. You may reproduce and distribute copies of the - Work or Derivative Works thereof in any medium, with or without - modifications, and in Source or Object form, provided that You - meet the following conditions: - - (a) You must give any other recipients of the Work or - Derivative Works a copy of this License; and - - (b) You must cause any modified files to carry prominent notices - stating that You changed the files; and - - (c) You must retain, in the Source form of any Derivative Works - that You distribute, all copyright, patent, trademark, and - attribution notices from the Source form of the Work, - excluding those notices that do not pertain to any part of - the Derivative Works; and - - (d) If the Work includes a "NOTICE" text file as part of its - distribution, then any Derivative Works that You distribute must - include a readable copy of the attribution notices contained - within such NOTICE file, excluding those notices that do not - pertain to any part of the Derivative Works, in at least one - of the following places: within a NOTICE text file distributed - as part of the Derivative Works; within the Source form or - documentation, if provided along with the Derivative Works; or, - within a display generated by the Derivative Works, if and - wherever such third-party notices normally appear. The contents - of the NOTICE file are for informational purposes only and - do not modify the License. You may add Your own attribution - notices within Derivative Works that You distribute, alongside - or as an addendum to the NOTICE text from the Work, provided - that such additional attribution notices cannot be construed - as modifying the License. - - You may add Your own copyright statement to Your modifications and - may provide additional or different license terms and conditions - for use, reproduction, or distribution of Your modifications, or - for any such Derivative Works as a whole, provided Your use, - reproduction, and distribution of the Work otherwise complies with - the conditions stated in this License. - - 5. Submission of Contributions. Unless You explicitly state otherwise, - any Contribution intentionally submitted for inclusion in the Work - by You to the Licensor shall be under the terms and conditions of - this License, without any additional terms or conditions. - Notwithstanding the above, nothing herein shall supersede or modify - the terms of any separate license agreement you may have executed - with Licensor regarding such Contributions. - - 6. Trademarks. This License does not grant permission to use the trade - names, trademarks, service marks, or product names of the Licensor, - except as required for reasonable and customary use in describing the - origin of the Work and reproducing the content of the NOTICE file. - - 7. Disclaimer of Warranty. Unless required by applicable law or - agreed to in writing, Licensor provides the Work (and each - Contributor provides its Contributions) on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or - implied, including, without limitation, any warranties or conditions - of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A - PARTICULAR PURPOSE. You are solely responsible for determining the - appropriateness of using or redistributing the Work and assume any - risks associated with Your exercise of permissions under this License. - - 8. Limitation of Liability. In no event and under no legal theory, - whether in tort (including negligence), contract, or otherwise, - unless required by applicable law (such as deliberate and grossly - negligent acts) or agreed to in writing, shall any Contributor be - liable to You for damages, including any direct, indirect, special, - incidental, or consequential damages of any character arising as a - result of this License or out of the use or inability to use the - Work (including but not limited to damages for loss of goodwill, - work stoppage, computer failure or malfunction, or any and all - other commercial damages or losses), even if such Contributor - has been advised of the possibility of such damages. - - 9. Accepting Warranty or Additional Liability. While redistributing - the Work or Derivative Works thereof, You may choose to offer, - and charge a fee for, acceptance of support, warranty, indemnity, - or other liability obligations and/or rights consistent with this - License. However, in accepting such obligations, You may act only - on Your own behalf and on Your sole responsibility, not on behalf - of any other Contributor, and only if You agree to indemnify, - defend, and hold each Contributor harmless for any liability - incurred by, or claims asserted against, such Contributor by reason - of your accepting any such warranty or additional liability. - - END OF TERMS AND CONDITIONS - - APPENDIX: How to apply the Apache License to your work. - - To apply the Apache License to your work, attach the following - boilerplate notice, with the fields enclosed by brackets "[]" - replaced with your own identifying information. (Don't include - the brackets!) The text should be enclosed in the appropriate - comment syntax for the file format. We also recommend that a - file or class name and description of purpose be included on the - same "printed page" as the copyright notice for easier - identification within third-party archives. - - Copyright [yyyy] [name of copyright owner] - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. - diff --git a/scripts/jsunit/java/lib/axis_1.4/NOTICE b/scripts/jsunit/java/lib/axis_1.4/NOTICE deleted file mode 100644 index e19d1ce04..000000000 --- a/scripts/jsunit/java/lib/axis_1.4/NOTICE +++ /dev/null @@ -1,7 +0,0 @@ - ========================================================================= - == NOTICE file corresponding to section 4(d) of the Apache License, == - == Version 2.0, in this case for the Apache Axis distribution. == - ========================================================================= - - This product includes software developed by - The Apache Software Foundation (http://www.apache.org/). diff --git a/scripts/jsunit/java/lib/axis_1.4/axis-ant.jar b/scripts/jsunit/java/lib/axis_1.4/axis-ant.jar deleted file mode 100644 index 17527ffdd..000000000 Binary files a/scripts/jsunit/java/lib/axis_1.4/axis-ant.jar and /dev/null differ diff --git a/scripts/jsunit/java/lib/axis_1.4/axis.jar b/scripts/jsunit/java/lib/axis_1.4/axis.jar deleted file mode 100644 index 20b09a595..000000000 Binary files a/scripts/jsunit/java/lib/axis_1.4/axis.jar and /dev/null differ diff --git a/scripts/jsunit/java/lib/axis_1.4/jaxrpc.jar b/scripts/jsunit/java/lib/axis_1.4/jaxrpc.jar deleted file mode 100644 index a2c13d9a2..000000000 Binary files a/scripts/jsunit/java/lib/axis_1.4/jaxrpc.jar and /dev/null differ diff --git a/scripts/jsunit/java/lib/axis_1.4/log4j-1.2.8.jar b/scripts/jsunit/java/lib/axis_1.4/log4j-1.2.8.jar deleted file mode 100644 index 493a3ccc1..000000000 Binary files a/scripts/jsunit/java/lib/axis_1.4/log4j-1.2.8.jar and /dev/null differ diff --git a/scripts/jsunit/java/lib/axis_1.4/saaj.jar b/scripts/jsunit/java/lib/axis_1.4/saaj.jar deleted file mode 100644 index 4ea696e74..000000000 Binary files a/scripts/jsunit/java/lib/axis_1.4/saaj.jar and /dev/null differ diff --git a/scripts/jsunit/java/lib/axis_1.4/wsdl4j-1.5.1.jar b/scripts/jsunit/java/lib/axis_1.4/wsdl4j-1.5.1.jar deleted file mode 100644 index c6254ee69..000000000 Binary files a/scripts/jsunit/java/lib/axis_1.4/wsdl4j-1.5.1.jar and /dev/null differ diff --git a/scripts/jsunit/java/lib/commons_discovery_0.2/LICENSE b/scripts/jsunit/java/lib/commons_discovery_0.2/LICENSE deleted file mode 100644 index bfa53f2c2..000000000 --- a/scripts/jsunit/java/lib/commons_discovery_0.2/LICENSE +++ /dev/null @@ -1,60 +0,0 @@ -/* - * $Header: /home/cvs/jakarta-commons/discovery/LICENSE.txt,v 1.1 2002/07/25 02:36:45 jvanzyl Exp $ - * $Revision: 1.1 $ - * $Date: 2002/07/25 02:36:45 $ - * - * ==================================================================== - * - * The Apache Software License, Version 1.1 - * - * Copyright (c) 1999-2001 The Apache Software Foundation. All rights - * reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. The end-user documentation included with the redistribution, if - * any, must include the following acknowlegement: - * "This product includes software developed by the - * Apache Software Foundation (http://www.apache.org/)." - * Alternately, this acknowlegement may appear in the software itself, - * if and wherever such third-party acknowlegements normally appear. - * - * 4. The names "The Jakarta Project", "Commons", and "Apache Software - * Foundation" must not be used to endorse or promote products derived - * from this software without prior written permission. For written - * permission, please contact apache@apache.org. - * - * 5. Products derived from this software may not be called "Apache" - * nor may "Apache" appear in their names without prior written - * permission of the Apache Group. - * - * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED - * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES - * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT - * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF - * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, - * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT - * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * ==================================================================== - * - * This software consists of voluntary contributions made by many - * individuals on behalf of the Apache Software Foundation. For more - * information on the Apache Software Foundation, please see - * . - * - */ diff --git a/scripts/jsunit/java/lib/commons_discovery_0.2/commons-discovery.jar b/scripts/jsunit/java/lib/commons_discovery_0.2/commons-discovery.jar deleted file mode 100644 index b88554847..000000000 Binary files a/scripts/jsunit/java/lib/commons_discovery_0.2/commons-discovery.jar and /dev/null differ diff --git a/scripts/jsunit/java/lib/commons_httpclient_3.0.1/LICENSE.txt b/scripts/jsunit/java/lib/commons_httpclient_3.0.1/LICENSE.txt deleted file mode 100644 index 7cd40e552..000000000 --- a/scripts/jsunit/java/lib/commons_httpclient_3.0.1/LICENSE.txt +++ /dev/null @@ -1,176 +0,0 @@ - Apache License - Version 2.0, January 2004 - http://www.apache.org/licenses/ - - TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION - - 1. Definitions. - - "License" shall mean the terms and conditions for use, reproduction, - and distribution as defined by Sections 1 through 9 of this document. - - "Licensor" shall mean the copyright owner or entity authorized by - the copyright owner that is granting the License. - - "Legal Entity" shall mean the union of the acting entity and all - other entities that control, are controlled by, or are under common - control with that entity. For the purposes of this definition, - "control" means (i) the power, direct or indirect, to cause the - direction or management of such entity, whether by contract or - otherwise, or (ii) ownership of fifty percent (50%) or more of the - outstanding shares, or (iii) beneficial ownership of such entity. - - "You" (or "Your") shall mean an individual or Legal Entity - exercising permissions granted by this License. - - "Source" form shall mean the preferred form for making modifications, - including but not limited to software source code, documentation - source, and configuration files. - - "Object" form shall mean any form resulting from mechanical - transformation or translation of a Source form, including but - not limited to compiled object code, generated documentation, - and conversions to other media types. - - "Work" shall mean the work of authorship, whether in Source or - Object form, made available under the License, as indicated by a - copyright notice that is included in or attached to the work - (an example is provided in the Appendix below). - - "Derivative Works" shall mean any work, whether in Source or Object - form, that is based on (or derived from) the Work and for which the - editorial revisions, annotations, elaborations, or other modifications - represent, as a whole, an original work of authorship. For the purposes - of this License, Derivative Works shall not include works that remain - separable from, or merely link (or bind by name) to the interfaces of, - the Work and Derivative Works thereof. - - "Contribution" shall mean any work of authorship, including - the original version of the Work and any modifications or additions - to that Work or Derivative Works thereof, that is intentionally - submitted to Licensor for inclusion in the Work by the copyright owner - or by an individual or Legal Entity authorized to submit on behalf of - the copyright owner. For the purposes of this definition, "submitted" - means any form of electronic, verbal, or written communication sent - to the Licensor or its representatives, including but not limited to - communication on electronic mailing lists, source code control systems, - and issue tracking systems that are managed by, or on behalf of, the - Licensor for the purpose of discussing and improving the Work, but - excluding communication that is conspicuously marked or otherwise - designated in writing by the copyright owner as "Not a Contribution." - - "Contributor" shall mean Licensor and any individual or Legal Entity - on behalf of whom a Contribution has been received by Licensor and - subsequently incorporated within the Work. - - 2. Grant of Copyright License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - copyright license to reproduce, prepare Derivative Works of, - publicly display, publicly perform, sublicense, and distribute the - Work and such Derivative Works in Source or Object form. - - 3. Grant of Patent License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - (except as stated in this section) patent license to make, have made, - use, offer to sell, sell, import, and otherwise transfer the Work, - where such license applies only to those patent claims licensable - by such Contributor that are necessarily infringed by their - Contribution(s) alone or by combination of their Contribution(s) - with the Work to which such Contribution(s) was submitted. If You - institute patent litigation against any entity (including a - cross-claim or counterclaim in a lawsuit) alleging that the Work - or a Contribution incorporated within the Work constitutes direct - or contributory patent infringement, then any patent licenses - granted to You under this License for that Work shall terminate - as of the date such litigation is filed. - - 4. Redistribution. You may reproduce and distribute copies of the - Work or Derivative Works thereof in any medium, with or without - modifications, and in Source or Object form, provided that You - meet the following conditions: - - (a) You must give any other recipients of the Work or - Derivative Works a copy of this License; and - - (b) You must cause any modified files to carry prominent notices - stating that You changed the files; and - - (c) You must retain, in the Source form of any Derivative Works - that You distribute, all copyright, patent, trademark, and - attribution notices from the Source form of the Work, - excluding those notices that do not pertain to any part of - the Derivative Works; and - - (d) If the Work includes a "NOTICE" text file as part of its - distribution, then any Derivative Works that You distribute must - include a readable copy of the attribution notices contained - within such NOTICE file, excluding those notices that do not - pertain to any part of the Derivative Works, in at least one - of the following places: within a NOTICE text file distributed - as part of the Derivative Works; within the Source form or - documentation, if provided along with the Derivative Works; or, - within a display generated by the Derivative Works, if and - wherever such third-party notices normally appear. The contents - of the NOTICE file are for informational purposes only and - do not modify the License. You may add Your own attribution - notices within Derivative Works that You distribute, alongside - or as an addendum to the NOTICE text from the Work, provided - that such additional attribution notices cannot be construed - as modifying the License. - - You may add Your own copyright statement to Your modifications and - may provide additional or different license terms and conditions - for use, reproduction, or distribution of Your modifications, or - for any such Derivative Works as a whole, provided Your use, - reproduction, and distribution of the Work otherwise complies with - the conditions stated in this License. - - 5. Submission of Contributions. Unless You explicitly state otherwise, - any Contribution intentionally submitted for inclusion in the Work - by You to the Licensor shall be under the terms and conditions of - this License, without any additional terms or conditions. - Notwithstanding the above, nothing herein shall supersede or modify - the terms of any separate license agreement you may have executed - with Licensor regarding such Contributions. - - 6. Trademarks. This License does not grant permission to use the trade - names, trademarks, service marks, or product names of the Licensor, - except as required for reasonable and customary use in describing the - origin of the Work and reproducing the content of the NOTICE file. - - 7. Disclaimer of Warranty. Unless required by applicable law or - agreed to in writing, Licensor provides the Work (and each - Contributor provides its Contributions) on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or - implied, including, without limitation, any warranties or conditions - of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A - PARTICULAR PURPOSE. You are solely responsible for determining the - appropriateness of using or redistributing the Work and assume any - risks associated with Your exercise of permissions under this License. - - 8. Limitation of Liability. In no event and under no legal theory, - whether in tort (including negligence), contract, or otherwise, - unless required by applicable law (such as deliberate and grossly - negligent acts) or agreed to in writing, shall any Contributor be - liable to You for damages, including any direct, indirect, special, - incidental, or consequential damages of any character arising as a - result of this License or out of the use or inability to use the - Work (including but not limited to damages for loss of goodwill, - work stoppage, computer failure or malfunction, or any and all - other commercial damages or losses), even if such Contributor - has been advised of the possibility of such damages. - - 9. Accepting Warranty or Additional Liability. While redistributing - the Work or Derivative Works thereof, You may choose to offer, - and charge a fee for, acceptance of support, warranty, indemnity, - or other liability obligations and/or rights consistent with this - License. However, in accepting such obligations, You may act only - on Your own behalf and on Your sole responsibility, not on behalf - of any other Contributor, and only if You agree to indemnify, - defend, and hold each Contributor harmless for any liability - incurred by, or claims asserted against, such Contributor by reason - of your accepting any such warranty or additional liability. - - END OF TERMS AND CONDITIONS diff --git a/scripts/jsunit/java/lib/commons_httpclient_3.0.1/commons-httpclient-3.0.1.jar b/scripts/jsunit/java/lib/commons_httpclient_3.0.1/commons-httpclient-3.0.1.jar deleted file mode 100644 index cfc777c71..000000000 Binary files a/scripts/jsunit/java/lib/commons_httpclient_3.0.1/commons-httpclient-3.0.1.jar and /dev/null differ diff --git a/scripts/jsunit/java/lib/commons_logging_1.1/LICENSE.txt b/scripts/jsunit/java/lib/commons_logging_1.1/LICENSE.txt deleted file mode 100644 index 75b52484e..000000000 --- a/scripts/jsunit/java/lib/commons_logging_1.1/LICENSE.txt +++ /dev/null @@ -1,202 +0,0 @@ - - Apache License - Version 2.0, January 2004 - http://www.apache.org/licenses/ - - TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION - - 1. Definitions. - - "License" shall mean the terms and conditions for use, reproduction, - and distribution as defined by Sections 1 through 9 of this document. - - "Licensor" shall mean the copyright owner or entity authorized by - the copyright owner that is granting the License. - - "Legal Entity" shall mean the union of the acting entity and all - other entities that control, are controlled by, or are under common - control with that entity. For the purposes of this definition, - "control" means (i) the power, direct or indirect, to cause the - direction or management of such entity, whether by contract or - otherwise, or (ii) ownership of fifty percent (50%) or more of the - outstanding shares, or (iii) beneficial ownership of such entity. - - "You" (or "Your") shall mean an individual or Legal Entity - exercising permissions granted by this License. - - "Source" form shall mean the preferred form for making modifications, - including but not limited to software source code, documentation - source, and configuration files. - - "Object" form shall mean any form resulting from mechanical - transformation or translation of a Source form, including but - not limited to compiled object code, generated documentation, - and conversions to other media types. - - "Work" shall mean the work of authorship, whether in Source or - Object form, made available under the License, as indicated by a - copyright notice that is included in or attached to the work - (an example is provided in the Appendix below). - - "Derivative Works" shall mean any work, whether in Source or Object - form, that is based on (or derived from) the Work and for which the - editorial revisions, annotations, elaborations, or other modifications - represent, as a whole, an original work of authorship. For the purposes - of this License, Derivative Works shall not include works that remain - separable from, or merely link (or bind by name) to the interfaces of, - the Work and Derivative Works thereof. - - "Contribution" shall mean any work of authorship, including - the original version of the Work and any modifications or additions - to that Work or Derivative Works thereof, that is intentionally - submitted to Licensor for inclusion in the Work by the copyright owner - or by an individual or Legal Entity authorized to submit on behalf of - the copyright owner. For the purposes of this definition, "submitted" - means any form of electronic, verbal, or written communication sent - to the Licensor or its representatives, including but not limited to - communication on electronic mailing lists, source code control systems, - and issue tracking systems that are managed by, or on behalf of, the - Licensor for the purpose of discussing and improving the Work, but - excluding communication that is conspicuously marked or otherwise - designated in writing by the copyright owner as "Not a Contribution." - - "Contributor" shall mean Licensor and any individual or Legal Entity - on behalf of whom a Contribution has been received by Licensor and - subsequently incorporated within the Work. - - 2. Grant of Copyright License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - copyright license to reproduce, prepare Derivative Works of, - publicly display, publicly perform, sublicense, and distribute the - Work and such Derivative Works in Source or Object form. - - 3. Grant of Patent License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - (except as stated in this section) patent license to make, have made, - use, offer to sell, sell, import, and otherwise transfer the Work, - where such license applies only to those patent claims licensable - by such Contributor that are necessarily infringed by their - Contribution(s) alone or by combination of their Contribution(s) - with the Work to which such Contribution(s) was submitted. If You - institute patent litigation against any entity (including a - cross-claim or counterclaim in a lawsuit) alleging that the Work - or a Contribution incorporated within the Work constitutes direct - or contributory patent infringement, then any patent licenses - granted to You under this License for that Work shall terminate - as of the date such litigation is filed. - - 4. Redistribution. You may reproduce and distribute copies of the - Work or Derivative Works thereof in any medium, with or without - modifications, and in Source or Object form, provided that You - meet the following conditions: - - (a) You must give any other recipients of the Work or - Derivative Works a copy of this License; and - - (b) You must cause any modified files to carry prominent notices - stating that You changed the files; and - - (c) You must retain, in the Source form of any Derivative Works - that You distribute, all copyright, patent, trademark, and - attribution notices from the Source form of the Work, - excluding those notices that do not pertain to any part of - the Derivative Works; and - - (d) If the Work includes a "NOTICE" text file as part of its - distribution, then any Derivative Works that You distribute must - include a readable copy of the attribution notices contained - within such NOTICE file, excluding those notices that do not - pertain to any part of the Derivative Works, in at least one - of the following places: within a NOTICE text file distributed - as part of the Derivative Works; within the Source form or - documentation, if provided along with the Derivative Works; or, - within a display generated by the Derivative Works, if and - wherever such third-party notices normally appear. The contents - of the NOTICE file are for informational purposes only and - do not modify the License. You may add Your own attribution - notices within Derivative Works that You distribute, alongside - or as an addendum to the NOTICE text from the Work, provided - that such additional attribution notices cannot be construed - as modifying the License. - - You may add Your own copyright statement to Your modifications and - may provide additional or different license terms and conditions - for use, reproduction, or distribution of Your modifications, or - for any such Derivative Works as a whole, provided Your use, - reproduction, and distribution of the Work otherwise complies with - the conditions stated in this License. - - 5. Submission of Contributions. Unless You explicitly state otherwise, - any Contribution intentionally submitted for inclusion in the Work - by You to the Licensor shall be under the terms and conditions of - this License, without any additional terms or conditions. - Notwithstanding the above, nothing herein shall supersede or modify - the terms of any separate license agreement you may have executed - with Licensor regarding such Contributions. - - 6. Trademarks. This License does not grant permission to use the trade - names, trademarks, service marks, or product names of the Licensor, - except as required for reasonable and customary use in describing the - origin of the Work and reproducing the content of the NOTICE file. - - 7. Disclaimer of Warranty. Unless required by applicable law or - agreed to in writing, Licensor provides the Work (and each - Contributor provides its Contributions) on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or - implied, including, without limitation, any warranties or conditions - of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A - PARTICULAR PURPOSE. You are solely responsible for determining the - appropriateness of using or redistributing the Work and assume any - risks associated with Your exercise of permissions under this License. - - 8. Limitation of Liability. In no event and under no legal theory, - whether in tort (including negligence), contract, or otherwise, - unless required by applicable law (such as deliberate and grossly - negligent acts) or agreed to in writing, shall any Contributor be - liable to You for damages, including any direct, indirect, special, - incidental, or consequential damages of any character arising as a - result of this License or out of the use or inability to use the - Work (including but not limited to damages for loss of goodwill, - work stoppage, computer failure or malfunction, or any and all - other commercial damages or losses), even if such Contributor - has been advised of the possibility of such damages. - - 9. Accepting Warranty or Additional Liability. While redistributing - the Work or Derivative Works thereof, You may choose to offer, - and charge a fee for, acceptance of support, warranty, indemnity, - or other liability obligations and/or rights consistent with this - License. However, in accepting such obligations, You may act only - on Your own behalf and on Your sole responsibility, not on behalf - of any other Contributor, and only if You agree to indemnify, - defend, and hold each Contributor harmless for any liability - incurred by, or claims asserted against, such Contributor by reason - of your accepting any such warranty or additional liability. - - END OF TERMS AND CONDITIONS - - APPENDIX: How to apply the Apache License to your work. - - To apply the Apache License to your work, attach the following - boilerplate notice, with the fields enclosed by brackets "[]" - replaced with your own identifying information. (Don't include - the brackets!) The text should be enclosed in the appropriate - comment syntax for the file format. We also recommend that a - file or class name and description of purpose be included on the - same "printed page" as the copyright notice for easier - identification within third-party archives. - - Copyright [yyyy] [name of copyright owner] - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. diff --git a/scripts/jsunit/java/lib/commons_logging_1.1/commons-logging-1.1.jar b/scripts/jsunit/java/lib/commons_logging_1.1/commons-logging-1.1.jar deleted file mode 100644 index 2ff9bbd90..000000000 Binary files a/scripts/jsunit/java/lib/commons_logging_1.1/commons-logging-1.1.jar and /dev/null differ diff --git a/scripts/jsunit/java/lib/javax/javax.servlet.jar b/scripts/jsunit/java/lib/javax/javax.servlet.jar deleted file mode 100644 index 2aa9f27e5..000000000 Binary files a/scripts/jsunit/java/lib/javax/javax.servlet.jar and /dev/null differ diff --git a/scripts/jsunit/java/lib/jdom_1.0/LICENSE.txt b/scripts/jsunit/java/lib/jdom_1.0/LICENSE.txt deleted file mode 100644 index 999383ad3..000000000 --- a/scripts/jsunit/java/lib/jdom_1.0/LICENSE.txt +++ /dev/null @@ -1,56 +0,0 @@ -/*-- - - $Id: LICENSE.txt,v 1.11 2004/02/06 09:32:57 jhunter Exp $ - - Copyright (C) 2000-2004 Jason Hunter & Brett McLaughlin. - All rights reserved. - - Redistribution and use in source and binary forms, with or without - modification, are permitted provided that the following conditions - are met: - - 1. Redistributions of source code must retain the above copyright - notice, this list of conditions, and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright - notice, this list of conditions, and the disclaimer that follows - these conditions in the documentation and/or other materials - provided with the distribution. - - 3. The name "JDOM" must not be used to endorse or promote products - derived from this software without prior written permission. For - written permission, please contact . - - 4. Products derived from this software may not be called "JDOM", nor - may "JDOM" appear in their name, without prior written permission - from the JDOM Project Management . - - In addition, we request (but do not require) that you include in the - end-user documentation provided with the redistribution and/or in the - software itself an acknowledgement equivalent to the following: - "This product includes software developed by the - JDOM Project (http://www.jdom.org/)." - Alternatively, the acknowledgment may be graphical using the logos - available at http://www.jdom.org/images/logos. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED - WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES - OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - DISCLAIMED. IN NO EVENT SHALL THE JDOM AUTHORS OR THE PROJECT - CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT - LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF - USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, - OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT - OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - SUCH DAMAGE. - - This software consists of voluntary contributions made by many - individuals on behalf of the JDOM Project and was originally - created by Jason Hunter and - Brett McLaughlin . For more information - on the JDOM Project, please see . - - */ - diff --git a/scripts/jsunit/java/lib/jdom_1.0/jdom.jar b/scripts/jsunit/java/lib/jdom_1.0/jdom.jar deleted file mode 100644 index 288e64cb5..000000000 Binary files a/scripts/jsunit/java/lib/jdom_1.0/jdom.jar and /dev/null differ diff --git a/scripts/jsunit/java/lib/jetty_5.1.11/LICENSE.TXT b/scripts/jsunit/java/lib/jetty_5.1.11/LICENSE.TXT deleted file mode 100644 index d64569567..000000000 --- a/scripts/jsunit/java/lib/jetty_5.1.11/LICENSE.TXT +++ /dev/null @@ -1,202 +0,0 @@ - - Apache License - Version 2.0, January 2004 - http://www.apache.org/licenses/ - - TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION - - 1. Definitions. - - "License" shall mean the terms and conditions for use, reproduction, - and distribution as defined by Sections 1 through 9 of this document. - - "Licensor" shall mean the copyright owner or entity authorized by - the copyright owner that is granting the License. - - "Legal Entity" shall mean the union of the acting entity and all - other entities that control, are controlled by, or are under common - control with that entity. For the purposes of this definition, - "control" means (i) the power, direct or indirect, to cause the - direction or management of such entity, whether by contract or - otherwise, or (ii) ownership of fifty percent (50%) or more of the - outstanding shares, or (iii) beneficial ownership of such entity. - - "You" (or "Your") shall mean an individual or Legal Entity - exercising permissions granted by this License. - - "Source" form shall mean the preferred form for making modifications, - including but not limited to software source code, documentation - source, and configuration files. - - "Object" form shall mean any form resulting from mechanical - transformation or translation of a Source form, including but - not limited to compiled object code, generated documentation, - and conversions to other media types. - - "Work" shall mean the work of authorship, whether in Source or - Object form, made available under the License, as indicated by a - copyright notice that is included in or attached to the work - (an example is provided in the Appendix below). - - "Derivative Works" shall mean any work, whether in Source or Object - form, that is based on (or derived from) the Work and for which the - editorial revisions, annotations, elaborations, or other modifications - represent, as a whole, an original work of authorship. For the purposes - of this License, Derivative Works shall not include works that remain - separable from, or merely link (or bind by name) to the interfaces of, - the Work and Derivative Works thereof. - - "Contribution" shall mean any work of authorship, including - the original version of the Work and any modifications or additions - to that Work or Derivative Works thereof, that is intentionally - submitted to Licensor for inclusion in the Work by the copyright owner - or by an individual or Legal Entity authorized to submit on behalf of - the copyright owner. For the purposes of this definition, "submitted" - means any form of electronic, verbal, or written communication sent - to the Licensor or its representatives, including but not limited to - communication on electronic mailing lists, source code control systems, - and issue tracking systems that are managed by, or on behalf of, the - Licensor for the purpose of discussing and improving the Work, but - excluding communication that is conspicuously marked or otherwise - designated in writing by the copyright owner as "Not a Contribution." - - "Contributor" shall mean Licensor and any individual or Legal Entity - on behalf of whom a Contribution has been received by Licensor and - subsequently incorporated within the Work. - - 2. Grant of Copyright License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - copyright license to reproduce, prepare Derivative Works of, - publicly display, publicly perform, sublicense, and distribute the - Work and such Derivative Works in Source or Object form. - - 3. Grant of Patent License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - (except as stated in this section) patent license to make, have made, - use, offer to sell, sell, import, and otherwise transfer the Work, - where such license applies only to those patent claims licensable - by such Contributor that are necessarily infringed by their - Contribution(s) alone or by combination of their Contribution(s) - with the Work to which such Contribution(s) was submitted. If You - institute patent litigation against any entity (including a - cross-claim or counterclaim in a lawsuit) alleging that the Work - or a Contribution incorporated within the Work constitutes direct - or contributory patent infringement, then any patent licenses - granted to You under this License for that Work shall terminate - as of the date such litigation is filed. - - 4. Redistribution. You may reproduce and distribute copies of the - Work or Derivative Works thereof in any medium, with or without - modifications, and in Source or Object form, provided that You - meet the following conditions: - - (a) You must give any other recipients of the Work or - Derivative Works a copy of this License; and - - (b) You must cause any modified files to carry prominent notices - stating that You changed the files; and - - (c) You must retain, in the Source form of any Derivative Works - that You distribute, all copyright, patent, trademark, and - attribution notices from the Source form of the Work, - excluding those notices that do not pertain to any part of - the Derivative Works; and - - (d) If the Work includes a "NOTICE" text file as part of its - distribution, then any Derivative Works that You distribute must - include a readable copy of the attribution notices contained - within such NOTICE file, excluding those notices that do not - pertain to any part of the Derivative Works, in at least one - of the following places: within a NOTICE text file distributed - as part of the Derivative Works; within the Source form or - documentation, if provided along with the Derivative Works; or, - within a display generated by the Derivative Works, if and - wherever such third-party notices normally appear. The contents - of the NOTICE file are for informational purposes only and - do not modify the License. You may add Your own attribution - notices within Derivative Works that You distribute, alongside - or as an addendum to the NOTICE text from the Work, provided - that such additional attribution notices cannot be construed - as modifying the License. - - You may add Your own copyright statement to Your modifications and - may provide additional or different license terms and conditions - for use, reproduction, or distribution of Your modifications, or - for any such Derivative Works as a whole, provided Your use, - reproduction, and distribution of the Work otherwise complies with - the conditions stated in this License. - - 5. Submission of Contributions. Unless You explicitly state otherwise, - any Contribution intentionally submitted for inclusion in the Work - by You to the Licensor shall be under the terms and conditions of - this License, without any additional terms or conditions. - Notwithstanding the above, nothing herein shall supersede or modify - the terms of any separate license agreement you may have executed - with Licensor regarding such Contributions. - - 6. Trademarks. This License does not grant permission to use the trade - names, trademarks, service marks, or product names of the Licensor, - except as required for reasonable and customary use in describing the - origin of the Work and reproducing the content of the NOTICE file. - - 7. Disclaimer of Warranty. Unless required by applicable law or - agreed to in writing, Licensor provides the Work (and each - Contributor provides its Contributions) on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or - implied, including, without limitation, any warranties or conditions - of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A - PARTICULAR PURPOSE. You are solely responsible for determining the - appropriateness of using or redistributing the Work and assume any - risks associated with Your exercise of permissions under this License. - - 8. Limitation of Liability. In no event and under no legal theory, - whether in tort (including negligence), contract, or otherwise, - unless required by applicable law (such as deliberate and grossly - negligent acts) or agreed to in writing, shall any Contributor be - liable to You for damages, including any direct, indirect, special, - incidental, or consequential damages of any character arising as a - result of this License or out of the use or inability to use the - Work (including but not limited to damages for loss of goodwill, - work stoppage, computer failure or malfunction, or any and all - other commercial damages or losses), even if such Contributor - has been advised of the possibility of such damages. - - 9. Accepting Warranty or Additional Liability. While redistributing - the Work or Derivative Works thereof, You may choose to offer, - and charge a fee for, acceptance of support, warranty, indemnity, - or other liability obligations and/or rights consistent with this - License. However, in accepting such obligations, You may act only - on Your own behalf and on Your sole responsibility, not on behalf - of any other Contributor, and only if You agree to indemnify, - defend, and hold each Contributor harmless for any liability - incurred by, or claims asserted against, such Contributor by reason - of your accepting any such warranty or additional liability. - - END OF TERMS AND CONDITIONS - - APPENDIX: How to apply the Apache License to your work. - - To apply the Apache License to your work, attach the following - boilerplate notice, with the fields enclosed by brackets "[]" - replaced with your own identifying information. (Don't include - the brackets!) The text should be enclosed in the appropriate - comment syntax for the file format. We also recommend that a - file or class name and description of purpose be included on the - same "printed page" as the copyright notice for easier - identification within third-party archives. - - Copyright [yyyy] [name of copyright owner] - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. diff --git a/scripts/jsunit/java/lib/jetty_5.1.11/org.mortbay.jetty.jar b/scripts/jsunit/java/lib/jetty_5.1.11/org.mortbay.jetty.jar deleted file mode 100644 index 186a190ce..000000000 Binary files a/scripts/jsunit/java/lib/jetty_5.1.11/org.mortbay.jetty.jar and /dev/null differ diff --git a/scripts/jsunit/java/lib/jetty_5.1.11/start.jar b/scripts/jsunit/java/lib/jetty_5.1.11/start.jar deleted file mode 100644 index 1145d205a..000000000 Binary files a/scripts/jsunit/java/lib/jetty_5.1.11/start.jar and /dev/null differ diff --git a/scripts/jsunit/java/lib/jetty_5.1.11/stop.jar b/scripts/jsunit/java/lib/jetty_5.1.11/stop.jar deleted file mode 100644 index cce44d251..000000000 Binary files a/scripts/jsunit/java/lib/jetty_5.1.11/stop.jar and /dev/null differ diff --git a/scripts/jsunit/java/lib/junit_4.1/cpl-v10.html b/scripts/jsunit/java/lib/junit_4.1/cpl-v10.html deleted file mode 100644 index 8b2935396..000000000 --- a/scripts/jsunit/java/lib/junit_4.1/cpl-v10.html +++ /dev/null @@ -1,264 +0,0 @@ - - - - Common Public License - v 1.0 - - - - - - -

    Common Public License - v 1.0 - -

    - -

    THE ACCOMPANYING PROGRAM IS PROVIDED UNDER THE TERMS OF THIS COMMON PUBLIC - LICENSE ("AGREEMENT"). ANY USE, REPRODUCTION OR DISTRIBUTION OF THE PROGRAM CONSTITUTES RECIPIENT'S ACCEPTANCE OF - THIS AGREEMENT. - -

    - -

    1. DEFINITIONS - -

    "Contribution" means: - -

      a) in the case of the initial Contributor, the initial code and documentation distributed under this - Agreement, and
      - b) in the case of each subsequent Contributor:
    - - -
      i) changes to the Program, and
    - - -
      ii) additions to the Program;
    - - -
      where such changes and/or additions to the Program originate from and are distributed by that - particular Contributor. A Contribution 'originates' from a Contributor if it was added to the - Program by such Contributor itself or anyone acting on such Contributor's behalf. Contributions - do not include additions to the Program which: (i) are separate modules of software distributed in conjunction with - the Program under their own license agreement, and (ii) are not derivative works of the Program.
    - -

    - -

    "Contributor" means any person or entity that distributes the Program. - -

    - -

    "Licensed Patents " mean patent claims licensable by a Contributor which are necessarily infringed by - the use or sale of its Contribution alone or when combined with the Program. - -

    - -

    "Program" means the Contributions distributed in accordance with this - Agreement. - -

    - -

    "Recipient" means anyone who receives the Program under this Agreement, including all - Contributors. - -

    - -

    2. GRANT OF RIGHTS - -

      a) Subject to the terms of this Agreement, each - Contributor hereby grants Recipient a non-exclusive, worldwide, royalty-free copyright license - to reproduce, prepare derivative works of, publicly - display, publicly perform, distribute and sublicense the Contribution of such Contributor, if any, and such - derivative works, in source code and object code form.
    - - -
    - - -
      b) Subject to the terms of this Agreement, each Contributor hereby - grants Recipient a non-exclusive, - worldwide, royalty-free patent license under Licensed - Patents to make, use, sell, offer to sell, import and otherwise transfer the Contribution of such Contributor, if - any, in source code and object code form. This patent license shall apply to the combination of the Contribution and - the Program if, at the time the Contribution is added by the Contributor, such addition of the Contribution causes - such combination to be covered by the Licensed Patents. The patent license shall not apply to any other combinations - which include the Contribution. No hardware per se is licensed hereunder.
    - - -
    - - -
      c) Recipient understands that although each Contributor grants the licenses to its Contributions set - forth herein, no assurances are provided by any Contributor that the Program does not infringe the patent or other - intellectual property rights of any other entity. Each Contributor disclaims any liability to Recipient for claims - brought by any other entity based on infringement of intellectual property rights or otherwise. As a condition to - exercising the rights and licenses granted hereunder, each Recipient hereby assumes sole responsibility to secure - any other intellectual property rights needed, if any. For example, if a third party patent license is required to - allow Recipient to distribute the Program, it is Recipient's responsibility to acquire that license before - distributing the Program.
    - - -
    - - -
      d) Each Contributor represents that to its knowledge it has sufficient copyright rights in its - Contribution, if any, to grant the copyright license set forth in this Agreement.
    - - -
    - -

    3. REQUIREMENTS - -

    A Contributor may choose to distribute the Program in object code form under its own license - agreement, provided that: - -

      a) it complies with the terms and conditions of this Agreement; and
    - - -
      b) its license agreement:
    - - -
      i) effectively disclaims on behalf of all Contributors all warranties and - conditions, express and implied, including warranties or conditions of title and non-infringement, and implied - warranties or conditions of merchantability and fitness for a particular purpose;
    - - -
      ii) effectively excludes on behalf of all Contributors all liability for damages, including direct, - indirect, special, incidental and consequential damages, such as lost profits;
    - - -
      iii) states that any provisions which differ from this Agreement are offered by - that Contributor alone and not by any other party; and
    - - -
      iv) states that source code for the Program is available from such Contributor, and informs licensees - how to obtain it in a reasonable manner on or through a medium customarily used for software - exchange.
    - - -
    - -

    When the Program is made available in source code form: - -

      a) it must be made available under this Agreement; and
    - - -
      b) a copy of this Agreement must be included with each copy of the Program.
    - -

    - -

    Contributors may not remove or alter any - copyright notices contained within the Program. - -

    - -

    Each Contributor must identify itself as the originator of its Contribution, if any, in a manner that - reasonably allows subsequent Recipients to identify the originator of the Contribution. - -

    - -

    4. COMMERCIAL DISTRIBUTION - -

    Commercial distributors of software may accept certain responsibilities with respect to end users, - business partners and the like. While this license is intended to facilitate the commercial use of the Program, the - Contributor who includes the Program in a commercial product offering should do so in a manner which does not create - potential liability for other Contributors. Therefore, if a Contributor includes the Program in a commercial product - offering, such Contributor ("Commercial Contributor") hereby agrees to defend and indemnify every other Contributor - ("Indemnified Contributor") against any losses, damages and costs (collectively "Losses") arising from claims, - lawsuits and other legal actions brought by a third party against the Indemnified Contributor to the extent caused - by the acts or omissions of such Commercial Contributor in connection with its distribution of the Program in a - commercial product offering. The obligations in this section do not apply to any claims or Losses relating to any - actual or alleged intellectual property infringement. In order to qualify, an Indemnified Contributor must: a) - promptly notify the Commercial Contributor in writing of such claim, and b) allow the Commercial Contributor to - control, and cooperate with the Commercial Contributor in, the defense and any related settlement negotiations. The - Indemnified Contributor may participate in any such claim at its own expense. - -

    - -

    For example, a Contributor might include the Program in a commercial product offering, Product X. That - Contributor is then a Commercial Contributor. If that Commercial Contributor then makes performance claims, or - offers warranties related to Product X, those performance claims and warranties are such Commercial Contributor's - responsibility alone. Under this section, the Commercial Contributor would have to defend claims against the other - Contributors related to those performance claims and warranties, and if a court requires any other Contributor to - pay any damages as a result, the Commercial Contributor must pay those damages. - -

    - -

    5. NO WARRANTY - -

    EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, THE PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT - WARRANTIES OR CONDITIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED INCLUDING, WITHOUT LIMITATION, ANY WARRANTIES OR - CONDITIONS OF TITLE, NON-INFRINGEMENT, MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Each Recipient is - solely responsible for determining the appropriateness of using and distributing the - Program and assumes all risks associated with its exercise of rights under this - Agreement, including but not limited to the risks and costs of program errors, compliance with - applicable laws, damage to or loss of data, programs or equipment, and unavailability or - interruption of operations. - -

    - -

    6. DISCLAIMER OF LIABILITY - -

    EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, NEITHER RECIPIENT NOR ANY - CONTRIBUTORS SHALL HAVE ANY LIABILITY FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - DAMAGES (INCLUDING WITHOUT LIMITATION LOST PROFITS), HOWEVER CAUSED AND - ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - ARISING IN ANY WAY OUT OF THE USE OR DISTRIBUTION OF THE PROGRAM OR THE EXERCISE OF ANY RIGHTS GRANTED HEREUNDER, - EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. - -

    - -

    7. GENERAL - -

    If any provision of this Agreement is invalid or unenforceable under applicable - law, it shall not affect the validity or enforceability of the remainder of the terms of this Agreement, and without - further action by the parties hereto, such provision shall be reformed to the minimum extent necessary to make such - provision valid and enforceable. - -

    - -

    If Recipient institutes patent litigation against a Contributor with respect to a patent applicable to - software (including a cross-claim or counterclaim in a lawsuit), then any patent licenses granted by that - Contributor to such Recipient under this Agreement shall terminate as of the date such litigation is filed. In - addition, if Recipient institutes patent litigation against any entity (including a cross-claim or counterclaim in a - lawsuit) alleging that the Program itself (excluding combinations of the Program with other software or hardware) - infringes such Recipient's patent(s), then such Recipient's rights granted under Section 2(b) shall terminate as of - the date such litigation is filed. - -

    - -

    All Recipient's rights under this Agreement shall terminate if it fails to comply with any of the - material terms or conditions of this Agreement and does not cure such failure in a reasonable period of time after - becoming aware of such noncompliance. If all Recipient's rights under this Agreement terminate, Recipient agrees to - cease use and distribution of the Program as soon as reasonably practicable. However, Recipient's obligations under - this Agreement and any licenses granted by Recipient relating to the Program shall continue and - survive. - -

    - -

    Everyone is permitted to copy and distribute copies of this Agreement, but in - order to avoid inconsistency the Agreement is copyrighted and may only be modified in the following manner. The - Agreement Steward reserves the right to publish new versions (including revisions) of this - Agreement from time to time. No one other than the Agreement Steward has the right to modify - this Agreement. IBM is the initial Agreement Steward. IBM may assign the responsibility to serve as the Agreement - Steward to a suitable separate entity. Each new version of the Agreement will be given a - distinguishing version number. The Program (including Contributions) may always be distributed subject to the - version of the Agreement under which it was received. In addition, after a new version of the Agreement is - published, Contributor may elect to distribute the Program (including its Contributions) under the - new version. Except as expressly stated in Sections 2(a) and 2(b) above, - Recipient receives no rights or licenses to the intellectual property of any Contributor under this Agreement, - whether expressly, by implication, estoppel or - otherwise. All rights in the Program not expressly granted under this - Agreement are reserved. - -

    - -

    This Agreement is governed by the laws of the State of New York and the intellectual property laws of - the United States of America. No party to this Agreement will bring a legal action under this Agreement more than - one year after the cause of action arose. Each party waives its rights to a jury trial in any resulting - litigation. - -

    - -

    - - - - \ No newline at end of file diff --git a/scripts/jsunit/java/lib/junit_4.1/junit.jar b/scripts/jsunit/java/lib/junit_4.1/junit.jar deleted file mode 100644 index 2c46d67a2..000000000 Binary files a/scripts/jsunit/java/lib/junit_4.1/junit.jar and /dev/null differ diff --git a/scripts/jsunit/java/lib/nekohtml_0.9.5/LICENSE b/scripts/jsunit/java/lib/nekohtml_0.9.5/LICENSE deleted file mode 100644 index 05c4641cc..000000000 --- a/scripts/jsunit/java/lib/nekohtml_0.9.5/LICENSE +++ /dev/null @@ -1,47 +0,0 @@ -The CyberNeko Software License, Version 1.0 - - -(C) Copyright 2002-2005, Andy Clark. All rights reserved. - -Redistribution and use in source and binary forms, with or without -modification, are permitted provided that the following conditions -are met: - -1. Redistributions of source code must retain the above copyright - notice, this list of conditions and the following disclaimer. - -2. Redistributions in binary form must reproduce the above copyright - notice, this list of conditions and the following disclaimer in - the documentation and/or other materials provided with the - distribution. - -3. The end-user documentation included with the redistribution, - if any, must include the following acknowledgment: - "This product includes software developed by Andy Clark." - Alternately, this acknowledgment may appear in the software itself, - if and wherever such third-party acknowledgments normally appear. - -4. The names "CyberNeko" and "NekoHTML" must not be used to endorse - or promote products derived from this software without prior - written permission. For written permission, please contact - andyc@cyberneko.net. - -5. Products derived from this software may not be called "CyberNeko", - nor may "CyberNeko" appear in their name, without prior written - permission of the author. - -THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED -WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES -OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE -DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR OTHER CONTRIBUTORS -BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, -OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT -OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR -BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, -WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE -OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, -EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -==================================================================== - -This license is based on the Apache Software License, version 1.1. \ No newline at end of file diff --git a/scripts/jsunit/java/lib/nekohtml_0.9.5/LICENSE_apache b/scripts/jsunit/java/lib/nekohtml_0.9.5/LICENSE_apache deleted file mode 100644 index 28282b456..000000000 --- a/scripts/jsunit/java/lib/nekohtml_0.9.5/LICENSE_apache +++ /dev/null @@ -1,56 +0,0 @@ -/* - * The Apache Software License, Version 1.1 - * - * - * Copyright (c) 1999-2002 The Apache Software Foundation. All rights - * reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. The end-user documentation included with the redistribution, - * if any, must include the following acknowledgment: - * "This product includes software developed by the - * Apache Software Foundation (http://www.apache.org/)." - * Alternately, this acknowledgment may appear in the software itself, - * if and wherever such third-party acknowledgments normally appear. - * - * 4. The names "Xerces" and "Apache Software Foundation" must - * not be used to endorse or promote products derived from this - * software without prior written permission. For written - * permission, please contact apache@apache.org. - * - * 5. Products derived from this software may not be called "Apache", - * nor may "Apache" appear in their name, without prior written - * permission of the Apache Software Foundation. - * - * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED - * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES - * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT - * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF - * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, - * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT - * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * ==================================================================== - * - * This software consists of voluntary contributions made by many - * individuals on behalf of the Apache Software Foundation and was - * originally based on software copyright (c) 1999, International - * Business Machines, Inc., http://www.ibm.com. For more - * information on the Apache Software Foundation, please see - * . - */ diff --git a/scripts/jsunit/java/lib/nekohtml_0.9.5/nekohtml.jar b/scripts/jsunit/java/lib/nekohtml_0.9.5/nekohtml.jar deleted file mode 100644 index ebd5b4b2a..000000000 Binary files a/scripts/jsunit/java/lib/nekohtml_0.9.5/nekohtml.jar and /dev/null differ diff --git a/scripts/jsunit/java/lib/webwork_2.2.2/license b/scripts/jsunit/java/lib/webwork_2.2.2/license deleted file mode 100644 index 75c42be6d..000000000 --- a/scripts/jsunit/java/lib/webwork_2.2.2/license +++ /dev/null @@ -1,50 +0,0 @@ -/* ==================================================================== - * The OpenSymphony Software License, Version 1.1 - * - * (this license is derived and fully compatible with the Apache Software - * License - see http://www.apache.org/LICENSE.txt) - * - * Copyright (c) 2001-2004 The OpenSymphony Group. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. The end-user documentation included with the redistribution, - * if any, must include the following acknowledgment: - * "This product includes software developed by the - * OpenSymphony Group (http://www.opensymphony.com/)." - * Alternately, this acknowledgment may appear in the software itself, - * if and wherever such third-party acknowledgments normally appear. - * - * 4. The names "OpenSymphony" and "The OpenSymphony Group" - * must not be used to endorse or promote products derived from this - * software without prior written permission. For written - * permission, please contact license@opensymphony.com . - * - * 5. Products derived from this software may not be called "OpenSymphony" - * or "WebWork", nor may "OpenSymphony" or "WebWork" appear in their - * name, without prior written permission of the OpenSymphony Group. - * - * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED - * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES - * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT - * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF - * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, - * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT - * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * ==================================================================== - */ \ No newline at end of file diff --git a/scripts/jsunit/java/lib/webwork_2.2.2/oscore.jar b/scripts/jsunit/java/lib/webwork_2.2.2/oscore.jar deleted file mode 100644 index 48129bc16..000000000 Binary files a/scripts/jsunit/java/lib/webwork_2.2.2/oscore.jar and /dev/null differ diff --git a/scripts/jsunit/java/lib/webwork_2.2.2/rife-continuations.jar b/scripts/jsunit/java/lib/webwork_2.2.2/rife-continuations.jar deleted file mode 100644 index d30447cff..000000000 Binary files a/scripts/jsunit/java/lib/webwork_2.2.2/rife-continuations.jar and /dev/null differ diff --git a/scripts/jsunit/java/lib/webwork_2.2.2/webwork-2.2.2.jar b/scripts/jsunit/java/lib/webwork_2.2.2/webwork-2.2.2.jar deleted file mode 100644 index 3933e147b..000000000 Binary files a/scripts/jsunit/java/lib/webwork_2.2.2/webwork-2.2.2.jar and /dev/null differ diff --git a/scripts/jsunit/java/lib/xerces_2.8.0/LICENSE b/scripts/jsunit/java/lib/xerces_2.8.0/LICENSE deleted file mode 100644 index d64569567..000000000 --- a/scripts/jsunit/java/lib/xerces_2.8.0/LICENSE +++ /dev/null @@ -1,202 +0,0 @@ - - Apache License - Version 2.0, January 2004 - http://www.apache.org/licenses/ - - TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION - - 1. Definitions. - - "License" shall mean the terms and conditions for use, reproduction, - and distribution as defined by Sections 1 through 9 of this document. - - "Licensor" shall mean the copyright owner or entity authorized by - the copyright owner that is granting the License. - - "Legal Entity" shall mean the union of the acting entity and all - other entities that control, are controlled by, or are under common - control with that entity. For the purposes of this definition, - "control" means (i) the power, direct or indirect, to cause the - direction or management of such entity, whether by contract or - otherwise, or (ii) ownership of fifty percent (50%) or more of the - outstanding shares, or (iii) beneficial ownership of such entity. - - "You" (or "Your") shall mean an individual or Legal Entity - exercising permissions granted by this License. - - "Source" form shall mean the preferred form for making modifications, - including but not limited to software source code, documentation - source, and configuration files. - - "Object" form shall mean any form resulting from mechanical - transformation or translation of a Source form, including but - not limited to compiled object code, generated documentation, - and conversions to other media types. - - "Work" shall mean the work of authorship, whether in Source or - Object form, made available under the License, as indicated by a - copyright notice that is included in or attached to the work - (an example is provided in the Appendix below). - - "Derivative Works" shall mean any work, whether in Source or Object - form, that is based on (or derived from) the Work and for which the - editorial revisions, annotations, elaborations, or other modifications - represent, as a whole, an original work of authorship. For the purposes - of this License, Derivative Works shall not include works that remain - separable from, or merely link (or bind by name) to the interfaces of, - the Work and Derivative Works thereof. - - "Contribution" shall mean any work of authorship, including - the original version of the Work and any modifications or additions - to that Work or Derivative Works thereof, that is intentionally - submitted to Licensor for inclusion in the Work by the copyright owner - or by an individual or Legal Entity authorized to submit on behalf of - the copyright owner. For the purposes of this definition, "submitted" - means any form of electronic, verbal, or written communication sent - to the Licensor or its representatives, including but not limited to - communication on electronic mailing lists, source code control systems, - and issue tracking systems that are managed by, or on behalf of, the - Licensor for the purpose of discussing and improving the Work, but - excluding communication that is conspicuously marked or otherwise - designated in writing by the copyright owner as "Not a Contribution." - - "Contributor" shall mean Licensor and any individual or Legal Entity - on behalf of whom a Contribution has been received by Licensor and - subsequently incorporated within the Work. - - 2. Grant of Copyright License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - copyright license to reproduce, prepare Derivative Works of, - publicly display, publicly perform, sublicense, and distribute the - Work and such Derivative Works in Source or Object form. - - 3. Grant of Patent License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - (except as stated in this section) patent license to make, have made, - use, offer to sell, sell, import, and otherwise transfer the Work, - where such license applies only to those patent claims licensable - by such Contributor that are necessarily infringed by their - Contribution(s) alone or by combination of their Contribution(s) - with the Work to which such Contribution(s) was submitted. If You - institute patent litigation against any entity (including a - cross-claim or counterclaim in a lawsuit) alleging that the Work - or a Contribution incorporated within the Work constitutes direct - or contributory patent infringement, then any patent licenses - granted to You under this License for that Work shall terminate - as of the date such litigation is filed. - - 4. Redistribution. You may reproduce and distribute copies of the - Work or Derivative Works thereof in any medium, with or without - modifications, and in Source or Object form, provided that You - meet the following conditions: - - (a) You must give any other recipients of the Work or - Derivative Works a copy of this License; and - - (b) You must cause any modified files to carry prominent notices - stating that You changed the files; and - - (c) You must retain, in the Source form of any Derivative Works - that You distribute, all copyright, patent, trademark, and - attribution notices from the Source form of the Work, - excluding those notices that do not pertain to any part of - the Derivative Works; and - - (d) If the Work includes a "NOTICE" text file as part of its - distribution, then any Derivative Works that You distribute must - include a readable copy of the attribution notices contained - within such NOTICE file, excluding those notices that do not - pertain to any part of the Derivative Works, in at least one - of the following places: within a NOTICE text file distributed - as part of the Derivative Works; within the Source form or - documentation, if provided along with the Derivative Works; or, - within a display generated by the Derivative Works, if and - wherever such third-party notices normally appear. The contents - of the NOTICE file are for informational purposes only and - do not modify the License. You may add Your own attribution - notices within Derivative Works that You distribute, alongside - or as an addendum to the NOTICE text from the Work, provided - that such additional attribution notices cannot be construed - as modifying the License. - - You may add Your own copyright statement to Your modifications and - may provide additional or different license terms and conditions - for use, reproduction, or distribution of Your modifications, or - for any such Derivative Works as a whole, provided Your use, - reproduction, and distribution of the Work otherwise complies with - the conditions stated in this License. - - 5. Submission of Contributions. Unless You explicitly state otherwise, - any Contribution intentionally submitted for inclusion in the Work - by You to the Licensor shall be under the terms and conditions of - this License, without any additional terms or conditions. - Notwithstanding the above, nothing herein shall supersede or modify - the terms of any separate license agreement you may have executed - with Licensor regarding such Contributions. - - 6. Trademarks. This License does not grant permission to use the trade - names, trademarks, service marks, or product names of the Licensor, - except as required for reasonable and customary use in describing the - origin of the Work and reproducing the content of the NOTICE file. - - 7. Disclaimer of Warranty. Unless required by applicable law or - agreed to in writing, Licensor provides the Work (and each - Contributor provides its Contributions) on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or - implied, including, without limitation, any warranties or conditions - of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A - PARTICULAR PURPOSE. You are solely responsible for determining the - appropriateness of using or redistributing the Work and assume any - risks associated with Your exercise of permissions under this License. - - 8. Limitation of Liability. In no event and under no legal theory, - whether in tort (including negligence), contract, or otherwise, - unless required by applicable law (such as deliberate and grossly - negligent acts) or agreed to in writing, shall any Contributor be - liable to You for damages, including any direct, indirect, special, - incidental, or consequential damages of any character arising as a - result of this License or out of the use or inability to use the - Work (including but not limited to damages for loss of goodwill, - work stoppage, computer failure or malfunction, or any and all - other commercial damages or losses), even if such Contributor - has been advised of the possibility of such damages. - - 9. Accepting Warranty or Additional Liability. While redistributing - the Work or Derivative Works thereof, You may choose to offer, - and charge a fee for, acceptance of support, warranty, indemnity, - or other liability obligations and/or rights consistent with this - License. However, in accepting such obligations, You may act only - on Your own behalf and on Your sole responsibility, not on behalf - of any other Contributor, and only if You agree to indemnify, - defend, and hold each Contributor harmless for any liability - incurred by, or claims asserted against, such Contributor by reason - of your accepting any such warranty or additional liability. - - END OF TERMS AND CONDITIONS - - APPENDIX: How to apply the Apache License to your work. - - To apply the Apache License to your work, attach the following - boilerplate notice, with the fields enclosed by brackets "[]" - replaced with your own identifying information. (Don't include - the brackets!) The text should be enclosed in the appropriate - comment syntax for the file format. We also recommend that a - file or class name and description of purpose be included on the - same "printed page" as the copyright notice for easier - identification within third-party archives. - - Copyright [yyyy] [name of copyright owner] - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. diff --git a/scripts/jsunit/java/lib/xerces_2.8.0/LICENSE-SAX.html b/scripts/jsunit/java/lib/xerces_2.8.0/LICENSE-SAX.html deleted file mode 100644 index bd202f207..000000000 --- a/scripts/jsunit/java/lib/xerces_2.8.0/LICENSE-SAX.html +++ /dev/null @@ -1,18 +0,0 @@ - -SAX LICENSE - -

    This license applies to all interfaces and classes in the - org/xml/sax hierarchy. -

    - -

    -

    - This module, both source code and documentation, is in the - Public Domain, and comes with NO WARRANTY. - See http://www.saxproject.org - for further information. -
    -

    - - - diff --git a/scripts/jsunit/java/lib/xerces_2.8.0/LICENSE.DOM-documentation.html b/scripts/jsunit/java/lib/xerces_2.8.0/LICENSE.DOM-documentation.html deleted file mode 100644 index 8dbfa66ec..000000000 --- a/scripts/jsunit/java/lib/xerces_2.8.0/LICENSE.DOM-documentation.html +++ /dev/null @@ -1,91 +0,0 @@ - - - -W3C Document License - - - - - -

    W3C® DOCUMENT LICENSE

    - -

    http://www.w3.org/Consortium/Legal/2002/copyright-documents-20021231 -

    - -

    Public documents on the W3C site are provided by the copyright holders under - the following license. By using and/or copying this document, or the W3C - document from which this statement is linked, you (the licensee) agree that you - have read, understood, and will comply with the following terms and - conditions:

    - -

    Permission to copy, and distribute the contents of this document, or the W3C - document from which this statement is linked, in any medium for any purpose and - without fee or royalty is hereby granted, provided that you include the - following on ALL copies of the document, or portions thereof, that you - use:

    -
      -
    1. A link or URL to the original W3C document. -
    2. The pre-existing copyright notice of the original author, or if it doesn't - exist, a notice (hypertext is preferred, but a textual representation is - permitted) of the form: "Copyright © [$date-of-document] World Wide Web Consortium, (Massachusetts Institute of Technology, European Research Consortium for Informatics and - Mathematics, Keio University). All - Rights Reserved. http://www.w3.org/Consortium/Legal/2002/copyright-documents-20021231" - -
    3. If it exists, the STATUS of the W3C document.
    4. -
    -

    When space permits, inclusion of the full text of this NOTICE should - be provided. We request that authorship attribution be provided in any software, - documents, or other items or products that you create pursuant to the - implementation of the contents of this document, or any portion thereof.

    - -

    No right to create modifications or derivatives of W3C documents is granted - pursuant to this license. However, if additional requirements (documented in the - Copyright FAQ) are - satisfied, the right to create modifications or derivatives is sometimes - granted by the W3C to individuals complying with those requirements.

    - -

    THIS DOCUMENT IS PROVIDED "AS IS," AND COPYRIGHT HOLDERS MAKE NO - REPRESENTATIONS OR WARRANTIES, EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED - TO, WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, - NON-INFRINGEMENT, OR TITLE; THAT THE CONTENTS OF THE DOCUMENT ARE SUITABLE FOR - ANY PURPOSE; NOR THAT THE IMPLEMENTATION OF SUCH CONTENTS WILL NOT INFRINGE ANY - THIRD PARTY PATENTS, COPYRIGHTS, TRADEMARKS OR OTHER RIGHTS.

    - -

    COPYRIGHT HOLDERS WILL NOT BE LIABLE FOR ANY DIRECT, INDIRECT, SPECIAL OR - CONSEQUENTIAL DAMAGES ARISING OUT OF ANY USE OF THE DOCUMENT OR THE PERFORMANCE - OR IMPLEMENTATION OF THE CONTENTS THEREOF.

    - -

    The name and trademarks of copyright holders may NOT be used in advertising - or publicity pertaining to this document or its contents without specific, - written prior permission. Title to copyright in this document will at all times - remain with copyright holders.

    - -

    - -

    ----------------------------------------------------------------------------

    - -

    This formulation of W3C's notice and license became active on December 31 - 2002. This version removes the copyright ownership notice such that this license - can be used with materials other than those owned by the W3C, moves information - on style sheets, DTDs, and schemas to the Copyright FAQ, reflects - that ERCIM is now a host of the W3C, includes references to this specific dated - version of the license, and removes the ambiguous grant of "use". See the older - formulation for the policy prior to this date. Please see our Copyright FAQ for common - questions about using materials from our site, such as the translating or - annotating specifications. Other questions about this notice can be directed to - site-policy@w3.org.

    - -

    -
    Joseph Reagle <mailto:site-policy@w3.org
    -

    Last revised by Reagle $Date: 2004-04-06 13:20:26 -0400 (Tue, 06 Apr 2004) $

    - diff --git a/scripts/jsunit/java/lib/xerces_2.8.0/LICENSE.DOM-software.html b/scripts/jsunit/java/lib/xerces_2.8.0/LICENSE.DOM-software.html deleted file mode 100644 index d141a4f3d..000000000 --- a/scripts/jsunit/java/lib/xerces_2.8.0/LICENSE.DOM-software.html +++ /dev/null @@ -1,81 +0,0 @@ - - - -W3C Software License - - - - - -

    W3C® SOFTWARE NOTICE AND LICENSE

    - -

    http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231 -

    - -

    This work (and included software, documentation such as READMEs, or other - related items) is being provided by the copyright holders under the following - license. By obtaining, using and/or copying this work, you (the licensee) agree - that you have read, understood, and will comply with the following terms and - conditions.

    - -

    Permission to copy, modify, and distribute this software and its - documentation, with or without modification, for any purpose and without - fee or royalty is hereby granted, provided that you include the following on ALL - copies of the software and documentation or portions thereof, including - modifications:

    -
      -
    1. The full text of this NOTICE in a location viewable to users of the - redistributed or derivative work. -
    2. Any pre-existing intellectual property disclaimers, notices, or terms and - conditions. If none exist, the W3C - Software Short Notice should be included (hypertext is preferred, text is - permitted) within the body of any redistributed or derivative code. -
    3. Notice of any changes or modifications to the files, including the date - changes were made. (We recommend you provide URIs to the location from which - the code is derived.) -
    4. -
    -

    THIS SOFTWARE AND DOCUMENTATION IS PROVIDED "AS IS," AND COPYRIGHT HOLDERS - MAKE NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT - LIMITED TO, WARRANTIES OF MERCHANTABILITY OR FITNESS FOR ANY PARTICULAR PURPOSE - OR THAT THE USE OF THE SOFTWARE OR DOCUMENTATION WILL NOT INFRINGE ANY THIRD - PARTY PATENTS, COPYRIGHTS, TRADEMARKS OR OTHER RIGHTS.

    - -

    COPYRIGHT HOLDERS WILL NOT BE LIABLE FOR ANY DIRECT, INDIRECT, SPECIAL OR - CONSEQUENTIAL DAMAGES ARISING OUT OF ANY USE OF THE SOFTWARE OR - DOCUMENTATION.

    - -

    The name and trademarks of copyright holders may NOT be used in advertising - or publicity pertaining to the software without specific, written prior - permission. Title to copyright in this software and any associated documentation - will at all times remain with copyright holders.

    - -

    - -

    ____________________________________

    - -

    This formulation of W3C's notice and license became active on December 31 - 2002. This version removes the copyright ownership notice such that this license - can be used with materials other than those owned by the W3C, reflects that - ERCIM is now a host of the W3C, includes references to this specific dated - version of the license, and removes the ambiguous grant of "use". Otherwise, - this version is the same as the previous - version and is written so as to preserve the Free - Software Foundation's assessment of GPL compatibility and OSI's certification under - the Open Source - Definition. Please see our Copyright FAQ for common - questions about using materials from our site, including specific terms and - conditions for packages like libwww, Amaya, and Jigsaw. Other questions about - this notice can be directed to site-policy@w3.org.
     

    -
    Joseph Reagle <mailto:site-policy@w3.org
    -

    Last revised by Reagle $Date: 2004-04-06 13:20:26 -0400 (Tue, 06 Apr 2004) $

    - diff --git a/scripts/jsunit/java/lib/xerces_2.8.0/LICENSE.resolver.txt b/scripts/jsunit/java/lib/xerces_2.8.0/LICENSE.resolver.txt deleted file mode 100644 index b9f603162..000000000 --- a/scripts/jsunit/java/lib/xerces_2.8.0/LICENSE.resolver.txt +++ /dev/null @@ -1,53 +0,0 @@ -/* ==================================================================== - * The Apache Software License, Version 1.1 - * - * Copyright (c) 2001-2003 The Apache Software Foundation. All rights - * reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. The end-user documentation included with the redistribution, - * if any, must include the following acknowledgment: - * "This product includes software developed by the - * Apache Software Foundation (http://www.apache.org/)." - * Alternately, this acknowledgment may appear in the software itself, - * if and wherever such third-party acknowledgments normally appear. - * - * 4. The names "Apache" and "Apache Software Foundation" must - * not be used to endorse or promote products derived from this - * software without prior written permission. For written - * permission, please contact apache@apache.org. - * - * 5. Products derived from this software may not be called "Apache", - * nor may "Apache" appear in their name, without prior written - * permission of the Apache Software Foundation. - * - * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED - * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES - * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT - * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF - * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, - * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT - * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * ==================================================================== - * - * This software consists of voluntary contributions made by many - * individuals on behalf of the Apache Software Foundation. For more - * information on the Apache Software Foundation, please see - * . - */ diff --git a/scripts/jsunit/java/lib/xerces_2.8.0/xercesImpl.jar b/scripts/jsunit/java/lib/xerces_2.8.0/xercesImpl.jar deleted file mode 100644 index 33990e8a1..000000000 Binary files a/scripts/jsunit/java/lib/xerces_2.8.0/xercesImpl.jar and /dev/null differ diff --git a/scripts/jsunit/java/lib/xwork_1.1/license b/scripts/jsunit/java/lib/xwork_1.1/license deleted file mode 100644 index ccae16959..000000000 --- a/scripts/jsunit/java/lib/xwork_1.1/license +++ /dev/null @@ -1,50 +0,0 @@ -/* ==================================================================== - * The OpenSymphony Software License, Version 1.1 - * - * (this license is derived and fully compatible with the Apache Software - * License - see http://www.apache.org/LICENSE.txt) - * - * Copyright (c) 2001-2004 The OpenSymphony Group. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. The end-user documentation included with the redistribution, - * if any, must include the following acknowledgment: - * "This product includes software developed by the - * OpenSymphony Group (http://www.opensymphony.com/)." - * Alternately, this acknowledgment may appear in the software itself, - * if and wherever such third-party acknowledgments normally appear. - * - * 4. The names "OpenSymphony" and "The OpenSymphony Group" - * must not be used to endorse or promote products derived from this - * software without prior written permission. For written - * permission, please contact license@opensymphony.com . - * - * 5. Products derived from this software may not be called "OpenSymphony" - * or "XWork", nor may "OpenSymphony" or "XWork" appear in their - * name, without prior written permission of the OpenSymphony Group. - * - * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED - * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES - * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT - * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF - * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, - * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT - * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * ==================================================================== - */ \ No newline at end of file diff --git a/scripts/jsunit/java/lib/xwork_1.1/ognl.jar b/scripts/jsunit/java/lib/xwork_1.1/ognl.jar deleted file mode 100644 index cb9a66672..000000000 Binary files a/scripts/jsunit/java/lib/xwork_1.1/ognl.jar and /dev/null differ diff --git a/scripts/jsunit/java/lib/xwork_1.1/xwork-1.1.jar b/scripts/jsunit/java/lib/xwork_1.1/xwork-1.1.jar deleted file mode 100644 index a58e7a239..000000000 Binary files a/scripts/jsunit/java/lib/xwork_1.1/xwork-1.1.jar and /dev/null differ diff --git a/scripts/jsunit/lib/jsUnitAjax.js b/scripts/jsunit/lib/jsUnitAjax.js deleted file mode 100644 index a50bde273..000000000 --- a/scripts/jsunit/lib/jsUnitAjax.js +++ /dev/null @@ -1,58 +0,0 @@ -/** - * @fileoverview - * jsUnitAjax.js contains a mock implementation of XmlHttpRequest that can be used for testing the sending and receiving - * AJAX requests and responses. - */ - -/** - * @class - * A MockXmlHttpRequest implements the XmlHttpRequest API. It is intended for use when testing code that deals with AJAX. - */ -function MockXmlHttpRequest() { - /** - * stores the headers set on the request - */ - this.requestHeaderNamesToValues = {}; -} - -/** - * Implements open by storing all the arguments - * @param method - * @param url - * @param isAsync - * @param userName - * @param password - */ -MockXmlHttpRequest.prototype.open = function(method, url, isAsync, userName, password) { - this.method = method; - this.url = url; - this.isAsync = isAsync; - this.userName = userName; - this.password = password; -} - -/** - * Implements send by noting that send was called and storing the data given - * @param data - */ -MockXmlHttpRequest.prototype.send = function(data) { - this.sendCalled = true; - this.data = data; -} - -/** - * Implements setRequestHeader by storing each header and its value in a hash - * @param label - * @param value - */ -MockXmlHttpRequest.prototype.setRequestHeader = function(label, value) { - this.requestHeaderNamesToValues[label] = value; -} - -/** - * Useful for testing. You can implement createXmlHttpRequest as a global function in your production code by returning - * a real request; here, when testing, it returns a MockXmlHttpRequest - */ -function createXmlHttpRequest() { - return new MockXmlHttpRequest(); -} \ No newline at end of file diff --git a/scripts/jsunit/lib/jsUnitMockTimeout.js b/scripts/jsunit/lib/jsUnitMockTimeout.js deleted file mode 100644 index 4e6586512..000000000 --- a/scripts/jsunit/lib/jsUnitMockTimeout.js +++ /dev/null @@ -1,141 +0,0 @@ -/** - * @fileoverview - * jsUnitMockTimeout.js changes the behavior of setTimeout, clearTimeout, setInterval and clearInterval to provide a - * powerful way of testing callbacks. Instead of setting up timed callbacks, the callbacks and the time to their - * execution are stored on a class called Clock. When the Clock is told to "advance time", the appropriate callbacks - * are executed. In this way, real time is taken out of the picture and the test author has control. - * - * Contributed by Nathan Wilmes of Pivotal Labs, http://www.pivotallabs.com - */ - -/** - * @class - * Clock stores callbacks and executes them when it is told to simulate the advancing of time - */ -function Clock() { } -/** - * The number of timeouts executed - */ -Clock.timeoutsMade = 0; -/** - * Hash of milliseconds to scheduled functions - */ -Clock.scheduledFunctions = {}; -/** - * The current milliseconds - */ -Clock.nowMillis = 0; - -/** - * Resets the clock - clears the scheduledFunctions, the current milliseconds, and the timeouts made count - */ -Clock.reset = function() { - Clock.scheduledFunctions = {}; - Clock.nowMillis = 0; - Clock.timeoutsMade = 0; -} - -/** - * Simulate the advancing of time. Any functions scheduled in the given interval will be executed - * @param millis the number of milliseconds by which to advance time - */ -Clock.tick = function(millis) { - var oldMillis = Clock.nowMillis; - var newMillis = oldMillis + millis; - Clock._runFunctionsWithinRange(oldMillis, newMillis); - Clock.nowMillis = newMillis; -}; - -/** - * @private - * @param oldMillis - * @param nowMillis - */ -Clock._runFunctionsWithinRange = function(oldMillis, nowMillis) { - var scheduledFunc; - var funcsToRun = []; - for (var timeoutKey in Clock.scheduledFunctions) { - scheduledFunc = Clock.scheduledFunctions[timeoutKey]; - if (scheduledFunc != undefined && - scheduledFunc.runAtMillis >= oldMillis && - scheduledFunc.runAtMillis <= nowMillis) { - funcsToRun.push(scheduledFunc); - Clock.scheduledFunctions[timeoutKey] = undefined; - } - } - - if (funcsToRun.length > 0) { - funcsToRun.sort(function(a, b) { - return a.runAtMillis - b.runAtMillis; - }); - for (var i = 0; i < funcsToRun.length; ++i) { - try { - Clock.nowMillis = funcsToRun[i].runAtMillis; - funcsToRun[i].funcToCall(); - if (funcsToRun[i].recurring) { - Clock.scheduleFunction(funcsToRun[i].timeoutKey, - funcsToRun[i].funcToCall, - funcsToRun[i].millis, - true); - } - } catch(e) { - } - } - Clock._runFunctionsWithinRange(oldMillis, nowMillis); - } -} - -/** - * Schedules a function to be executed at the given number of milliseconds from now - * @param timeoutKey - the ID of the callback - * @param funcToCall - the function to call - * @param millis - the number of milliseconds before the callback - * @param recurring - whether the callback recurs - if true, then the callback will be re-registered after it executes - */ -Clock.scheduleFunction = function(timeoutKey, funcToCall, millis, recurring) { - Clock.scheduledFunctions[timeoutKey] = { - runAtMillis: Clock.nowMillis + millis, - funcToCall: funcToCall, - recurring: recurring, - timeoutKey: timeoutKey, - millis: millis - }; -}; - -/** - * Mocks out setTimeout by registering the callback with Clock - * @param funcToCall - * @param millis - * @return the ID of the timeout, which is the index of the scheduledFunction in Clock's list of scheduledFunctions - */ -function setTimeout(funcToCall, millis) { - Clock.timeoutsMade = Clock.timeoutsMade + 1; - Clock.scheduleFunction(Clock.timeoutsMade, funcToCall, millis, false); - return Clock.timeoutsMade; -} - -/** - * Mocks out setInterval by registering the callback with Clock - * @param funcToCall - * @param millis - * @return the ID of the timeout, which is the index of the scheduledFunction in Clock's list of scheduledFunctions - */ -function setInterval(funcToCall, millis) { - Clock.timeoutsMade = Clock.timeoutsMade + 1; - Clock.scheduleFunction(Clock.timeoutsMade, funcToCall, millis, true); - return Clock.timeoutsMade; -} - -/** - * Mocks out clearTimeout by clearing Clock's scheduledFunction for the given ID - */ -function clearTimeout(timeoutKey) { - Clock.scheduledFunctions[timeoutKey] = undefined; -} - -/** - * Mocks out clearInterval by clearing Clock's scheduledFunction for the given ID - */ -function clearInterval(timeoutKey) { - Clock.scheduledFunctions[timeoutKey] = undefined; -} diff --git a/scripts/jsunit/licenses/MPL-1.1.txt b/scripts/jsunit/licenses/MPL-1.1.txt deleted file mode 100644 index 7714141d1..000000000 --- a/scripts/jsunit/licenses/MPL-1.1.txt +++ /dev/null @@ -1,470 +0,0 @@ - MOZILLA PUBLIC LICENSE - Version 1.1 - - --------------- - -1. Definitions. - - 1.0.1. "Commercial Use" means distribution or otherwise making the - Covered Code available to a third party. - - 1.1. "Contributor" means each entity that creates or contributes to - the creation of Modifications. - - 1.2. "Contributor Version" means the combination of the Original - Code, prior Modifications used by a Contributor, and the Modifications - made by that particular Contributor. - - 1.3. "Covered Code" means the Original Code or Modifications or the - combination of the Original Code and Modifications, in each case - including portions thereof. - - 1.4. "Electronic Distribution Mechanism" means a mechanism generally - accepted in the software development community for the electronic - transfer of data. - - 1.5. "Executable" means Covered Code in any form other than Source - Code. - - 1.6. "Initial Developer" means the individual or entity identified - as the Initial Developer in the Source Code notice required by Exhibit - A. - - 1.7. "Larger Work" means a work which combines Covered Code or - portions thereof with code not governed by the terms of this License. - - 1.8. "License" means this document. - - 1.8.1. "Licensable" means having the right to grant, to the maximum - extent possible, whether at the time of the initial grant or - subsequently acquired, any and all of the rights conveyed herein. - - 1.9. "Modifications" means any addition to or deletion from the - substance or structure of either the Original Code or any previous - Modifications. When Covered Code is released as a series of files, a - Modification is: - A. Any addition to or deletion from the contents of a file - containing Original Code or previous Modifications. - - B. Any new file that contains any part of the Original Code or - previous Modifications. - - 1.10. "Original Code" means Source Code of computer software code - which is described in the Source Code notice required by Exhibit A as - Original Code, and which, at the time of its release under this - License is not already Covered Code governed by this License. - - 1.10.1. "Patent Claims" means any patent claim(s), now owned or - hereafter acquired, including without limitation, method, process, - and apparatus claims, in any patent Licensable by grantor. - - 1.11. "Source Code" means the preferred form of the Covered Code for - making modifications to it, including all modules it contains, plus - any associated interface definition files, scripts used to control - compilation and installation of an Executable, or source code - differential comparisons against either the Original Code or another - well known, available Covered Code of the Contributor's choice. The - Source Code can be in a compressed or archival form, provided the - appropriate decompression or de-archiving software is widely available - for no charge. - - 1.12. "You" (or "Your") means an individual or a legal entity - exercising rights under, and complying with all of the terms of, this - License or a future version of this License issued under Section 6.1. - For legal entities, "You" includes any entity which controls, is - controlled by, or is under common control with You. For purposes of - this definition, "control" means (a) the power, direct or indirect, - to cause the direction or management of such entity, whether by - contract or otherwise, or (b) ownership of more than fifty percent - (50%) of the outstanding shares or beneficial ownership of such - entity. - -2. Source Code License. - - 2.1. The Initial Developer Grant. - The Initial Developer hereby grants You a world-wide, royalty-free, - non-exclusive license, subject to third party intellectual property - claims: - (a) under intellectual property rights (other than patent or - trademark) Licensable by Initial Developer to use, reproduce, - modify, display, perform, sublicense and distribute the Original - Code (or portions thereof) with or without Modifications, and/or - as part of a Larger Work; and - - (b) under Patents Claims infringed by the making, using or - selling of Original Code, to make, have made, use, practice, - sell, and offer for sale, and/or otherwise dispose of the - Original Code (or portions thereof). - - (c) the licenses granted in this Section 2.1(a) and (b) are - effective on the date Initial Developer first distributes - Original Code under the terms of this License. - - (d) Notwithstanding Section 2.1(b) above, no patent license is - granted: 1) for code that You delete from the Original Code; 2) - separate from the Original Code; or 3) for infringements caused - by: i) the modification of the Original Code or ii) the - combination of the Original Code with other software or devices. - - 2.2. Contributor Grant. - Subject to third party intellectual property claims, each Contributor - hereby grants You a world-wide, royalty-free, non-exclusive license - - (a) under intellectual property rights (other than patent or - trademark) Licensable by Contributor, to use, reproduce, modify, - display, perform, sublicense and distribute the Modifications - created by such Contributor (or portions thereof) either on an - unmodified basis, with other Modifications, as Covered Code - and/or as part of a Larger Work; and - - (b) under Patent Claims infringed by the making, using, or - selling of Modifications made by that Contributor either alone - and/or in combination with its Contributor Version (or portions - of such combination), to make, use, sell, offer for sale, have - made, and/or otherwise dispose of: 1) Modifications made by that - Contributor (or portions thereof); and 2) the combination of - Modifications made by that Contributor with its Contributor - Version (or portions of such combination). - - (c) the licenses granted in Sections 2.2(a) and 2.2(b) are - effective on the date Contributor first makes Commercial Use of - the Covered Code. - - (d) Notwithstanding Section 2.2(b) above, no patent license is - granted: 1) for any code that Contributor has deleted from the - Contributor Version; 2) separate from the Contributor Version; - 3) for infringements caused by: i) third party modifications of - Contributor Version or ii) the combination of Modifications made - by that Contributor with other software (except as part of the - Contributor Version) or other devices; or 4) under Patent Claims - infringed by Covered Code in the absence of Modifications made by - that Contributor. - -3. Distribution Obligations. - - 3.1. Application of License. - The Modifications which You create or to which You contribute are - governed by the terms of this License, including without limitation - Section 2.2. The Source Code version of Covered Code may be - distributed only under the terms of this License or a future version - of this License released under Section 6.1, and You must include a - copy of this License with every copy of the Source Code You - distribute. You may not offer or impose any terms on any Source Code - version that alters or restricts the applicable version of this - License or the recipients' rights hereunder. However, You may include - an additional document offering the additional rights described in - Section 3.5. - - 3.2. Availability of Source Code. - Any Modification which You create or to which You contribute must be - made available in Source Code form under the terms of this License - either on the same media as an Executable version or via an accepted - Electronic Distribution Mechanism to anyone to whom you made an - Executable version available; and if made available via Electronic - Distribution Mechanism, must remain available for at least twelve (12) - months after the date it initially became available, or at least six - (6) months after a subsequent version of that particular Modification - has been made available to such recipients. You are responsible for - ensuring that the Source Code version remains available even if the - Electronic Distribution Mechanism is maintained by a third party. - - 3.3. Description of Modifications. - You must cause all Covered Code to which You contribute to contain a - file documenting the changes You made to create that Covered Code and - the date of any change. You must include a prominent statement that - the Modification is derived, directly or indirectly, from Original - Code provided by the Initial Developer and including the name of the - Initial Developer in (a) the Source Code, and (b) in any notice in an - Executable version or related documentation in which You describe the - origin or ownership of the Covered Code. - - 3.4. Intellectual Property Matters - (a) Third Party Claims. - If Contributor has knowledge that a license under a third party's - intellectual property rights is required to exercise the rights - granted by such Contributor under Sections 2.1 or 2.2, - Contributor must include a text file with the Source Code - distribution titled "LEGAL" which describes the claim and the - party making the claim in sufficient detail that a recipient will - know whom to contact. If Contributor obtains such knowledge after - the Modification is made available as described in Section 3.2, - Contributor shall promptly modify the LEGAL file in all copies - Contributor makes available thereafter and shall take other steps - (such as notifying appropriate mailing lists or newsgroups) - reasonably calculated to inform those who received the Covered - Code that new knowledge has been obtained. - - (b) Contributor APIs. - If Contributor's Modifications include an application programming - interface and Contributor has knowledge of patent licenses which - are reasonably necessary to implement that API, Contributor must - also include this information in the LEGAL file. - - (c) Representations. - Contributor represents that, except as disclosed pursuant to - Section 3.4(a) above, Contributor believes that Contributor's - Modifications are Contributor's original creation(s) and/or - Contributor has sufficient rights to grant the rights conveyed by - this License. - - 3.5. Required Notices. - You must duplicate the notice in Exhibit A in each file of the Source - Code. If it is not possible to put such notice in a particular Source - Code file due to its structure, then You must include such notice in a - location (such as a relevant directory) where a user would be likely - to look for such a notice. If You created one or more Modification(s) - You may add your name as a Contributor to the notice described in - Exhibit A. You must also duplicate this License in any documentation - for the Source Code where You describe recipients' rights or ownership - rights relating to Covered Code. You may choose to offer, and to - charge a fee for, warranty, support, indemnity or liability - obligations to one or more recipients of Covered Code. However, You - may do so only on Your own behalf, and not on behalf of the Initial - Developer or any Contributor. You must make it absolutely clear than - any such warranty, support, indemnity or liability obligation is - offered by You alone, and You hereby agree to indemnify the Initial - Developer and every Contributor for any liability incurred by the - Initial Developer or such Contributor as a result of warranty, - support, indemnity or liability terms You offer. - - 3.6. Distribution of Executable Versions. - You may distribute Covered Code in Executable form only if the - requirements of Section 3.1-3.5 have been met for that Covered Code, - and if You include a notice stating that the Source Code version of - the Covered Code is available under the terms of this License, - including a description of how and where You have fulfilled the - obligations of Section 3.2. The notice must be conspicuously included - in any notice in an Executable version, related documentation or - collateral in which You describe recipients' rights relating to the - Covered Code. You may distribute the Executable version of Covered - Code or ownership rights under a license of Your choice, which may - contain terms different from this License, provided that You are in - compliance with the terms of this License and that the license for the - Executable version does not attempt to limit or alter the recipient's - rights in the Source Code version from the rights set forth in this - License. If You distribute the Executable version under a different - license You must make it absolutely clear that any terms which differ - from this License are offered by You alone, not by the Initial - Developer or any Contributor. You hereby agree to indemnify the - Initial Developer and every Contributor for any liability incurred by - the Initial Developer or such Contributor as a result of any such - terms You offer. - - 3.7. Larger Works. - You may create a Larger Work by combining Covered Code with other code - not governed by the terms of this License and distribute the Larger - Work as a single product. In such a case, You must make sure the - requirements of this License are fulfilled for the Covered Code. - -4. Inability to Comply Due to Statute or Regulation. - - If it is impossible for You to comply with any of the terms of this - License with respect to some or all of the Covered Code due to - statute, judicial order, or regulation then You must: (a) comply with - the terms of this License to the maximum extent possible; and (b) - describe the limitations and the code they affect. Such description - must be included in the LEGAL file described in Section 3.4 and must - be included with all distributions of the Source Code. Except to the - extent prohibited by statute or regulation, such description must be - sufficiently detailed for a recipient of ordinary skill to be able to - understand it. - -5. Application of this License. - - This License applies to code to which the Initial Developer has - attached the notice in Exhibit A and to related Covered Code. - -6. Versions of the License. - - 6.1. New Versions. - Netscape Communications Corporation ("Netscape") may publish revised - and/or new versions of the License from time to time. Each version - will be given a distinguishing version number. - - 6.2. Effect of New Versions. - Once Covered Code has been published under a particular version of the - License, You may always continue to use it under the terms of that - version. You may also choose to use such Covered Code under the terms - of any subsequent version of the License published by Netscape. No one - other than Netscape has the right to modify the terms applicable to - Covered Code created under this License. - - 6.3. Derivative Works. - If You create or use a modified version of this License (which you may - only do in order to apply it to code which is not already Covered Code - governed by this License), You must (a) rename Your license so that - the phrases "Mozilla", "MOZILLAPL", "MOZPL", "Netscape", - "MPL", "NPL" or any confusingly similar phrase do not appear in your - license (except to note that your license differs from this License) - and (b) otherwise make it clear that Your version of the license - contains terms which differ from the Mozilla Public License and - Netscape Public License. (Filling in the name of the Initial - Developer, Original Code or Contributor in the notice described in - Exhibit A shall not of themselves be deemed to be modifications of - this License.) - -7. DISCLAIMER OF WARRANTY. - - COVERED CODE IS PROVIDED UNDER THIS LICENSE ON AN "AS IS" BASIS, - WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, - WITHOUT LIMITATION, WARRANTIES THAT THE COVERED CODE IS FREE OF - DEFECTS, MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE OR NON-INFRINGING. - THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE COVERED CODE - IS WITH YOU. SHOULD ANY COVERED CODE PROVE DEFECTIVE IN ANY RESPECT, - YOU (NOT THE INITIAL DEVELOPER OR ANY OTHER CONTRIBUTOR) ASSUME THE - COST OF ANY NECESSARY SERVICING, REPAIR OR CORRECTION. THIS DISCLAIMER - OF WARRANTY CONSTITUTES AN ESSENTIAL PART OF THIS LICENSE. NO USE OF - ANY COVERED CODE IS AUTHORIZED HEREUNDER EXCEPT UNDER THIS DISCLAIMER. - -8. TERMINATION. - - 8.1. This License and the rights granted hereunder will terminate - automatically if You fail to comply with terms herein and fail to cure - such breach within 30 days of becoming aware of the breach. All - sublicenses to the Covered Code which are properly granted shall - survive any termination of this License. Provisions which, by their - nature, must remain in effect beyond the termination of this License - shall survive. - - 8.2. If You initiate litigation by asserting a patent infringement - claim (excluding declatory judgment actions) against Initial Developer - or a Contributor (the Initial Developer or Contributor against whom - You file such action is referred to as "Participant") alleging that: - - (a) such Participant's Contributor Version directly or indirectly - infringes any patent, then any and all rights granted by such - Participant to You under Sections 2.1 and/or 2.2 of this License - shall, upon 60 days notice from Participant terminate prospectively, - unless if within 60 days after receipt of notice You either: (i) - agree in writing to pay Participant a mutually agreeable reasonable - royalty for Your past and future use of Modifications made by such - Participant, or (ii) withdraw Your litigation claim with respect to - the Contributor Version against such Participant. If within 60 days - of notice, a reasonable royalty and payment arrangement are not - mutually agreed upon in writing by the parties or the litigation claim - is not withdrawn, the rights granted by Participant to You under - Sections 2.1 and/or 2.2 automatically terminate at the expiration of - the 60 day notice period specified above. - - (b) any software, hardware, or device, other than such Participant's - Contributor Version, directly or indirectly infringes any patent, then - any rights granted to You by such Participant under Sections 2.1(b) - and 2.2(b) are revoked effective as of the date You first made, used, - sold, distributed, or had made, Modifications made by that - Participant. - - 8.3. If You assert a patent infringement claim against Participant - alleging that such Participant's Contributor Version directly or - indirectly infringes any patent where such claim is resolved (such as - by license or settlement) prior to the initiation of patent - infringement litigation, then the reasonable value of the licenses - granted by such Participant under Sections 2.1 or 2.2 shall be taken - into account in determining the amount or value of any payment or - license. - - 8.4. In the event of termination under Sections 8.1 or 8.2 above, - all end user license agreements (excluding distributors and resellers) - which have been validly granted by You or any distributor hereunder - prior to termination shall survive termination. - -9. LIMITATION OF LIABILITY. - - UNDER NO CIRCUMSTANCES AND UNDER NO LEGAL THEORY, WHETHER TORT - (INCLUDING NEGLIGENCE), CONTRACT, OR OTHERWISE, SHALL YOU, THE INITIAL - DEVELOPER, ANY OTHER CONTRIBUTOR, OR ANY DISTRIBUTOR OF COVERED CODE, - OR ANY SUPPLIER OF ANY OF SUCH PARTIES, BE LIABLE TO ANY PERSON FOR - ANY INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES OF ANY - CHARACTER INCLUDING, WITHOUT LIMITATION, DAMAGES FOR LOSS OF GOODWILL, - WORK STOPPAGE, COMPUTER FAILURE OR MALFUNCTION, OR ANY AND ALL OTHER - COMMERCIAL DAMAGES OR LOSSES, EVEN IF SUCH PARTY SHALL HAVE BEEN - INFORMED OF THE POSSIBILITY OF SUCH DAMAGES. THIS LIMITATION OF - LIABILITY SHALL NOT APPLY TO LIABILITY FOR DEATH OR PERSONAL INJURY - RESULTING FROM SUCH PARTY'S NEGLIGENCE TO THE EXTENT APPLICABLE LAW - PROHIBITS SUCH LIMITATION. SOME JURISDICTIONS DO NOT ALLOW THE - EXCLUSION OR LIMITATION OF INCIDENTAL OR CONSEQUENTIAL DAMAGES, SO - THIS EXCLUSION AND LIMITATION MAY NOT APPLY TO YOU. - -10. U.S. GOVERNMENT END USERS. - - The Covered Code is a "commercial item," as that term is defined in - 48 C.F.R. 2.101 (Oct. 1995), consisting of "commercial computer - software" and "commercial computer software documentation," as such - terms are used in 48 C.F.R. 12.212 (Sept. 1995). Consistent with 48 - C.F.R. 12.212 and 48 C.F.R. 227.7202-1 through 227.7202-4 (June 1995), - all U.S. Government End Users acquire Covered Code with only those - rights set forth herein. - -11. MISCELLANEOUS. - - This License represents the complete agreement concerning subject - matter hereof. If any provision of this License is held to be - unenforceable, such provision shall be reformed only to the extent - necessary to make it enforceable. This License shall be governed by - California law provisions (except to the extent applicable law, if - any, provides otherwise), excluding its conflict-of-law provisions. - With respect to disputes in which at least one party is a citizen of, - or an entity chartered or registered to do business in the United - States of America, any litigation relating to this License shall be - subject to the jurisdiction of the Federal Courts of the Northern - District of California, with venue lying in Santa Clara County, - California, with the losing party responsible for costs, including - without limitation, court costs and reasonable attorneys' fees and - expenses. The application of the United Nations Convention on - Contracts for the International Sale of Goods is expressly excluded. - Any law or regulation which provides that the language of a contract - shall be construed against the drafter shall not apply to this - License. - -12. RESPONSIBILITY FOR CLAIMS. - - As between Initial Developer and the Contributors, each party is - responsible for claims and damages arising, directly or indirectly, - out of its utilization of rights under this License and You agree to - work with Initial Developer and Contributors to distribute such - responsibility on an equitable basis. Nothing herein is intended or - shall be deemed to constitute any admission of liability. - -13. MULTIPLE-LICENSED CODE. - - Initial Developer may designate portions of the Covered Code as - "Multiple-Licensed". "Multiple-Licensed" means that the Initial - Developer permits you to utilize portions of the Covered Code under - Your choice of the NPL or the alternative licenses, if any, specified - by the Initial Developer in the file described in Exhibit A. - -EXHIBIT A -Mozilla Public License. - - ``The contents of this file are subject to the Mozilla Public License - Version 1.1 (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.mozilla.org/MPL/ - - Software distributed under the License is distributed on an "AS IS" - basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the - License for the specific language governing rights and limitations - under the License. - - The Original Code is ______________________________________. - - The Initial Developer of the Original Code is ________________________. - Portions created by ______________________ are Copyright (C) ______ - _______________________. All Rights Reserved. - - Contributor(s): ______________________________________. - - Alternatively, the contents of this file may be used under the terms - of the _____ license (the "[___] License"), in which case the - provisions of [______] License are applicable instead of those - above. If you wish to allow use of your version of this file only - under the terms of the [____] License and not to allow others to use - your version of this file under the MPL, indicate your decision by - deleting the provisions above and replace them with the notice and - other provisions required by the [___] License. If you do not delete - the provisions above, a recipient may use your version of this file - under either the MPL or the [___] License." - - [NOTE: The text of this Exhibit A may differ slightly from the text of - the notices in the Source Code files of the Original Code. You should - use the text of this Exhibit A rather than the text found in the - Original Code Source Code for Your Modifications.] - diff --git a/scripts/jsunit/licenses/apache2.txt b/scripts/jsunit/licenses/apache2.txt deleted file mode 100644 index e520b1c43..000000000 --- a/scripts/jsunit/licenses/apache2.txt +++ /dev/null @@ -1,190 +0,0 @@ - Apache License - Version 2.0, January 2004 - http://www.apache.org/licenses/ - - TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION - - 1. Definitions. - - "License" shall mean the terms and conditions for use, reproduction, - and distribution as defined by Sections 1 through 9 of this document. - - "Licensor" shall mean the copyright owner or entity authorized by - the copyright owner that is granting the License. - - "Legal Entity" shall mean the union of the acting entity and all - other entities that control, are controlled by, or are under common - control with that entity. For the purposes of this definition, - "control" means (i) the power, direct or indirect, to cause the - direction or management of such entity, whether by contract or - otherwise, or (ii) ownership of fifty percent (50%) or more of the - outstanding shares, or (iii) beneficial ownership of such entity. - - "You" (or "Your") shall mean an individual or Legal Entity - exercising permissions granted by this License. - - "Source" form shall mean the preferred form for making modifications, - including but not limited to software source code, documentation - source, and configuration files. - - "Object" form shall mean any form resulting from mechanical - transformation or translation of a Source form, including but - not limited to compiled object code, generated documentation, - and conversions to other media types. - - "Work" shall mean the work of authorship, whether in Source or - Object form, made available under the License, as indicated by a - copyright notice that is included in or attached to the work - (an example is provided in the Appendix below). - - "Derivative Works" shall mean any work, whether in Source or Object - form, that is based on (or derived from) the Work and for which the - editorial revisions, annotations, elaborations, or other modifications - represent, as a whole, an original work of authorship. For the purposes - of this License, Derivative Works shall not include works that remain - separable from, or merely link (or bind by name) to the interfaces of, - the Work and Derivative Works thereof. - - "Contribution" shall mean any work of authorship, including - the original version of the Work and any modifications or additions - to that Work or Derivative Works thereof, that is intentionally - submitted to Licensor for inclusion in the Work by the copyright owner - or by an individual or Legal Entity authorized to submit on behalf of - the copyright owner. For the purposes of this definition, "submitted" - means any form of electronic, verbal, or written communication sent - to the Licensor or its representatives, including but not limited to - communication on electronic mailing lists, source code control systems, - and issue tracking systems that are managed by, or on behalf of, the - Licensor for the purpose of discussing and improving the Work, but - excluding communication that is conspicuously marked or otherwise - designated in writing by the copyright owner as "Not a Contribution." - - "Contributor" shall mean Licensor and any individual or Legal Entity - on behalf of whom a Contribution has been received by Licensor and - subsequently incorporated within the Work. - - 2. Grant of Copyright License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - copyright license to reproduce, prepare Derivative Works of, - publicly display, publicly perform, sublicense, and distribute the - Work and such Derivative Works in Source or Object form. - - 3. Grant of Patent License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - (except as stated in this section) patent license to make, have made, - use, offer to sell, sell, import, and otherwise transfer the Work, - where such license applies only to those patent claims licensable - by such Contributor that are necessarily infringed by their - Contribution(s) alone or by combination of their Contribution(s) - with the Work to which such Contribution(s) was submitted. If You - institute patent litigation against any entity (including a - cross-claim or counterclaim in a lawsuit) alleging that the Work - or a Contribution incorporated within the Work constitutes direct - or contributory patent infringement, then any patent licenses - granted to You under this License for that Work shall terminate - as of the date such litigation is filed. - - 4. Redistribution. You may reproduce and distribute copies of the - Work or Derivative Works thereof in any medium, with or without - modifications, and in Source or Object form, provided that You - meet the following conditions: - - (a) You must give any other recipients of the Work or - Derivative Works a copy of this License; and - - (b) You must cause any modified files to carry prominent notices - stating that You changed the files; and - - (c) You must retain, in the Source form of any Derivative Works - that You distribute, all copyright, patent, trademark, and - attribution notices from the Source form of the Work, - excluding those notices that do not pertain to any part of - the Derivative Works; and - - (d) If the Work includes a "NOTICE" text file as part of its - distribution, then any Derivative Works that You distribute must - include a readable copy of the attribution notices contained - within such NOTICE file, excluding those notices that do not - pertain to any part of the Derivative Works, in at least one - of the following places: within a NOTICE text file distributed - as part of the Derivative Works; within the Source form or - documentation, if provided along with the Derivative Works; or, - within a display generated by the Derivative Works, if and - wherever such third-party notices normally appear. The contents - of the NOTICE file are for informational purposes only and - do not modify the License. You may add Your own attribution - notices within Derivative Works that You distribute, alongside - or as an addendum to the NOTICE text from the Work, provided - that such additional attribution notices cannot be construed - as modifying the License. - - You may add Your own copyright statement to Your modifications and - may provide additional or different license terms and conditions - for use, reproduction, or distribution of Your modifications, or - for any such Derivative Works as a whole, provided Your use, - reproduction, and distribution of the Work otherwise complies with - the conditions stated in this License. - - 5. Submission of Contributions. Unless You explicitly state otherwise, - any Contribution intentionally submitted for inclusion in the Work - by You to the Licensor shall be under the terms and conditions of - this License, without any additional terms or conditions. - Notwithstanding the above, nothing herein shall supersede or modify - the terms of any separate license agreement you may have executed - with Licensor regarding such Contributions. - - 6. Trademarks. This License does not grant permission to use the trade - names, trademarks, service marks, or product names of the Licensor, - except as required for reasonable and customary use in describing the - origin of the Work and reproducing the content of the NOTICE file. - - 7. Disclaimer of Warranty. Unless required by applicable law or - agreed to in writing, Licensor provides the Work (and each - Contributor provides its Contributions) on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or - implied, including, without limitation, any warranties or conditions - of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A - PARTICULAR PURPOSE. You are solely responsible for determining the - appropriateness of using or redistributing the Work and assume any - risks associated with Your exercise of permissions under this License. - - 8. Limitation of Liability. In no event and under no legal theory, - whether in tort (including negligence), contract, or otherwise, - unless required by applicable law (such as deliberate and grossly - negligent acts) or agreed to in writing, shall any Contributor be - liable to You for damages, including any direct, indirect, special, - incidental, or consequential damages of any character arising as a - result of this License or out of the use or inability to use the - Work (including but not limited to damages for loss of goodwill, - work stoppage, computer failure or malfunction, or any and all - other commercial damages or losses), even if such Contributor - has been advised of the possibility of such damages. - - 9. Accepting Warranty or Additional Liability. While redistributing - the Work or Derivative Works thereof, You may choose to offer, - and charge a fee for, acceptance of support, warranty, indemnity, - or other liability obligations and/or rights consistent with this - License. However, in accepting such obligations, You may act only - on Your own behalf and on Your sole responsibility, not on behalf - of any other Contributor, and only if You agree to indemnify, - defend, and hold each Contributor harmless for any liability - incurred by, or claims asserted against, such Contributor by reason - of your accepting any such warranty or additional liability. - - END OF TERMS AND CONDITIONS - - Copyright 2007 Edward Hieatt - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. diff --git a/scripts/jsunit/licenses/gpl-2.txt b/scripts/jsunit/licenses/gpl-2.txt deleted file mode 100644 index 5b6e7c66c..000000000 --- a/scripts/jsunit/licenses/gpl-2.txt +++ /dev/null @@ -1,340 +0,0 @@ - GNU GENERAL PUBLIC LICENSE - Version 2, June 1991 - - Copyright (C) 1989, 1991 Free Software Foundation, Inc. - 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - Everyone is permitted to copy and distribute verbatim copies - of this license document, but changing it is not allowed. - - Preamble - - The licenses for most software are designed to take away your -freedom to share and change it. By contrast, the GNU General Public -License is intended to guarantee your freedom to share and change free -software--to make sure the software is free for all its users. This -General Public License applies to most of the Free Software -Foundation's software and to any other program whose authors commit to -using it. (Some other Free Software Foundation software is covered by -the GNU Library General Public License instead.) You can apply it to -your programs, too. - - When we speak of free software, we are referring to freedom, not -price. Our General Public Licenses are designed to make sure that you -have the freedom to distribute copies of free software (and charge for -this service if you wish), that you receive source code or can get it -if you want it, that you can change the software or use pieces of it -in new free programs; and that you know you can do these things. - - To protect your rights, we need to make restrictions that forbid -anyone to deny you these rights or to ask you to surrender the rights. -These restrictions translate to certain responsibilities for you if you -distribute copies of the software, or if you modify it. - - For example, if you distribute copies of such a program, whether -gratis or for a fee, you must give the recipients all the rights that -you have. You must make sure that they, too, receive or can get the -source code. And you must show them these terms so they know their -rights. - - We protect your rights with two steps: (1) copyright the software, and -(2) offer you this license which gives you legal permission to copy, -distribute and/or modify the software. - - Also, for each author's protection and ours, we want to make certain -that everyone understands that there is no warranty for this free -software. If the software is modified by someone else and passed on, we -want its recipients to know that what they have is not the original, so -that any problems introduced by others will not reflect on the original -authors' reputations. - - Finally, any free program is threatened constantly by software -patents. We wish to avoid the danger that redistributors of a free -program will individually obtain patent licenses, in effect making the -program proprietary. To prevent this, we have made it clear that any -patent must be licensed for everyone's free use or not licensed at all. - - The precise terms and conditions for copying, distribution and -modification follow. - - GNU GENERAL PUBLIC LICENSE - TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION - - 0. This License applies to any program or other work which contains -a notice placed by the copyright holder saying it may be distributed -under the terms of this General Public License. The "Program", below, -refers to any such program or work, and a "work based on the Program" -means either the Program or any derivative work under copyright law: -that is to say, a work containing the Program or a portion of it, -either verbatim or with modifications and/or translated into another -language. (Hereinafter, translation is included without limitation in -the term "modification".) Each licensee is addressed as "you". - -Activities other than copying, distribution and modification are not -covered by this License; they are outside its scope. The act of -running the Program is not restricted, and the output from the Program -is covered only if its contents constitute a work based on the -Program (independent of having been made by running the Program). -Whether that is true depends on what the Program does. - - 1. You may copy and distribute verbatim copies of the Program's -source code as you receive it, in any medium, provided that you -conspicuously and appropriately publish on each copy an appropriate -copyright notice and disclaimer of warranty; keep intact all the -notices that refer to this License and to the absence of any warranty; -and give any other recipients of the Program a copy of this License -along with the Program. - -You may charge a fee for the physical act of transferring a copy, and -you may at your option offer warranty protection in exchange for a fee. - - 2. You may modify your copy or copies of the Program or any portion -of it, thus forming a work based on the Program, and copy and -distribute such modifications or work under the terms of Section 1 -above, provided that you also meet all of these conditions: - - a) You must cause the modified files to carry prominent notices - stating that you changed the files and the date of any change. - - b) You must cause any work that you distribute or publish, that in - whole or in part contains or is derived from the Program or any - part thereof, to be licensed as a whole at no charge to all third - parties under the terms of this License. - - c) If the modified program normally reads commands interactively - when run, you must cause it, when started running for such - interactive use in the most ordinary way, to print or display an - announcement including an appropriate copyright notice and a - notice that there is no warranty (or else, saying that you provide - a warranty) and that users may redistribute the program under - these conditions, and telling the user how to view a copy of this - License. (Exception: if the Program itself is interactive but - does not normally print such an announcement, your work based on - the Program is not required to print an announcement.) - -These requirements apply to the modified work as a whole. If -identifiable sections of that work are not derived from the Program, -and can be reasonably considered independent and separate works in -themselves, then this License, and its terms, do not apply to those -sections when you distribute them as separate works. But when you -distribute the same sections as part of a whole which is a work based -on the Program, the distribution of the whole must be on the terms of -this License, whose permissions for other licensees extend to the -entire whole, and thus to each and every part regardless of who wrote it. - -Thus, it is not the intent of this section to claim rights or contest -your rights to work written entirely by you; rather, the intent is to -exercise the right to control the distribution of derivative or -collective works based on the Program. - -In addition, mere aggregation of another work not based on the Program -with the Program (or with a work based on the Program) on a volume of -a storage or distribution medium does not bring the other work under -the scope of this License. - - 3. You may copy and distribute the Program (or a work based on it, -under Section 2) in object code or executable form under the terms of -Sections 1 and 2 above provided that you also do one of the following: - - a) Accompany it with the complete corresponding machine-readable - source code, which must be distributed under the terms of Sections - 1 and 2 above on a medium customarily used for software interchange; or, - - b) Accompany it with a written offer, valid for at least three - years, to give any third party, for a charge no more than your - cost of physically performing source distribution, a complete - machine-readable copy of the corresponding source code, to be - distributed under the terms of Sections 1 and 2 above on a medium - customarily used for software interchange; or, - - c) Accompany it with the information you received as to the offer - to distribute corresponding source code. (This alternative is - allowed only for noncommercial distribution and only if you - received the program in object code or executable form with such - an offer, in accord with Subsection b above.) - -The source code for a work means the preferred form of the work for -making modifications to it. For an executable work, complete source -code means all the source code for all modules it contains, plus any -associated interface definition files, plus the scripts used to -control compilation and installation of the executable. However, as a -special exception, the source code distributed need not include -anything that is normally distributed (in either source or binary -form) with the major components (compiler, kernel, and so on) of the -operating system on which the executable runs, unless that component -itself accompanies the executable. - -If distribution of executable or object code is made by offering -access to copy from a designated place, then offering equivalent -access to copy the source code from the same place counts as -distribution of the source code, even though third parties are not -compelled to copy the source along with the object code. - - 4. You may not copy, modify, sublicense, or distribute the Program -except as expressly provided under this License. Any attempt -otherwise to copy, modify, sublicense or distribute the Program is -void, and will automatically terminate your rights under this License. -However, parties who have received copies, or rights, from you under -this License will not have their licenses terminated so long as such -parties remain in full compliance. - - 5. You are not required to accept this License, since you have not -signed it. However, nothing else grants you permission to modify or -distribute the Program or its derivative works. These actions are -prohibited by law if you do not accept this License. Therefore, by -modifying or distributing the Program (or any work based on the -Program), you indicate your acceptance of this License to do so, and -all its terms and conditions for copying, distributing or modifying -the Program or works based on it. - - 6. Each time you redistribute the Program (or any work based on the -Program), the recipient automatically receives a license from the -original licensor to copy, distribute or modify the Program subject to -these terms and conditions. You may not impose any further -restrictions on the recipients' exercise of the rights granted herein. -You are not responsible for enforcing compliance by third parties to -this License. - - 7. If, as a consequence of a court judgment or allegation of patent -infringement or for any other reason (not limited to patent issues), -conditions are imposed on you (whether by court order, agreement or -otherwise) that contradict the conditions of this License, they do not -excuse you from the conditions of this License. If you cannot -distribute so as to satisfy simultaneously your obligations under this -License and any other pertinent obligations, then as a consequence you -may not distribute the Program at all. For example, if a patent -license would not permit royalty-free redistribution of the Program by -all those who receive copies directly or indirectly through you, then -the only way you could satisfy both it and this License would be to -refrain entirely from distribution of the Program. - -If any portion of this section is held invalid or unenforceable under -any particular circumstance, the balance of the section is intended to -apply and the section as a whole is intended to apply in other -circumstances. - -It is not the purpose of this section to induce you to infringe any -patents or other property right claims or to contest validity of any -such claims; this section has the sole purpose of protecting the -integrity of the free software distribution system, which is -implemented by public license practices. Many people have made -generous contributions to the wide range of software distributed -through that system in reliance on consistent application of that -system; it is up to the author/donor to decide if he or she is willing -to distribute software through any other system and a licensee cannot -impose that choice. - -This section is intended to make thoroughly clear what is believed to -be a consequence of the rest of this License. - - 8. If the distribution and/or use of the Program is restricted in -certain countries either by patents or by copyrighted interfaces, the -original copyright holder who places the Program under this License -may add an explicit geographical distribution limitation excluding -those countries, so that distribution is permitted only in or among -countries not thus excluded. In such case, this License incorporates -the limitation as if written in the body of this License. - - 9. The Free Software Foundation may publish revised and/or new versions -of the General Public License from time to time. Such new versions will -be similar in spirit to the present version, but may differ in detail to -address new problems or concerns. - -Each version is given a distinguishing version number. If the Program -specifies a version number of this License which applies to it and "any -later version", you have the option of following the terms and conditions -either of that version or of any later version published by the Free -Software Foundation. If the Program does not specify a version number of -this License, you may choose any version ever published by the Free Software -Foundation. - - 10. If you wish to incorporate parts of the Program into other free -programs whose distribution conditions are different, write to the author -to ask for permission. For software which is copyrighted by the Free -Software Foundation, write to the Free Software Foundation; we sometimes -make exceptions for this. Our decision will be guided by the two goals -of preserving the free status of all derivatives of our free software and -of promoting the sharing and reuse of software generally. - - NO WARRANTY - - 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY -FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN -OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES -PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED -OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF -MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS -TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE -PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, -REPAIR OR CORRECTION. - - 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING -WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR -REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, -INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING -OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED -TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY -YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER -PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE -POSSIBILITY OF SUCH DAMAGES. - - END OF TERMS AND CONDITIONS - - How to Apply These Terms to Your New Programs - - If you develop a new program, and you want it to be of the greatest -possible use to the public, the best way to achieve this is to make it -free software which everyone can redistribute and change under these terms. - - To do so, attach the following notices to the program. It is safest -to attach them to the start of each source file to most effectively -convey the exclusion of warranty; and each file should have at least -the "copyright" line and a pointer to where the full notice is found. - - - Copyright (C) - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - - -Also add information on how to contact you by electronic and paper mail. - -If the program is interactive, make it output a short notice like this -when it starts in an interactive mode: - - Gnomovision version 69, Copyright (C) year name of author - Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. - This is free software, and you are welcome to redistribute it - under certain conditions; type `show c' for details. - -The hypothetical commands `show w' and `show c' should show the appropriate -parts of the General Public License. Of course, the commands you use may -be called something other than `show w' and `show c'; they could even be -mouse-clicks or menu items--whatever suits your program. - -You should also get your employer (if you work as a programmer) or your -school, if any, to sign a "copyright disclaimer" for the program, if -necessary. Here is a sample; alter the names: - - Yoyodyne, Inc., hereby disclaims all copyright interest in the program - `Gnomovision' (which makes passes at compilers) written by James Hacker. - - , 1 April 1989 - Ty Coon, President of Vice - -This General Public License does not permit incorporating your program into -proprietary programs. If your program is a subroutine library, you may -consider it more useful to permit linking proprietary applications with the -library. If this is what you want to do, use the GNU Library General -Public License instead of this License. diff --git a/scripts/jsunit/licenses/index.html b/scripts/jsunit/licenses/index.html deleted file mode 100644 index 36aca7a8a..000000000 --- a/scripts/jsunit/licenses/index.html +++ /dev/null @@ -1,138 +0,0 @@ - - - - - - - - Licensing - - - - - - - - - - -

    JsUnit Licenses

    - JsUnit Home -
    - -

    Third-party licenses:

    -

    - The licenses for all third-party libraries are packaged in the directory in which the third-party code lives. -

    - -

    JsUnit licenses:

    -

    - JsUnit is licensed under 3 different licenses giving you the freedom - to use, modify and distribute JsUnit in a variety of fashions. -

    - -
      -
    1. -

      Mozilla Public License 1.1

      - -

      See mozilla.org - for more details.

      -
    2. - -
    3. -

      GNU Public License 2

      - -

      See www.gnu.org - for more details.

      -
    4. - -
    5. -

      GNU Lesser Public License 2.1

      - -

      See www.gnu.org - for more details.

      -
    6. -
    - -

    - Every Java and JavaScript source file in this distribution should be considered to be under the following licensing - terms. -

    - -
    -    ***** BEGIN LICENSE BLOCK *****
    -    - Version: MPL 1.1/GPL 2.0/LGPL 2.1
    -    -
    -    - The contents of this file are subject to the Mozilla Public License Version
    -    - 1.1 (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.mozilla.org/MPL/
    -    -
    -    - Software distributed under the License is distributed on an "AS IS" basis,
    -    - WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
    -    - for the specific language governing rights and limitations under the
    -    - License.
    -    -
    -    - The Original Code is Edward Hieatt code.
    -    -
    -    - The Initial Developer of the Original Code is
    -    - Edward Hieatt, edward@jsunit.net.
    -    - Portions created by the Initial Developer are Copyright (C) 2003
    -    - the Initial Developer. All Rights Reserved.
    -    -
    -    - Author Edward Hieatt, edward@jsunit.net
    -    -
    -    - Alternatively, the contents of this file may be used under the terms of
    -    - either the GNU General Public License Version 2 or later (the "GPL"), or
    -    - the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
    -    - in which case the provisions of the GPL or the LGPL are applicable instead
    -    - of those above. If you wish to allow use of your version of this file only
    -    - under the terms of either the GPL or the LGPL, and not to allow others to
    -    - use your version of this file under the terms of the MPL, indicate your
    -    - decision by deleting the provisions above and replace them with the notice
    -    - and other provisions required by the LGPL or the GPL. If you do not delete
    -    - the provisions above, a recipient may use your version of this file under
    -    - the terms of any one of the MPL, the GPL or the LGPL.
    -    -
    -    - ***** END LICENSE BLOCK *****
    -
    - - - - diff --git a/scripts/jsunit/licenses/lgpl-2.1.txt b/scripts/jsunit/licenses/lgpl-2.1.txt deleted file mode 100644 index b1e3f5a26..000000000 --- a/scripts/jsunit/licenses/lgpl-2.1.txt +++ /dev/null @@ -1,504 +0,0 @@ - GNU LESSER GENERAL PUBLIC LICENSE - Version 2.1, February 1999 - - Copyright (C) 1991, 1999 Free Software Foundation, Inc. - 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - Everyone is permitted to copy and distribute verbatim copies - of this license document, but changing it is not allowed. - -[This is the first released version of the Lesser GPL. It also counts - as the successor of the GNU Library Public License, version 2, hence - the version number 2.1.] - - Preamble - - The licenses for most software are designed to take away your -freedom to share and change it. By contrast, the GNU General Public -Licenses are intended to guarantee your freedom to share and change -free software--to make sure the software is free for all its users. - - This license, the Lesser General Public License, applies to some -specially designated software packages--typically libraries--of the -Free Software Foundation and other authors who decide to use it. You -can use it too, but we suggest you first think carefully about whether -this license or the ordinary General Public License is the better -strategy to use in any particular case, based on the explanations below. - - When we speak of free software, we are referring to freedom of use, -not price. Our General Public Licenses are designed to make sure that -you have the freedom to distribute copies of free software (and charge -for this service if you wish); that you receive source code or can get -it if you want it; that you can change the software and use pieces of -it in new free programs; and that you are informed that you can do -these things. - - To protect your rights, we need to make restrictions that forbid -distributors to deny you these rights or to ask you to surrender these -rights. These restrictions translate to certain responsibilities for -you if you distribute copies of the library or if you modify it. - - For example, if you distribute copies of the library, whether gratis -or for a fee, you must give the recipients all the rights that we gave -you. You must make sure that they, too, receive or can get the source -code. If you link other code with the library, you must provide -complete object files to the recipients, so that they can relink them -with the library after making changes to the library and recompiling -it. And you must show them these terms so they know their rights. - - We protect your rights with a two-step method: (1) we copyright the -library, and (2) we offer you this license, which gives you legal -permission to copy, distribute and/or modify the library. - - To protect each distributor, we want to make it very clear that -there is no warranty for the free library. Also, if the library is -modified by someone else and passed on, the recipients should know -that what they have is not the original version, so that the original -author's reputation will not be affected by problems that might be -introduced by others. - - Finally, software patents pose a constant threat to the existence of -any free program. We wish to make sure that a company cannot -effectively restrict the users of a free program by obtaining a -restrictive license from a patent holder. Therefore, we insist that -any patent license obtained for a version of the library must be -consistent with the full freedom of use specified in this license. - - Most GNU software, including some libraries, is covered by the -ordinary GNU General Public License. This license, the GNU Lesser -General Public License, applies to certain designated libraries, and -is quite different from the ordinary General Public License. We use -this license for certain libraries in order to permit linking those -libraries into non-free programs. - - When a program is linked with a library, whether statically or using -a shared library, the combination of the two is legally speaking a -combined work, a derivative of the original library. The ordinary -General Public License therefore permits such linking only if the -entire combination fits its criteria of freedom. The Lesser General -Public License permits more lax criteria for linking other code with -the library. - - We call this license the "Lesser" General Public License because it -does Less to protect the user's freedom than the ordinary General -Public License. It also provides other free software developers Less -of an advantage over competing non-free programs. These disadvantages -are the reason we use the ordinary General Public License for many -libraries. However, the Lesser license provides advantages in certain -special circumstances. - - For example, on rare occasions, there may be a special need to -encourage the widest possible use of a certain library, so that it becomes -a de-facto standard. To achieve this, non-free programs must be -allowed to use the library. A more frequent case is that a free -library does the same job as widely used non-free libraries. In this -case, there is little to gain by limiting the free library to free -software only, so we use the Lesser General Public License. - - In other cases, permission to use a particular library in non-free -programs enables a greater number of people to use a large body of -free software. For example, permission to use the GNU C Library in -non-free programs enables many more people to use the whole GNU -operating system, as well as its variant, the GNU/Linux operating -system. - - Although the Lesser General Public License is Less protective of the -users' freedom, it does ensure that the user of a program that is -linked with the Library has the freedom and the wherewithal to run -that program using a modified version of the Library. - - The precise terms and conditions for copying, distribution and -modification follow. Pay close attention to the difference between a -"work based on the library" and a "work that uses the library". The -former contains code derived from the library, whereas the latter must -be combined with the library in order to run. - - GNU LESSER GENERAL PUBLIC LICENSE - TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION - - 0. This License Agreement applies to any software library or other -program which contains a notice placed by the copyright holder or -other authorized party saying it may be distributed under the terms of -this Lesser General Public License (also called "this License"). -Each licensee is addressed as "you". - - A "library" means a collection of software functions and/or data -prepared so as to be conveniently linked with application programs -(which use some of those functions and data) to form executables. - - The "Library", below, refers to any such software library or work -which has been distributed under these terms. A "work based on the -Library" means either the Library or any derivative work under -copyright law: that is to say, a work containing the Library or a -portion of it, either verbatim or with modifications and/or translated -straightforwardly into another language. (Hereinafter, translation is -included without limitation in the term "modification".) - - "Source code" for a work means the preferred form of the work for -making modifications to it. For a library, complete source code means -all the source code for all modules it contains, plus any associated -interface definition files, plus the scripts used to control compilation -and installation of the library. - - Activities other than copying, distribution and modification are not -covered by this License; they are outside its scope. The act of -running a program using the Library is not restricted, and output from -such a program is covered only if its contents constitute a work based -on the Library (independent of the use of the Library in a tool for -writing it). Whether that is true depends on what the Library does -and what the program that uses the Library does. - - 1. You may copy and distribute verbatim copies of the Library's -complete source code as you receive it, in any medium, provided that -you conspicuously and appropriately publish on each copy an -appropriate copyright notice and disclaimer of warranty; keep intact -all the notices that refer to this License and to the absence of any -warranty; and distribute a copy of this License along with the -Library. - - You may charge a fee for the physical act of transferring a copy, -and you may at your option offer warranty protection in exchange for a -fee. - - 2. You may modify your copy or copies of the Library or any portion -of it, thus forming a work based on the Library, and copy and -distribute such modifications or work under the terms of Section 1 -above, provided that you also meet all of these conditions: - - a) The modified work must itself be a software library. - - b) You must cause the files modified to carry prominent notices - stating that you changed the files and the date of any change. - - c) You must cause the whole of the work to be licensed at no - charge to all third parties under the terms of this License. - - d) If a facility in the modified Library refers to a function or a - table of data to be supplied by an application program that uses - the facility, other than as an argument passed when the facility - is invoked, then you must make a good faith effort to ensure that, - in the event an application does not supply such function or - table, the facility still operates, and performs whatever part of - its purpose remains meaningful. - - (For example, a function in a library to compute square roots has - a purpose that is entirely well-defined independent of the - application. Therefore, Subsection 2d requires that any - application-supplied function or table used by this function must - be optional: if the application does not supply it, the square - root function must still compute square roots.) - -These requirements apply to the modified work as a whole. If -identifiable sections of that work are not derived from the Library, -and can be reasonably considered independent and separate works in -themselves, then this License, and its terms, do not apply to those -sections when you distribute them as separate works. But when you -distribute the same sections as part of a whole which is a work based -on the Library, the distribution of the whole must be on the terms of -this License, whose permissions for other licensees extend to the -entire whole, and thus to each and every part regardless of who wrote -it. - -Thus, it is not the intent of this section to claim rights or contest -your rights to work written entirely by you; rather, the intent is to -exercise the right to control the distribution of derivative or -collective works based on the Library. - -In addition, mere aggregation of another work not based on the Library -with the Library (or with a work based on the Library) on a volume of -a storage or distribution medium does not bring the other work under -the scope of this License. - - 3. You may opt to apply the terms of the ordinary GNU General Public -License instead of this License to a given copy of the Library. To do -this, you must alter all the notices that refer to this License, so -that they refer to the ordinary GNU General Public License, version 2, -instead of to this License. (If a newer version than version 2 of the -ordinary GNU General Public License has appeared, then you can specify -that version instead if you wish.) Do not make any other change in -these notices. - - Once this change is made in a given copy, it is irreversible for -that copy, so the ordinary GNU General Public License applies to all -subsequent copies and derivative works made from that copy. - - This option is useful when you wish to copy part of the code of -the Library into a program that is not a library. - - 4. You may copy and distribute the Library (or a portion or -derivative of it, under Section 2) in object code or executable form -under the terms of Sections 1 and 2 above provided that you accompany -it with the complete corresponding machine-readable source code, which -must be distributed under the terms of Sections 1 and 2 above on a -medium customarily used for software interchange. - - If distribution of object code is made by offering access to copy -from a designated place, then offering equivalent access to copy the -source code from the same place satisfies the requirement to -distribute the source code, even though third parties are not -compelled to copy the source along with the object code. - - 5. A program that contains no derivative of any portion of the -Library, but is designed to work with the Library by being compiled or -linked with it, is called a "work that uses the Library". Such a -work, in isolation, is not a derivative work of the Library, and -therefore falls outside the scope of this License. - - However, linking a "work that uses the Library" with the Library -creates an executable that is a derivative of the Library (because it -contains portions of the Library), rather than a "work that uses the -library". The executable is therefore covered by this License. -Section 6 states terms for distribution of such executables. - - When a "work that uses the Library" uses material from a header file -that is part of the Library, the object code for the work may be a -derivative work of the Library even though the source code is not. -Whether this is true is especially significant if the work can be -linked without the Library, or if the work is itself a library. The -threshold for this to be true is not precisely defined by law. - - If such an object file uses only numerical parameters, data -structure layouts and accessors, and small macros and small inline -functions (ten lines or less in length), then the use of the object -file is unrestricted, regardless of whether it is legally a derivative -work. (Executables containing this object code plus portions of the -Library will still fall under Section 6.) - - Otherwise, if the work is a derivative of the Library, you may -distribute the object code for the work under the terms of Section 6. -Any executables containing that work also fall under Section 6, -whether or not they are linked directly with the Library itself. - - 6. As an exception to the Sections above, you may also combine or -link a "work that uses the Library" with the Library to produce a -work containing portions of the Library, and distribute that work -under terms of your choice, provided that the terms permit -modification of the work for the customer's own use and reverse -engineering for debugging such modifications. - - You must give prominent notice with each copy of the work that the -Library is used in it and that the Library and its use are covered by -this License. You must supply a copy of this License. If the work -during execution displays copyright notices, you must include the -copyright notice for the Library among them, as well as a reference -directing the user to the copy of this License. Also, you must do one -of these things: - - a) Accompany the work with the complete corresponding - machine-readable source code for the Library including whatever - changes were used in the work (which must be distributed under - Sections 1 and 2 above); and, if the work is an executable linked - with the Library, with the complete machine-readable "work that - uses the Library", as object code and/or source code, so that the - user can modify the Library and then relink to produce a modified - executable containing the modified Library. (It is understood - that the user who changes the contents of definitions files in the - Library will not necessarily be able to recompile the application - to use the modified definitions.) - - b) Use a suitable shared library mechanism for linking with the - Library. A suitable mechanism is one that (1) uses at run time a - copy of the library already present on the user's computer system, - rather than copying library functions into the executable, and (2) - will operate properly with a modified version of the library, if - the user installs one, as long as the modified version is - interface-compatible with the version that the work was made with. - - c) Accompany the work with a written offer, valid for at - least three years, to give the same user the materials - specified in Subsection 6a, above, for a charge no more - than the cost of performing this distribution. - - d) If distribution of the work is made by offering access to copy - from a designated place, offer equivalent access to copy the above - specified materials from the same place. - - e) Verify that the user has already received a copy of these - materials or that you have already sent this user a copy. - - For an executable, the required form of the "work that uses the -Library" must include any data and utility programs needed for -reproducing the executable from it. However, as a special exception, -the materials to be distributed need not include anything that is -normally distributed (in either source or binary form) with the major -components (compiler, kernel, and so on) of the operating system on -which the executable runs, unless that component itself accompanies -the executable. - - It may happen that this requirement contradicts the license -restrictions of other proprietary libraries that do not normally -accompany the operating system. Such a contradiction means you cannot -use both them and the Library together in an executable that you -distribute. - - 7. You may place library facilities that are a work based on the -Library side-by-side in a single library together with other library -facilities not covered by this License, and distribute such a combined -library, provided that the separate distribution of the work based on -the Library and of the other library facilities is otherwise -permitted, and provided that you do these two things: - - a) Accompany the combined library with a copy of the same work - based on the Library, uncombined with any other library - facilities. This must be distributed under the terms of the - Sections above. - - b) Give prominent notice with the combined library of the fact - that part of it is a work based on the Library, and explaining - where to find the accompanying uncombined form of the same work. - - 8. You may not copy, modify, sublicense, link with, or distribute -the Library except as expressly provided under this License. Any -attempt otherwise to copy, modify, sublicense, link with, or -distribute the Library is void, and will automatically terminate your -rights under this License. However, parties who have received copies, -or rights, from you under this License will not have their licenses -terminated so long as such parties remain in full compliance. - - 9. You are not required to accept this License, since you have not -signed it. However, nothing else grants you permission to modify or -distribute the Library or its derivative works. These actions are -prohibited by law if you do not accept this License. Therefore, by -modifying or distributing the Library (or any work based on the -Library), you indicate your acceptance of this License to do so, and -all its terms and conditions for copying, distributing or modifying -the Library or works based on it. - - 10. Each time you redistribute the Library (or any work based on the -Library), the recipient automatically receives a license from the -original licensor to copy, distribute, link with or modify the Library -subject to these terms and conditions. You may not impose any further -restrictions on the recipients' exercise of the rights granted herein. -You are not responsible for enforcing compliance by third parties with -this License. - - 11. If, as a consequence of a court judgment or allegation of patent -infringement or for any other reason (not limited to patent issues), -conditions are imposed on you (whether by court order, agreement or -otherwise) that contradict the conditions of this License, they do not -excuse you from the conditions of this License. If you cannot -distribute so as to satisfy simultaneously your obligations under this -License and any other pertinent obligations, then as a consequence you -may not distribute the Library at all. For example, if a patent -license would not permit royalty-free redistribution of the Library by -all those who receive copies directly or indirectly through you, then -the only way you could satisfy both it and this License would be to -refrain entirely from distribution of the Library. - -If any portion of this section is held invalid or unenforceable under any -particular circumstance, the balance of the section is intended to apply, -and the section as a whole is intended to apply in other circumstances. - -It is not the purpose of this section to induce you to infringe any -patents or other property right claims or to contest validity of any -such claims; this section has the sole purpose of protecting the -integrity of the free software distribution system which is -implemented by public license practices. Many people have made -generous contributions to the wide range of software distributed -through that system in reliance on consistent application of that -system; it is up to the author/donor to decide if he or she is willing -to distribute software through any other system and a licensee cannot -impose that choice. - -This section is intended to make thoroughly clear what is believed to -be a consequence of the rest of this License. - - 12. If the distribution and/or use of the Library is restricted in -certain countries either by patents or by copyrighted interfaces, the -original copyright holder who places the Library under this License may add -an explicit geographical distribution limitation excluding those countries, -so that distribution is permitted only in or among countries not thus -excluded. In such case, this License incorporates the limitation as if -written in the body of this License. - - 13. The Free Software Foundation may publish revised and/or new -versions of the Lesser General Public License from time to time. -Such new versions will be similar in spirit to the present version, -but may differ in detail to address new problems or concerns. - -Each version is given a distinguishing version number. If the Library -specifies a version number of this License which applies to it and -"any later version", you have the option of following the terms and -conditions either of that version or of any later version published by -the Free Software Foundation. If the Library does not specify a -license version number, you may choose any version ever published by -the Free Software Foundation. - - 14. If you wish to incorporate parts of the Library into other free -programs whose distribution conditions are incompatible with these, -write to the author to ask for permission. For software which is -copyrighted by the Free Software Foundation, write to the Free -Software Foundation; we sometimes make exceptions for this. Our -decision will be guided by the two goals of preserving the free status -of all derivatives of our free software and of promoting the sharing -and reuse of software generally. - - NO WARRANTY - - 15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO -WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW. -EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR -OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY -KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE -IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR -PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE -LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME -THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. - - 16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN -WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY -AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU -FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR -CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE -LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING -RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A -FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF -SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH -DAMAGES. - - END OF TERMS AND CONDITIONS - - How to Apply These Terms to Your New Libraries - - If you develop a new library, and you want it to be of the greatest -possible use to the public, we recommend making it free software that -everyone can redistribute and change. You can do so by permitting -redistribution under these terms (or, alternatively, under the terms of the -ordinary General Public License). - - To apply these terms, attach the following notices to the library. It is -safest to attach them to the start of each source file to most effectively -convey the exclusion of warranty; and each file should have at least the -"copyright" line and a pointer to where the full notice is found. - - - Copyright (C) - - This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - This library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with this library; if not, write to the Free Software - Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - -Also add information on how to contact you by electronic and paper mail. - -You should also get your employer (if you work as a programmer) or your -school, if any, to sign a "copyright disclaimer" for the library, if -necessary. Here is a sample; alter the names: - - Yoyodyne, Inc., hereby disclaims all copyright interest in the - library `Frob' (a library for tweaking knobs) written by James Random Hacker. - - , 1 April 1990 - Ty Coon, President of Vice - -That's all there is to it! - - diff --git a/scripts/jsunit/licenses/mpl-tri-license-c.txt b/scripts/jsunit/licenses/mpl-tri-license-c.txt deleted file mode 100644 index 376101a9d..000000000 --- a/scripts/jsunit/licenses/mpl-tri-license-c.txt +++ /dev/null @@ -1,35 +0,0 @@ -/* ***** BEGIN LICENSE BLOCK ***** - * Version: MPL 1.1/GPL 2.0/LGPL 2.1 - * - * The contents of this file are subject to the Mozilla Public License Version - * 1.1 (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.mozilla.org/MPL/ - * - * Software distributed under the License is distributed on an "AS IS" basis, - * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License - * for the specific language governing rights and limitations under the - * License. - * - * The Original Code is __________________________________________. - * - * The Initial Developer of the Original Code is - * ____________________________________________. - * Portions created by the Initial Developer are Copyright (C) 2___ - * the Initial Developer. All Rights Reserved. - * - * Contributor(s): - * - * Alternatively, the contents of this file may be used under the terms of - * either the GNU General Public License Version 2 or later (the "GPL"), or - * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), - * in which case the provisions of the GPL or the LGPL are applicable instead - * of those above. If you wish to allow use of your version of this file only - * under the terms of either the GPL or the LGPL, and not to allow others to - * use your version of this file under the terms of the MPL, indicate your - * decision by deleting the provisions above and replace them with the notice - * and other provisions required by the GPL or the LGPL. If you do not delete - * the provisions above, a recipient may use your version of this file under - * the terms of any one of the MPL, the GPL or the LGPL. - * - * ***** END LICENSE BLOCK ***** */ diff --git a/scripts/jsunit/licenses/mpl-tri-license-html.txt b/scripts/jsunit/licenses/mpl-tri-license-html.txt deleted file mode 100644 index 0bbcc806f..000000000 --- a/scripts/jsunit/licenses/mpl-tri-license-html.txt +++ /dev/null @@ -1,35 +0,0 @@ - diff --git a/scripts/jsunit/logging.properties b/scripts/jsunit/logging.properties deleted file mode 100644 index 03d623549..000000000 --- a/scripts/jsunit/logging.properties +++ /dev/null @@ -1,8 +0,0 @@ -.level=SEVERE - -handlers=java.util.logging.ConsoleHandler - -java.util.logging.ConsoleHandler.level=ALL -java.util.logging.ConsoleHandler.formatter=net.jsunit.LogFormatter - -net.jsunit.level=ALL \ No newline at end of file diff --git a/scripts/jsunit/readme.txt b/scripts/jsunit/readme.txt deleted file mode 100644 index 6b893a9ae..000000000 --- a/scripts/jsunit/readme.txt +++ /dev/null @@ -1,19 +0,0 @@ -JsUnit -Copyright (C) 2001-7 Edward Hieatt (edward@jsunit.net) - -This program is free software; you can redistribute it and/or -modify it under the terms of the GNU General Public License -as published by the Free Software Foundation; either version 2 -of the License, or (at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program; if not, write to the Free Software -Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. - -Please see http://www.jsunit.net/ for JsUnit documentation and -the "licenses" directory for license information. \ No newline at end of file diff --git a/scripts/jsunit/testRunner.html b/scripts/jsunit/testRunner.html deleted file mode 100644 index 1af19e0e4..000000000 --- a/scripts/jsunit/testRunner.html +++ /dev/null @@ -1,67 +0,0 @@ - - - - - -JsUnit Test Runner - - - - - - - - - - - - - - - diff --git a/scripts/jsunit/tests/TestPageTest.html b/scripts/jsunit/tests/TestPageTest.html deleted file mode 100644 index 3692144bf..000000000 --- a/scripts/jsunit/tests/TestPageTest.html +++ /dev/null @@ -1,55 +0,0 @@ - - - - - TestPage Tests - - - - - - - - - - -

    TestPage Tests

    - - diff --git a/scripts/jsunit/tests/UiManagerTest.html b/scripts/jsunit/tests/UiManagerTest.html deleted file mode 100644 index 32d721c30..000000000 --- a/scripts/jsunit/tests/UiManagerTest.html +++ /dev/null @@ -1,44 +0,0 @@ - - - - - Test UiManager classes - - - - - - - - - - - - diff --git a/scripts/jsunit/tests/failingTest.html b/scripts/jsunit/tests/failingTest.html deleted file mode 100644 index ac3a1102c..000000000 --- a/scripts/jsunit/tests/failingTest.html +++ /dev/null @@ -1,25 +0,0 @@ - - - - - - - - - - -

    JsUnit Failing/Erroring Tests

    - -

    This page contains failing and erroring tests. It exists for developers of the framework to experiment with.

    - - diff --git a/scripts/jsunit/tests/jsUnitAjaxTest.html b/scripts/jsunit/tests/jsUnitAjaxTest.html deleted file mode 100644 index 8003eb7e3..000000000 --- a/scripts/jsunit/tests/jsUnitAjaxTest.html +++ /dev/null @@ -1,49 +0,0 @@ - - - - - Tests for jsUnitAjax.js - - - - - - - - -

    JsUnit AJAX Tests

    - -

    This page contains tests for the JsUnit AJAX library. To see them, take a look at the source.

    - - \ No newline at end of file diff --git a/scripts/jsunit/tests/jsUnitAssertionTests.html b/scripts/jsunit/tests/jsUnitAssertionTests.html deleted file mode 100644 index e05d55efb..000000000 --- a/scripts/jsunit/tests/jsUnitAssertionTests.html +++ /dev/null @@ -1,483 +0,0 @@ - - - -JsUnit Assertion Tests - - - - - - - -

    JsUnit Assertion Tests

    - -

    This page contains tests for the JsUnit Assertion functions. To see them, take a look at the source.

    - - diff --git a/scripts/jsunit/tests/jsUnitFrameworkUtilityTests.html b/scripts/jsunit/tests/jsUnitFrameworkUtilityTests.html deleted file mode 100644 index 80a959cfd..000000000 --- a/scripts/jsunit/tests/jsUnitFrameworkUtilityTests.html +++ /dev/null @@ -1,85 +0,0 @@ - - - - - JsUnit StackTrace Tests - - - - - - -

    JsUnit Utility Tests

    - -

    This page contains tests for the JsUnit framework uses. To see them, take a look at the source.

    - - diff --git a/scripts/jsunit/tests/jsUnitMockTimeoutTest.html b/scripts/jsunit/tests/jsUnitMockTimeoutTest.html deleted file mode 100644 index 52d87ec81..000000000 --- a/scripts/jsunit/tests/jsUnitMockTimeoutTest.html +++ /dev/null @@ -1,185 +0,0 @@ - - - - -Tests for jsUnitMockTimeout.js - - - - - - - -

    JsUnit Mock Timeout Tests

    - -

    This page contains tests for the JsUnit Clock library. To see them, take a look at the source.

    - - \ No newline at end of file diff --git a/scripts/jsunit/tests/jsUnitOnLoadTests.html b/scripts/jsunit/tests/jsUnitOnLoadTests.html deleted file mode 100644 index 6259ba112..000000000 --- a/scripts/jsunit/tests/jsUnitOnLoadTests.html +++ /dev/null @@ -1,26 +0,0 @@ - - - - - JsUnit OnLoad Tests - - - - - - -

    JsUnit OnLoad Tests

    - -

    This page contains tests for the JsUnit Framework. To see them, take a look at the source.

    - - diff --git a/scripts/jsunit/tests/jsUnitParamsTests.html b/scripts/jsunit/tests/jsUnitParamsTests.html deleted file mode 100644 index 28a036cde..000000000 --- a/scripts/jsunit/tests/jsUnitParamsTests.html +++ /dev/null @@ -1,58 +0,0 @@ - - - - - Test JsUnit.Params object - - - - - - - - -

    JsUnit.Params tests

    - - diff --git a/scripts/jsunit/tests/jsUnitRestoredHTMLDivTests.html b/scripts/jsunit/tests/jsUnitRestoredHTMLDivTests.html deleted file mode 100644 index 5a0dbdf80..000000000 --- a/scripts/jsunit/tests/jsUnitRestoredHTMLDivTests.html +++ /dev/null @@ -1,46 +0,0 @@ - - - - - JsUnit Framework tests - - - - - - -

    JsUnit Framework tests

    - -

    This page contains tests for the JsUnit setUp and tearDown framework. To see them, take a look at the source.

    - -
    - - foo - - -
    - - - diff --git a/scripts/jsunit/tests/jsUnitSetUpTearDownTests.html b/scripts/jsunit/tests/jsUnitSetUpTearDownTests.html deleted file mode 100644 index 4a2a71b29..000000000 --- a/scripts/jsunit/tests/jsUnitSetUpTearDownTests.html +++ /dev/null @@ -1,47 +0,0 @@ - - - - - JsUnit Framework tests - - - - - - -

    JsUnit Framework tests

    - -

    This page contains tests for the JsUnit setUp and tearDown framework. To see them, take a look at the source.

    - - diff --git a/scripts/jsunit/tests/jsUnitTestLoadData.html b/scripts/jsunit/tests/jsUnitTestLoadData.html deleted file mode 100644 index 0fd74811a..000000000 --- a/scripts/jsunit/tests/jsUnitTestLoadData.html +++ /dev/null @@ -1,39 +0,0 @@ - - - - - Test loading a local HTML Document - - - - - - -

    JsUnit Asynchronous Load Tests

    - -

    This page tests loading data documents asynchronously. To see them, take a look at the source.

    - - diff --git a/scripts/jsunit/tests/jsUnitTestManagerTests.html b/scripts/jsunit/tests/jsUnitTestManagerTests.html deleted file mode 100644 index 6cbe7e05b..000000000 --- a/scripts/jsunit/tests/jsUnitTestManagerTests.html +++ /dev/null @@ -1,138 +0,0 @@ - - - - - Test loading a local HTML Document - - - - - - - - - - -

    JsUnit test suite tests

    - - diff --git a/scripts/jsunit/tests/jsUnitTestSetUpPages.html b/scripts/jsunit/tests/jsUnitTestSetUpPages.html deleted file mode 100644 index 5cb5083fc..000000000 --- a/scripts/jsunit/tests/jsUnitTestSetUpPages.html +++ /dev/null @@ -1,36 +0,0 @@ - - - - - Test loading a local HTML Document - - - - - - -

    JsUnit Asynchronous setUpPages

    - -

    This page tests asynchronous pre tests. To see them, take a look at the source.

    - - - diff --git a/scripts/jsunit/tests/jsUnitTestSuite.html b/scripts/jsunit/tests/jsUnitTestSuite.html deleted file mode 100644 index c2a6bca56..000000000 --- a/scripts/jsunit/tests/jsUnitTestSuite.html +++ /dev/null @@ -1,48 +0,0 @@ - - - - - JsUnit Test Suite - - - - - - -

    JsUnit Test Suite

    - -

    This page contains a suite of tests for testing JsUnit.

    - - diff --git a/scripts/jsunit/tests/jsUnitTestSuiteTests.html b/scripts/jsunit/tests/jsUnitTestSuiteTests.html deleted file mode 100644 index a79a47f30..000000000 --- a/scripts/jsunit/tests/jsUnitTestSuiteTests.html +++ /dev/null @@ -1,67 +0,0 @@ - - - - - Test loading a local HTML Document - - - - - - -

    JsUnit test suite tests

    - - diff --git a/scripts/jsunit/tests/jsUnitUtilityTests.html b/scripts/jsunit/tests/jsUnitUtilityTests.html deleted file mode 100644 index 37f7197e8..000000000 --- a/scripts/jsunit/tests/jsUnitUtilityTests.html +++ /dev/null @@ -1,101 +0,0 @@ - - - - - JsUnit Utility Tests - - - - - - -

    JsUnit Utility Tests

    - -

    This page contains tests for the utility functions - that JsUnit uses. To see them, take a look at the source.

    - - diff --git a/scripts/yuicompressor/yuicompressor-2.4.2.jar b/scripts/yuicompressor/yuicompressor-2.4.2.jar deleted file mode 100644 index c29470bd0..000000000 Binary files a/scripts/yuicompressor/yuicompressor-2.4.2.jar and /dev/null differ