mirror of
https://github.com/python-kasa/python-kasa.git
synced 2024-12-22 19:23:34 +00:00
524d28abbc
* do not update inside __repr__ * Convert discovery to asyncio * Use asyncio.DatagramProtocol * Cleanup parameters, no more positional arguments Closes #7 * Remove sync interface * This requires #13 to be merged. Closes #12. * Converts cli to use asyncio.run() where needed. * The children from smartstrips is being initialized during the first update call. * Convert on and off commands to use asyncio.run * conftest: do the initial update automatically for the device, cleans up tests a bit * return subdevices alias for strip plugs, remove sync from docstrings * Make tests pass using pytest-asyncio * Simplify tests and use pytest-asyncio. * Removed the emeter tests for child devices, as this information do not seem to exist (based on the dummy sysinfo data). Can be added again if needed. * Remove sync from docstrings. * Fix incorrect type hint * Add type hints and some docstrings to discovery
70 lines
1.2 KiB
INI
70 lines
1.2 KiB
INI
[tox]
|
|
envlist=py35,py36,py37,flake8,linting,typing
|
|
skip_missing_interpreters = True
|
|
|
|
[tox:travis]
|
|
3.5 = py35
|
|
3.6 = py36
|
|
3.7 = py37
|
|
|
|
[testenv]
|
|
passenv = TRAVIS TRAVIS_JOB_ID TRAVIS_BRANCH
|
|
deps=
|
|
pytest
|
|
pytest-cov
|
|
voluptuous
|
|
typing
|
|
flake8
|
|
pytest-asyncio
|
|
commands=
|
|
py.test --cov --cov-config=tox.ini kasa
|
|
|
|
[testenv:flake8]
|
|
deps=
|
|
flake8
|
|
flake8-docstrings
|
|
commands=flake8 kasa
|
|
|
|
[testenv:typing]
|
|
skip_install=true
|
|
deps=mypy
|
|
commands=mypy --ignore-missing-imports kasa
|
|
|
|
[flake8]
|
|
exclude = .git,.tox,__pycache__,kasa/tests/newfakes.py,kasa/tests/test_fixtures.py
|
|
max-line-length = 88
|
|
per-file-ignores =
|
|
kasa/tests/*.py:D100,D101,D102,D103,D104
|
|
setup.py:D100
|
|
ignore = D105, D107, E203, E501, W503
|
|
#ignore = E203, E266, E501, W503, F403, F401
|
|
#max-complexity = 18
|
|
#select = B,C,E,F,W,T4,B9
|
|
|
|
[testenv:lint]
|
|
deps = pre-commit
|
|
skip_install = true
|
|
commands = pre-commit run --all-files
|
|
|
|
[coverage:run]
|
|
source = kasa
|
|
branch = True
|
|
omit =
|
|
kasa/cli.py
|
|
kasa/tests/*
|
|
|
|
[coverage:report]
|
|
exclude_lines =
|
|
# ignore abstract methods
|
|
raise NotImplementedError
|
|
def __repr__
|
|
|
|
[isort]
|
|
multi_line_output=3
|
|
include_trailing_comma=True
|
|
force_grid_wrap=0
|
|
use_parentheses=True
|
|
line_length=88
|
|
known_first_party=kasa
|
|
known_third_party=click,pytest,setuptools,voluptuous
|