Mercurial > treepkg
diff test/test_status.py @ 49:38d66dc6a1e5
merge
author | Bernhard Herzog <bh@intevation.de> |
---|---|
date | Mon, 02 Apr 2007 20:48:25 +0200 |
parents | 3c5ab7a65384 |
children | 39b2deea8481 |
line wrap: on
line diff
--- a/test/test_status.py Mon Apr 02 20:47:25 2007 +0200 +++ b/test/test_status.py Mon Apr 02 20:48:25 2007 +0200 @@ -5,13 +5,13 @@ # This program is free software under the GPL (>=v2) # Read the file COPYING coming with the software for details. -"""Tests for the Status class""" +"""Tests for the Status classes""" import os import unittest from datetime import datetime -from treepkg.status import Status +from treepkg.status import RevisionStatus, Status, EnumFieldDesc from treepkg.util import ensure_directory, writefile @@ -29,34 +29,51 @@ os.remove(self.filename) def test_status(self): - status = Status(self.filename) - status.status = "testing" + status = RevisionStatus(self.filename) + status.error() - otherstatus = Status(self.filename) - self.assertEquals(otherstatus.status, "testing") + otherstatus = RevisionStatus(self.filename) + self.assertEquals(otherstatus.status.name, "error") def test_getting_unknown_fields(self): - status = Status(self.filename) + status = RevisionStatus(self.filename) self.assertRaises(AttributeError, getattr, status, "unknown_field") def test_setting_unknown_fields(self): - status = Status(self.filename) + status = RevisionStatus(self.filename) self.assertRaises(AttributeError, setattr, status, "unknown_field", "some value") - def test_default_value(self): - status = Status(self.filename) + def test_default_values(self): + status = RevisionStatus(self.filename) + self.assertEquals(status.status.name, "unknown") self.assertEquals(status.start, None) + self.assertEquals(status.stop, None) def test_date(self): timestamp = datetime(2007, 3, 9, 17, 32, 55) - status = Status(self.filename) + status = RevisionStatus(self.filename) status.start = timestamp - otherstatus = Status(self.filename) + otherstatus = RevisionStatus(self.filename) self.assertEquals(otherstatus.start, timestamp) def test_magic(self): writefile(self.filename, "Some other magic\nstart: 2007-03-09 17:32:55\n") - self.assertRaises(ValueError, Status, self.filename) + self.assertRaises(ValueError, RevisionStatus, self.filename) + + def test_status_enum(self): + + class TestStatus(Status): + status = EnumFieldDesc() + status.add("not_running", "Process is not running", + default=True) + status.add("running", "Process is running") + status.add("error", "An error occurred") + + status = TestStatus(self.filename) + status.running() + + otherstatus = TestStatus(self.filename) + self.assertEquals(otherstatus.status.name, "running")