Exemple #1
0
    def test_circular_dependencies(self):
        def generate_lookup(settings):
            lookup = defaultdict(lambda: defaultdict(dict))
            for setting in settings:
                lookup[setting['type']][setting['id']] = setting
            return lookup

        settings1 = [
            {
                'contingent_default': [
                    {'condition': "{features.notsense}='true'", 'value': 'Yes'},
                    {'condition': "{features.sense}='true'", 'value': 'Yes'},
                ],
                'id': 'cc-login-images',
                'type': 'properties',
            },
            {
                'contingent_default': [{'condition': "{properties.server-tether}='true'", 'value': 'Yes'}],
                'id': 'sense',
                'type': 'features',
            },
            {
                'contingent_default': [{'condition': "{properties.cc-login-images}='true'", 'value': 'Yes'}],
                'id': 'server-tether',
                'type': 'properties',
            },
        ]

        self.assertTrue(circular_dependencies(settings1, generate_lookup(settings1)))
        self.assertFalse(circular_dependencies(get_custom_commcare_settings(), get_commcare_settings_lookup()))
Exemple #2
0
 def _test_profile(self, app):
     profile = app.create_profile()
     assert isinstance(profile, bytes), type(profile)
     assert "TÉST ÁPP" in profile.decode('utf-8')
     profile_xml = ET.fromstring(profile)
     types = {
         'features': self._test_feature,
         'properties': self._test_property,
     }
     for p_type, test_method in types.items():
         for key, value in app.profile.get(p_type, {}).items():
             setting = get_commcare_settings_lookup()[p_type][key]
             test_method(profile_xml, key, value, setting)
 def _test_profile(self, app):
     profile = app.create_profile()
     assert isinstance(profile, bytes), type(profile)
     assert u"TÉST ÁPP" in profile.decode('utf-8')
     profile_xml = ET.fromstring(profile)
     types = {
         'features': self._test_feature,
         'properties': self._test_property,
     }
     for p_type, test_method in types.items():
         for key, value in app.profile.get(p_type, {}).items():
             setting = get_commcare_settings_lookup()[p_type][key]
             test_method(profile_xml, key, value, setting)
    def test_circular_dependencies(self):
        def generate_lookup(settings):
            lookup = defaultdict(lambda: defaultdict(dict))
            for setting in settings:
                lookup[setting['type']][setting['id']] = setting
            return lookup

        settings1 = [
            {
                'contingent_default': [
                    {
                        'condition': "{features.notsense}='true'",
                        'value': 'Yes'
                    },
                    {
                        'condition': "{features.sense}='true'",
                        'value': 'Yes'
                    },
                ],
                'id':
                'cc-login-images',
                'type':
                'properties',
            },
            {
                'contingent_default': [{
                    'condition': "{properties.server-tether}='true'",
                    'value': 'Yes'
                }],
                'id':
                'sense',
                'type':
                'features',
            },
            {
                'contingent_default': [{
                    'condition': "{properties.cc-login-images}='true'",
                    'value': 'Yes'
                }],
                'id':
                'server-tether',
                'type':
                'properties',
            },
        ]

        self.assertTrue(
            circular_dependencies(settings1, generate_lookup(settings1)))
        self.assertFalse(
            circular_dependencies(get_custom_commcare_settings(),
                                  get_commcare_settings_lookup()))