Skip to content

Commit

Permalink
Fix tests on py2.7 and requests>=2.6
Browse files Browse the repository at this point in the history
  • Loading branch information
coagulant committed Mar 14, 2015
1 parent a172825 commit bf40106
Show file tree
Hide file tree
Showing 4 changed files with 31 additions and 13 deletions.
3 changes: 2 additions & 1 deletion .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,8 @@ install:
- pip install tox coveralls>=1.0a

script:
- tox -e $(echo py$TRAVIS_PYTHON_VERSION | tr -d . | sed -e 's/pypypy/pypy/'),flake8
- tox -e $(echo py$TRAVIS_PYTHON_VERSION | tr -d . ) -- -a "\"--cov-report term-missing --cov critics\""
- tox -e flake8

after_success:
- coveralls
5 changes: 2 additions & 3 deletions critics/commands.py
Original file line number Diff line number Diff line change
Expand Up @@ -58,12 +58,12 @@ def cli(**settings):
notify = False

if settings['ios']:
logger.info('Tracking IOS apps: %s', ','.join(settings['ios']))
logger.info('Tracking IOS apps: %s', ', '.join(settings['ios']))
itunes = tornado.ioloop.PeriodicCallback(partial(app.poll_store, 'ios'),
1000 * settings['beat'], loop)
itunes.start()
if settings['android']:
logger.info('Tracking Android apps: %s', ','.join(settings['android']))
logger.info('Tracking Android apps: %s', ', '.join(settings['android']))
google_play = tornado.ioloop.PeriodicCallback(partial(app.poll_store, 'android'),
1000 * settings['beat'], loop)
google_play.start()
Expand All @@ -87,7 +87,6 @@ def setup_logging(settings):
handler.setFormatter(logging.Formatter('[%(asctime)s] %(message)s', "%Y-%m-%d %H:%M:%S"))
else:
logger.setLevel(logging.INFO)
logger.debug(settings)
logger.propagate = False


Expand Down
27 changes: 21 additions & 6 deletions tests/test_cli.py
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ def test_args(tmpdir):
runner = CliRunner()
result = runner.invoke(cli, ['--ios', '343200656',
'--android', 'com.rovio.angrybirds',
'--language', 'en', '--language', 'ru',
'--language', 'ru',
'--model', model.strpath,
'--run-once'],
env={'CRITICS_SLACK_WEBHOOK': 'http://httpbin.org/post',
Expand All @@ -25,13 +25,28 @@ def test_args(tmpdir):
num_reviews_ios = len(json.loads(model.read())['ios']['value'])
num_reviews_android = len(json.loads(model.read())['android']['value'])

assert num_reviews_ios in [0, 20]
assert num_reviews_android == 20
assert result.output == ('Languages: English, Russian\n'
assert num_reviews_ios in [0, 10]
assert num_reviews_android == 10
assert result.output == ('Languages: Russian\n'
'Tracking IOS apps: 343200656\n'
'Tracking Android apps: com.rovio.angrybirds\n'
'Transport: slack channels: IOS -> ios Android -> android\n'
'ios: 343200656: en: Fetched %s reviews, %s new\n' % (num_reviews_ios, num_reviews_ios) +
'ios: 343200656: ru: Fetched %s reviews, %s new\n' % (num_reviews_ios, num_reviews_ios) +
'android: com.rovio.angrybirds: en: Fetched 10 reviews, 10 new\n'
'android: com.rovio.angrybirds: ru: Fetched 10 reviews, 10 new\n')


def test_mutiple_languages(tmpdir):
model = tmpdir.join("reviews.json")
runner = CliRunner()
result = runner.invoke(cli, ['--android', 'com.rovio.angrybirds',
'--android', 'com.rovio.angrybirdsstarwarsii.ads',
'--language', 'ru', '--language', 'en',
'--model', model.strpath,
'--run-once', '--no-notify'])
assert result.exit_code == 0
assert result.output == ('Languages: Russian, English\n'
'Tracking Android apps: com.rovio.angrybirds, com.rovio.angrybirdsstarwarsii.ads\n'
'android: com.rovio.angrybirds: ru: Fetched 10 reviews, 10 new\n'
'android: com.rovio.angrybirds: en: Fetched 10 reviews, 10 new\n'
'android: com.rovio.angrybirdsstarwarsii.ads: ru: Fetched 10 reviews, 10 new\n'
'android: com.rovio.angrybirdsstarwarsii.ads: en: Fetched 10 reviews, 10 new\n')
9 changes: 6 additions & 3 deletions tox.ini
Original file line number Diff line number Diff line change
@@ -1,16 +1,19 @@
[tox]
envlist = py27, py33, py34, flake8
envlist = py27, py33, py34, flake8, coverage


[testenv]
setenv =
PYTHONPATH = {toxinidir}:{toxinidir}/critics
commands = python setup.py test
commands = python setup.py test {posargs}
deps =
pytest
pytest-cov
responses


[testenv:flake8]
deps = flake8
deps =
flake8
flake8-print
commands = flake8 . --ignore=F403 --max-line-length=120

0 comments on commit bf40106

Please sign in to comment.