Skip to content

Commit 6fe18b3

Browse files
committed
convery remaining args to list
1 parent cb64793 commit 6fe18b3

2 files changed

Lines changed: 71 additions & 37 deletions

File tree

codecov/__init__.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -548,7 +548,7 @@ def main(*argv, **kwargs):
548548
try:
549549
# find branch, commit, repo from git command
550550
branch = try_to_run(
551-
'git rev-parse --abbrev-ref HEAD || hg branch')
551+
['git', 'rev-parse', '--abbrev-ref', 'HEAD', '||', 'hg branch'])
552552
query['branch'] = branch if branch != 'HEAD' else ''
553553
write(' -> Got branch from git/hg')
554554

@@ -558,7 +558,7 @@ def main(*argv, **kwargs):
558558
if not query.get('commit'):
559559
try:
560560
query['commit'] = try_to_run(
561-
"git rev-parse HEAD || hg id -i --debug | tr -d '+'")
561+
["git", "rev-parse", "HEAD", "||", "hg", "id", "-i", "--debug", "|", "tr", "-d", "'+'"])
562562
write(' -> Got sha from git/hg')
563563

564564
except: # pragma: no cover
@@ -584,7 +584,7 @@ def main(*argv, **kwargs):
584584
elif query['pr'] and query['pr'] != 'false':
585585
# Merge Commits
586586
# -------------
587-
res = try_to_run('git log -1 --pretty=%B')
587+
res = try_to_run(['git', 'log', '-1', '--pretty=%B'])
588588
if res and is_merge_commit.match(res.strip()):
589589
query['commit'] = res.split(' ')[1]
590590
write(' Fixing merge commit SHA')

tests/test.py

Lines changed: 68 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -50,14 +50,16 @@ def setUp(self):
5050

5151
def tearDown(self):
5252
self.delete(self.filepath, self.coverage, self.jacoco, self.bowerrc)
53-
self.delete('hello', 'hello.c', 'hello.gcda', 'hello.c.gcov', 'hello.gcno')
53+
self.delete('hello', 'hello.c', 'hello.gcda',
54+
'hello.c.gcov', 'hello.gcno')
5455

5556
def set_env(self, **kwargs):
5657
for key in kwargs:
5758
os.environ[key] = str(kwargs[key])
5859

5960
def run_cli(self, dump=True, *args, **kwargs):
60-
inline = list(itertools.chain(*[['--%s' % key, str(value)] for key, value in kwargs.items() if value]))
61+
inline = list(itertools.chain(
62+
*[['--%s' % key, str(value)] for key, value in kwargs.items() if value]))
6163
if dump:
6264
inline.append('--dump')
6365
inline.extend(args)
@@ -78,21 +80,26 @@ def delete(self, *paths):
7880
@data('vendor', 'node_modules', 'js/generated/coverage', '__pycache__', 'coverage/instrumented',
7981
'build/lib', 'htmlcov', '.egg-info', '.git', '.tox', 'venv', '.venv-python-2.7')
8082
def test_ignored_path(self, path):
81-
self.assertTrue(bool(codecov.ignored_path('/home/ubuntu/' + path)), path + ' should be ignored')
82-
self.assertTrue(bool(codecov.ignored_path('/home/ubuntu/' + path + '/more paths')), path + ' should be ignored')
83+
self.assertTrue(bool(codecov.ignored_path(
84+
'/home/ubuntu/' + path)), path + ' should be ignored')
85+
self.assertTrue(bool(codecov.ignored_path(
86+
'/home/ubuntu/' + path + '/more paths')), path + ' should be ignored')
8387

