#12024: 90% doctest coverage thrust metaticket
---------------------------+------------------------------------------------
Reporter: was | Owner: mvngu
Type: enhancement | Status: new
Priority: major | Milestone: sage-4.8
Component: doctest | Keywords:
Work_issues: | Upstream: N/A
Reviewer: | Author:
Merged: | Dependencies:
---------------------------+------------------------------------------------
Description changed by was:
Old description:
> After deleting the server directory we need to add doctests to about
> 588 more functions to get coverage to 90%, which is a major goal for
> sage-5.0, which we've been working on getting to for over a year now.
> I did an audit and came up with about 350 functions in 18 files for
> which adding coverage will not be too hard.
>
> Just edit the ticket description and add your name after the * that
> you will get coverage to 100% on that file. You an also create a
> ticket with your tests (put #number) in. Then it will be easy to
> referee all these doctest patches. Try to make different tickets
> if/when you find bugs, and restrict your ticket to just doctests so it
> is easy to referee. You can also add another file to the list.
>
> Probably Easy:
>
> * (William Stein, #12025 - needs review) monoids/monoid.py: 0% (0 of 3)
> -- easy
>
> * algebras/free_algebra_quotient_element.py: 0% (0 of 12)
>
> * databases/stein_watkins.py: 0% (0 of 15) -- easy, since there are tons
> of examples at the top already
>
> * gsl/interpolation.pyx: 0% (0 of 9) -- easy, examples at top and easy
> math
>
> * interfaces/psage.py: 0% (0 of 13) -- easy, since lots of examples at
> top
>
> * matrix/benchmark.py: 0% (0 of 29) -- easy; just run each function and
> paste into an EXAMPLES:: section. This would also provide some useful
> additional testing. Maybe use non-default arguments so not too slow.
>
> * misc/log.py: 0% (0 of 42) -- just make object and call methods; easy
>
> * algebras/free_algebra_quotient.py: 6% (1 of 16) -- there is a big
> example in there -- just use it to construct similar examples everywhere
> else int he file.
>
> Probably Medium:
>
> * (Fredrick and Harald, #8791 -- needs review):
> libs/mpmath/ext_main.pyx: 7% (8 of 111) -- How the *hell* did this get
> into Sage with a coverage score of 7%?!!?? This was added several years
> after we started a 100% doctest policy. This appeared in
> http://trac.sagemath.org/sage_trac/ticket/8159 where the positive review
> is from Harald Schilly: "That was easy, all tests pass ... green light
> from me! I'm setting this to needs_review, and start with a positiv
> review from me." Yes, it's easy for all tests to pass when there are
> only 7% tests. Oops. It will be a lot of work to properly doctest this
> file, but much of it is straightforward (e.g., examples for the mpnumber)
> class.
>
> * rings/polynomial/polynomial_compiled.pyx: 0% (0 of 20) -- just a bunch
> of little classes for working with "optimized" polynomials, which is
> actually used somewhere, evidently. Not a single example. Either
> doctest it completely, by following how it is used by
> polynomial_element.pyx, or delete it because maybe fast_callable is
> better? But watch out for large degree, since fast_callable segfaults if
> the degree is large, so this polynomial_compiled.pyx might have some real
> value.
>
> * media/wav.py: 0% (0 of 25) -- mostly just a bunch of functions to get
> basic info about a wave file; what makes this harder is you have to get a
> .wav file and put it somewhere in Sage to be used for testing. You can
> probably generate an empty wave file by using the kwds constructor of the
> class, save it to a temp file, and use it, but that is boring.
>
> * matrix/matrix_window.pyx: 0% (0 of 26) -- look at some code elsewhere
> that uses this, and just go through examples; probably not so hard
> * matrix/matrix_window_modn_dense.pyx: 0% (0 of 11)
>
> Probably Harder:
>
> * categories/action.pyx: 0% (0 of 31)
>
> Delete from SAGE?!:
>
> * databases/bz2Pickle.py -- looks stupid and not used anywhere!
>
> * databases/db.py: 0% (0 of 21) -- also maybe not used anywhere; I think
> we shoudl remove ZODB anyways.
>
> * databases/gamma0wt2.py: 0% (0 of 7) -- delete
New description:
After deleting the server directory we need to add doctests to about
588 more functions to get coverage to 90%, which is a major goal for
sage-5.0, which we've been working on getting to for over a year now.
I did an audit and came up with about 350 functions in 18 files for
which adding coverage will not be too hard.
Just edit the ticket description and add your name after the * that
you will get coverage to 100% on that file. You an also create a
ticket with your tests (put #number) in. Then it will be easy to
referee all these doctest patches. Try to make different tickets
if/when you find bugs, and restrict your ticket to just doctests so it
is easy to referee. You can also add another file to the list.
Probably Easy:
* (William Stein, #12025 - needs review) monoids/monoid.py: 0% (0 of 3)
-- easy
* algebras/free_algebra_quotient_element.py: 0% (0 of 12)
* databases/stein_watkins.py: 0% (0 of 15) -- easy, since there are tons
of examples at the top already
* gsl/interpolation.pyx: 0% (0 of 9) -- easy, examples at top and easy
math
* interfaces/psage.py: 0% (0 of 13) -- easy, since lots of examples at
top
* matrix/benchmark.py: 0% (0 of 29) -- easy; just run each function and
paste into an EXAMPLES:: section. This would also provide some useful
additional testing. Maybe use non-default arguments so not too slow.
* misc/log.py: 0% (0 of 42) -- just make object and call methods; easy
* algebras/free_algebra_quotient.py: 6% (1 of 16) -- there is a big
example in there -- just use it to construct similar examples everywhere
else int he file.
Probably Medium:
* (Fredrick and Harald, #8791 -- needs review): libs/mpmath/ext_main.pyx:
7% (8 of 111) -- How the *hell* did this get into Sage with a coverage
score of 7%?!!?? This was added several years after we started a 100%
doctest policy. This appeared in
http://trac.sagemath.org/sage_trac/ticket/8159 where the positive review
is from Harald Schilly: "That was easy, all tests pass ... green light
from me! I'm setting this to needs_review, and start with a positiv review
from me." Yes, it's easy for all tests to pass when there are only 7%
tests. Oops. It will be a lot of work to properly doctest this file,
but much of it is straightforward (e.g., examples for the mpnumber) class.
* (Tom Boothby, #12033, rings/polynomial/polynomial_compiled.pyx): 0% (0
of 20) -- just a bunch of little classes for working with "optimized"
polynomials, which is actually used somewhere, evidently. Not a single
example. Either doctest it completely, by following how it is used by
polynomial_element.pyx, or delete it because maybe fast_callable is
better? But watch out for large degree, since fast_callable segfaults if
the degree is large, so this polynomial_compiled.pyx might have some real
value.
* media/wav.py: 0% (0 of 25) -- mostly just a bunch of functions to get
basic info about a wave file; what makes this harder is you have to get a
.wav file and put it somewhere in Sage to be used for testing. You can
probably generate an empty wave file by using the kwds constructor of the
class, save it to a temp file, and use it, but that is boring.
* matrix/matrix_window.pyx: 0% (0 of 26) -- look at some code elsewhere
that uses this, and just go through examples; probably not so hard
* matrix/matrix_window_modn_dense.pyx: 0% (0 of 11)
Probably Harder:
* categories/action.pyx: 0% (0 of 31)
Delete from SAGE?!:
* databases/bz2Pickle.py -- looks stupid and not used anywhere!
* databases/db.py: 0% (0 of 21) -- also maybe not used anywhere; I think
we shoudl remove ZODB anyways.
* databases/gamma0wt2.py: 0% (0 of 7) -- delete
--
--
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/12024#comment:6>
Sage <http://www.sagemath.org>
Sage: Creating a Viable Open Source Alternative to Magma, Maple, Mathematica,
and MATLAB
--
You received this message because you are subscribed to the Google Groups
"sage-trac" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/sage-trac?hl=en.