Skip to content
Snippets Groups Projects
Commit b6a53e39 authored by tuhe's avatar tuhe
Browse files

verbose option

parent ef2b5a69
Branches
No related tags found
No related merge requests found
......@@ -4,11 +4,8 @@
<list default="true" id="5c346737-53d8-4e87-88c5-7be2c8e7baeb" name="Default" comment="">
<change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/unitgrade.egg-info/PKG-INFO" beforeDir="false" afterPath="$PROJECT_DIR$/src/unitgrade.egg-info/PKG-INFO" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/unitgrade.egg-info/SOURCES.txt" beforeDir="false" afterPath="$PROJECT_DIR$/src/unitgrade.egg-info/SOURCES.txt" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/unitgrade.egg-info/dependency_links.txt" beforeDir="false" afterPath="$PROJECT_DIR$/src/unitgrade.egg-info/dependency_links.txt" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/unitgrade.egg-info/requires.txt" beforeDir="false" afterPath="$PROJECT_DIR$/src/unitgrade.egg-info/requires.txt" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/unitgrade.egg-info/top_level.txt" beforeDir="false" afterPath="$PROJECT_DIR$/src/unitgrade.egg-info/top_level.txt" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/unitgrade/framework.py" beforeDir="false" afterPath="$PROJECT_DIR$/src/unitgrade/framework.py" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/unitgrade/runners.py" beforeDir="false" afterPath="$PROJECT_DIR$/src/unitgrade/runners.py" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/unitgrade/utils.py" beforeDir="false" afterPath="$PROJECT_DIR$/src/unitgrade/utils.py" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/unitgrade/version.py" beforeDir="false" afterPath="$PROJECT_DIR$/src/unitgrade/version.py" afterDir="false" />
</list>
<option name="SHOW_DIALOG" value="false" />
......@@ -364,6 +361,16 @@
<line>62</line>
<option name="timeStamp" value="90" />
</line-breakpoint>
<line-breakpoint enabled="true" suspend="THREAD" type="python-line">
<url>file://$PROJECT_DIR$/src/unitgrade/framework.py</url>
<line>103</line>
<option name="timeStamp" value="91" />
</line-breakpoint>
<line-breakpoint enabled="true" suspend="THREAD" type="python-line">
<url>file://$PROJECT_DIR$/src/unitgrade/framework.py</url>
<line>100</line>
<option name="timeStamp" value="92" />
</line-breakpoint>
</breakpoints>
</breakpoint-manager>
</component>
......
Metadata-Version: 2.1
Name: unitgrade
Version: 0.1.24
Version: 0.1.25
Summary: A student homework/exam evaluation framework build on pythons unittest framework.
Home-page: https://lab.compute.dtu.dk/tuhe/unitgrade
Author: Tue Herlau
......
......@@ -108,13 +108,12 @@ class UTextResult(unittest.TextTestResult):
# For unittest framework where getDescription may return None.
item_title = self.getDescription(test)
self.item_title_print = " * q%i.%i) %s" % (UTextResult.number + 1, self.testsRun, item_title)
if self.show_progress_bar or True:
# if self.show_progress_bar or True:
estimated_time = test.__class__._cache.get(((name, test._testMethodName), 'time'), 100) if hasattr(test.__class__, '_cache') else 4
self.cc = ActiveProgress(t=estimated_time, title=self.item_title_print, show_progress_bar=self.show_progress_bar, file=sys.stdout)
else:
print(self.item_title_print + ('.' * max(0, self.nL - 4 - len(self.item_title_print))), end="")
self.cc = ActiveProgress(t=estimated_time, title=self.item_title_print, show_progress_bar=self.show_progress_bar)
# else:
# print(self.item_title_print + ('.' * max(0, self.nL - 4 - len(self.item_title_print))), end="")
self._test = test
# if not self.unmute:
self._stdout = sys.stdout # Redundant. remove later.
from unitgrade.utils import Logger
......@@ -125,9 +124,7 @@ class UTextResult(unittest.TextTestResult):
buff = sys.stdout.log
sys.stdout = self._stdout # redundant.
buff.close()
from unitgrade.utils import Logger
super().stopTest(test)
def _setupStdout(self):
......@@ -138,9 +135,10 @@ class UTextResult(unittest.TextTestResult):
else:
q_title_print = "<unnamed test. See unitgrade.framework.py>"
cc = ActiveProgress(t=self.setUpClass_time, title=q_title_print, show_progress_bar=self.show_progress_bar)
cc = ActiveProgress(t=self.setUpClass_time, title=q_title_print, show_progress_bar=self.show_progress_bar, mute_stdout=not self.unmute)
self.cc = cc
def _restoreStdout(self): # Used when setting up the test.
if self._previousTestClass is None:
q_time = self.cc.terminate()
......
......@@ -97,11 +97,11 @@ def rm_progress_bar(txt):
class ActiveProgress():
def __init__(self, t, start=True, title="my progress bar", show_progress_bar=True, file=None):
def __init__(self, t, start=True, title="my progress bar", show_progress_bar=True, file=None, mute_stdout=False):
if file == None:
file = sys.stdout
self.file = file
# self.t = t
self.mute_stdout = mute_stdout
self._running = False
self.title = title
self.dt = 0.025
......@@ -113,6 +113,12 @@ class ActiveProgress():
self.start()
def start(self):
if self.mute_stdout:
import io
# from unitgrade.utils import Logger
self._stdout = sys.stdout
sys.stdout = Logger(io.StringIO(), write_to_stdout=False)
self._running = True
if self.show_progress_bar:
self.thread = threading.Thread(target=self.run)
......@@ -133,6 +139,14 @@ class ActiveProgress():
self.pbar = None
self.file.flush()
if self.mute_stdout:
import io
# from unitgrade.utils import Logger
sys.stdout = self._stdout #= sys.stdout
# sys.stdout = Logger(io.StringIO(), write_to_stdout=False)
return time.time() - self.time_started
def run(self):
......
__version__ = "0.1.25"
\ No newline at end of file
__version__ = "0.1.26"
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment