Ejemplo n.º 1
0
class TestDatabase(unittest.TestCase):
    def setUp(self):
        self.config = testing.setUp()
        self.session = DBSession()

    def tearDown(self):
        _tearDownTestData(self.session)
        testing.tearDown()

    def _get_scenario(self):
        from next.model.models import Scenario
        return Scenario(u'scenario1')

    def _get_phase(self):
        from next.model.models import Phase
        return Phase(self._get_scenario())

    def _get_node_type(self):
        from next.model.models import NodeType
        return NodeType(u'demand')

    def _get_node(self):
        from next.model.models import Node, BASE_SRID
        wkb_point = from_shape(Point(1, 1), srid=BASE_SRID)
        return Node(
            wkb_point,
            100,
            self._get_node_type(),
            self._get_phase(),
            )

    def test_scenario(self):
        from next.model.models import Scenario
        s1 = self._get_scenario()
        self.session.add(s1)
        s2 = self.session.query(Scenario).first()
        self.assertEqual(s1.name, s2.name)

    def test_node_type(self):
        from next.model.models import NodeType
        _type = NodeType(u'demand')
        self.session.add(_type)

    def test_node(self):
        from next.model.models import Node
        n1 = self._get_node()
        self.session.add(n1)
        n2 = self.session.query(Node).first()
        self.assertEqual(n1, n2)