allure-framework / allure-framework/allure-python
[Feature request] Make `StepContext` available in public API for annotations
- 主要语言
- Python
- 星标
- 814
- 派生
- 260
- PR 合并指标
- 30 天内没有已合并 PR
描述
#### I'm submitting a ...
- [x] feature request
#### What is the current behavior?
```python
def allure_step__foo(content: str):
return allure.step(content)
```
Annotating return type of such function is not possible, because `allure.step` returns internal `StepContext` (under `_allure.py`)
#### What is the expected behavior?
Make `StepContext` available in `allure.py`
#### What is the motivation / use case for changing the behavior?
Adding `StepContext` to public API will allow to annotate return type of `allure_step__foo` in a nice and simple way via:
```python
def allure_step__foo(content: str) -> StepContext: ...
```
贡献指南
调研方向
先阅读 StepContext 的定义及其在 _allure.py 中的使用方式,然后检查 allure.py 中的公共导出。使 StepContext 可从 allure.py 使用,以便示例 wrapper 能在返回值注解中使用它,并验证公共导入正常工作。
由索引模型根据 Issue 内容生成。
评估
- 技术栈
- python
- 领域
- api
- Issue 类型
- 功能
- 难度
- 2/5
- 预计耗时
- 1-3 小时
- 活跃度
- 停滞
- 描述清晰度
- 描述清楚
- 新手友好度
- 35/100