Browse Source

Merge pull request #38 from cclauss/discover-undefined-names

tox: Add flake8 tests for syntax errors and undefined names; refs #37
pull/42/head
lead2gold 6 years ago committed by GitHub
parent
commit
2e648eef17
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 15
      .travis.yml
  2. 6
      apprise/plugins/NotifyGrowl/gntp/shim.py
  3. 26
      apprise/plugins/NotifyPushjet/pushjet/pushjet.py
  4. 6
      dev-requirements.txt
  5. 4
      tox.ini

15
.travis.yml

@ -13,23 +13,23 @@ matrix:
env: TOXENV=py36
- python: "3.7"
dist: xenial
sudo: required
env: TOXENV=py37
- python: "pypy2.7-5.8.0"
env: TOXENV=pypy
- python: "pypy3.5-5.8.0"
env: TOXENV=pypy3
env: TOXENV=pypy3
install:
- pip install .
- pip install tox
- pip install codecov tox
- pip install -r dev-requirements.txt
- pip install -r requirements.txt
before_install:
- pip install codecov
# run tests
script:
- tox
after_success:
@ -37,10 +37,5 @@ after_success:
- codecov
# run tests
script:
- tox
notifications:
email: false

6
apprise/plugins/NotifyGrowl/gntp/shim.py

@ -27,16 +27,16 @@ if PY3:
from configparser import RawConfigParser
else:
def b(s):
if isinstance(s, unicode):
if isinstance(s, unicode): # noqa
return s.encode('utf8', 'replace')
return s
def u(s):
if isinstance(s, unicode):
if isinstance(s, unicode): # noqa
return s
if isinstance(s, int):
s = str(s)
return unicode(s, "utf8", "replace")
return unicode(s, "utf8", "replace") # noqa
from StringIO import StringIO
from ConfigParser import RawConfigParser

26
apprise/plugins/NotifyPushjet/pushjet/pushjet.py

@ -1,8 +1,12 @@
# -*- coding: utf-8 -*-
import sys
import requests
from functools import partial
from six import text_type
from six.moves.urllib.parse import urljoin
from .utilities import (
NoNoneDict,
requires_secret_key, with_api_bound,
@ -10,14 +14,6 @@ from .utilities import (
)
from .errors import NonexistentError, SubscriptionError, RequestError, ServerError
import sys
if sys.version_info[0] >= 3:
from urllib.parse import urljoin
unicode_type = str
else:
from urlparse import urljoin
unicode_type = unicode
DEFAULT_API_URL = 'https://api.pushjet.io/'
class PushjetModel(object):
@ -52,8 +48,8 @@ class Service(PushjetModel):
raise ValueError("Invalid secret key provided.")
elif public_key and not is_valid_public_key(public_key):
raise ValueError("Invalid public key provided.")
self.secret_key = unicode_type(secret_key) if secret_key else None
self.public_key = unicode_type(public_key) if public_key else None
self.secret_key = text_type(secret_key) if secret_key else None
self.public_key = text_type(public_key) if public_key else None
self.refresh()
def _request(self, endpoint, method, is_secret, params=None, data=None):
@ -97,8 +93,8 @@ class Service(PushjetModel):
if not data:
return
self._request('service', 'PATCH', is_secret=True, data=data)
self.name = unicode_type(name)
self.icon_url = unicode_type(icon_url)
self.name = text_type(name)
self.icon_url = text_type(icon_url)
@requires_secret_key
def delete(self):
@ -171,10 +167,10 @@ class Device(PushjetModel):
return "<Pushjet Device: {}>".format(self.uuid)
def __init__(self, uuid):
uuid = unicode_type(uuid)
uuid = text_type(uuid)
if not is_valid_uuid(uuid):
raise ValueError("Invalid UUID provided. Try uuid.uuid4().")
self.uuid = unicode_type(uuid)
self.uuid = text_type(uuid)
def _request(self, endpoint, method, params=None, data=None):
params = (params or {})
@ -292,7 +288,7 @@ class Api(object):
return "<Pushjet Api: {}>".format(self.url).encode(sys.stdout.encoding, errors='replace')
def __init__(self, url):
self.url = unicode_type(url)
self.url = text_type(url)
self.Service = with_api_bound(Service, self)
self.Device = with_api_bound(Device, self)

6
dev-requirements.txt

@ -1,6 +1,6 @@
pytest
coverage
pytest-cov
pycodestyle
flake8
mock
pytest
pytest-cov
tox

4
tox.ini

@ -41,7 +41,9 @@ commands = coverage run --parallel -m pytest {posargs}
deps=
-r{toxinidir}/requirements.txt
-r{toxinidir}/dev-requirements.txt
commands = coverage run --parallel -m pytest {posargs}
commands =
flake8 . --count --select=E901,E999,F821,F822,F823 --show-source --statistics
coverage run --parallel -m pytest {posargs}
[testenv:pypy]
deps=

Loading…
Cancel
Save