def test_required_baya_groups(self): # The required groups for an admin site is the `or`-union of all # different required groups required_groups = site._get_required_baya_groups() exp = ((g('AAA') & ALLOW_ALL) | (g('AA') & ALLOW_ALL) | (g('AA') | g('B'))) self.assertEqual(required_groups, exp)
def test_required_baya_groups_repeats(self): """Repeated roles should only be shown once.""" admins = [] role = g('A') # Mock model admins, each with the same required role for i in range(5): model = MagicMock(_meta=MagicMock(app_label='%s' % i)) model_opts = MagicMock(_gate=MagicMock(_gate=MagicMock())) model_opts._gate.get_requires = role admins.append((model, model_opts)) with mock.patch.object(NestedGroupsAdminSite, '_get_admins_with_gate', return_value=admins): site = NestedGroupsAdminSite() required_groups = site._get_required_baya_groups() exp = g('A') self.assertEqual(required_groups, exp)
def test_required_baya_groups_repeats(self): """Repeated roles should only be shown once.""" admins = [] role = g('A') # Mock model admins, each with the same required role for i in range(5): model = MagicMock(_meta=MagicMock(app_label='%s' % i)) model_opts = MagicMock(_gate=MagicMock( _gate=MagicMock())) model_opts._gate.get_requires = role admins.append((model, model_opts)) with mock.patch.object( NestedGroupsAdminSite, '_get_admins_with_gate', return_value=admins): site = NestedGroupsAdminSite() required_groups = site._get_required_baya_groups() exp = g('A') self.assertEqual(required_groups, exp)