[py-svn] r36933 - in py/dist/py/apigen: . testing
guido at codespeak.net
guido at codespeak.net
Thu Jan 18 12:24:41 CET 2007
Author: guido
Date: Thu Jan 18 12:24:40 2007
New Revision: 36933
Modified:
py/dist/py/apigen/htmlgen.py
py/dist/py/apigen/testing/test_apigen_example.py
Log:
Added links to parent namespace from function pages.
Modified: py/dist/py/apigen/htmlgen.py
==============================================================================
--- py/dist/py/apigen/htmlgen.py (original)
+++ py/dist/py/apigen/htmlgen.py Thu Jan 18 12:24:40 2007
@@ -220,36 +220,35 @@
if len(path) > 1:
parent_dotted_name = '.'.join(path[:-1])
navitems.append(indent * 2 * u'\xa0')
- try:
- obj = dsa.get_obj(parent_dotted_name)
- except KeyError:
- navitems.append(parent_dotted_name)
- navitems.append(H.br())
- indent += 1
+ navitems.append(H.NavigationItem(
+ H.a(parent_dotted_name,
+ href=linker.get_lazyhref(
+ parent_dotted_name))))
+ navitems.append(H.br())
+ indent += 1
+ navitems.append(indent * 2 * u'\xa0')
+ navitems.append(H.NavigationItem(
+ H.a(dotted_name.split('.')[-1],
+ href=linker.get_lazyhref(dotted_name))))
+ navitems.append(H.br())
+ indent += 1
+ for cls_dotted_name in dsa.get_class_names():
+ if not cls_dotted_name.startswith('%s.' % (dotted_name,)):
+ continue
navitems.append(indent * 2 * u'\xa0')
navitems.append(H.NavigationItem(
- H.a(dotted_name,
- href=linker.get_lazyhref(dotted_name))))
- else:
- navitems.append(H.NavigationItem(
- H.a(parent_dotted_name,
+ H.a(cls_dotted_name,
href=linker.get_lazyhref(
- parent_dotted_name))))
- navitems.append(H.br())
- indent += 1
+ cls_dotted_name))))
+ for func_dotted_name in dsa.get_function_names():
+ if not func_dotted_name.startswith('%s.' % (dotted_name,)):
+ continue
navitems.append(indent * 2 * u'\xa0')
navitems.append(H.NavigationItem(
- H.a(dotted_name.split('.')[-1],
- href=linker.get_lazyhref(dotted_name))))
+ H.a(func_dotted_name,
+ href=linker.get_lazyhref(
+ func_dotted_name))))
navitems.append(H.br())
- indent += 1
- for funcname in dsa.get_class_methods(dotted_name):
- func_dotted_name = '%s.%s' % (dotted_name, funcname)
- navitems.append(indent * 2 * u'\xa0')
- navitems.append(H.NavigationItem(
- H.a(funcname,
- href=linker.get_lazyhref(func_dotted_name))))
- navitems.append(H.br())
return H.Navigation(*navitems)
re = py.std.re
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 Thu Jan 18 12:24:40 2007
@@ -83,6 +83,9 @@
def test_build_function_api_pages(self):
base = py.test.ensuretemp('build_function_api_pages')
prepare_source_pages(self.linker, self.fs_root, base)
+ prepare_namespace_api_pages(self.linker, self.dsa, base,
+ ['pkg.sub', 'pkg.sub.func',
+ 'pkg.SomeClass', 'pkg.SomeOtherClass'])
data = prepare_function_api_pages(self.linker, self.dsa,
base, ['pkg.sub.func'])
build_function_api_pages(self.linker, data, self.project, base)
@@ -226,3 +229,17 @@
in html)
_checkhtml(html)
+ def test_build_function_api_pages_nav(self):
+ base = py.test.ensuretemp('build_function_api_pages_nav')
+ prepare_source_pages(self.linker, self.fs_root, base)
+ prepare_namespace_api_pages(self.linker, self.dsa, base,
+ ['pkg.sub', 'pkg.sub.func',
+ 'pkg.SomeClass', 'pkg.SomeOtherClass'])
+ data = prepare_function_api_pages(self.linker, self.dsa,
+ base, ['pkg.sub.func'])
+ build_function_api_pages(self.linker, data, self.project, base)
+ funcfile = base.join('api/pkg.sub.func.html')
+ html = funcfile.read()
+ assert '<a href="pkg.sub.html">' in html
+
+
More information about the pytest-commit
mailing list