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")
This site is hosted by Intevation GmbH (Datenschutzerklärung und Impressum | Privacy Policy and Imprint)