From e2cc2530fc6d54ebc975c01a4ff887ce12f0a736 Mon Sep 17 00:00:00 2001 From: Pavel Aharoni Date: Wed, 29 Mar 2017 13:35:45 +0300 Subject: [SDC-6] sdc-distribution-client 1707 rebasing Change-Id: I322a05fd79beb6ba4fee4d32afffecf531b86e98 Signed-off-by: Pavel Aharoni --- .../cliff/tests/test_utils.py | 79 ++++++++++++++++++++++ 1 file changed, 79 insertions(+) create mode 100644 jython-tosca-parser/src/main/resources/Lib/site-packages/cliff-2.4.0-py2.7.egg/cliff/tests/test_utils.py (limited to 'jython-tosca-parser/src/main/resources/Lib/site-packages/cliff-2.4.0-py2.7.egg/cliff/tests/test_utils.py') diff --git a/jython-tosca-parser/src/main/resources/Lib/site-packages/cliff-2.4.0-py2.7.egg/cliff/tests/test_utils.py b/jython-tosca-parser/src/main/resources/Lib/site-packages/cliff-2.4.0-py2.7.egg/cliff/tests/test_utils.py new file mode 100644 index 0000000..23c46c4 --- /dev/null +++ b/jython-tosca-parser/src/main/resources/Lib/site-packages/cliff-2.4.0-py2.7.egg/cliff/tests/test_utils.py @@ -0,0 +1,79 @@ +#!/usr/bin/env python +# +# 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 os +import struct +import sys + +import mock +import nose + +from cliff import utils + + +def test_utils_terminal_width(): + width = utils.terminal_width(sys.stdout) + # Results are specific to the execution environment, so only assert + # that no error is raised. + assert width is None or isinstance(width, int) + + +@mock.patch('cliff.utils.os') +def test_utils_terminal_width_get_terminal_size(mock_os): + if not hasattr(os, 'get_terminal_size'): + raise nose.SkipTest('only needed for python 3.3 onwards') + ts = os.terminal_size((10, 5)) + mock_os.get_terminal_size.return_value = ts + width = utils.terminal_width(sys.stdout) + assert width == 10 + + mock_os.get_terminal_size.side_effect = OSError() + width = utils.terminal_width(sys.stdout) + assert width is None + + +@mock.patch('fcntl.ioctl') +def test_utils_terminal_width_ioctl(mock_ioctl): + if hasattr(os, 'get_terminal_size'): + raise nose.SkipTest('only needed for python 3.2 and before') + mock_ioctl.return_value = struct.pack('hhhh', 57, 101, 0, 0) + width = utils.terminal_width(sys.stdout) + assert width == 101 + + mock_ioctl.side_effect = IOError() + width = utils.terminal_width(sys.stdout) + assert width is None + + +@mock.patch('cliff.utils.ctypes') +@mock.patch('sys.platform', 'win32') +def test_utils_terminal_width_windows(mock_ctypes): + if hasattr(os, 'get_terminal_size'): + raise nose.SkipTest('only needed for python 3.2 and before') + + mock_ctypes.create_string_buffer.return_value.raw = struct.pack( + 'hhhhHhhhhhh', 101, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0) + mock_ctypes.windll.kernel32.GetStdHandle.return_value = -11 + mock_ctypes.windll.kernel32.GetConsoleScreenBufferInfo.return_value = 1 + + width = utils.terminal_width(sys.stdout) + assert width == 101 + + mock_ctypes.windll.kernel32.GetConsoleScreenBufferInfo.return_value = 0 + + width = utils.terminal_width(sys.stdout) + assert width is None + + width = utils.terminal_width('foo') + assert width is None -- cgit 1.2.3-korg