def test_user_post_save_with_template(self, mock_notifications, mock_member, mock_settings): user = Dojo_User() user.id = 1 group = Dojo_Group() group.id = 1 template = Mock(Notifications(template=False, user=user)) role = Role.objects.get(id=Roles.Reader) system_settings_group = System_Settings() system_settings_group.default_group = group system_settings_group.default_group_role = role mock_settings.get.return_value = system_settings_group save_mock_member = Mock(return_value=Dojo_Group_Member()) mock_member.return_value = save_mock_member mock_notifications.objects.get.return_value = template user_post_save(None, user, True) mock_member.assert_called_with(group=group, user=user, role=role) save_mock_member.save.assert_called_once() mock_notifications.objects.get.assert_called_with(template=True) template.save.assert_called_once()
def test_user_post_save_without_template(self, mock_notifications, mock_member, mock_settings): user = Dojo_User() user.id = 1 group = Dojo_Group() group.id = 1 role = Role.objects.get(id=Roles.Reader) system_settings_group = System_Settings() system_settings_group.default_group = group system_settings_group.default_group_role = role mock_settings.get.return_value = system_settings_group save_mock_member = Mock(return_value=Dojo_Group_Member()) mock_member.return_value = save_mock_member save_mock_notifications = Mock(return_value=Notifications()) mock_notifications.return_value = save_mock_notifications mock_notifications.objects.get.side_effect = Exception( "Mock no templates") user_post_save(None, user, True) mock_member.assert_called_with(group=group, user=user, role=role) save_mock_member.save.assert_called_once() mock_notifications.assert_called_with(user=user) save_mock_notifications.save.assert_called_once()
def test_user_post_save_email_pattern_does_not_match( self, mock_notifications, mock_member, mock_settings): user = Dojo_User() user.id = 1 user.email = '*****@*****.**' group = Dojo_Group() group.id = 1 role = Role.objects.get(id=Roles.Reader) system_settings_group = System_Settings() system_settings_group.default_group = group system_settings_group.default_group_role = role system_settings_group.default_group_email_pattern = '.*@example.com' save_mock_notifications = Mock(return_value=Notifications()) mock_notifications.return_value = save_mock_notifications mock_notifications.objects.get.side_effect = Exception( "Mock no templates") mock_settings.get.return_value = system_settings_group save_mock_member = Mock(return_value=Dojo_Group_Member()) mock_member.return_value = save_mock_member user_post_save(None, user, True) mock_member.assert_not_called() save_mock_member.save.assert_not_called()
def setUp(self): self.product_type = Product_Type() self.user = Dojo_User() self.group = Group() self.permission_a = Permission() self.permission_a.codename = 'a' self.permission_b = Permission() self.permission_b.codename = 'b' self.permission_c = Permission() self.permission_c.codename = 'c'
def setUpTestData(cls): cls.user = Dojo_User() cls.user.id = 1 cls.group = Dojo_Group() cls.group.id = 1 cls.system_settings_email = System_Settings() cls.system_settings_email.staff_user_email_pattern = '.*@example.com' cls.role = Role.objects.get(id=Roles.Reader) cls.system_settings_group = System_Settings() cls.system_settings_group.default_group = cls.group cls.system_settings_group.default_group_role = cls.role
def setUpTestData(cls): cls.user = Dojo_User() cls.user.id = 1 cls.user2 = Dojo_User() cls.user2.id = 2 cls.global_role_user = Global_Role() cls.global_role_user.id = 1 cls.global_role_user.user = cls.user2 cls.global_role_user.role = Role.objects.get(id=Roles.Reader) cls.product_type = Product_Type() cls.product_type.id = 1 cls.product_type_member = Product_Type_Member() cls.product_type_member.id = 1 cls.product = Product() cls.product.id = 1 cls.product_member = Product_Member() cls.product_member.id = 1 cls.product.prod_type = cls.product_type cls.engagement = Engagement() cls.engagement.product = cls.product cls.test = Test() cls.test.engagement = cls.engagement cls.finding = Finding() cls.finding.test = cls.test cls.stub_finding = Stub_Finding() cls.stub_finding.test = cls.test cls.endpoint = Endpoint() cls.endpoint.product = cls.product cls.technology = App_Analysis() cls.technology.product = cls.product cls.language = Languages() cls.language.product = cls.product cls.product_type_member_reader = Product_Type_Member() cls.product_type_member_reader.user = cls.user cls.product_type_member_reader.product_type = cls.product_type cls.product_type_member_reader.role = Role.objects.get(id=Roles.Reader) cls.product_type_member_owner = Product_Type_Member() cls.product_type_member_owner.user = cls.user cls.product_type_member_owner.product_type = cls.product_type cls.product_type_member_owner.role = Role.objects.get(id=Roles.Owner) cls.product_member_reader = Product_Member() cls.product_member_reader.user = cls.user cls.product_member_reader.product = cls.product cls.product_member_reader.role = Role.objects.get(id=Roles.Reader) cls.product_member_owner = Product_Member() cls.product_member_owner.user = cls.user cls.product_member_owner.product = cls.product cls.product_member_owner.role = Role.objects.get(id=Roles.Owner) cls.group = Dojo_Group() cls.group.id = 1 cls.product_group_reader = Product_Group() cls.product_group_reader.id = 1 cls.product_group_reader.product = cls.product cls.product_group_reader.group = cls.group cls.product_group_reader.role = Role.objects.get(id=Roles.Reader) cls.product_group_owner = Product_Group() cls.product_group_owner.id = 2 cls.product_group_owner.product = cls.product cls.product_group_owner.group = cls.group cls.product_group_owner.role = Role.objects.get(id=Roles.Owner) cls.product_type_group_reader = Product_Type_Group() cls.product_type_group_reader.id = 1 cls.product_type_group_reader.product_type = cls.product_type cls.product_type_group_reader.group = cls.group cls.product_type_group_reader.role = Role.objects.get(id=Roles.Reader) cls.product_type_group_owner = Product_Type_Group() cls.product_type_group_owner.id = 2 cls.product_type_group_owner.product_type = cls.product_type cls.product_type_group_owner.group = cls.group cls.product_type_group_owner.role = Role.objects.get(id=Roles.Owner) cls.group2 = Dojo_Group() cls.group2.id = 2 cls.global_role_group = Global_Role() cls.global_role_group.id = 2 cls.global_role_group.group = cls.group2 cls.global_role_group.role = Role.objects.get(id=Roles.Maintainer) cls.user3 = Dojo_User() cls.user3.id = 3 cls.global_role_user = Global_Role() cls.global_role_user.id = 3 cls.global_role_user.user = cls.user3 cls.global_role_user.role = None cls.group3 = Dojo_Group() cls.group3.id = 3 cls.user4 = Dojo_User() cls.user4.id = 4 cls.group_member = Dojo_Group_Member() cls.group_member.id = 1 cls.group_member.group = cls.group3 cls.group_member.user = cls.user4 cls.group_member.role = Role.objects.get(id=Roles.Writer) cls.user5 = Dojo_User() cls.user5.id = 5 cls.global_role_user = Global_Role() cls.global_role_user.id = 5 cls.global_role_user.user = cls.user5 cls.global_role_user.role = Role.objects.get(id=Roles.Owner)
def setUpTestData(cls): cls.user = Dojo_User() cls.user.id = 1 cls.system_settings_email = System_Settings() cls.system_settings_email.staff_user_email_pattern = '.*@example.com'