Compare commits
2 Commits
nilmdb-1.5
...
nilmdb-1.5
Author | SHA1 | Date | |
---|---|---|---|
99a4228285 | |||
230ec72609 |
@@ -10,6 +10,7 @@ import sys
|
|||||||
import os
|
import os
|
||||||
import argparse
|
import argparse
|
||||||
from argparse import ArgumentDefaultsHelpFormatter as def_form
|
from argparse import ArgumentDefaultsHelpFormatter as def_form
|
||||||
|
import signal
|
||||||
|
|
||||||
try: # pragma: no cover
|
try: # pragma: no cover
|
||||||
import argcomplete
|
import argcomplete
|
||||||
@@ -126,6 +127,13 @@ class Cmdline(object):
|
|||||||
sys.exit(-1)
|
sys.exit(-1)
|
||||||
|
|
||||||
def run(self):
|
def run(self):
|
||||||
|
# Set SIGPIPE to its default handler -- we don't need Python
|
||||||
|
# to catch it for us.
|
||||||
|
try:
|
||||||
|
signal.signal(signal.SIGPIPE, signal.SIG_DFL)
|
||||||
|
except ValueError: # pragma: no cover
|
||||||
|
pass
|
||||||
|
|
||||||
# Clear cached timezone, so that we can pick up timezone changes
|
# Clear cached timezone, so that we can pick up timezone changes
|
||||||
# while running this from the test suite.
|
# while running this from the test suite.
|
||||||
datetime_tz._localtz = None
|
datetime_tz._localtz = None
|
||||||
|
@@ -6,7 +6,7 @@ import time
|
|||||||
|
|
||||||
# Range
|
# Range
|
||||||
min_timestamp = (-2**63)
|
min_timestamp = (-2**63)
|
||||||
max_timestamp = (2**62 - 1)
|
max_timestamp = (2**63 - 1)
|
||||||
|
|
||||||
# Smallest representable step
|
# Smallest representable step
|
||||||
epsilon = 1
|
epsilon = 1
|
||||||
@@ -32,6 +32,10 @@ def timestamp_to_human(timestamp):
|
|||||||
"""Convert a timestamp (integer microseconds since epoch) to a
|
"""Convert a timestamp (integer microseconds since epoch) to a
|
||||||
human-readable string, using the local timezone for display
|
human-readable string, using the local timezone for display
|
||||||
(e.g. from the TZ env var)."""
|
(e.g. from the TZ env var)."""
|
||||||
|
if timestamp == min_timestamp:
|
||||||
|
return "(minimum)"
|
||||||
|
if timestamp == max_timestamp:
|
||||||
|
return "(maximum)"
|
||||||
dt = datetime_tz.datetime_tz.fromtimestamp(timestamp_to_unix(timestamp))
|
dt = datetime_tz.datetime_tz.fromtimestamp(timestamp_to_unix(timestamp))
|
||||||
return dt.strftime("%a, %d %b %Y %H:%M:%S.%f %z")
|
return dt.strftime("%a, %d %b %Y %H:%M:%S.%f %z")
|
||||||
|
|
||||||
|
@@ -615,7 +615,7 @@ class TestCmdline(object):
|
|||||||
test(8, "10:01:59.9", "10:02:00.1", extra="-m")
|
test(8, "10:01:59.9", "10:02:00.1", extra="-m")
|
||||||
|
|
||||||
# all data put in by tests
|
# all data put in by tests
|
||||||
self.ok("extract -a /newton/prep --start 2000-01-01 --end 2020-01-01")
|
self.ok("extract -a /newton/prep --start min --end max")
|
||||||
lines_(self.captured, 43204)
|
lines_(self.captured, 43204)
|
||||||
self.ok("extract -c /newton/prep --start 2000-01-01 --end 2020-01-01")
|
self.ok("extract -c /newton/prep --start 2000-01-01 --end 2020-01-01")
|
||||||
self.match("43200\n")
|
self.match("43200\n")
|
||||||
|
Reference in New Issue
Block a user