打印出Sphinx指令所在的方法/函数名称

问题描述 投票:0回答:1

我根据ToDo示例在pytest中为Sphinx文档创建了自己的扩展。这是从每个pytest test_function的每个文档字符串中读取和收集“test_summary”。

def test_sphinx():
    """
    This is the first sentence in the test_sphinx test case.

    .. test_summary:: This is the test summary one

    """
    pass 

这工作正常。

现在我想在自己的文件中收集这些test_summaries。现在的例子:

 File collection_of_test_summaries:


Test_summary
This is the test summary one

这也有效。但我喜欢打印出函数名,这里:每个指令的“test_sphinx”,如下:

 File collection_of_test_summaries:


test_sphinx:
Test_summary
This is the test summary one

根据Sphinx ToDo示例,我有文档(模块)名称,但我无法找到函数名称。

谢谢你的帮助。

Sphinx ToDo示例:https://www.sphinx-doc.org/en/master/development/tutorials/todo.html

python documentation pytest python-sphinx
1个回答
0
投票

我找到了解决方案:

我用

self.content.items[0][0].split()[-1]

在 - 的里面

run()

的功能

class MyDirective(SphinxDirective):

类。

这很好用。

© www.soinside.com 2019 - 2024. All rights reserved.