summaryrefslogtreecommitdiffstats
path: root/_testing/README.markdown
diff options
context:
space:
mode:
authorAilin Nemui2014-06-16 04:11:29 +0200
committerAilin Nemui2014-06-24 18:28:59 +0200
commitca374a4a1acec99b19486549071ef6c9968b749a (patch)
treeec4f7f7e66b423c392b5dbb46e424ec56a43247c /_testing/README.markdown
parent525b2128888f1e3ca2088a54cc086b102dbfe690 (diff)
downloadscripts.irssi.org-ca374a4a1acec99b19486549071ef6c9968b749a.tar.bz2
Add travis testing to Irssi scripts.
Diffstat (limited to '_testing/README.markdown')
-rw-r--r--_testing/README.markdown44
1 files changed, 44 insertions, 0 deletions
diff --git a/_testing/README.markdown b/_testing/README.markdown
new file mode 100644
index 0000000..0a5b751
--- /dev/null
+++ b/_testing/README.markdown
@@ -0,0 +1,44 @@
+Irssi Scripts Testing
+---------------------
+
+Here, combined with the .travis.yml in root, are the files to do some
+test reports on Irssi scripts.
+
+Main test runner is run-test.zsh. These tests are done:
+* Try to load the script in irssi
+* Check perlcritic report
+
+Evaluation of test success is done in report-test.zsh. Currently the
+following criteria lead to fail:
+* Script doesn't compile/load
+* Script doesn't use strict; or uses two-arg "open"
+* Script doesn't define %IRSSI and $VERSION
+
+The output table is as follows:
+- LOAD: did the script compile/load successfully?
+- HDR: was %IRSSI and $VERSION given?
+- CRIT: did it use strict; and three-arg "open"?
+- SCORE: the cumulated perlcritic score, high score *might* be an
+ indication of bad code style, but this should be read with
+ extreme care
+- PASS: did it pass the test as by the criteria defined above?
+
+Detailed perlcitic report and Irssi log can be viewed from
+show-failures.zsh output. It also includes the extracted .yml
+definition *if* the script compiled cleanly. This can be used as a
+guidance for reviewers, but a lot of perl "critic" is stupid and a
+style question only.
+
+Errors and warnings visible in the Irssi log can serve as further
+pointers to both authors and reviewers.
+
+The following keys are recognised in config.yml:
+
+* additional_system_deps: - list of ubuntu packages to install via
+ apt-get
+* cpan:
+ * broken_tests: - modules where to skip tests, that would otherwise
+ hang Travis
+ * broken_modules: - modules to never auto-install, for example
+ because they hang Travis
+* whitelist: - list of scripts that are allowed to fail