cubicweb/server/test/data-migractions/cubicweb_fakecustomtype/site_cubicweb.py
author Philippe Pepiot <philippe.pepiot@logilab.fr>
Thu, 28 Mar 2019 10:04:23 +0100
changeset 12545 be36811f0d08
parent 11057 cubicweb/server/test/data-migractions/cubes/fakecustomtype/site_cubicweb.py@0b59724cb3f2
child 12841 fceae84a22dd
permissions -rw-r--r--
[server/test] make unittest_migractions.py use new style cubes MigrationTC used old cube layout in cubicweb/server/test/data-migractions/cubes, move them to new style cubes as "cubicweb_<cubename>" in "apphome" (cubicweb/server/test/data-migractions/) which is added to PYTHONPATH by CubicWebTC.

from yams import register_base_type
from logilab.database import get_db_helper
from logilab.database.sqlgen import SQLExpression

_NUMERIC_PARAMETERS = {'scale': 0, 'precision': None}
register_base_type('Numeric', _NUMERIC_PARAMETERS)

# Add the datatype to the helper mapping
pghelper = get_db_helper('postgres')


def pg_numeric_sqltype(rdef):
    """Return a PostgreSQL column type corresponding to rdef
    """
    return 'numeric(%s, %s)' % (rdef.precision, rdef.scale)

pghelper.TYPE_MAPPING['Numeric'] = pg_numeric_sqltype