devtools/test/unittest_qunit.py
author Adrien Di Mascio <Adrien.DiMascio@logilab.fr>
Tue, 16 Jun 2015 18:01:58 +0200
changeset 10390 0bbd211cf4d7
parent 8930 6a02be304486
child 10887 a0315e9f4c20
permissions -rw-r--r--
[views] implement a custom json error view If the client asked for ``(e)jsonexport`` view, answer him with a json response rather than an error formatted in a big HTML blob. add a custom _requested_vid predicate. In cw 3.21, it will be deprecated in favor of ``match_form_params(vid=('jsonexport', 'ejsonexport'))``

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()