def METHOD_NAME(self):
    """
    Test that the ShareProjectSerializer shares the projects to users
    """
    self._publish_xls_form_to_project()
    project = Project.objects.last()
    user_joe = self._create_user('joe', 'joe')
    self.assertFalse(ReadOnlyRole.user_has_role(user_joe, project))
    data = {
        'project': project.id,
        'username': 'joe',
        'role': ReadOnlyRole.name
    }
    serializer = ShareProjectSerializer(data=data)
    self.assertTrue(serializer.is_valid())
    serializer.save()
    self.assertTrue(ReadOnlyRole.user_has_role(user_joe, project))
    # Test that it can share to multiple users
    user_dave = self._create_user('dave', 'dave')
    user_jake = self._create_user('jake', 'jake')
    self.assertFalse(ReadOnlyRole.user_has_role(user_dave, project))
    self.assertFalse(ReadOnlyRole.user_has_role(user_jake, project))
    data = {
        'project': project.id,
        'username': 'dave,jake',
        'role': ReadOnlyRole.name
    }
    serializer = ShareProjectSerializer(data=data)
    self.assertTrue(serializer.is_valid())
    serializer.save()
    self.assertTrue(ReadOnlyRole.user_has_role(user_dave, project))
    self.assertTrue(ReadOnlyRole.user_has_role(user_jake, project))
    # Test strips spaces between commas
    user_sam = self._create_user('sam', 'sam')
    user_joy = self._create_user('joy', 'joy')
    self.assertFalse(ReadOnlyRole.user_has_role(user_sam, project))
    self.assertFalse(ReadOnlyRole.user_has_role(user_joy, project))
    data = {
        'project': project.id,
        'username': 'sam, joy',
        'role': ReadOnlyRole.name
    }
    serializer = ShareProjectSerializer(data=data)
    self.assertTrue(serializer.is_valid())
    serializer.save()
    self.assertTrue(ReadOnlyRole.user_has_role(user_sam, project))
    self.assertTrue(ReadOnlyRole.user_has_role(user_joy, project))