testrail-api 1.13.2__tar.gz → 1.13.3__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {testrail_api-1.13.2 → testrail_api-1.13.3}/.github/workflows/python-package.yml +7 -7
- {testrail_api-1.13.2 → testrail_api-1.13.3}/.github/workflows/python-publish.yml +1 -1
- {testrail_api-1.13.2 → testrail_api-1.13.3}/PKG-INFO +15 -2
- {testrail_api-1.13.2 → testrail_api-1.13.3}/Pipfile +8 -9
- testrail_api-1.13.3/ruff.toml +62 -0
- {testrail_api-1.13.2 → testrail_api-1.13.3}/setup.py +3 -0
- {testrail_api-1.13.2 → testrail_api-1.13.3}/testrail_api/__init__.py +2 -5
- {testrail_api-1.13.2 → testrail_api-1.13.3}/testrail_api/__version__.py +9 -4
- {testrail_api-1.13.2 → testrail_api-1.13.3}/testrail_api/_category.py +160 -126
- {testrail_api-1.13.2 → testrail_api-1.13.3}/testrail_api/_enums.py +2 -2
- {testrail_api-1.13.2 → testrail_api-1.13.3}/testrail_api/_exception.py +4 -4
- {testrail_api-1.13.2 → testrail_api-1.13.3}/testrail_api/_session.py +43 -41
- {testrail_api-1.13.2 → testrail_api-1.13.3}/testrail_api/_testrail_api.py +54 -42
- {testrail_api-1.13.2 → testrail_api-1.13.3}/testrail_api.egg-info/PKG-INFO +15 -2
- {testrail_api-1.13.2 → testrail_api-1.13.3}/testrail_api.egg-info/SOURCES.txt +1 -0
- testrail_api-1.13.3/tests/conftest.py +102 -0
- testrail_api-1.13.3/tests/test_attachments.py +240 -0
- testrail_api-1.13.3/tests/test_case_fields.py +36 -0
- testrail_api-1.13.3/tests/test_case_types.py +14 -0
- {testrail_api-1.13.2 → testrail_api-1.13.3}/tests/test_cases.py +13 -29
- testrail_api-1.13.3/tests/test_configurations.py +54 -0
- testrail_api-1.13.3/tests/test_datasets.py +110 -0
- testrail_api-1.13.3/tests/test_groups.py +65 -0
- testrail_api-1.13.3/tests/test_milestone.py +92 -0
- {testrail_api-1.13.2 → testrail_api-1.13.3}/tests/test_other.py +49 -62
- testrail_api-1.13.3/tests/test_plans.py +136 -0
- testrail_api-1.13.3/tests/test_priorities.py +15 -0
- testrail_api-1.13.3/tests/test_projects.py +69 -0
- testrail_api-1.13.3/tests/test_reports.py +25 -0
- testrail_api-1.13.3/tests/test_result_fields.py +11 -0
- testrail_api-1.13.3/tests/test_results.py +134 -0
- testrail_api-1.13.3/tests/test_roles.py +27 -0
- testrail_api-1.13.3/tests/test_runs.py +89 -0
- testrail_api-1.13.3/tests/test_sections.py +85 -0
- testrail_api-1.13.3/tests/test_shared_steps.py +80 -0
- testrail_api-1.13.3/tests/test_statuses.py +46 -0
- testrail_api-1.13.3/tests/test_suites.py +47 -0
- testrail_api-1.13.3/tests/test_template.py +18 -0
- testrail_api-1.13.3/tests/test_tests.py +33 -0
- testrail_api-1.13.3/tests/test_users.py +62 -0
- testrail_api-1.13.3/tests/test_variables.py +69 -0
- testrail_api-1.13.2/tests/conftest.py +0 -91
- testrail_api-1.13.2/tests/test_attachments.py +0 -269
- testrail_api-1.13.2/tests/test_case_fields.py +0 -41
- testrail_api-1.13.2/tests/test_case_types.py +0 -16
- testrail_api-1.13.2/tests/test_configurations.py +0 -78
- testrail_api-1.13.2/tests/test_datasets.py +0 -103
- testrail_api-1.13.2/tests/test_groups.py +0 -94
- testrail_api-1.13.2/tests/test_milestone.py +0 -109
- testrail_api-1.13.2/tests/test_plans.py +0 -183
- testrail_api-1.13.2/tests/test_priorities.py +0 -17
- testrail_api-1.13.2/tests/test_projects.py +0 -77
- testrail_api-1.13.2/tests/test_reports.py +0 -25
- testrail_api-1.13.2/tests/test_result_fields.py +0 -13
- testrail_api-1.13.2/tests/test_results.py +0 -159
- testrail_api-1.13.2/tests/test_roles.py +0 -36
- testrail_api-1.13.2/tests/test_runs.py +0 -110
- testrail_api-1.13.2/tests/test_sections.py +0 -101
- testrail_api-1.13.2/tests/test_shared_steps.py +0 -93
- testrail_api-1.13.2/tests/test_statuses.py +0 -44
- testrail_api-1.13.2/tests/test_suites.py +0 -64
- testrail_api-1.13.2/tests/test_template.py +0 -15
- testrail_api-1.13.2/tests/test_tests.py +0 -50
- testrail_api-1.13.2/tests/test_users.py +0 -69
- testrail_api-1.13.2/tests/test_variables.py +0 -77
- {testrail_api-1.13.2 → testrail_api-1.13.3}/.editorconfig +0 -0
- {testrail_api-1.13.2 → testrail_api-1.13.3}/.gitignore +0 -0
- {testrail_api-1.13.2 → testrail_api-1.13.3}/LICENSE +0 -0
- {testrail_api-1.13.2 → testrail_api-1.13.3}/README.md +0 -0
- {testrail_api-1.13.2 → testrail_api-1.13.3}/setup.cfg +0 -0
- {testrail_api-1.13.2 → testrail_api-1.13.3}/testrail_api.egg-info/dependency_links.txt +0 -0
- {testrail_api-1.13.2 → testrail_api-1.13.3}/testrail_api.egg-info/requires.txt +0 -0
- {testrail_api-1.13.2 → testrail_api-1.13.3}/testrail_api.egg-info/top_level.txt +0 -0
- {testrail_api-1.13.2 → testrail_api-1.13.3}/tests/attach.jpg +0 -0
- {testrail_api-1.13.2 → testrail_api-1.13.3}/tests/pytest.ini +0 -0
|
@@ -12,7 +12,7 @@ jobs:
|
|
|
12
12
|
strategy:
|
|
13
13
|
fail-fast: false
|
|
14
14
|
matrix:
|
|
15
|
-
python-version: [ "3.8", "3.9", "3.10", "3.11", "3.12" ]
|
|
15
|
+
python-version: [ "3.8", "3.9", "3.10", "3.11", "3.12", "3.13" ]
|
|
16
16
|
|
|
17
17
|
steps:
|
|
18
18
|
- uses: actions/checkout@v3
|
|
@@ -23,14 +23,14 @@ jobs:
|
|
|
23
23
|
- name: Install dependencies
|
|
24
24
|
run: |
|
|
25
25
|
python -m pip install --upgrade pip
|
|
26
|
-
python -m pip install
|
|
26
|
+
python -m pip install pytest pytest-cov pytest-xdist responses==0.21.0 ruff==0.11.8
|
|
27
27
|
python -m pip install -e .
|
|
28
|
-
- name:
|
|
28
|
+
- name: Format check
|
|
29
29
|
run: |
|
|
30
|
-
|
|
31
|
-
- name:
|
|
30
|
+
ruff format --check
|
|
31
|
+
- name: Lints
|
|
32
32
|
run: |
|
|
33
|
-
|
|
33
|
+
ruff check
|
|
34
34
|
- name: Test with pytest
|
|
35
35
|
run: |
|
|
36
|
-
pytest tests
|
|
36
|
+
pytest -n auto ./tests
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
Metadata-Version: 2.
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
2
|
Name: testrail_api
|
|
3
|
-
Version: 1.13.
|
|
3
|
+
Version: 1.13.3
|
|
4
4
|
Summary: Python wrapper of the TestRail API
|
|
5
5
|
Home-page: https://github.com/tolstislon/testrail-api
|
|
6
6
|
Author: tolstislon
|
|
@@ -18,6 +18,7 @@ Classifier: Programming Language :: Python :: 3.9
|
|
|
18
18
|
Classifier: Programming Language :: Python :: 3.10
|
|
19
19
|
Classifier: Programming Language :: Python :: 3.11
|
|
20
20
|
Classifier: Programming Language :: Python :: 3.12
|
|
21
|
+
Classifier: Programming Language :: Python :: 3.13
|
|
21
22
|
Classifier: Programming Language :: Python :: Implementation :: CPython
|
|
22
23
|
Classifier: Programming Language :: Python :: Implementation :: PyPy
|
|
23
24
|
Classifier: Topic :: Software Development :: Libraries :: Python Modules
|
|
@@ -25,6 +26,18 @@ Requires-Python: >=3.8
|
|
|
25
26
|
Description-Content-Type: text/markdown
|
|
26
27
|
License-File: LICENSE
|
|
27
28
|
Requires-Dist: requests>=2.32.3
|
|
29
|
+
Dynamic: author
|
|
30
|
+
Dynamic: author-email
|
|
31
|
+
Dynamic: classifier
|
|
32
|
+
Dynamic: description
|
|
33
|
+
Dynamic: description-content-type
|
|
34
|
+
Dynamic: home-page
|
|
35
|
+
Dynamic: keywords
|
|
36
|
+
Dynamic: license
|
|
37
|
+
Dynamic: license-file
|
|
38
|
+
Dynamic: requires-dist
|
|
39
|
+
Dynamic: requires-python
|
|
40
|
+
Dynamic: summary
|
|
28
41
|
|
|
29
42
|
# Testrail Api
|
|
30
43
|
|
|
@@ -4,24 +4,23 @@ url = "https://pypi.org/simple"
|
|
|
4
4
|
verify_ssl = true
|
|
5
5
|
|
|
6
6
|
[dev-packages]
|
|
7
|
-
pytest = "==8.
|
|
8
|
-
pytest-cov = "==
|
|
7
|
+
pytest = "==8.3.5"
|
|
8
|
+
pytest-cov = "==6.1.1"
|
|
9
9
|
responses = "==0.21.0"
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
pep8-naming = "==0.14.1"
|
|
10
|
+
ruff = "==0.11.8"
|
|
11
|
+
pytest-xdist = "==3.6.1"
|
|
13
12
|
|
|
14
13
|
[packages]
|
|
15
14
|
requests = "==2.32.3"
|
|
16
15
|
testrail-api = { editable = true, path = "." }
|
|
17
16
|
|
|
18
17
|
[requires]
|
|
19
|
-
python_version = "3.
|
|
18
|
+
python_version = "3.12"
|
|
20
19
|
|
|
21
20
|
[pipenv]
|
|
22
21
|
allow_prereleases = true
|
|
23
22
|
|
|
24
23
|
[scripts]
|
|
25
|
-
tests = "pytest tests"
|
|
26
|
-
|
|
27
|
-
|
|
24
|
+
tests = "pytest -n auto ./tests"
|
|
25
|
+
format = "ruff format"
|
|
26
|
+
check = "ruff check --fix"
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
line-length = 120
|
|
2
|
+
target-version = "py38"
|
|
3
|
+
exclude = [".git", ".pytest_cache", ".idea", ".github", "build"]
|
|
4
|
+
|
|
5
|
+
[lint]
|
|
6
|
+
select = [
|
|
7
|
+
"A", # flake8-builtins
|
|
8
|
+
"ANN", # flake8-annotations
|
|
9
|
+
"B", # flake8-bugbear
|
|
10
|
+
"C4", # flake8-comprehensions
|
|
11
|
+
"COM", # flake8-commas
|
|
12
|
+
"D", # pydocstyle
|
|
13
|
+
"E", # pycodestyle
|
|
14
|
+
"F", # Pyflakes
|
|
15
|
+
"FURB", # refurb
|
|
16
|
+
"I", # isort
|
|
17
|
+
"ICN", # flake8-import-conventions
|
|
18
|
+
"ISC", # flake8-implicit-str-concat
|
|
19
|
+
"N", # pep8-naming
|
|
20
|
+
"PERF", # Perflint
|
|
21
|
+
"PGH", # pygrep-hooks
|
|
22
|
+
"PTH", # flake8-use-pathlib
|
|
23
|
+
"RUF", # Ruff-specific rules
|
|
24
|
+
"S", # flake8-bandit
|
|
25
|
+
"T20", # flake8-print
|
|
26
|
+
"UP", # pyupgrade
|
|
27
|
+
"PIE", # flake8-pie
|
|
28
|
+
"PT", # flake8-pytest-style
|
|
29
|
+
"Q", # flake8-quotes
|
|
30
|
+
"RET", # flake8-return
|
|
31
|
+
"SIM", # flake8-simplify
|
|
32
|
+
"ARG", # flake8-unused-arguments
|
|
33
|
+
"FLY", # flynt
|
|
34
|
+
"PL", # Pylint
|
|
35
|
+
"RSE", # flake8-raise
|
|
36
|
+
]
|
|
37
|
+
ignore = [
|
|
38
|
+
"S311", # Standard pseudo-random generators are not suitable for cryptographic purposesStandard pseudo-random generators are not suitable for cryptographic purposes
|
|
39
|
+
"D212", # multi-line-summary-first-line (conflicts rules)
|
|
40
|
+
"D203", # one-blank-line-before-class (conflicts rules)
|
|
41
|
+
"COM812", # conflicts rules
|
|
42
|
+
"ISC001", # conflicts rules
|
|
43
|
+
"N818", # Exception name `{exception}` should be named with an Error suffix
|
|
44
|
+
"ANN003", # Missing type annotation for `**kwargs`
|
|
45
|
+
"ANN002", # Missing type annotation for `*args`
|
|
46
|
+
"D107", # Missing docstring in `__init__`
|
|
47
|
+
"ANN401", # Dynamically typed expressions (typing.Any) are disallowed`
|
|
48
|
+
]
|
|
49
|
+
|
|
50
|
+
[lint.per-file-ignores]
|
|
51
|
+
"test_*.py" = ["S101", "D103", "ANN201", "D100", "S605", "S607", "ANN001", "PLR2004", "PT018", "ARG002", "D102", "ANN204", "A004", "PT012"]
|
|
52
|
+
"conftest.py" = ["ANN001", "PLR0913", "D101", "D100"]
|
|
53
|
+
"_category.py" = ["D401", "A002"]
|
|
54
|
+
|
|
55
|
+
[lint.flake8-pytest-style]
|
|
56
|
+
parametrize-values-row-type = "tuple"
|
|
57
|
+
parametrize-values-type = "tuple"
|
|
58
|
+
fixture-parentheses = false
|
|
59
|
+
mark-parentheses = false
|
|
60
|
+
|
|
61
|
+
[format]
|
|
62
|
+
line-ending = "lf"
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
"""Setup file."""
|
|
2
|
+
|
|
1
3
|
from pathlib import Path
|
|
2
4
|
|
|
3
5
|
from setuptools import find_packages, setup
|
|
@@ -42,6 +44,7 @@ setup(
|
|
|
42
44
|
"Programming Language :: Python :: 3.10",
|
|
43
45
|
"Programming Language :: Python :: 3.11",
|
|
44
46
|
"Programming Language :: Python :: 3.12",
|
|
47
|
+
"Programming Language :: Python :: 3.13",
|
|
45
48
|
"Programming Language :: Python :: Implementation :: CPython",
|
|
46
49
|
"Programming Language :: Python :: Implementation :: PyPy",
|
|
47
50
|
"Topic :: Software Development :: Libraries :: Python Modules",
|
|
@@ -1,7 +1,5 @@
|
|
|
1
|
-
# -*- coding: utf-8 -*-
|
|
2
|
-
|
|
3
1
|
"""
|
|
4
|
-
Python wrapper of the TestRail API
|
|
2
|
+
Python wrapper of the TestRail API.
|
|
5
3
|
|
|
6
4
|
------------------
|
|
7
5
|
from datetime import datetime
|
|
@@ -53,7 +51,6 @@ import logging
|
|
|
53
51
|
from ._exception import StatusCodeError
|
|
54
52
|
from ._testrail_api import TestRailAPI
|
|
55
53
|
|
|
56
|
-
|
|
57
54
|
logging.getLogger(__package__).addHandler(logging.NullHandler())
|
|
58
55
|
|
|
59
|
-
__all__ = ["
|
|
56
|
+
__all__ = ["StatusCodeError", "TestRailAPI", "__version__"]
|
|
@@ -1,8 +1,13 @@
|
|
|
1
|
-
# file generated by
|
|
1
|
+
# file generated by setuptools-scm
|
|
2
2
|
# don't change, don't track in version control
|
|
3
|
+
|
|
4
|
+
__all__ = ["__version__", "__version_tuple__", "version", "version_tuple"]
|
|
5
|
+
|
|
3
6
|
TYPE_CHECKING = False
|
|
4
7
|
if TYPE_CHECKING:
|
|
5
|
-
from typing import Tuple
|
|
8
|
+
from typing import Tuple
|
|
9
|
+
from typing import Union
|
|
10
|
+
|
|
6
11
|
VERSION_TUPLE = Tuple[Union[int, str], ...]
|
|
7
12
|
else:
|
|
8
13
|
VERSION_TUPLE = object
|
|
@@ -12,5 +17,5 @@ __version__: str
|
|
|
12
17
|
__version_tuple__: VERSION_TUPLE
|
|
13
18
|
version_tuple: VERSION_TUPLE
|
|
14
19
|
|
|
15
|
-
__version__ = version = '1.13.
|
|
16
|
-
__version_tuple__ = version_tuple = (1, 13,
|
|
20
|
+
__version__ = version = '1.13.3'
|
|
21
|
+
__version_tuple__ = version_tuple = (1, 13, 3)
|