[py-svn] py-trunk commit 4e54c87c5139: fix terminal dimension detection to work with stdout
commits-noreply at bitbucket.org
commits-noreply at bitbucket.org
Mon Jul 26 13:17:47 CEST 2010
# HG changeset patch -- Bitbucket.org
# Project py-trunk
# URL http://bitbucket.org/hpk42/py-trunk/overview
# User holger krekel <holger at merlinux.eu>
# Date 1280142790 -7200
# Node ID 4e54c87c51398260acd559ce8aabf2183ed79552
# Parent d70d85a54bb0c3965b2f6c3071e213af83bf0aa0
fix terminal dimension detection to work with stdout
--- a/setup.py
+++ b/setup.py
@@ -26,7 +26,7 @@ def main():
name='py',
description='py.test and pylib: rapid testing and development utils.',
long_description = long_description,
- version= '1.3.2',
+ version= '1.3.3a1',
url='http://pylib.org',
license='MIT license',
platforms=['unix', 'linux', 'osx', 'cygwin', 'win32'],
--- a/py/__init__.py
+++ b/py/__init__.py
@@ -8,7 +8,7 @@ dictionary or an import path.
(c) Holger Krekel and others, 2004-2010
"""
-__version__ = version = "1.3.2"
+__version__ = version = "1.3.3a1"
import py.apipkg
--- a/testing/io_/test_terminalwriter.py
+++ b/testing/io_/test_terminalwriter.py
@@ -6,6 +6,18 @@ def test_get_terminal_width():
x = py.io.get_terminal_width
assert x == terminalwriter.get_terminal_width
+def test_getdimensions(monkeypatch):
+ fcntl = py.test.importorskip("fcntl")
+ import struct
+ l = []
+ monkeypatch.setattr(fcntl, 'ioctl', lambda *args: l.append(args))
+ try:
+ terminalwriter._getdimensions()
+ except struct.error:
+ pass
+ assert len(l) == 1
+ assert l[0][0] == 1
+
def test_terminal_width_COLUMNS(monkeypatch):
""" Dummy test for get_terminal_width
"""
--- a/py/_io/terminalwriter.py
+++ b/py/_io/terminalwriter.py
@@ -18,7 +18,7 @@ if sys.platform == "win32":
def _getdimensions():
import termios,fcntl,struct
- call = fcntl.ioctl(0,termios.TIOCGWINSZ,"\000"*8)
+ call = fcntl.ioctl(1,termios.TIOCGWINSZ,"\000"*8)
height,width = struct.unpack( "hhhh", call ) [:2]
return height, width
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -1,3 +1,9 @@
+Changes between 1.3.2 and 1.3.3a1
+==================================================
+
+- fix weirdness: make terminal width detection work on stdout instead of stdin
+ (thanks Armin Ronacher for reporting)
+
Changes between 1.3.1 and 1.3.2
==================================================
More information about the pytest-commit
mailing list