Displaying pip list command's packages and versions #5062

This commit is contained in:
danielx123 2019-04-22 18:23:51 -04:00 committed by Tomer Keren
parent a0dbf2ab99
commit 0996f3dbc5
2 changed files with 15 additions and 0 deletions

View File

@ -9,6 +9,7 @@ from __future__ import print_function
import argparse import argparse
import collections import collections
import platform import platform
import subprocess
import sys import sys
import time import time
from functools import partial from functools import partial
@ -581,6 +582,11 @@ class TerminalReporter(object):
): ):
msg += " -- " + str(sys.executable) msg += " -- " + str(sys.executable)
self.write_line(msg) self.write_line(msg)
pipe = subprocess.Popen("pip list", shell=True, stdout=subprocess.PIPE).stdout
package_msg = pipe.read()
package_msg = package_msg[:-2]
if package_msg:
self.write_line(package_msg)
lines = self.config.hook.pytest_report_header( lines = self.config.hook.pytest_report_header(
config=self.config, startdir=self.startdir config=self.config, startdir=self.startdir
) )

View File

@ -279,6 +279,15 @@ class TestTerminal(object):
tr.rewrite("hey", erase=True) tr.rewrite("hey", erase=True)
assert f.getvalue() == "hello" + "\r" + "hey" + (6 * " ") assert f.getvalue() == "hello" + "\r" + "hey" + (6 * " ")
def test_packages_display(self, testdir):
testdir.makepyfile(
"""
def test_pass(num):
assert 1 == 1"""
)
result = testdir.runpytest()
result.stdout.fnmatch_lines(["*Package*", "*Version*"])
class TestCollectonly(object): class TestCollectonly(object):
def test_collectonly_basic(self, testdir): def test_collectonly_basic(self, testdir):