Exemple #1
0
    def test_parse_xform_nested_repeats(self):
        self._publish_and_submit_new_repeats()
        parser = XFormInstanceParser(self.xml, self.xform.data_dictionary())
        dict = parser.to_dict()
        expected_dict = {
            u'new_repeats': {
                u'info':
                {
                    u'age': u'80',
                    u'name': u'Adam'
                },
                u'kids':
                {
                    u'kids_details':
                    [
                        {
                            u'kids_age': u'50',
                            u'kids_name': u'Abel'
                        },
                    ],
                    u'has_kids': u'1'
                },
                u'web_browsers': u'chrome ie',
                u'gps': u'-1.2627557 36.7926442 0.0 30.0'
            }
        }
        self.assertEqual(dict, expected_dict)

        flat_dict = parser.to_flat_dict()
        expected_flat_dict = {
            u'gps': u'-1.2627557 36.7926442 0.0 30.0',
            u'kids/kids_details':
            [
                {
                    u'kids/kids_details/kids_name': u'Abel',
                    u'kids/kids_details/kids_age': u'50'
                }
            ],
            u'kids/has_kids': u'1',
            u'info/age': u'80',
            u'web_browsers': u'chrome ie',
            u'info/name': u'Adam'
        }
        self.assertEqual(flat_dict, expected_flat_dict)
Exemple #2
0
 def _set_parser(self):
     if not hasattr(self, "_parser"):
         self._parser = XFormInstanceParser(
             self.xml, self.xform.data_dictionary())
Exemple #3
0
 def _set_parser(self):
     if not hasattr(self, "_parser"):
         self._parser = XFormInstanceParser(self.xml)