Ejemplo n.º 1
0
def get_files(directory, pattern):
    assert has_type(directory,
                    StringType), has_type_message(directory, StringType)
    assert has_type(pattern, StringType), has_type_message(pattern, StringType)
    result = []
    assert has_type(result, ListType), has_type_message(result, ListType)
    return result
Ejemplo n.º 2
0
def get_file_contents(path_name):
    assert has_type(path_name,
                    StringType), has_type_message(path_name, StringType)
    with open(path_name, 'r') as f:
        result = f.read()
    assert has_type(result, StringType), has_type_message(result, StringType)
    return result
Ejemplo n.º 3
0
def file_is_empty(file_name):
    assert has_type(file_name,
                    StringType), has_type_message(file_name, StringType)
    result = (
        os.path.getsize(file_name) > 0) if file_exists(file_name) else False
    assert has_type(result, BooleanType), has_type_message(result, BooleanType)
    return result
Ejemplo n.º 4
0
def set_file_contents(path_name, contents):
    assert has_type(path_name,
                    StringType), has_type_message(path_name, StringType)
    assert has_type(contents,
                    StringType), has_type_message(contents, StringType)
    with open(path_name, 'w') as f:
        f.write(contents)
Ejemplo n.º 5
0
def get_file_modified_time(pathname):
    """Return Unix epoch for when pathname was last modified"""
    assert has_type(pathname, StringType), has_type_message(pathname, StringType)
    result = os.path.getmtime(pathname)
    assert has_type(result, FloatType), has_type_message(result, FloatType)
    result = timestamp_as_datetime_utc(result)
    assert has_type(result, datetime), has_type_message(result, datetime)
    return result
Ejemplo n.º 6
0
def get_empty_files(directory, pattern):
    assert has_type(directory, StringType), has_type_message(directory, StringType)
    assert has_type(pattern, StringType), has_type_message(pattern, StringType)
    compiled = re.compile(pattern)
    result = []
    result = [f for f in os.listdir(directory) if compiled.match(f) and file_is_empty(f)]
    assert has_type(result, ListType), has_type_message(result, ListType)
    return result
Ejemplo n.º 7
0
def datetime_formatted(date_time, format_string):
    """Return UTC date_time as formatted string"""
    if date_time is None:
        result = ''
    else:
        assert has_type(date_time, datetime.datetime), has_type_message(
            date_time, datetime.datetime)
        assert date_time.utcoffset() is None
        result = format_string.format(date_time)
    assert has_type(result, StringType), has_type_message(result, StringType)
    return result
Ejemplo n.º 8
0
def timestamp_as_datetime_utc(timestamp):
    """Return UTC datetime for Unix epoch timestamp"""
    if has_type(timestamp, FloatType):
        result = datetime.datetime.utcfromtimestamp(timestamp)
    elif has_type(timestamp, IntType):
        result = datetime.datetime.utcfromtimestamp(timestamp)
    else:
        raise ValueError(
            unrecognized_message(timestamp, type(timestamp), 'type'))
    assert has_type(result, datetime.datetime), has_type_message(
        result, datetime.datetime)
    return result
Ejemplo n.º 9
0
def now():
    """Return UTC datetime for NOW"""
    result = datetime.datetime.utcnow()
    assert has_type(result, datetime.datetime), has_type_message(
        result, datetime.datetime)
    return result
Ejemplo n.º 10
0
def path_exists(pathname):
    assert has_type(pathname, StringType), has_type_message(pathname, StringType)
    result = os.path.exists(pathname)
    assert has_type(result, BooleanType), has_type_message(result, BooleanType)
    return result
Ejemplo n.º 11
0
def maybe_create_directory(pathname):
    assert has_type(pathname, StringType), has_type_message(pathname, StringType)
    if not directory_exists(pathname): create_directory(pathname)
Ejemplo n.º 12
0
def get_uptime_from_proc():
    with open('/proc/uptime', 'r') as f:
        line = f.readline()
        result = float(line.split()[0])
    assert has_type(result, FloatType), has_type_message(result, FloatType)
    return result
Ejemplo n.º 13
0
def file_exists(filename):
    assert has_type(filename, StringType), has_type_message(filename, StringType)
    result = os.path.isfile(filename)
    assert has_type(result, BooleanType), has_type_message(result, BooleanType)
    return result
Ejemplo n.º 14
0
def directory_exists(pathname):
    assert has_type(pathname, StringType), has_type_message(pathname, StringType)
    result = os.path.isdir(pathname)
    assert has_type(result, BooleanType), has_type_message(result, BooleanType)
    return result
Ejemplo n.º 15
0
def create_directory(pathname):
    assert has_type(pathname, StringType), has_type_message(pathname, StringType)
    os.makedirs(pathname)
Ejemplo n.º 16
0
def delete_directory(path_name):
    assert has_type(path_name,
                    StringType), has_type_message(path_name, StringType)
    shutil.rmtree(path_name)