iro/tests/model_validate.py
author Sandro Knauß <knauss@netzguerilla.net>
Fri, 23 Mar 2012 16:16:56 +0100
branchdevel
changeset 241 546316b0b09c
parent 231 3929338fd17f
child 294 0e75bd39767d
permissions -rw-r--r--
moving DummyObserver and DummyPool -> iro.test_helpers.utils DBTestCase now using DummyObserver out of the box
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
207
90a81145852c tests for vRoute
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff changeset
     1
from iro.model.schema import Offer
209
7a0f8fbdf7b8 adding tests for vTyp
Sandro Knauß <knauss@netzguerilla.net>
parents: 207
diff changeset
     2
from iro.model.decorators import vRoute, vTyp
207
90a81145852c tests for vRoute
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff changeset
     3
from iro.model.pool import data
90a81145852c tests for vRoute
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff changeset
     4
90a81145852c tests for vRoute
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff changeset
     5
from iro.error import ValidateException
90a81145852c tests for vRoute
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff changeset
     6
231
3929338fd17f moving tests -> iro.tests
Sandro Knauß <knauss@netzguerilla.net>
parents: 212
diff changeset
     7
from ..test_helpers.dbtestcase import DBTestCase
241
546316b0b09c moving DummyObserver and DummyPool -> iro.test_helpers.utils
Sandro Knauß <knauss@netzguerilla.net>
parents: 231
diff changeset
     8
from ..test_helpers.utils import DummyPool
207
90a81145852c tests for vRoute
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff changeset
     9
90a81145852c tests for vRoute
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff changeset
    10
class ModelVaidatorTest(DBTestCase):
90a81145852c tests for vRoute
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff changeset
    11
    """tests for the model vaidators"""
90a81145852c tests for vRoute
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff changeset
    12
    def setUp(self):
90a81145852c tests for vRoute
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff changeset
    13
        DBTestCase.setUp(self)
90a81145852c tests for vRoute
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff changeset
    14
        self.pool = data.pool
90a81145852c tests for vRoute
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff changeset
    15
        data.pool = DummyPool()
90a81145852c tests for vRoute
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff changeset
    16
90a81145852c tests for vRoute
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff changeset
    17
    def tearDown(self):
90a81145852c tests for vRoute
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff changeset
    18
        data.pool = self.pool
90a81145852c tests for vRoute
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff changeset
    19
        self.pool = None
90a81145852c tests for vRoute
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff changeset
    20
        DBTestCase.tearDown(self)
90a81145852c tests for vRoute
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff changeset
    21
90a81145852c tests for vRoute
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff changeset
    22
    def testTyp(self):
209
7a0f8fbdf7b8 adding tests for vTyp
Sandro Knauß <knauss@netzguerilla.net>
parents: 207
diff changeset
    23
        with self.session() as session:
7a0f8fbdf7b8 adding tests for vTyp
Sandro Knauß <knauss@netzguerilla.net>
parents: 207
diff changeset
    24
            session.add(Offer(name="t",provider="p",typ="type"))
7a0f8fbdf7b8 adding tests for vTyp
Sandro Knauß <knauss@netzguerilla.net>
parents: 207
diff changeset
    25
7a0f8fbdf7b8 adding tests for vTyp
Sandro Knauß <knauss@netzguerilla.net>
parents: 207
diff changeset
    26
        with self.session() as session:
7a0f8fbdf7b8 adding tests for vTyp
Sandro Knauß <knauss@netzguerilla.net>
parents: 207
diff changeset
    27
            self.assertEqual(vTyp("type",None),"type")
7a0f8fbdf7b8 adding tests for vTyp
Sandro Knauß <knauss@netzguerilla.net>
parents: 207
diff changeset
    28
            e = self.assertRaises(ValidateException,vTyp, "sss", None)
231
3929338fd17f moving tests -> iro.tests
Sandro Knauß <knauss@netzguerilla.net>
parents: 212
diff changeset
    29
            self.assertEqual(str(e),'700: Typ sss is not valid.')
207
90a81145852c tests for vRoute
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff changeset
    30
