Added configuration files

This commit is contained in:
Kristofers Solo 2022-12-04 19:07:56 +02:00
parent e12eb6a275
commit ef97781d59
11 changed files with 117 additions and 0 deletions

26
.github/workflows/tests.yml vendored Normal file
View File

@ -0,0 +1,26 @@
name: Tests
on:
- push
- pull_request
jobs:
test:
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [ubuntu-latest, windows-latest]
python-version: ['3.10']
steps:
- uses: actions/checkout@v2
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v2
with:
python-version: ${{ matrix.python-version }}
- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install tox tox-gh-actions
- name: Test with tox
run: tox

3
README.md Normal file
View File

@ -0,0 +1,3 @@
# Traffic Light Detector
![Tests](https://github.com/kristoferssolo/Traffic-Light-Detector/actions/workflows/tests.yml/badge.svg)

21
pyproject.toml Normal file
View File

@ -0,0 +1,21 @@
[build-system]
requires = ["setuptools>=42.0", "wheel"]
build-backend = "setuptools.build_meta"
[tool.pytest.ini_options]
addops = "--cov=detector"
testpaths = ["tests"]
[tool.mypy]
check_untyped_defs = true
disallow_any_generics = true
ignore_missing_imports = true
mypy_path = "src"
no_implicit_optional = true
no_implicit_reexport = true
show_error_codes = true
strict_equality = true
warn_redundant_casts = true
warn_return_any = true
warn_unreachable = true
warn_unused_configs = true

1
requirements.txt Normal file
View File

@ -0,0 +1 @@
opencv-python==4.6.0.66

5
requirements_dev.txt Normal file
View File

@ -0,0 +1,5 @@
flake8==6.0.0
mypy==0.991
pytest==7.2.0
pytest-cov==4.0.0
tox==3.27.1

30
setup.cfg Normal file
View File

@ -0,0 +1,30 @@
[metadata]
name = detector
desctiption = Reduce traffic congestion effects due to human reaction times at intersections with traffic lights by utilizing a computer system based on direct communication method of changes in the circumscribed route intersection.
author = Kristofers Solo
license = MIT
license_file = LICENSE
platforms = unix, linux, osx, cygwin, win32
classifiers =
Programming Language :: Python :: 3.10
[options]
packages = detector
install_requires = opencv-python>=4.6.0.66
python_requires = >=3.10
package_dir = =src
zip_safe = no
[options.extras_require]
testing =
flake8>=6.0.0
mypy>=0.991
pytest>=7.2.0
pytest-cov>=4.0.0
tox>=3.27.1
[options.package_data]
detector = py.typed
[flake8]
max-line-length = 160

4
setup.py Normal file
View File

@ -0,0 +1,4 @@
from setuptools import setup
if __name__ == "__main__":
setup()

0
src/detector/__init__.py Normal file
View File

0
src/detector/py.typed Normal file
View File

0
tests/__init__.py Normal file
View File

27
tox.ini Normal file
View File

@ -0,0 +1,27 @@
[tox]
minversion = 3.8.0
envlist = py310, flake8, mypy
isolated_build = true
[gh-actions]
python =
3.10: py310, mypy, flake8
[testenv]
setenv =
PYTHONPATH = {toxinidir}
deps =
-r{toxinidir}/requirements_dev.txt
commands =
pytest --basetemp={envtmpdir}
[testenv:flake8]
basepython = python3.10
deps = flake8
commands = flake8 src tests
[testenv:mypy]
basepython = python3.10
deps =
-r{toxinidir}/requirements_dev.txt
commands = mypy src