[py-svn] r37258 - in py/dist/py/apigen: . testing tracer tracer/testing tracer/testing/package/submodule

guido at codespeak.net guido at codespeak.net
Wed Jan 24 14:14:26 CET 2007


Author: guido
Date: Wed Jan 24 14:14:23 2007
New Revision: 37258

Modified:
   py/dist/py/apigen/htmlgen.py
   py/dist/py/apigen/testing/test_apigen_example.py
   py/dist/py/apigen/tracer/docstorage.py
   py/dist/py/apigen/tracer/testing/package/submodule/__init__.py
   py/dist/py/apigen/tracer/testing/test_docgen.py
   py/dist/py/apigen/tracer/testing/test_package.py
Log:
Fixed HTML validation, fixed bug in get_star_import_tree() that made that too
much stuff was reported as part of the namespace.


Modified: py/dist/py/apigen/htmlgen.py
==============================================================================
--- py/dist/py/apigen/htmlgen.py	(original)
+++ py/dist/py/apigen/htmlgen.py	Wed Jan 24 14:14:23 2007
@@ -74,7 +74,6 @@
     class ValueDescList(html.ul):
         def __init__(self, *args, **kwargs):
             super(H.ValueDescList, self).__init__(*args, **kwargs)
-            self.insert(0, html.div('where:'))
 
     class ValueDescItem(html.li):
         pass
@@ -544,7 +543,7 @@
             if next:
                 items.append(next)
             valuedesc.append(H.ValueDescItem(*items))
-        return valuedesc
+        return H.div(H.div('where:'), valuedesc)
 
     def process_type_link(self, _type):
         # now we do simple type dispatching and provide a link in this case

Modified: py/dist/py/apigen/testing/test_apigen_example.py
==============================================================================
--- py/dist/py/apigen/testing/test_apigen_example.py	(original)
+++ py/dist/py/apigen/testing/test_apigen_example.py	Wed Jan 24 14:14:23 2007
@@ -104,7 +104,7 @@
         self.base = base = py.test.ensuretemp('%s_%s' % (
                             self.__class__.__name__, meth.im_func.func_name))
         self.linker = linker = LinkerForTests()
-        self.apb = ApiPageBuilder(base, linker, self.dsa)
+        self.apb = ApiPageBuilder(base, linker, self.dsa, self.fs_root)
         self.spb = SourcePageBuilder(base, linker, self.fs_root)
         self.namespace_tree = create_namespace_tree(['main.sub',
                                                      'main.sub.func',
@@ -123,7 +123,7 @@
         pkg.main.sub.func(10)
         pkg.main.sub.func(pkg.main.SomeClass(10))
         t.end_tracing()
-        apb = ApiPageBuilder(self.base, self.linker, dsa)
+        apb = ApiPageBuilder(self.base, self.linker, dsa, self.fs_root)
         snippet = apb.build_callable_view('main.sub.func')
         html = snippet.unicode()
         print html
@@ -133,7 +133,7 @@
             'Class SomeClass',
             'Int>',
             'return value :: <None>',
-            'source:',
+            'origin: %s' % (self.fs_root.join('pkg/func.py'),),
             'def func(arg1):',
         ])
         _checkhtmlsnippet(html)

Modified: py/dist/py/apigen/tracer/docstorage.py
==============================================================================
--- py/dist/py/apigen/tracer/docstorage.py	(original)
+++ py/dist/py/apigen/tracer/docstorage.py	Wed Jan 24 14:14:23 2007
@@ -132,9 +132,10 @@
         # XXX
         return self
 
-    def get_star_import_tree(self, module, parentname):
+    def get_star_import_tree(self, module, modname):
         """ deal with '*' entries in an initpkg situation """
         ret = {}
+        modpath = py.path.local(inspect.getsourcefile(module))
         pkgpath = module.__package__.getpath()
         for objname in dir(module):
             if objname.startswith('_'):
@@ -148,11 +149,10 @@
                 except TypeError:
                     continue
                 else:
-                    if not sourcefile_object.relto(pkgpath):
+                    if sourcefile_object.strpath != modpath.strpath:
                         # not in this package
                         continue
-                dotted_name = '%s.%s' % (parentname, objname)
-                print 'adding dotted name', dotted_name
+                dotted_name = '%s.%s' % (modname, objname)
                 ret[dotted_name] = obj
         return ret
     
@@ -331,3 +331,4 @@
 
     def get_obj(self, name):
         return self.ds.descs[name].pyobj
+

Modified: py/dist/py/apigen/tracer/testing/package/submodule/__init__.py
==============================================================================
--- py/dist/py/apigen/tracer/testing/package/submodule/__init__.py	(original)
+++ py/dist/py/apigen/tracer/testing/package/submodule/__init__.py	Wed Jan 24 14:14:23 2007
@@ -8,5 +8,6 @@
          'pak.mod.one': ('./pak/mod.py', 'one'),
          'pak.mod.two': ('./pak/mod.py', 'nottwo'),
          'notpak.notmod.notclass': ('./pak/mod.py', 'cls'),
-         'somenamespace': ('./pak/mod.py', '*'),
+         'somenamespace': ('./pak/somenamespace.py', '*'),
         })
+

Modified: py/dist/py/apigen/tracer/testing/test_docgen.py
==============================================================================
--- py/dist/py/apigen/tracer/testing/test_docgen.py	(original)
+++ py/dist/py/apigen/tracer/testing/test_docgen.py	Wed Jan 24 14:14:23 2007
@@ -389,6 +389,8 @@
                 return self.somevar + 1
     """))
     temp.ensure('pkg/somenamespace.py').write(py.code.Source("""\
+        from pkg.main.sub import func
+    
         def foo():
             return 'bar'
         def baz(qux):

Modified: py/dist/py/apigen/tracer/testing/test_package.py
==============================================================================
--- py/dist/py/apigen/tracer/testing/test_package.py	(original)
+++ py/dist/py/apigen/tracer/testing/test_package.py	Wed Jan 24 14:14:23 2007
@@ -24,12 +24,11 @@
     def test_init(self):
         ds = self.ds
         print sorted(ds.descs.keys())
-        assert len(ds.descs) == 8
+        assert len(ds.descs) == 6
         assert py.builtin.sorted(ds.descs.keys()) == [
                 'notpak.notmod.notclass', 'notpak.notmod.notclass.__init__',
-                'pak.mod.one', 'pak.mod.two', 'somenamespace.cls',
-                'somenamespace.cls.__init__', 'somenamespace.nottwo',
-                'somenamespace.one']
+                'pak.mod.one', 'pak.mod.two', 'somenamespace.bar',
+                'somenamespace.foo']
 
     def test_simple_call(self):
         ds = self.ds



More information about the pytest-commit mailing list