def test_real_file(self): fd, path = tempfile.mkstemp() try: f = ep.File(path) f.setup(None) f.teardown(None, None, None) finally: if fd: os.close(fd) os.remove(path)
class Alert1(Alert): model = SampleModel conditions = [SampleModel.name == "catch_alert"] ordering = [SampleModel.name] offset = 0 limit = -1 alert_to = [ep.File(":memory:")] def render_alert(self, utcnow, endpoint, obj): return obj.name
class StatisticsAlert(run.Alert): model = models.Statistics conditions = [] alert_to = [ep.File("statistics.log")] def render_alert(self, utcnow, endpoint, obj): return """ ALERT@{now}: {name} - mean_sepal_length = {mean_sepal_length} - mean_sepal_width = {mean_sepal_width} - mean_petal_length = {mean_petal_length} - mean_petal_width = {mean_petal_width} ------------------------------------------------------- """.rstrip().format(now=utcnow, name=obj.name.name, mean_sepal_length=obj.mean_sepal_length, mean_sepal_width=obj.mean_sepal_width, mean_petal_length=obj.mean_petal_length, mean_petal_width=obj.mean_petal_width)
def test_file(self, codecs_open): f = ep.File("foo") f.setup(None) codecs_open.assert_called_once_with("foo", "a", "utf8") f.teardown(None, None, None)
def test_memory(self): f = ep.File(":memory:") f.setup(None) self.assertIsInstance(f.fp, six.StringIO)
class MyAlert(run.Alert): model = None conditions = [] alert_to = [ep.File("my_alert.log")]
class MyAlert(run.Alert): model = models.Example conditions = [model.id > 0] alert_to = [ep.File("my_alert.log")]