#!/usr/bin/env python3 import sys import os.path import unittest import importlib from unittest import mock from unittest.mock import patch, call, MagicMock sys.path.append(os.path.join(os.path.dirname(__file__), '..')) import setup 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(setup) 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(setup) 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(setup) 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(setup) mock_exit.assert_not_called() if __name__ == '__main__': unittest.main()