# Path: sacred/observers/base.py
# class RunObserver:
#     """Defines the interface for all run observers."""
# 
#     priority = 0
# 
#     def queued_event(
#         self, ex_info, command, host_info, queue_time, config, meta_info, _id
#     ):
#         pass
# 
#     def started_event(
#         self, ex_info, command, host_info, start_time, config, meta_info, _id
#     ):
#         pass
# 
#     def heartbeat_event(self, info, captured_out, beat_time, result):
#         pass
# 
#     def completed_event(self, stop_time, result):
#         pass
# 
#     def interrupted_event(self, interrupt_time, status):
#         pass
# 
#     def failed_event(self, fail_time, fail_trace):
#         pass
# 
#     def resource_event(self, filename):
#         pass
# 
#     def artifact_event(self, name, filename, metadata=None, content_type=None):
#         pass
# 
#     def log_metrics(self, metrics_by_name, info):
#         pass
# 
#     def join(self):
#         pass


from datetime import datetime
from sacred.observers.base import RunObserver
#!/usr/bin/env python
# coding=utf-8



def test_run_observer():
    # basically to silence coverage
    r = RunObserver()
    assert (
        r.started_event({}, "run", {}, datetime.utcnow(), {}, "comment", None) is None
    )
    assert r.heartbeat_event({}, "", datetime.utcnow(), "result") is None
    assert r.completed_event(datetime.utcnow(), 123) is None

# Path: sacred/observers/base.py
# class RunObserver:
#     """Defines the interface for all run observers."""
# 
#     priority = 0
# 
#     def queued_event(
#         self, ex_info, command, host_info, queue_time, config, meta_info, _id
#     ):
#         pass
# 
#     def started_event(
#         self, ex_info, command, host_info, start_time, config, meta_info, _id
#     ):
#         pass
# 
#     def heartbeat_event(self, info, captured_out, beat_time, result):
#         pass
# 
#     def completed_event(self, stop_time, result):
#         pass
# 
#     def interrupted_event(self, interrupt_time, status):
#         pass
# 
#     def failed_event(self, fail_time, fail_trace):
#         pass
# 
#     def resource_event(self, filename):
#         pass
# 
#     def artifact_event(self, name, filename, metadata=None, content_type=None):
#         pass
# 
#     def log_metrics(self, metrics_by_name, info):
#         pass
# 
#     def join(self):
#         pass


# Path: tests/test_observers/test_run_observer.py
from datetime import datetime
from sacred.observers.base import RunObserver

#!/usr/bin/env python
# coding=utf-8



def test_run_observer():
    # basically to silence coverage
    r = RunObserver()
    assert (
        r.started_event({}, "run", {}, datetime.utcnow(), {}, "comment", None) is None
    )
    assert r.heartbeat_event({}, "", datetime.utcnow(), "result") is None
    assert r.completed_event(datetime.utcnow(), 123) is None

    assert r.interrupted_event(datetime.utcnow(), "INTERRUPTED") is None