90a81145852c tests for vRoute
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff changeset
    31
    def testRoute(self):
90a81145852c tests for vRoute
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff changeset
    32
        with self.session() as session:
90a81145852c tests for vRoute
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff changeset
    33
            session.add(Offer(name="t",provider="p",typ="type"))
210
3763babd5e10 refactoring vRoute
Sandro Knauß <knauss@netzguerilla.net>
parents: 209
diff changeset
    34
        self.assertEqual(vRoute("t",None,typ="type"),"t")
3763babd5e10 refactoring vRoute
Sandro Knauß <knauss@netzguerilla.net>
parents: 209
diff changeset
    35
        self.assertEqual(vRoute(["t","t"],None,typ="type"),["t"])
3763babd5e10 refactoring vRoute
Sandro Knauß <knauss@netzguerilla.net>
parents: 209
diff changeset
    36
        e = self.assertRaises(ValidateException,vRoute, "s", None, typ="type")
231
3929338fd17f moving tests -> iro.tests
Sandro Knauß <knauss@netzguerilla.net>
parents: 212
diff changeset
    37
        self.assertEqual(str(e),'700: Route s is not valid.')
207
90a81145852c tests for vRoute
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff changeset
    38
90a81145852c tests for vRoute
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff changeset
    39
    def testRouteAllow(self):
90a81145852c tests for vRoute
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff changeset
    40
        with self.session() as session:
90a81145852c tests for vRoute
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff changeset
    41
            session.add(Offer(name="t",provider="p",typ="type"))
210
3763babd5e10 refactoring vRoute
Sandro Knauß <knauss@netzguerilla.net>
parents: 209
diff changeset
    42
        e = self.assertRaises(ValidateException,vRoute, "t", "foo", typ="type", allowString=False)
231
3929338fd17f moving tests -> iro.tests
Sandro Knauß <knauss@netzguerilla.net>
parents: 212
diff changeset
    43
        self.assertEqual(str(e),'700: foo must be a list of routes.')
210
3763babd5e10 refactoring vRoute
Sandro Knauß <knauss@netzguerilla.net>
parents: 209
diff changeset
    44
        e = self.assertRaises(ValidateException,vRoute, ["t"], "foo", typ="type", allowList=False)
231
3929338fd17f moving tests -> iro.tests
Sandro Knauß <knauss@netzguerilla.net>
parents: 212
diff changeset
    45
        self.assertEqual(str(e),'700: foo must be a route - No list of routes.')
207
90a81145852c tests for vRoute
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff changeset
    46
212
39e4c09e1b60 adding tests for vRoute with default and provider names
Sandro Knauß <knauss@netzguerilla.net>
parents: 210
diff changeset
    47
    def testRouteProvider(self):
39e4c09e1b60 adding tests for vRoute with default and provider names
Sandro Knauß <knauss@netzguerilla.net>
parents: 210
diff changeset
    48
        with self.session() as session:
39e4c09e1b60 adding tests for vRoute with default and provider names
Sandro Knauß <knauss@netzguerilla.net>
parents: 210
diff changeset
    49
            session.add(Offer(name="t",provider="p",typ="type"))
39e4c09e1b60 adding tests for vRoute with default and provider names
Sandro Knauß <knauss@netzguerilla.net>
parents: 210
diff changeset
    50
        self.assertEqual(vRoute("p",None,typ="type"),"p")
39e4c09e1b60 adding tests for vRoute with default and provider names
Sandro Knauß <knauss@netzguerilla.net>
parents: 210
diff changeset
    51
39e4c09e1b60 adding tests for vRoute with default and provider names
Sandro Knauß <knauss@netzguerilla.net>
parents: 210
diff changeset
    52
    def testRouteDefault(self):
39e4c09e1b60 adding tests for vRoute with default and provider names
Sandro Knauß <knauss@netzguerilla.net>
parents: 210
diff changeset
    53
        self.assertEqual(vRoute("default",None,typ="type"),"default")
39e4c09e1b60 adding tests for vRoute with default and provider names
Sandro Knauß <knauss@netzguerilla.net>
parents: 210
diff changeset
    54