8488
@data('coverage.xml', 'jacoco.xml', 'jacocoTestResults.xml', 'coverage.txt',
8589
'gcov.lst', 'cov.gcov', 'info.lcov', 'clover.xml', 'cobertura.xml',
8690
'luacov.report.out', 'gcov.info', 'nosetests.xml')
8791
def test_is_report(self, path):
88-
self.assertFalse(bool(codecov.ignored_report('/home/file/' + path)), path + ' should not be ignored')
89-
self.assertTrue(bool(codecov.is_report('/home/file/' + path)), path + ' should be a report')
92+
self.assertFalse(bool(codecov.ignored_report(
93+
'/home/file/' + path)), path + ' should not be ignored')
94+
self.assertTrue(bool(codecov.is_report(
95+
'/home/file/' + path)), path + ' should be a report')
9096

9197
@data('.coverage.worker10', 'coverage.jade', 'include.lst', 'inputFiles.lst',
9298
'createdFiles.lst', 'scoverage.measurements.blackandwhite.xml', 'test_hello_coverage.txt',
9399
'conftest_blackwhite.c.gcov')
94100
def test_ignore_report(self, path):
95-
self.assertTrue(bool(codecov.ignored_report('/home/file/' + path)), path + ' should be ignored')
101+
self.assertTrue(bool(codecov.ignored_report(
102+
'/home/file/' + path)), path + ' should be ignored')
96103

97104
def test_command(self):
98105
try:
@@ -142,21 +149,25 @@ def test_send(self):
142149
put.return_value = Mock(status_code=200)
143150
with open(self.filepath, 'w+') as f:
144151
f.write('coverage data')
145-
res = self.run_cli(False, commit='a'*40, branch='master', token='<token>')
152+
res = self.run_cli(False, commit='a'*40,
153+
branch='master', token='<token>')
146154
self.assertEqual(res['result'].strip(), 'target')
147155
assert 'https://codecov.io/upload/v4?' in post.call_args[0][0]
148-
assert 'commit=aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa' in post.call_args[0][0]
156+
assert 'commit=aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa' in post.call_args[
157+
0][0]
149158
assert 'token=%3Ctoken%3E' in post.call_args[0][0]
150159
assert 'branch=master' in post.call_args[0][0]
151-
assert u'tests/test.py'.encode("utf-8") in put.call_args[1]['data']
160+
assert u'tests/test.py'.encode(
161+
"utf-8") in put.call_args[1]['data']
152162

153163
def test_send_error(self):
154164
with patch('requests.post') as post:
155165
post.return_value = Mock(status_code=400, text='error')
156166
with open(self.filepath, 'w+') as f:
157167
f.write('coverage data')
158168
try:
159-
self.run_cli(False, token='not-a-token', commit='a'*40, branch='master')
169+
self.run_cli(False, token='not-a-token',
170+
commit='a'*40, branch='master')
160171
except Exception:
161172
pass
162173
else:
@@ -207,7 +218,8 @@ def test_disable_search(self):
207218
@unittest.skipIf(os.getenv('CI') == "True" and os.getenv('APPVEYOR') == 'True', 'Skip AppVeyor CI test')
208219
def test_prefix(self):
209220
self.fake_report()
210-
res = self.run_cli(prefix='/foo/bar/', dump=True, token='a', branch='b', commit='c')
221+
res = self.run_cli(prefix='/foo/bar/', dump=True,
222+
token='a', branch='b', commit='c')
211223
assert '\nfoo/bar/.gitignore' in res['reports']
212224

213225
def write_c(self):
@@ -219,7 +231,8 @@ def write_c(self):
219231
'return 0;', '}'))
220232
with open(os.path.join(os.path.dirname(__file__), '../hello.c'), 'w+') as f:
221233
f.write(c)
222-
codecov.try_to_run('clang -coverage -O0 hello.c -o hello && ./hello')
234+
codecov.try_to_run(['clang', '-coverage', '-O0',
235+
'hello.c', '-o', 'hello', '&&', './hello'])
223236

224237
def test_disable_gcov(self):
225238
if self._env.get('TRAVIS') == 'true':
@@ -246,12 +259,14 @@ def test_gcov(self):
246259
# self.skipTest("Skipped, works on Travis only.")
247260

