Yetixx
Yetixx
Server: nginx/1.28.0
System: Linux instance-rr9enuui 6.1.0-15-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.66-1 (2023-12-09) x86_64
User: www (1000)
PHP: 8.0.26
Disabled: passthru,exec,system,putenv,chroot,chgrp,chown,shell_exec,popen,proc_open,pcntl_exec,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru,pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,imap_open,apache_setenv
Upload Files
File: //usr/share/doc/reportbug/README.source
Source layout
=============

The source tree for ``reportbug`` is organised this way:

* Top level

  * Installation tools

* Debian packaging

  * ``debian/`` contains the control files used to build the Debian
    source and binary packages.

* Programs

  * ``bin/`` contains the end-user programs (e.g. ``reportbug``,
    ``querybts``).

* Libraries

  * ``reportbug/`` contains the Python library module package used by
    the programs.

* `Unit testing framework`_

  * ``test/`` contains the unit test suite. Unit test modules are
    discovered and run using the ``pytest-3`` program, and are named
    as ``test_*.py``.

* Documentation

  * ``doc/`` contains documentation for both users and developers.

* Manual pages

  * ``man/`` contains the manual pages for the programs.

Unit testing framework
======================

The reportbug source package now has a unit testing framework.

The directory ``test/`` contains unit test modules and supporting
files. New unit test modules should be added to this directory and
named ``test_*.py``.

The unit test suite depends on the `python3-pytest` package being
installed, to make the ``pytest-3`` command available. The unit tests
themselves can be written using the `unittest` modules in the standard
Python library.

The ``data/`` contains some additional files required by tests, such as
control files, scripts, etc.

``make`` targets for testing and quality checks
-----------------------------------------------

The following ``make`` targets are useful for testing and related
tasks.

* ``make tests`` runs the unit test suite, preceded by a timestamp
  banner, and reports any test failures or "OK" if all tests pass. Coverage
  reports are generated automatically.

* ``make quicktests`` runs the unit test suite, but only for those
  tests that dont require network access, which can be slow sometimes
  (hence the name)

* ``make lint`` runs the `flake8` code checker on all code modules and
  programs.

  This requires the `flake8` package to be installed. See its
  documentation for more about its operation.

..
    Local Variables:
    coding: utf-8
    mode: rst
    End:
    vim: filetype=rst :