"Fossies" - the Fresh Open Source Software Archive  

Source code changes of the file "doc/build/CONTRIBUTING.txt" between
modules-5.1.1.tar.bz2 and modules-5.2.0.tar.bz2

About: The Environment Modules package provides for the dynamic modification of a user’s environment via modulefiles.

CONTRIBUTING.txt  (modules-5.1.1.tar.bz2):CONTRIBUTING.txt  (modules-5.2.0.tar.bz2)
skipping to change at line 89 skipping to change at line 89
----------------- -----------------
Run the basic test suite with: Run the basic test suite with:
make test make test
This only runs the tests for the current environment. GitHub Actions This only runs the tests for the current environment. GitHub Actions
and Cirrus CI will run the full suite when you submit your pull and Cirrus CI will run the full suite when you submit your pull
request. request.
There are more than 17 000 test cases thus it generally takes around
12 minutes to run the full test suite. It can be executed in *quick*
mode to just run the most essential tests in about 1 minute:
make test QUICKTEST=y
The **script/mt** utility is also available to just execute one or
several testfiles. If a test fails, **script/mt** reports the *diff*
comparison between expected and actual results. For instance, to only
execute "testsuite/modules.50-cmds/470-variant.exp" testfile, run:
script/mt 50/470
Run **script/mt** with "--help" option to get usage details and syntax
to select several testfiles.
Running test coverage Running test coverage
--------------------- ---------------------
Generating a report of lines that do not have test coverage can Generating a report of lines that do not have test coverage can
indicate where to start contributing or what your tests should cover indicate where to start contributing or what your tests should cover
for the code changes you submit. for the code changes you submit.
Run "make test COVERAGE=y" which will automatically setup the Nagelfar Run "make test COVERAGE=y" which will automatically setup the Nagelfar
Tcl code coverage tool in your "modules" development directory and Tcl code coverage tool in your "modules" development directory and
instrument the source Tcl scripts. Then the full testsuite will be run instrument the source Tcl scripts. Then the full testsuite will be run
in coverage mode and an annotated script will be produced for each Tcl in coverage mode and an annotated script will be produced for each Tcl
script in "tcl" source directory ("tcl/*.tcl_m"): script in "tcl" source directory ("tcl/*.tcl_m"):
make test COVERAGE=y make test COVERAGE=y
# then open tcl/*.tcl_m files and look for ';# Not covered' lines # then open tcl/*.tcl_m files and look for ';# Not covered' lines
The **script/mt** utility may also be used to run the test suite in
coverage mode on full testsuite or on a few testfiles:
script/mt cov 70/{280,290}
Running linter tests
--------------------
Linter tools check code syntax and report issues and good practices to
follow. Modules uses Nagelfar to check syntax of Tcl scripts and
ShellCheck to lint sh, bash and ksh scripts.
Run "make testlint" to lint all sh, bash, ksh and Tcl scripts in your
local Modules repository.
The **script/mt** utility may also be used to run the full *lint* test
suite or just specific testfiles. For instance to only lint Tcl
scripts:
script/mt lint 00/030
Check performances
------------------
The **script/mb** utility checks from your local repository the
performances of major releases of Modules and current branch. Current
ongoing modifications are first stashed, then **modulecmd.tcl** of the
releases and current branch are built. Different tests are run against
each version and the execution time of each test is reported in
millisecond:
$ script/mb
| v4.1.4 | v4.3.1 | v4.5.3 | v4.7.1 | v5.1.1 | main |
----------+----------+----------+----------+----------+----------+----------+
help | 9 | 12 | 12 | 15 | 16 | 16 |
avail | 61 | 67 | 76 | 82 | 91 | 86 |
avail2 | 11 | 16 | 19 | 21 | 23 | 23 |
avail3 | - | - | - | 120 | 128 | 130 |
whatis | 208 | 155 | 233 | 216 | 221 | 224 |
whatis2 | 10 | 15 | 17 | 20 | 21 | 22 |
whatis3 | - | - | - | 287 | 307 | 314 |
apropos | 208 | 153 | 222 | 210 | 220 | 223 |
load | 66 | 87 | 134 | 162 | 120 | 126 |
list | 24 | 23 | 33 | 22 | 25 | 25 |
unload | 46 | 24 | 25 | 29 | 31 | 31 |
It helps to verify that current work committed in local repository
does not impact performances on simple test scenarios. Run
**script/mb** with "--help" option to get its usage details.
The "profile" mode may also be interesting to learn what are the
internal procedures of **modulecmd.tcl** taking most of the execution
time for each test:
script/mb profile
Building the docs Building the docs
----------------- -----------------
Build the docs in the "doc" directory using Sphinx: Build the docs in the "doc" directory using Sphinx:
cd doc cd doc
make html make html
Open "_build/html/index.html" in your browser to view the docs. Open "_build/html/index.html" in your browser to view the docs.
 End of changes. 2 change blocks. 
0 lines changed or deleted 72 lines changed or added

Home  |  About  |  Features  |  All  |  Newest  |  Dox  |  Diffs  |  RSS Feeds  |  Screenshots  |  Comments  |  Imprint  |  Privacy  |  HTTP(S)