@@ -38,7 +38,7 @@ def must_close(errorfile = sys.stderr, wrap_verify = False): | |||||
fprintf(errorfile, "error: %s.close() wasn't called!\n", | fprintf(errorfile, "error: %s.close() wasn't called!\n", | ||||
self.__class__.__name__) | self.__class__.__name__) | ||||
return orig(self, *args, **kwargs) | return orig(self, *args, **kwargs) | ||||
except: # pragma: no cover | |||||
except: | |||||
pass | pass | ||||
@wrap_class_method | @wrap_class_method | ||||
@@ -16,7 +16,7 @@ def Timer(name = None, tosyslog = False): | |||||
yield | yield | ||||
elapsed = int((time.time() - start) * 1000) | elapsed = int((time.time() - start) * 1000) | ||||
msg = (name or 'elapsed') + ": " + str(elapsed) + " ms" | msg = (name or 'elapsed') + ": " + str(elapsed) + " ms" | ||||
if tosyslog: # pragma: no cover | |||||
if tosyslog: | |||||
import syslog | import syslog | ||||
syslog.syslog(msg) | syslog.syslog(msg) | ||||
else: | else: | ||||
@@ -115,3 +115,7 @@ class TestMustClose(object): | |||||
del w | del w | ||||
eq_(err.getvalue(), "") | eq_(err.getvalue(), "") | ||||
# Test errors during __del__, by closing stderr so the fprintf fails | |||||
r = Foo("hi") | |||||
err.close() | |||||
del r |
@@ -41,6 +41,8 @@ class Test00Nilmdb(object): # named 00 so it runs first | |||||
sys.stdout = capture | sys.stdout = capture | ||||
with nilmdb.utils.Timer("test"): | with nilmdb.utils.Timer("test"): | ||||
time.sleep(0.01) | time.sleep(0.01) | ||||
with nilmdb.utils.Timer("test syslog", tosyslog=True): | |||||
time.sleep(0.01) | |||||
sys.stdout = old | sys.stdout = old | ||||
in_("test: ", capture.getvalue()) | in_("test: ", capture.getvalue()) | ||||