1
0
mirror of https://github.com/vikstrous/pirate-get synced 2025-01-10 10:04:21 +01:00

Merge pull request #79 from vikstrous/version_check

error out if the version of python is old
This commit is contained in:
Viktor Stanchev 2016-01-03 18:07:54 -05:00
commit 34e3c66a4f
2 changed files with 44 additions and 1 deletions

View File

@ -1,3 +1,9 @@
import sys
from distutils.version import LooseVersion
if LooseVersion(sys.version) < LooseVersion("3.4.0"):
print("At least python 3.4.0 required. Your version is "+sys.version)
sys.exit(1)
import re import re
import os import os
import argparse import argparse
@ -6,7 +12,6 @@ import configparser
import socket import socket
import urllib.request as request import urllib.request as request
import urllib.error import urllib.error
import sys
import builtins import builtins
from collections import OrderedDict from collections import OrderedDict

38
tests/test_version.py Executable file
View File

@ -0,0 +1,38 @@
#!/usr/bin/env python3
import sys
import unittest
import importlib
from unittest import mock
from unittest.mock import patch, call, MagicMock
import pirate.pirate
class TestPirate(unittest.TestCase):
@patch('sys.exit')
def test_unsupported(self, mock_exit):
sys.version = '3.2.1 (default, dec 7 2015, 12:58:09) \n[gcc 5.2.0]'
importlib.reload(pirate.pirate)
mock_exit.assert_called_once_with(1)
@patch('sys.exit')
def test_unsupported2(self, mock_exit):
sys.version = '2.5.1 (default, dec 7 2015, 12:58:09) \n[gcc 5.2.0]'
importlib.reload(pirate.pirate)
mock_exit.assert_called_once_with(1)
@patch('sys.exit')
def test_supported(self, mock_exit):
sys.version = '3.5.1 (default, dec 7 2015, 12:58:09) \n[gcc 5.2.0]'
importlib.reload(pirate.pirate)
mock_exit.assert_not_called()
@patch('sys.exit')
def test_supported_exact(self, mock_exit):
sys.version = '3.4.0 (default, dec 7 2015, 12:58:09) \n[gcc 5.2.0]'
importlib.reload(pirate.pirate)
mock_exit.assert_not_called()
if __name__ == '__main__':
unittest.main()