Пример #1
0
 def test_to_csv(self):
     subcategory = Subcategory(id='{00000000-0000-0000-0000-000000000000}', name='Example')
     inclusion_setting = SettingValue()
     subcategory_setting = SubcategorySetting(subcategory=subcategory, inclusion_setting=inclusion_setting)
     self.assertEqual(
         subcategory_setting.to_csv(), 
         ',System,Example,{00000000-0000-0000-0000-000000000000},No Auditing,,0\n'
     )
Пример #2
0
 def test_valid_settings_element(self):
     subcategory = Subcategory(id='{00000000-0000-0000-0000-000000000000}',
                               name='Example')
     inclusion_setting = SettingValue()
     subcategory_setting = SubcategorySetting(
         subcategory=subcategory, inclusion_setting=inclusion_setting)
     policy = AuditPolicy(settings=[subcategory_setting])
     self.assertEqual(policy.settings[0].subcategory.id,
                      '{00000000-0000-0000-0000-000000000000}')
Пример #3
0
    def from_csv(cls, rows):
        _ = rows.pop(0)

        settings = []

        for row in rows:
            _, subcategory, _, _, audit_option, _, _ = row.split(',')

            if subcategory:
                settings.append(SubcategorySetting.from_csv(row))
            elif audit_option:
                settings.append(AuditOption.from_csv(row))
            else:
                settings.append(GlobalObjectAccessAuditSetting.from_csv(row))

        return cls(settings=settings)
Пример #4
0
 def test_from_csv(self):
     subcategory_setting = SubcategorySetting.from_csv(
         ',System,Example,{00000000-0000-0000-0000-000000000000},No Auditing,,0\n'
     )
     self.assertIsInstance(subcategory_setting, SubcategorySetting)
Пример #5
0
 def test_value_include_success_and_failure(self):
     subcategory = Subcategory(id='{00000000-0000-0000-0000-000000000000}', name='Example')
     inclusion_setting = SettingValue(success=True, failure=True)
     subcategory_setting = SubcategorySetting(subcategory=subcategory, inclusion_setting=inclusion_setting)
     self.assertEqual(subcategory_setting.value, 3)
Пример #6
0
 def test_value_include_no_auditing(self):
     subcategory = Subcategory(id='{00000000-0000-0000-0000-000000000000}', name='Example')
     inclusion_setting = SettingValue()
     subcategory_setting = SubcategorySetting(subcategory=subcategory, inclusion_setting=inclusion_setting)
     self.assertEqual(subcategory_setting.value, 0)
Пример #7
0
    def test_invalid_inclusion_setting_type(self):
        subcategory = Subcategory(id='{00000000-0000-0000-0000-000000000000}', name='Example')

        with self.assertRaises(TypeError):
            SubcategorySetting(subcategory=subcategory, inclusion_setting=None)
Пример #8
0
 def test_valid_inclusion_setting(self):
     subcategory = Subcategory(id='{00000000-0000-0000-0000-000000000000}', name='Example')
     inclusion_setting = SettingValue()
     subcategory_setting = SubcategorySetting(subcategory=subcategory, inclusion_setting=inclusion_setting)
     self.assertEqual(subcategory_setting.inclusion_setting.success, False)
Пример #9
0
    def test_invalid_subcategory_type(self):
        inclusion_setting = SettingValue()

        with self.assertRaises(TypeError):
            SubcategorySetting(subcategory=None, inclusion_setting=inclusion_setting)