devtools/test/unittest_qunit.py
author Sylvain Thénault <sylvain.thenault@logilab.fr>
Thu, 27 Mar 2014 14:32:21 +0100
branchstable
changeset 9588 fe267b7336f3
parent 8930 6a02be304486
child 10887 a0315e9f4c20
permissions -rw-r--r--
[migration] always rebuild infered relation This was skipped for some bad reason (see 12ad88615a12 which introduced the change). Fix for #231956 in Yams is necessary to allow this cset: during a migration, we want to always reinfer relations while allowing explicit redefinition of an infered relation later. Else, we may run the migration with missing parts of the schema (the one that should have been infered). Closes #3685463.

from logilab.common.testlib import unittest_main
from cubicweb.devtools.qunit import QUnitTestCase

from os import path as osp

JSTESTDIR = osp.abspath(osp.join(osp.dirname(__file__), 'data', 'js_examples'))


def js(name):
    return osp.join(JSTESTDIR, name)

class QUnitTestCaseTC(QUnitTestCase):

    all_js_tests = (
                    (js('test_simple_success.js'),),
                    (js('test_with_dep.js'), (js('dep_1.js'),)),
                    (js('test_with_ordered_deps.js'), (js('dep_1.js'), js('deps_2.js'),)),
                   )


    def test_simple_failure(self):
        js_tests = list(self._test_qunit(js('test_simple_failure.js')))
        self.assertEqual(len(js_tests), 3)
        test_1, test_2, test_3 = js_tests
        self.assertRaises(self.failureException, test_1[0], *test_1[1:])
        self.assertRaises(self.failureException, test_2[0], *test_2[1:])
        test_3[0](*test_3[1:])


if __name__ == '__main__':
    unittest_main()