def log(project, item, value, replace_value): """Add a new log entry to the log table. :param str item: The item to log (think of it as a title). :param str value: The value of the logged item. :param str replace_value: if set to logger.REPLACE, this entry will replace the previous entry with the same value. If set to logger.UPDATE, then this entry will add on to the previous entry's value with this entry's value in the form "old [new]". :return None: None. """ try: entry = Log.query.\ filter(Log.log_item == item).\ filter(Log.project == project).one() except NoResultFound: entry = Log(project=project, log_item=item, item_value="") if REPLACE == replace_value: entry.item_value = value entry.save() elif UPDATE == replace_value: entry.item_value = entry.item_value + " [" + value + "] " entry.save()
def test_get(self): """Test the get() method. """ project = Project() project.save() entry = Log(project=project, item_value="true", log_item="logtest") entry.save() self.failUnless(logger.get(project, "logtest") == Log.query.filter(Log.log_item == "logtest").all()[0].item_value) self.failUnless(logger.get(project, "fakerandomname") == "")
def test_get(self): """Test the get() method. """ project = Project() project.save() entry = Log(project=project, item_value="true", log_item="logtest") entry.save() self.failUnless( logger.get(project, "logtest") == Log.query.filter( Log.log_item == "logtest").all()[0].item_value) self.failUnless(logger.get(project, "fakerandomname") == "")