import unittest
from initRambler import txnStart, initialize

initialize("widget_doodle_relation_test.xml", "deployment_table_mapping.xml", "dbname=relation_test_table_mapping")
from Rambler import Server

from Rambler.tests.Widget import Widget
from Rambler.tests.Doodle import Doodle
from Rambler.QueryParser import QueryError, query2pgsql
from Rambler.PostgresMappers import OQLQuery as OrigOQLQuery
from cgi import parse_qs

class OQLQuery(OrigOQLQuery):
    # Fake OQLQuery object because we had to change the OQLQuery object to take
    # dicts instead of strings and I'm too lazy to change all my tests.
    def __init__(self, query):
        qdict = parse_qs(query)
        for key, value in qdict.items():
            if len(value) == 1:
                qdict[key] = value[0]
        self.query = OrigOQLQuery(qdict)

    def execute(self):
        return self.query.execute()

class Test(unittest.TestCase):

    def setUp(self):
        txnStart()
        self._pool = Server.getService("PSQLPool")
        self._conn = self._pool.getConnection()
import unittest
from initRambler import txnStart, initialize

initialize("widget_doodle_relation_test.xml", "deployment_both.xml", "dbname=relation_test_both")
from Rambler import Server

from Rambler.tests.Widget import Widget
from Rambler.tests.Doodle import Doodle
from Rambler.QueryParser import QueryError, query2pgsql
from Rambler.PostgresMappers import OQLQuery as OrigOQLQuery
from cgi import parse_qs


class OQLQuery(OrigOQLQuery):
    # Fake OQLQuery object because we had to change the OQLQuery object to take
    # dicts instead of strings and I'm too lazy to change all my tests.
    def __init__(self, query):
        qdict = parse_qs(query)
        for key, value in qdict.items():
            if len(value) == 1:
                qdict[key] = value[0]
        self.query = OrigOQLQuery(qdict)

    def execute(self):
        return self.query.execute()


class Test(unittest.TestCase):
    def setUp(self):
        txnStart()
        self._pool = Server.getService("PSQLPool")
import unittest
from initRambler import txnStart, initialize

initialize("widget_doodle_relation_test.xml", "deployment_multilevel_fk.xml", "dbname=relation_test_multilevel_fk")
from Rambler import Server

from Rambler.tests.Widget import Widget
from Rambler.tests.Doodle import Doodle
from Rambler.QueryParser import QueryError, query2pgsql
from Rambler.PostgresMappers import OQLQuery as OrigOQLQuery
from cgi import parse_qs

class OQLQuery(OrigOQLQuery):
    # Fake OQLQuery object because we had to change the OQLQuery object to take
    # dicts instead of strings and I'm too lazy to change all my tests.
    def __init__(self, query):
        qdict = parse_qs(query)
        for key, value in qdict.items():
            if len(value) == 1:
                qdict[key] = value[0]
        self.query = OrigOQLQuery(qdict)

    def execute(self):
        return self.query.execute()

class Test(unittest.TestCase):

    def setUp(self):
        txnStart()
        self._pool = Server.getService("PSQLPool")
        self._conn = self._pool.getConnection()