248261
def test_disable_detect(self):
249-
self.set_env(JENKINS_URL='a', GIT_BRANCH='b', GIT_COMMIT='c', CODECOV_TOKEN='d')
262+
self.set_env(JENKINS_URL='a', GIT_BRANCH='b',
263+
GIT_COMMIT='c', CODECOV_TOKEN='d')
250264
self.fake_report()
251265
try:
252266
self.run_cli(disable='detect')
253267
except AssertionError as e:
254-
self.assertEqual(str(e), "Commit sha is missing. Please specify via --commit=:sha")
268+
self.assertEqual(
269+
str(e), "Commit sha is missing. Please specify via --commit=:sha")
255270
else:
256271
raise Exception("Did not raise AssertionError")
257272

@@ -316,7 +331,8 @@ def test_none_found(self):
316331
raise Exception("Did not raise AssertionError")
317332

318333
def test_sanitize_arg(self):
319-
self.assertEqual(codecov.sanitize_arg('', '& echo test > vuln1.txt'), ' echo test > vuln1.txt')
334+
self.assertEqual(codecov.sanitize_arg(
335+
'', '& echo test > vuln1.txt'), ' echo test > vuln1.txt')
320336

321337
@unittest.skipUnless(os.getenv('JENKINS_URL'), 'Skip Jenkins CI test')
322338
def test_ci_jenkins(self):
@@ -329,7 +345,8 @@ def test_ci_jenkins(self):
329345
self.fake_report()
330346
res = self.run_cli()
331347
self.assertEqual(res['query']['service'], 'jenkins')
332-
self.assertEqual(res['query']['commit'], 'c739768fcac68144a3a6d82305b9c4106934d31a')
348+
self.assertEqual(res['query']['commit'],
349+
'c739768fcac68144a3a6d82305b9c4106934d31a')
333350
self.assertEqual(res['query']['build'], '41')
334351
self.assertEqual(res['query']['build_url'], 'https://....')
335352
self.assertEqual(res['query']['pr'], '')
@@ -348,7 +365,8 @@ def test_ci_jenkins_env(self):
348365
self.fake_report()
349366
res = self.run_cli()
350367
self.assertEqual(res['query']['service'], 'jenkins')
351-
self.assertEqual(res['query']['commit'], 'c739768fcac68144a3a6d82305b9c4106934d31a')
368+
self.assertEqual(res['query']['commit'],
369+
'c739768fcac68144a3a6d82305b9c4106934d31a')
352370
self.assertEqual(res['query']['build'], '41')
353371
self.assertEqual(res['query']['build_url'], 'https://....')
354372
self.assertEqual(res['query']['pr'], '1')
@@ -366,7 +384,8 @@ def test_ci_jenkins_blue_ocean(self):
366384
self.fake_report()
367385
res = self.run_cli()
368386
self.assertEqual(res['query']['service'], 'jenkins')
369-
self.assertEqual(res['query']['commit'], codecov.check_output(("git", "rev-parse", "HEAD")))
387+
self.assertEqual(res['query']['commit'], codecov.check_output(
388+
("git", "rev-parse", "HEAD")))
370389
self.assertEqual(res['query']['build'], '41')
371390
self.assertEqual(res['query']['build_url'], 'https://....')
372391
self.assertEqual(res['query']['pr'], '1')
@@ -388,7 +407,8 @@ def test_ci_travis(self):
388407
self.fake_report()
389408
res = self.run_cli()
390409
self.assertEqual(res['query']['service'], 'travis')
391-
self.assertEqual(res['query']['commit'], 'c739768fcac68144a3a6d82305b9c4106934d31a')
410+
self.assertEqual(res['query']['commit'],
411+
'c739768fcac68144a3a6d82305b9c4106934d31a')
392412
self.assertEqual(res['query']['build'], '4.1')
393413
self.assertEqual(res['query']['pr'], '')
394414
self.assertEqual(res['query']['tag'], 'v1.1.1')
@@ -407,9 +427,11 @@ def test_ci_codeship(self):
407427
self.fake_report()
408428
res = self.run_cli()
409429
self.assertEqual(res['query']['service'], 'codeship')
410-
self.assertEqual(res['query']['commit'], '743b04806ea677403aa2ff26c6bdeb85005de658')
430+
self.assertEqual(res['query']['commit'],
431+
'743b04806ea677403aa2ff26c6bdeb85005de658')
411432
self.assertEqual(res['query']['build'], '20')
412-
self.assertEqual(res['query']['build_url'], 'https://codeship.io/build/1')
433+
self.assertEqual(res['query']['build_url'],
434+
'https://codeship.io/build/1')
413435
self.assertEqual(res['query']['pr'], '')
414436
self.assertEqual(res['query']['branch'], 'master')
415437
self.assertEqual(res['codecov'].token, 'token')
@@ -427,7 +449,8 @@ def test_ci_circleci(self):
427449
self.fake_report()
428450
res = self.run_cli()
429451
self.assertEqual(res['query']['service'], 'circleci')
430-
self.assertEqual(res['query']['commit'], 'd653b934ed59c1a785cc1cc79d08c9aaa4eba73b')
452+
self.assertEqual(res['query']['commit'],
453+
'd653b934ed59c1a785cc1cc79d08c9aaa4eba73b')
431454
self.assertEqual(res['query']['build'], '57.1')
432455
self.assertEqual(res['query']['pr'], '1')
433456
self.assertEqual(res['query']['slug'], 'owner/repo')
@@ -446,7 +469,8 @@ def test_ci_buildkite(self):
446469
self.fake_report()
447470
res = self.run_cli()
448471
self.assertEqual(res['query']['service'], 'buildkite')
449-
self.assertEqual(res['query']['commit'], 'd653b934ed59c1a785cc1cc79d08c9aaa4eba73b')
472+
self.assertEqual(res['query']['commit'],
473+
'd653b934ed59c1a785cc1cc79d08c9aaa4eba73b')
450474
self.assertEqual(res['query']['build'], '57.1')
451475
self.assertEqual(res['query']['slug'], 'owner/repo')
452476
self.assertEqual(res['query']['branch'], 'master')
@@ -464,7 +488,8 @@ def test_ci_semaphore(self):
464488
self.fake_report()
465489
res = self.run_cli()
466490
self.assertEqual(res['query']['service'], 'semaphore')
467-
self.assertEqual(res['query']['commit'], '743b04806ea677403aa2ff26c6bdeb85005de658')
491+
self.assertEqual(res['query']['commit'],
492+
'743b04806ea677403aa2ff26c6bdeb85005de658')
468493
self.assertEqual(res['query']['build'], '10.1')
469494
self.assertEqual(res['query']['slug'], 'owner/repo')
470495
self.assertEqual(res['query']['branch'], 'master')
@@ -480,9 +505,11 @@ def test_ci_drone(self):
480505
self.fake_report()
481506
res = self.run_cli()
482507
self.assertEqual(res['query']['service'], 'drone.io')
483-
self.assertEqual(res['query']['commit'], codecov.check_output(("git", "rev-parse", "HEAD")))
508+
self.assertEqual(res['query']['commit'], codecov.check_output(
509+
("git", "rev-parse", "HEAD")))
484510
self.assertEqual(res['query']['build'], '10')
485-
self.assertEqual(res['query']['build_url'], 'https://drone.io/github/builds/1')
511+
self.assertEqual(res['query']['build_url'],
512+
'https://drone.io/github/builds/1')
486513
self.assertEqual(res['codecov'].token, 'token')
487514

