Beispiel #1
0
 def test_varargs_type(self):
     test_data = GIR_TEMPLATE % TEST_GREETER_GREET_MANY
     gir_root = etree.fromstring(test_data)
     param = gir_root.find(
         './/%s/%s/%s' %
         (core_ns('method'), core_ns('parameters'), core_ns('parameter')))
     self.assertTupleEqual(unnest_type(param), ('...', 'valist', 0))
Beispiel #2
0
 def assertRetvalTypesEqual(self, symbol_string, ctype_name, gi_name,
                            array_nesting):
     test_data = GIR_TEMPLATE % symbol_string
     gir_root = etree.fromstring(test_data)
     retval = gir_root.find('.//%s/%s' %
                            (core_ns('method'), core_ns('return-value')))
     self.assertTupleEqual(unnest_type(retval),
                           (ctype_name, gi_name, array_nesting))
Beispiel #3
0
 def test_array_type(self):
     test_data = GIR_TEMPLATE % TEST_GREETER_LIST_GREETS
     gir_root = etree.fromstring(test_data)
     pythonlang = PYTHON_LANG.get_language_classes()[0]()
     javascriptlang = JAVASCRIPT_LANG.get_language_classes()[0]()
     CACHE_MODULE.cache_nodes(gir_root, [], {pythonlang, javascriptlang})
     translated = pythonlang.get_translation('test_greeter_list_greets')
     self.assertEqual(translated, 'Test.list_greets')
     translated = javascriptlang.get_translation('test_greeter_list_greets')
     self.assertEqual(translated, 'Test.prototype.list_greets')
     retval = gir_root.find('.//%s/%s' %
                            (core_ns('method'), core_ns('return-value')))
     type_desc = CACHE_MODULE.type_description_from_node(retval)
     self.assertEqual(type_desc.gi_name, 'utf8')
     self.assertEqual(type_desc.c_name, 'gchar***')
     self.assertEqual(type_desc.nesting_depth, 2)
Beispiel #4
0
 def test_array_type(self):
     test_data = GIR_TEMPLATE % TEST_GREETER_LIST_GREETS
     gir_root = etree.fromstring(test_data)
     CACHE_MODULE.cache_nodes(gir_root, [])
     translated = CACHE_MODULE.get_translation('test_greeter_list_greets',
                                               'python')
     self.assertEqual(translated, 'Test.list_greets')
     translated = CACHE_MODULE.get_translation('test_greeter_list_greets',
                                               'javascript')
     self.assertEqual(translated, 'Test.prototype.list_greets')
     retval = gir_root.find('.//%s/%s' %
                            (core_ns('method'), core_ns('return-value')))
     type_desc = CACHE_MODULE.type_description_from_node(retval)
     self.assertEqual(type_desc.gi_name, 'utf8')
     self.assertEqual(type_desc.c_name, 'gchar***')
     self.assertEqual(type_desc.nesting_depth, 2)