cubicweb/server/test/unittest_schema2sql.py
changeset 11789 71df2811b422
parent 11417 5e5e224239c3
--- a/cubicweb/server/test/unittest_schema2sql.py	Tue Oct 11 10:24:13 2016 +0200
+++ b/cubicweb/server/test/unittest_schema2sql.py	Thu Oct 06 12:12:04 2016 +0200
@@ -245,6 +245,32 @@
         output = list(schema2sql.schema2sql(dbhelper, schema, skip_relations=('works_for',)))
         self.assertEqual(output, EXPECTED_DATA_NO_DROP)
 
+    def test_eschema_sql_def_attributes(self):
+        dbhelper = get_db_helper('postgres')
+        attr_defs = schema2sql.eschema_sql_def(dbhelper, schema['Person'])
+        self.assertEqual(attr_defs,
+                         [('nom', 'varchar(64)'),
+                          ('prenom', 'varchar(64)'),
+                          ('sexe', "varchar(1) DEFAULT 'M'"),
+                          ('promo', 'varchar(22)'),
+                          ('titre', 'varchar(128)'),
+                          ('adel', 'varchar(128)'),
+                          ('ass', 'varchar(128)'),
+                          ('web', 'varchar(128)'),
+                          ('tel', 'integer'),
+                          ('fax', 'integer'),
+                          ('datenaiss', 'date'),
+                          ('test', 'boolean'),
+                          ('salary', 'float')])
+
+    def test_eschema_sql_def_inlined_rel(self):
+        dbhelper = get_db_helper('postgres')
+        attr_defs = schema2sql.eschema_sql_def(dbhelper, schema['Affaire'])
+        self.assertEqual(attr_defs,
+                         [('sujet', 'varchar(128)'),
+                          ('ref', 'varchar(12)'),
+                          ('inline_rel', 'integer')])
+
 
 if __name__ == '__main__':
     unittest_main()