488515
@unittest.skipUnless(os.getenv('SHIPPABLE') == "true", 'Skip Shippable CI test')
@@ -497,10 +524,12 @@ def test_ci_shippable(self):
497524
self.fake_report()
498525
res = self.run_cli()
499526
self.assertEqual(res['query']['service'], 'shippable')
500-
self.assertEqual(res['query']['commit'], '743b04806ea677403aa2ff26c6bdeb85005de658')
527+
self.assertEqual(res['query']['commit'],
528+
'743b04806ea677403aa2ff26c6bdeb85005de658')
501529
self.assertEqual(res['query']['build'], '10')
502530
self.assertEqual(res['query']['slug'], 'owner/repo')
503-
self.assertEqual(res['query']['build_url'], 'https://shippable.com/...')
531+
self.assertEqual(res['query']['build_url'],
532+
'https://shippable.com/...')
504533
self.assertEqual(res['codecov'].token, 'token')
505534

506535
# @unittest.skipUnless(os.getenv('CI') == "True" and os.getenv('APPVEYOR') == 'True', 'Skip AppVeyor CI test')
@@ -520,7 +549,8 @@ def test_ci_appveyor(self):
520549
self.fake_report()
521550
res = self.run_cli(file=self.filepath)
522551
self.assertEqual(res['query']['service'], 'appveyor')
523-
self.assertEqual(res['query']['commit'], 'd653b934ed59c1a785cc1cc79d08c9aaa4eba73b')
552+
self.assertEqual(res['query']['commit'],
553+
'd653b934ed59c1a785cc1cc79d08c9aaa4eba73b')
524554
self.assertEqual(res['query']['job'], 'owner/repo/1.2.3')
525555
self.assertEqual(res['query']['build'], '9r2qufuu8')
526556
self.assertEqual(res['query']['slug'], 'owner/repo')
@@ -538,7 +568,8 @@ def test_ci_wercker(self):
538568
self.fake_report()
539569
res = self.run_cli()
540570
self.assertEqual(res['query']['service'], 'wercker')
541-
self.assertEqual(res['query']['commit'], 'd653b934ed59c1a785cc1cc79d08c9aaa4eba73b')
571+
self.assertEqual(res['query']['commit'],
572+
'd653b934ed59c1a785cc1cc79d08c9aaa4eba73b')
542573
self.assertEqual(res['query']['build'], '1399372237')
543574
self.assertEqual(res['query']['slug'], 'owner/repo')
544575
self.assertEqual(res['codecov'].token, 'token')
@@ -554,7 +585,8 @@ def test_ci_magnum(self):
554585
self.fake_report()
555586
res = self.run_cli()
556587
self.assertEqual(res['query']['service'], 'magnum')
557-
self.assertEqual(res['query']['commit'], 'd653b934ed59c1a785cc1cc79d08c9aaa4eba73b')
588+
self.assertEqual(res['query']['commit'],
589+
'd653b934ed59c1a785cc1cc79d08c9aaa4eba73b')
558590
self.assertEqual(res['query']['build'], '1399372237')
559591
self.assertEqual(res['codecov'].token, 'token')
560592

