On Tue, Apr 15, 2008 at 12:46 PM, Jason Bandlow <[EMAIL PROTECTED]> wrote: > > William Stein wrote: > > On Tue, Apr 15, 2008 at 9:11 AM, Jason Bandlow <[EMAIL PROTECTED]> wrote: > > > >> Hello all, > >> > >> Regarding doctesting, I'd like to work with the following setup: > >> 1. Create a file work.sage (or work.py) somewhere in my home directory. > >> 2. Start a notebook session, and attach work.sage. > >> 3. Use the notebook for generating and staring at data, while using a > >> text editor to modify my code. > >> 4. Periodically run: $ sage -t work.sage to make sure that I > >> haven't completely fouled things up. > >> > >> Step 4 seems not to work (on Sage 2.11 on Ubuntu). For example, > >> I created the following file, foo.py, in my ~/.sage directory: > >> > > > > As a workaround do not put foo.py in .sage; put it in *any* > > other directory that does not start with a dot. Then everything > > should work fine. > > > > -- William > > > > > Thanks! That seems to work. However the following is an annoyance: > > If the file has extension ".sage", sage -t works great, but sage > -coverage does nothing.
NotImplementedError (but easy to fix). > If the file has extension ".py", sage -coverage > works well, but sage -t fails to find the methods in the file (an > example is below). You *must* explicit import your .py file in the doctests in that case, unfortunately. > This isn't a big deal for me, since I tend to work > with .sage files and I can find the coverage by hand, but it still seems > worth mentioning. > Example: > > [EMAIL PROTECTED]:~$ more good.sage > > def foo(x): > r""" > Shows how doctests don't work. > > EXAMPLES: > sage: foo(3) > 3 > """ > print x > [EMAIL PROTECTED]:~$ sage -t good.sage > sage -t good.sage > Example 0 (line 5) > [2.6 s] > > ---------------------------------------------------------------------- > All tests passed! > Total time for all tests: 2.6 seconds > [EMAIL PROTECTED]:~$ cp good.sage good.py > [EMAIL PROTECTED]:~$ sage -t good.py > sage -t good.py > ********************************************************************** > File "good.py", line 6: > sage: foo(3) > Exception raised: > Traceback (most recent call last): > File "/home/jason/sage/local/lib/python2.5/doctest.py", line 1212, > in __run > compileflags, 1) in test.globs > File "<doctest __main__.example_0[0]>", line 1, in <module> > foo(Integer(3))###line 6: > sage: foo(3) > NameError: name 'foo' is not defined > ********************************************************************** > 1 items had failures: > 1 of 1 in __main__.example_0 > ***Test Failed*** 1 failures. > For whitespace errors, see the file .doctest_good.py > [1.7 s] > exit code: 1024 > > ---------------------------------------------------------------------- > The following tests failed: > > > sage -t good.py > Total time for all tests: 1.7 seconds > > > > > Cheers, > > > Jason > > > > > > > > -- William Stein Associate Professor of Mathematics University of Washington http://wstein.org --~--~---------~--~----~------------~-------~--~----~ To post to this group, send email to sage-support@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/sage-support URLs: http://www.sagemath.org -~----------~----~----~----~------~----~------~--~---