[Grok-dev] Testing a container which uses a custom NameChooser

Luciano Ramalho luciano at ramalho.org
Tue Jul 31 00:55:41 EDT 2007


One component of Kirbi is the Pac (public access catalog, a book
container), defined here:

http://svn.zope.org/Sandbox/luciano/kirbi/src/kirbi/pac.py?rev=78499&view=markup
(or http://tinyurl.com/3ybsed)

It's method addBook uses a custom NameChooser defined in the same
module. This is working, but I've been unable to write a unit test for
it.

The simple test contained in this file:

http://svn.zope.org/Sandbox/luciano/kirbi/src/kirbi/tests/test_pac.txt?rev=78499&view=markup
(or http://tinyurl.com/3xu8wt)

... breaks with the messages below. What am I missing in the doctest
to make it pass?

--
Luciano


####################################

Running tests at level 1
Running unit tests:
  Running:
.......

Failure in test
/Users/luciano/gsoc2007/Sandbox-luciano/kirbi/src/kirbi/tests/test_pac.txt
Traceback (most recent call last):
  File "/Library/Frameworks/Python.framework/Versions/2.4//lib/python2.4/unittest.py",
line 260, in run
    testMethod()
  File "/Library/Frameworks/Python.framework/Versions/2.4//lib/python2.4/doctest.py",
line 2157, in runTest
    raise self.failureException(self.format_failure(new.getvalue()))
AssertionError: Failed doctest test for test_pac.txt
  File "/Users/luciano/gsoc2007/Sandbox-luciano/kirbi/src/kirbi/tests/test_pac.txt",
line 0

----------------------------------------------------------------------
File "/Users/luciano/gsoc2007/Sandbox-luciano/kirbi/src/kirbi/tests/test_pac.txt",
line 11, in test_pac.txt
Failed example:
    pac.addBook(Book(u'Zero'))
Exception raised:
    Traceback (most recent call last):
      File "/Library/Frameworks/Python.framework/Versions/2.4//lib/python2.4/doctest.py",
line 1248, in __run
        compileflags, 1) in test.globs
      File "<doctest test_pac.txt[3]>", line 1, in ?
        pac.addBook(Book(u'Zero'))
      File "/Users/luciano/gsoc2007/Sandbox-luciano/kirbi/src/kirbi/pac.py",
line 31, in addBook
        name = INameChooser(self).chooseName(book.isbn13, book)
    TypeError: ('Could not adapt', <kirbi.pac.Pac object at 0x67970>,
<InterfaceClass zope.app.container.interfaces.INameChooser>)
----------------------------------------------------------------------
File "/Users/luciano/gsoc2007/Sandbox-luciano/kirbi/src/kirbi/tests/test_pac.txt",
line 12, in test_pac.txt
Failed example:
    pac.addBook(Book(isbn13='978-0670030583'))
Exception raised:
    Traceback (most recent call last):
      File "/Library/Frameworks/Python.framework/Versions/2.4//lib/python2.4/doctest.py",
line 1248, in __run
        compileflags, 1) in test.globs
      File "<doctest test_pac.txt[4]>", line 1, in ?
        pac.addBook(Book(isbn13='978-0670030583'))
      File "/Users/luciano/gsoc2007/Sandbox-luciano/kirbi/src/kirbi/pac.py",
line 31, in addBook
        name = INameChooser(self).chooseName(book.isbn13, book)
    TypeError: ('Could not adapt', <kirbi.pac.Pac object at 0x67970>,
<InterfaceClass zope.app.container.interfaces.INameChooser>)
----------------------------------------------------------------------
File "/Users/luciano/gsoc2007/Sandbox-luciano/kirbi/src/kirbi/tests/test_pac.txt",
line 13, in test_pac.txt
Failed example:
    pac.addBook(Book(u'A Tale of Two Cities', isbn13='978-0141439600'))
Exception raised:
    Traceback (most recent call last):
      File "/Library/Frameworks/Python.framework/Versions/2.4//lib/python2.4/doctest.py",
line 1248, in __run
        compileflags, 1) in test.globs
      File "<doctest test_pac.txt[5]>", line 1, in ?
        pac.addBook(Book(u'A Tale of Two Cities', isbn13='978-0141439600'))
      File "/Users/luciano/gsoc2007/Sandbox-luciano/kirbi/src/kirbi/pac.py",
line 31, in addBook
        name = INameChooser(self).chooseName(book.isbn13, book)
    TypeError: ('Could not adapt', <kirbi.pac.Pac object at 0x67970>,
<InterfaceClass zope.app.container.interfaces.INameChooser>)
----------------------------------------------------------------------
File "/Users/luciano/gsoc2007/Sandbox-luciano/kirbi/src/kirbi/tests/test_pac.txt",
line 14, in test_pac.txt
Failed example:
    sorted(pac)
Expected:
    ['9780141439600', '9780670030583', 'k0001']
Got:
    []
----------------------------------------------------------------------
File "/Users/luciano/gsoc2007/Sandbox-luciano/kirbi/src/kirbi/tests/test_pac.txt",
line 19, in test_pac.txt
Failed example:
    len(pac)
Expected:
    3
Got:
    0



  Ran 7 tests with 1 failures and 0 errors in 0.032 seconds.

Tests with failures:
   /Users/luciano/gsoc2007/Sandbox-luciano/kirbi/src/kirbi/tests/test_pac.txt


More information about the Grok-dev mailing list