diff options
author | Nik Nyby <nikolas@gnu.org> | 2015-01-17 17:12:36 -0500 |
---|---|---|
committer | Nik Nyby <nikolas@gnu.org> | 2015-01-17 17:12:36 -0500 |
commit | ada88090ead2c3b9d0804794c5f20f9b24d1c2b1 (patch) | |
tree | 2838a7eee6c5d74094216acebd86915e0ea1de42 /doc/manual/html_node/Tests.html | |
download | librejsxul-ada88090ead2c3b9d0804794c5f20f9b24d1c2b1.tar.lz librejsxul-ada88090ead2c3b9d0804794c5f20f9b24d1c2b1.tar.xz librejsxul-ada88090ead2c3b9d0804794c5f20f9b24d1c2b1.zip |
Import to new git repository
The old repository was using almost 100mb of space because of all
the unnecessary files in the history. So I've imported the code to a
new git repository. Unfortunately the history isn't viewable from this
repository anymore. To see what happened with LibreJS before 2015, see
the old Bazaar repo here: http://bzr.savannah.gnu.org/lh/librejs/
Diffstat (limited to 'doc/manual/html_node/Tests.html')
-rw-r--r-- | doc/manual/html_node/Tests.html | 160 |
1 files changed, 160 insertions, 0 deletions
diff --git a/doc/manual/html_node/Tests.html b/doc/manual/html_node/Tests.html new file mode 100644 index 0000000..2e0e5d8 --- /dev/null +++ b/doc/manual/html_node/Tests.html @@ -0,0 +1,160 @@ +<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> +<html> +<!-- This manual is for GNU LibreJS (version 6.0.8.20150117, 17 January 2015), +a GNU IceCat extension to detect and block nonfree nontrivial +JavaScript on webpages. + +Copyright (C) 2011 2012 2014 Loic J. Duros + +Permission is granted to copy, distribute and/or modify this document +under the terms of the GNU Free Documentation License, Version 1.3 or +any later version published by the Free Software Foundation; with no +Invariant Sections, with no Front-Cover Texts, and with no Back-Cover +Texts. A copy of the license is included in the section entitled +"GNU Free Documentation License". --> +<!-- Created by GNU Texinfo 5.2, http://www.gnu.org/software/texinfo/ --> +<head> +<title>GNU LibreJS 6.0.8.20150117: Tests</title> + +<meta name="description" content="GNU LibreJS 6.0.8.20150117: Tests"> +<meta name="keywords" content="GNU LibreJS 6.0.8.20150117: Tests"> +<meta name="resource-type" content="document"> +<meta name="distribution" content="global"> +<meta name="Generator" content="makeinfo"> +<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> +<link href="index.html#Top" rel="start" title="Top"> +<link href="index.html#SEC_Contents" rel="contents" title="Table of Contents"> +<link href="index.html#Top" rel="up" title="Top"> +<link href="GNU-Free-Documentation-License.html#GNU-Free-Documentation-License" rel="next" title="GNU Free Documentation License"> +<link href="LibreJS-Internals.html#LibreJS-Internals" rel="prev" title="LibreJS Internals"> +<style type="text/css"> +<!-- +a.summary-letter {text-decoration: none} +blockquote.smallquotation {font-size: smaller} +div.display {margin-left: 3.2em} +div.example {margin-left: 3.2em} +div.indentedblock {margin-left: 3.2em} +div.lisp {margin-left: 3.2em} +div.smalldisplay {margin-left: 3.2em} +div.smallexample {margin-left: 3.2em} +div.smallindentedblock {margin-left: 3.2em; font-size: smaller} +div.smalllisp {margin-left: 3.2em} +kbd {font-style:oblique} +pre.display {font-family: inherit} +pre.format {font-family: inherit} +pre.menu-comment {font-family: serif} +pre.menu-preformatted {font-family: serif} +pre.smalldisplay {font-family: inherit; font-size: smaller} +pre.smallexample {font-size: smaller} +pre.smallformat {font-family: inherit; font-size: smaller} +pre.smalllisp {font-size: smaller} +span.nocodebreak {white-space:nowrap} +span.nolinebreak {white-space:nowrap} +span.roman {font-family:serif; font-weight:normal} +span.sansserif {font-family:sans-serif; font-weight:normal} +ul.no-bullet {list-style: none} +--> +</style> + + +</head> + +<body lang="en" bgcolor="#FFFFFF" text="#000000" link="#0000FF" vlink="#800080" alink="#FF0000"> +<a name="Tests"></a> +<div class="header"> +<p> +Next: <a href="GNU-Free-Documentation-License.html#GNU-Free-Documentation-License" accesskey="n" rel="next">GNU Free Documentation License</a>, Previous: <a href="LibreJS-Internals.html#LibreJS-Internals" accesskey="p" rel="prev">LibreJS Internals</a>, Up: <a href="index.html#Top" accesskey="u" rel="up">Top</a> [<a href="index.html#SEC_Contents" title="Table of contents" rel="contents">Contents</a>]</p> +</div> +<hr> +<a name="Tests-1"></a> +<h2 class="appendix">Appendix C Tests</h2> + + +<p>In order to better understand how LibreJS works, you can try to visit +these pages with LibreJS installed and enabled and see how they are +being processed: +</p> +<ul> +<li> <a href="http://lduros.net/assets/librejs/tests/trivial-inline-trivial-external/">http://lduros.net/assets/librejs/tests/trivial-inline-trivial-external/</a> +This page contains trivial on-page JavaScript code, and an external +script that contains trivial JavaScript code. Therefore, all JavaScript +is being executed. + + +</li><li> <a href="http://lduros.net/assets/librejs/tests/trivial-inline-nontrivial-external/">http://lduros.net/assets/librejs/tests/trivial-inline-nontrivial-external/</a> +The on-page script here is trivial and uses a built-in method, but the +external script in this page is nontrivial (defines a function.) The +external script is blocked, the inline script is executed. + +</li><li> <a href="http://lduros.net/assets/librejs/tests/nontrivial-inline-trivial-external/">http://lduros.net/assets/librejs/tests/nontrivial-inline-trivial-external/</a> +This page contains nontrivial code on page, and trivial code in its +external page. All JavaScript is <em>removed</em> from the page, and the +external script is never analyzed, since the nontrivial conditions are +already met in the page. + +</li><li> <a href="http://lduros.net/assets/librejs/tests/free-inline-free-external/">http://lduros.net/assets/librejs/tests/free-inline-free-external/</a> +This page contains free on-page (GPL 3) JavaScript, and free external +Javascript. Therefore all JavaScript is being executed. + +</li><li> <a href="http://lduros.net/assets/librejs/tests/free-inline-nonfree-nontrivial-external/">http://lduros.net/assets/librejs/tests/free-inline-nonfree-nontrivial-external/</a> +This page contains free on-page JavaScript. The external script contains +nonfree nontrivial JavaScript (AJAX request). The free code that is +inline is executed, but the external file is blocked. + +</li><li> <a href="http://lduros.net/assets/librejs/tests/intrinsec-event/">http://lduros.net/assets/librejs/tests/intrinsec-event/</a> This page +contains trivial on-page code, with an intrinsic event in an html +attribute (onload). All JavaScript is being executed. + +</li><li> <a href="http://lduros.net/assets/librejs/tests/trivial-inline-free-external-defines-function/">http://lduros.net/assets/librejs/tests/trivial-inline-free-external-defines-function/</a> +This page contains on-page trivial JavaScript (only makes a window alert +and loads an external script using the html <script> tag with the src +attribute. The external script is free (GPL v3), and since it is only +nontrivial because it defines a function, the on-page trivial code is +allowed to use it. All JavaScript is being executed. + +</li><li> <a href="http://lduros.net/assets/librejs/tests/trivial-inline-free-external-writes-script/">http://lduros.net/assets/librejs/tests/trivial-inline-free-external-writes-script/</a> +This page contains trivial on-page JavaScript code, and loads an +external script that is free. Since no function is defined, the external +script is being analyzed. The external script is free. Trivial here is +not allowed because the external script, although free, writes a +script. The inline trivial script should also have a free license notice +for it to be interpreted. + +</li><li> <a href="http://lduros.net/assets/librejs/tests/shelltypist/demo/real-life-example-with-jquery-free.html">http://lduros.net/assets/librejs/tests/shelltypist/demo/real-life-example-with-jquery-free.html</a> +This is a real-life example of a small jQuery plugin. The on-page +JavaScript code has a free license. The jQuery external file has a free +licensed. The shelltypist.js file has a free license as well. All +licenses are defined between <code>@licstart</code> and <code>@licend</code>. All +JavaScript is executed. + +</li><li> <a href="http://lduros.net/assets/librejs/tests/shelltypist/demo/same-page-without-free-license.html">http://lduros.net/assets/librejs/tests/shelltypist/demo/same-page-without-free-license.html</a> +This is the same page than the previous example, except it does not have +a free license for the main HTML page on-page script. While the actual +code there is trivial, since jQuery defines methods that make use of +AJAX, trivial code is not allowed, and no JavaScript is executed. + +</li><li> <a href="http://lduros.net/assets/librejs/tests/test-labels/">http://lduros.net/assets/librejs/tests/test-labels/</a> This page +contains JavaScript (jQuery minified) that does not have proper license +information in the file, as it has no <code>@licstart</code> <code>@licend</code> +comment. It would be considered nonfree, however, the page itself uses +the JavaScript Web Labels method. On the page itself, you will find a +link labeled “JavaScript License Information”, which leads to a page +that contains a properly formatted table with the required data on the +external JavaScript file. LibreJS visits this link and determines the +version of jQuery linked from the original page is the one listed there, +and flags it as free. All JavaScript is executed (and the title should +turn green.) + +</li></ul> + + +<hr> +<div class="header"> +<p> +Next: <a href="GNU-Free-Documentation-License.html#GNU-Free-Documentation-License" accesskey="n" rel="next">GNU Free Documentation License</a>, Previous: <a href="LibreJS-Internals.html#LibreJS-Internals" accesskey="p" rel="prev">LibreJS Internals</a>, Up: <a href="index.html#Top" accesskey="u" rel="up">Top</a> [<a href="index.html#SEC_Contents" title="Table of contents" rel="contents">Contents</a>]</p> +</div> + + + +</body> +</html> |