]> granicus.if.org Git - python/commitdiff
Merged revisions 82757-82758,82760-82764 via svnmerge from
authorGeorg Brandl <georg@python.org>
Wed, 6 Oct 2010 09:17:24 +0000 (09:17 +0000)
committerGeorg Brandl <georg@python.org>
Wed, 6 Oct 2010 09:17:24 +0000 (09:17 +0000)
svn+ssh://pythondev@svn.python.org/python/branches/py3k

........
  r82757 | georg.brandl | 2010-07-10 10:58:37 +0200 (Sa, 10 Jul 2010) | 1 line

  Fix markup.
........
  r82758 | georg.brandl | 2010-07-10 12:23:40 +0200 (Sa, 10 Jul 2010) | 1 line

  Emphasize role of count for Pascal string.
........
  r82760 | georg.brandl | 2010-07-10 12:39:57 +0200 (Sa, 10 Jul 2010) | 1 line

  #3214: improve description of duck-typing in glossary.
........
  r82761 | georg.brandl | 2010-07-10 13:40:13 +0200 (Sa, 10 Jul 2010) | 1 line

  #1434090: properly append child in expatbuilder doctype handler.
........
  r82762 | georg.brandl | 2010-07-10 13:51:06 +0200 (Sa, 10 Jul 2010) | 1 line

  #8338: fix outdated class name.
........
  r82763 | georg.brandl | 2010-07-10 14:01:34 +0200 (Sa, 10 Jul 2010) | 1 line

  #8456: fix signature of sqlite3.connect().
........
  r82764 | georg.brandl | 2010-07-10 14:20:38 +0200 (Sa, 10 Jul 2010) | 1 line

  #8564: update docs on integrating doctest/unittest with unittest(2) test discovery.
........

Doc/glossary.rst
Doc/library/doctest.rst
Doc/library/sqlite3.rst
Doc/library/struct.rst
Lib/xml/dom/expatbuilder.py

index 9a340fc1b9d4e79d5821167379dca52d9688a374..dceeac85ed3eb4d2a29b5818a1b8d87bbf34f3ab 100644 (file)
@@ -156,9 +156,9 @@ Glossary
       object.
 
    duck-typing
-      A pythonic programming style which determines an object's type by inspection
-      of its method or attribute signature rather than by explicit relationship
-      to some type object ("If it looks like a duck and quacks like a duck, it
+      A programming style which does not look at an object's type to determine
+      if it has the right interface; instead, the method or attribute is simply
+      called or used ("If it looks like a duck and quacks like a duck, it
       must be a duck.")  By emphasizing interfaces rather than specific types,
       well-designed code improves its flexibility by allowing polymorphic
       substitution.  Duck-typing avoids tests using :func:`type` or
index d587c7507d210395c7466e22863aac07f38b7e0c..5cabc5e0ae44a9a435a34b271dafea32c6d58ec1 100644 (file)
@@ -972,18 +972,17 @@ serious Python testing frameworks build on the :mod:`unittest` module, which
 supplies many flexible ways to combine tests from multiple sources.  So, in
 Python 2.4, :mod:`doctest`'s :class:`Tester` class is deprecated, and
 :mod:`doctest` provides two functions that can be used to create :mod:`unittest`
-test suites from modules and text files containing doctests.  These test suites
-can then be run using :mod:`unittest` test runners::
+test suites from modules and text files containing doctests.  To integrate with
+:mod:`unittest` test discovery, include a :func:`load_tests` function in your
+test module::
 
    import unittest
    import doctest
-   import my_module_with_doctests, and_another
+   import my_module_with_doctests
 
-   suite = unittest.TestSuite()
-   for mod in my_module_with_doctests, and_another:
-       suite.addTest(doctest.DocTestSuite(mod))
-   runner = unittest.TextTestRunner()
-   runner.run(suite)
+   def load_tests(loader, tests, ignore):
+       tests.addTests(doctest.DocTestSuite(my_module_with_doctests))
+       return test
 
 There are two main functions for creating :class:`unittest.TestSuite` instances
 from text files and modules with doctests:
index cf38373ab8d0c977cdc461afac06a4d59e4db7de..cf2e678cb626adadffa32477724765630d752ade 100644 (file)
@@ -138,7 +138,7 @@ Module functions and constants
    first blank for the column name: the column name would simply be "x".
 
 
-.. function:: connect(database[, timeout, isolation_level, detect_types, factory])
+.. function:: connect(database[, timeout, detect_types, isolation_level, check_same_thread, factory, cached_statements])
 
    Opens a connection to the SQLite database file *database*. You can use
    ``":memory:"`` to open a database connection to a database that resides in RAM
index b5fd43278f670e1fbb2d9525fedc3c9450d7d280..0b8052c40d8f3bbb76457d9268d49b766c6cd6e1 100644 (file)
@@ -263,14 +263,14 @@ specified number of bytes.  As a special case, ``'0s'`` means a single, empty
 string (while ``'0c'`` means 0 characters).
 
 The ``'p'`` format character encodes a "Pascal string", meaning a short
-variable-length string stored in a fixed number of bytes. The count is the total
-number of bytes stored.  The first byte stored is the length of the string, or
-255, whichever is smaller.  The bytes of the string follow.  If the string
-passed in to :func:`pack` is too long (longer than the count minus 1), only the
-leading count-1 bytes of the string are stored.  If the string is shorter than
-count-1, it is padded with null bytes so that exactly count bytes in all are
-used.  Note that for :func:`unpack`, the ``'p'`` format character consumes count
-bytes, but that the string returned can never contain more than 255 characters.
+variable-length string stored in a *fixed number of bytes*, given by the count.
+The first byte stored is the length of the string, or 255, whichever is smaller.
+The bytes of the string follow.  If the string passed in to :func:`pack` is too
+long (longer than the count minus 1), only the leading ``count-1`` bytes of the
+string are stored.  If the string is shorter than ``count-1``, it is padded with
+null bytes so that exactly count bytes in all are used.  Note that for
+:func:`unpack`, the ``'p'`` format character consumes count bytes, but that the
+string returned can never contain more than 255 characters.
 
 For the ``'P'`` format character, the return value is a Python integer or long
 integer, depending on the size needed to hold a pointer when it has been cast to
index a2f8a33834ed6d11b7a512fd30fbcf860ee49942..4fba87585f35df1a40bcba2b01c9f508037cb4d5 100644 (file)
@@ -242,7 +242,7 @@ class ExpatBuilder:
         doctype = self.document.implementation.createDocumentType(
             doctypeName, publicId, systemId)
         doctype.ownerDocument = self.document
-        self.document.childNodes.append(doctype)
+        _append_child(self.document, doctype)
         self.document.doctype = doctype
         if self._filter and self._filter.acceptNode(doctype) == FILTER_REJECT:
             self.document.doctype = None