3 # Perform the following tests:
4 # 1. Generate a POT file from a set of marked SQL statements
5 # 2. Generate an SQL file from a translated PO file
13 class TestSQLFramework(unittest.TestCase):
15 basedir = os.path.dirname(__file__)
16 script = os.path.join(basedir, '../scripts/db-seed-i18n.py')
17 tmpdirs = [(os.path.join(basedir, 'tmp/'))]
18 sqlsource = os.path.join(basedir, 'data/sqlsource.sql')
19 canonpot = os.path.join(basedir, 'data/sql2pot.pot')
20 canonpo = os.path.join(basedir, 'data/sqlsource.po')
21 testpot = os.path.join(basedir, 'tmp/sql2pot.pot')
22 canonsql = os.path.join(basedir, 'data/po2sql.sql')
23 testsql = os.path.join(basedir, 'tmp/testi18n.sql')
26 testhelper.setUp(self)
29 testhelper.tearDown(self)
33 Create a POT file from our test SQL statements.
36 ('python', self.script, '--pot', self.sqlsource,
37 '--output', self.testpot),
40 # avoid basic timestamp conflicts
41 testhelper.mungepothead(self.testpot)
42 testhelper.mungepothead(self.canonpot)
44 self.assertEqual(filecmp.cmp(self.canonpot, self.testpot), 1)
48 Create a SQL file from a translated PO file.
50 devnull = open('/dev/null', 'w')
52 ('python', self.script, '--sql', self.canonpo,
53 '--locale', 'zz-ZZ', '--output', self.testsql),
54 0, None, None, devnull, devnull).wait()
55 self.assertEqual(filecmp.cmp(self.canonsql, self.testsql), 1)
57 if __name__ == '__main__':