Files
@ 07844f0bc410
Branch filter:
Location: kallithea/docs/usage/statistics.rst - annotation
07844f0bc410
1.2 KiB
text/prs.fallenstein.rst
tests: get rid of yield-based tests
yield-based tests (tests that are actually generating tests) are a nose
feature which were also supported in pytest. However, since pytest-3.0 this
type of tests is deprecated, they will be removed in pytest-4.0.
The only yield tests present in the kallithea test suite are simply yielding
a method that does a single assert. The benefit of having each of these
asserts in a separate test is not very high.
Replace the yield by a direct call to the previously-yielded method. This
means the total test count reduces but the actual amount of test code is the
same.
yield-based tests (tests that are actually generating tests) are a nose
feature which were also supported in pytest. However, since pytest-3.0 this
type of tests is deprecated, they will be removed in pytest-4.0.
The only yield tests present in the kallithea test suite are simply yielding
a method that does a single assert. The benefit of having each of these
asserts in a separate test is not very high.
Replace the yield by a direct call to the previously-yielded method. This
means the total test count reduces but the actual amount of test code is the
same.
bbd499c7b55e bbd499c7b55e ac7e43325817 ac7e43325817 ac7e43325817 bbd499c7b55e 5ae8e644aa88 ac7e43325817 ac7e43325817 ac7e43325817 bbd499c7b55e ac7e43325817 ac7e43325817 ac7e43325817 ac7e43325817 ac7e43325817 bbd499c7b55e ac7e43325817 ac7e43325817 ac7e43325817 bbd499c7b55e ac7e43325817 ac7e43325817 ac7e43325817 bbd499c7b55e ac7e43325817 bbd499c7b55e ac7e43325817 ac7e43325817 ac7e43325817 ac7e43325817 | .. _statistics:
=====================
Repository statistics
=====================
Kallithea has a *repository statistics* feature, disabled by default. When
enabled, the amount of commits per committer is visualized in a timeline. This
feature can be enabled using the ``Enable statistics`` checkbox on the
repository ``Settings`` page.
The statistics system makes heavy demands on the server resources, so
in order to keep a balance between usability and performance, statistics are
cached inside the database and gathered incrementally.
When Celery is disabled:
On each first visit to the summary page a set of 250 commits are parsed and
added to the statistics cache. This incremental gathering also happens on each
visit to the statistics page, until all commits are fetched.
Statistics are kept cached until additional commits are added to the
repository. In such a case Kallithea will only fetch the new commits when
updating its statistics cache.
When Celery is enabled:
On the first visit to the summary page, Kallithea will create tasks that will
execute on Celery workers. These tasks will gather all of the statistics until
all commits are parsed. Each task parses 250 commits, then launches a new
task.
|