@@ -571,7 +603,8 @@ def test_ci_gitlab(self):
571603
self.fake_report()
572604
res = self.run_cli()
573605
self.assertEqual(res['query']['service'], 'gitlab')
574-
self.assertEqual(res['query']['commit'], 'd653b934ed59c1a785cc1cc79d08c9aaa4eba73b')
606+
self.assertEqual(res['query']['commit'],
607+
'd653b934ed59c1a785cc1cc79d08c9aaa4eba73b')
575608
self.assertEqual(res['query']['build'], '1399372237')
576609
self.assertEqual(res['query']['slug'], 'owner/repo')
577610
self.assertEqual(res['codecov'].token, 'token')
@@ -585,7 +618,8 @@ def test_ci_none(self):
585618
slug='owner/repo',
586619
token='token')
587620
self.assertEqual(res['query'].get('service'), None)
588-
self.assertEqual(res['query']['commit'], 'd653b934ed59c1a785cc1cc79d08c9aaa4eba73b')
621+
self.assertEqual(res['query']['commit'],
622+
'd653b934ed59c1a785cc1cc79d08c9aaa4eba73b')
589623
self.assertEqual(res['query']['build'], '10')
590624
self.assertEqual(res['query']['slug'], 'owner/repo')
591625
self.assertEqual(res['codecov'].token, 'token')

0 commit comments

Comments
 (0)