diff --git a/.ci/Jenkinsfile b/.ci/Jenkinsfile
new file mode 100644
index 0000000..9f6b6b6
--- /dev/null
+++ b/.ci/Jenkinsfile
@@ -0,0 +1,53 @@
+pipeline {
+
+ environment {
+ TOX_PARALLEL_NO_SPINNER = "1"
+ PY_COLORS = "0"
+ }
+
+ agent any
+
+ stages {
+ stage('Prepare') {
+ steps {
+ sh 'poetry install --remove-untracked --no-root'
+ }
+ }
+ stage('Tox') {
+ matrix {
+ axes {
+ axis {
+ name 'PYTHON_VERSION'
+ values 'py38', 'py39', 'py310'
+ }
+ }
+ stages {
+ stage('Tox Test') {
+ options {
+ lock('single-tox-build')
+ }
+ steps {
+ sh 'poetry run tox -r -e ${PYTHON_VERSION}'
+ xunit checksName: "Tests ${PYTHON_VERSION}", tools: [JUnit(excludesPattern: '', pattern: 'test-reports/*.xml', stopProcessingIfError: true)]
+ cobertura autoUpdateStability: false, coberturaReportFile: 'coverage.xml', conditionalCoverageTargets: '70, 0, 0', failUnhealthy: false, failUnstable: false, lineCoverageTargets: '80, 0, 0', maxNumberOfBuilds: 0, methodCoverageTargets: '80, 0, 0', onlyStable: false
+ }
+ }
+ }
+ }
+ }
+ }
+
+ post {
+ success {
+ deleteDir()
+ }
+ always {
+ withCredentials([string(credentialsId: 'jed-notification-email', variable: 'EMAIL')]) {
+ mail to: "${EMAIL}",
+ subject: "[${currentBuild.fullDisplayName}] Build #${currentBuild.number}: ${currentBuild.currentResult}",
+ body: "Duration: ${currentBuild.durationString} / Jenkins URL: ${env.BUILD_URL}"
+ }
+ }
+ }
+
+}
\ No newline at end of file
diff --git a/README.md b/README.md
index 6bd3258..f894827 100644
--- a/README.md
+++ b/README.md
@@ -1,13 +1,14 @@
-![pytest-csv-params](docs/icon/pytest-csv-params.png)
+![pytest-csv-params](https://docs.codebau.dev/pytest-plugins/pytest-csv-params/_images/pytest-csv-params.png)
# pytest-csv-params
A pytest plugin to parametrize data-driven tests by CSV files.
-[![PyPI - Downloads](https://img.shields.io/pypi/dw/pytest-csv-params?label=PyPI%20downloads&style=for-the-badge)](https://pypi.org/project/pytest-csv-params/)
-[![PyPI - Version](https://img.shields.io/pypi/v/pytest-csv-params?label=PyPI%20version&style=for-the-badge)](https://pypi.org/project/pytest-csv-params/)
-[![PyPI - Status](https://img.shields.io/pypi/status/pytest-csv-params?label=PyPI%20status&style=for-the-badge)](https://pypi.org/project/pytest-csv-params/)
-[![PyPI - Format](https://img.shields.io/pypi/format/pytest-csv-params?label=PyPI%20format&style=for-the-badge)](https://pypi.org/project/pytest-csv-params/)
+[![Build Status](https://build.codebau.dev/buildStatus/icon?job=pytest-csv-params&style=flat)](https://git.codebau.dev/pytest-plugins/pytest-csv-params)
+[![PyPI - Downloads](https://img.shields.io/pypi/dw/pytest-csv-params?label=PyPI%20downloads&style=flat&logo=pypi)](https://pypi.org/project/pytest-csv-params/)
+[![PyPI - Version](https://img.shields.io/pypi/v/pytest-csv-params?label=PyPI%20version&style=flat&logo=pypi)](https://pypi.org/project/pytest-csv-params/)
+[![PyPI - Status](https://img.shields.io/pypi/status/pytest-csv-params?label=PyPI%20status&style=flat&logo=pypi)](https://pypi.org/project/pytest-csv-params/)
+[![PyPI - Format](https://img.shields.io/pypi/format/pytest-csv-params?label=PyPI%20format&style=flat&logo=pypi)](https://pypi.org/project/pytest-csv-params/)
## Requirements
diff --git a/docs/conf.py b/docs/conf.py
index 9a9fe9e..4990860 100644
--- a/docs/conf.py
+++ b/docs/conf.py
@@ -93,6 +93,7 @@ html_theme_options = {
"css_minify": True,
"html_minify": True,
"master_doc": True,
+ "theme_color": "#008080",
}
myst_enable_extensions = [
diff --git a/docs/index.md b/docs/index.md
index a089f85..9cb1062 100644
--- a/docs/index.md
+++ b/docs/index.md
@@ -9,10 +9,11 @@
# Data-driven test parametrization für pytest with CSV files
-[![PyPI - Downloads](https://img.shields.io/pypi/dw/pytest-csv-params?label=PyPI%20downloads&style=for-the-badge)](https://pypi.org/project/pytest-csv-params/)
-[![PyPI - Version](https://img.shields.io/pypi/v/pytest-csv-params?label=PyPI%20version&style=for-the-badge)](https://pypi.org/project/pytest-csv-params/)
-[![PyPI - Status](https://img.shields.io/pypi/status/pytest-csv-params?label=PyPI%20status&style=for-the-badge)](https://pypi.org/project/pytest-csv-params/)
-[![PyPI - Format](https://img.shields.io/pypi/format/pytest-csv-params?label=PyPI%20format&style=for-the-badge)](https://pypi.org/project/pytest-csv-params/)
+[![Build Status](https://build.codebau.dev/buildStatus/icon?job=pytest-csv-params&style=flat)](https://git.codebau.dev/pytest-plugins/pytest-csv-params)
+[![PyPI - Downloads](https://img.shields.io/pypi/dw/pytest-csv-params?label=PyPI%20downloads&style=flat&logo=pypi)](https://pypi.org/project/pytest-csv-params/)
+[![PyPI - Version](https://img.shields.io/pypi/v/pytest-csv-params?label=PyPI%20version&style=flat&logo=pypi)](https://pypi.org/project/pytest-csv-params/)
+[![PyPI - Status](https://img.shields.io/pypi/status/pytest-csv-params?label=PyPI%20status&style=flat&logo=pypi)](https://pypi.org/project/pytest-csv-params/)
+[![PyPI - Format](https://img.shields.io/pypi/format/pytest-csv-params?label=PyPI%20format&style=flat&logo=pypi)](https://pypi.org/project/pytest-csv-params/)
This pytest plugin allows you to parametrize your pytest tests by CSV files. Manage your test data independently of
your tests. This site guides you through [installation](pages/install) and [usage](pages/guide).
diff --git a/docs/pages/changelog.md b/docs/pages/changelog.md
index ec23266..675ec77 100644
--- a/docs/pages/changelog.md
+++ b/docs/pages/changelog.md
@@ -1,5 +1,20 @@
# Changelog
+## Version 1.0.0
+
+Breaking Changes: ✓ None
+
+Changes:
+
+- Cleanup of codebase for the big step of going to version 1.0
+- Project marked as "stable"
+- Some minor documentation changes
+- Dependencies updated
+- Fine-tuning of the tox/test configuration for running on CI
+
+[Downloads](https://git.codebau.dev/pytest-plugins/pytest-csv-params/releases/tag/v1.0.0) |
+[Technical Changelog](https://git.codebau.dev/pytest-plugins/pytest-csv-params/compare/v0.4.0...v1.0.0)
+
## Version 0.4.0
Breaking Changes: ✓ None
diff --git a/poetry.lock b/poetry.lock
index 2ac8f04..16353d4 100644
--- a/poetry.lock
+++ b/poetry.lock
@@ -8,16 +8,19 @@ python-versions = "*"
[[package]]
name = "astroid"
-version = "2.11.7"
+version = "2.12.4"
description = "An abstract syntax tree for Python with inference support."
category = "dev"
optional = false
-python-versions = ">=3.6.2"
+python-versions = ">=3.7.2"
[package.dependencies]
lazy-object-proxy = ">=1.4.0"
typing-extensions = {version = ">=3.10", markers = "python_version < \"3.10\""}
-wrapt = ">=1.11,<2"
+wrapt = [
+ {version = ">=1.11,<2", markers = "python_version < \"3.11\""},
+ {version = ">=1.14,<2", markers = "python_version >= \"3.11\""},
+]
[[package]]
name = "atomicwrites"
@@ -118,7 +121,7 @@ python-versions = ">=3.6"
[[package]]
name = "charset-normalizer"
-version = "2.1.0"
+version = "2.1.1"
description = "The Real First Universal Charset Detector. Open, modern and actively maintained alternative to Chardet."
category = "dev"
optional = false
@@ -192,7 +195,7 @@ graph = ["objgraph (>=1.7.2)"]
[[package]]
name = "distlib"
-version = "0.3.5"
+version = "0.3.6"
description = "Distribution utilities"
category = "dev"
optional = false
@@ -532,14 +535,14 @@ plugins = ["importlib-metadata"]
[[package]]
name = "pylint"
-version = "2.14.5"
+version = "2.15.0"
description = "python code static checker"
category = "dev"
optional = false
python-versions = ">=3.7.2"
[package.dependencies]
-astroid = ">=2.11.6,<=2.12.0-dev0"
+astroid = ">=2.12.4,<=2.14.0-dev0"
colorama = {version = ">=0.4.5", markers = "sys_platform == \"win32\""}
dill = ">=0.2"
isort = ">=4.2.5,<6"
@@ -1051,7 +1054,7 @@ python-versions = ">=3.5"
[[package]]
name = "urllib3"
-version = "1.26.11"
+version = "1.26.12"
description = "HTTP library with thread-safe connection pooling, file post, and more."
category = "dev"
optional = false
@@ -1059,7 +1062,7 @@ python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*,
[package.extras]
brotli = ["brotlicffi (>=0.8.0)", "brotli (>=1.0.9)", "brotlipy (>=0.6.0)"]
-secure = ["pyOpenSSL (>=0.14)", "cryptography (>=1.3.4)", "idna (>=2.0.0)", "certifi", "ipaddress"]
+secure = ["pyOpenSSL (>=0.14)", "cryptography (>=1.3.4)", "idna (>=2.0.0)", "certifi", "urllib3-secure-extra", "ipaddress"]
socks = ["PySocks (>=1.5.6,!=1.5.7,<2.0)"]
[[package]]
diff --git a/pyproject.toml b/pyproject.toml
index 2acfbfe..6eb0714 100644
--- a/pyproject.toml
+++ b/pyproject.toml
@@ -1,6 +1,6 @@
[tool.poetry]
name = "pytest-csv-params"
-version = "0.4.1"
+version = "1.0.0"
description = "Pytest plugin for Test Case Parametrization with CSV files"
authors = ["Juergen Edelbluth "]
license = "MIT"
@@ -8,11 +8,12 @@ repository = "https://git.codebau.dev/pytest-plugins/pytest-csv-params"
homepage = "https://git.codebau.dev/pytest-plugins/pytest-csv-params"
readme = "README.md"
keywords = [
- "py.test", "pytest", "csv", "params", "parametrize", "pytest-plugin",
+ "py.test", "pytest", "csv", "params", "parametrize", "pytest-plugin", "ddt", "data-driven"
]
classifiers = [
- "Development Status :: 4 - Beta",
+ "Development Status :: 5 - Production/Stable",
"Environment :: Plugins",
+ "Environment :: Console",
"Framework :: Pytest",
"Intended Audience :: Developers",
"License :: OSI Approved :: MIT License",
@@ -42,7 +43,7 @@ packages = [
"pytest-csv-params" = "pytest_csv_params.plugin"
[tool.pytest.ini_options]
-addopts = "--mypy --black --isort --pylint --pylint-rcfile=.pylintrc --cov --cov-report=term-missing --junitxml=test-reports/pytest_csv_params.xml"
+addopts = "--mypy --black --isort --pylint --pylint-rcfile=.pylintrc --cov --cov-report=term-missing --cov-report=xml --junitxml=test-reports/pytest_csv_params.xml"
filterwarnings=[
"ignore:.*BlackItem.*:_pytest.warning_types.PytestDeprecationWarning",
"ignore:.*BlackItem.*:_pytest.warning_types.PytestRemovedIn8Warning",
@@ -108,6 +109,7 @@ legacy_tox_ini = """
[tox]
minversion = 3.25.0
envlist = clean,py38,py39,py310
+isolated_build = True
[testenv]
commands =