Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/sivel/speedtest-cli.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatt Martz <matt@sivel.net>2018-01-03 02:16:52 +0300
committerMatt Martz <matt@sivel.net>2018-01-03 02:16:52 +0300
commit4737a69f105d101bac811e15b5db5e0e3e59bde0 (patch)
tree021f27752868b41200c7ed72d44584b2e65802d1
parent6381ba37421ec3a827351c9b5910b2af0329c299 (diff)
Add a few additional tests, specifically around --source
-rwxr-xr-xspeedtest.py2
-rw-r--r--tests/scripts/source.py37
-rw-r--r--tox.ini4
3 files changed, 42 insertions, 1 deletions
diff --git a/speedtest.py b/speedtest.py
index a6ac664..d0da04e 100755
--- a/speedtest.py
+++ b/speedtest.py
@@ -1,6 +1,6 @@
#!/usr/bin/env python
# -*- coding: utf-8 -*-
-# Copyright 2012-2016 Matt Martz
+# Copyright 2012-2018 Matt Martz
# All Rights Reserved.
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
diff --git a/tests/scripts/source.py b/tests/scripts/source.py
new file mode 100644
index 0000000..357f4c6
--- /dev/null
+++ b/tests/scripts/source.py
@@ -0,0 +1,37 @@
+#!/usr/bin/env python
+# -*- coding: utf-8 -*-
+# Copyright 2018 Matt Martz
+# All Rights Reserved.
+#
+# Licensed under the Apache License, Version 2.0 (the "License"); you may
+# not use this file except in compliance with the License. You may obtain
+# a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations
+# under the License.
+
+import sys
+import subprocess
+
+cmd = [sys.executable, 'speedtest.py', '--source', '127.0.0.1']
+
+p = subprocess.Popen(
+ cmd,
+ stdout=subprocess.PIPE,
+ stderr=subprocess.PIPE
+)
+
+stdout, stderr = p.communicate()
+
+if p.returncode != 1:
+ raise SystemExit('%s did not fail with exit code 1' % ' '.join(cmd))
+
+if 'Invalid argument'.encode() not in stderr:
+ raise SystemExit(
+ '"Invalid argument" not found in stderr:\n%s' % stderr.decode()
+ )
diff --git a/tox.ini b/tox.ini
index 477fa1c..8a63b5b 100644
--- a/tox.ini
+++ b/tox.ini
@@ -6,6 +6,8 @@ commands =
{envpython} -V
{envpython} -m compileall speedtest.py
{envpython} speedtest.py
+ {envpython} speedtest.py --source 172.17.0.1
+ {envpython} tests/scripts/source.py
[testenv:flake8]
basepython=python
@@ -19,3 +21,5 @@ commands =
pypy -V
pypy -m compileall speedtest.py
pypy speedtest.py
+ pypy speedtest.py --source 172.17.0.1
+ pypy tests/scripts/source.py