コード例 #1
0
class TeamsServiceTests(ModuleStoreTestCase):
    """ Tests for the TeamsService """

    def setUp(self):
        super().setUp()
        self.course_run = CourseRunFactory.create()
        self.course_key = self.course_run['key']
        self.team = CourseTeamFactory.create(course_id=self.course_key)
        self.service = TeamsService()
        self.user = UserFactory.create()
        CourseEnrollmentFactory.create(user=self.user, course_id=self.course_key)
        self.team.add_user(self.user)

    def test_get_team_by_team_id(self):
        team = self.service.get_team_by_team_id('NONEXISTANCE')
        assert team is None

        team = self.service.get_team_by_team_id(self.team.team_id)
        assert team == self.team

    def test_get_team(self):
        user_team = self.service.get_team(self.user, self.course_key, self.team.topic_id)
        assert user_team == self.team

        user2 = UserFactory.create()
        user2_team = self.service.get_team(user2, self.course_key, self.team.topic_id)
        assert user2_team is None

    def test_get_team_detail_url(self):
        # edx.org/courses/blah/teams/#teams/topic_id/team_id
        team_detail_url = self.service.get_team_detail_url(self.team)
        split_url = team_detail_url.split('/')
        assert split_url[1:] ==\
               ['courses', str(self.course_run['key']), 'teams', '#teams', self.team.topic_id, self.team.team_id]
コード例 #2
0
ファイル: test_services.py プロジェクト: saltfun/edx-platform
 def setUp(self):
     super(TeamsServiceTests, self).setUp()
     self.course_run = CourseRunFactory.create()
     self.course_key = self.course_run['key']
     self.team = CourseTeamFactory.create(course_id=self.course_key)
     self.service = TeamsService()
     self.user = UserFactory.create()
     CourseEnrollmentFactory.create(user=self.user, course_id=self.course_key)
     self.team.add_user(self.user)
コード例 #3
0
 def setUp(self):
     super(TeamsServiceTests, self).setUp()  # lint-amnesty, pylint: disable=super-with-arguments
     self.course_run = CourseRunFactory.create()
     self.course_key = self.course_run['key']
     self.team = CourseTeamFactory.create(course_id=self.course_key)
     self.service = TeamsService()
     self.user = UserFactory.create()
     CourseEnrollmentFactory.create(user=self.user,
                                    course_id=self.course_key)
     self.team.add_user(self.user)
コード例 #4
0
    def __init__(self, **kwargs):
        request_cache_dict = DEFAULT_REQUEST_CACHE.data
        store = modulestore()

        services = kwargs.setdefault('services', {})
        user = kwargs.get('user')
        if user and user.is_authenticated:
            services['completion'] = CompletionService(
                user=user, context_key=kwargs.get('course_id'))
        services['fs'] = xblock.reference.plugins.FSService()
        services['i18n'] = ModuleI18nService
        services['library_tools'] = LibraryToolsService(
            store, user_id=user.id if user else None)
        services['partitions'] = PartitionService(
            course_id=kwargs.get('course_id'), cache=request_cache_dict)
        services['settings'] = SettingsService()
        services['user_tags'] = UserTagsService(self)
        if badges_enabled():
            services['badging'] = BadgingService(
                course_id=kwargs.get('course_id'), modulestore=store)
        self.request_token = kwargs.pop('request_token', None)
        services['teams'] = TeamsService()
        services['teams_configuration'] = TeamsConfigurationService()
        services['call_to_action'] = CallToActionService()
        super(LmsModuleSystem, self).__init__(**kwargs)
コード例 #5
0
class TeamsServiceTests(ModuleStoreTestCase):
    """ Tests for the TeamsService """
    def setUp(self):
        super(TeamsServiceTests, self).setUp()  # lint-amnesty, pylint: disable=super-with-arguments
        self.course_run = CourseRunFactory.create()
        self.course_key = self.course_run['key']
        self.team = CourseTeamFactory.create(course_id=self.course_key)
        self.service = TeamsService()
        self.user = UserFactory.create()
        CourseEnrollmentFactory.create(user=self.user,
                                       course_id=self.course_key)
        self.team.add_user(self.user)

    def test_get_team_by_team_id(self):
        team = self.service.get_team_by_team_id('NONEXISTANCE')
        self.assertIsNone(team)

        team = self.service.get_team_by_team_id(self.team.team_id)
        self.assertEqual(team, self.team)

    def test_get_team(self):
        user_team = self.service.get_team(self.user, self.course_key,
                                          self.team.topic_id)
        self.assertEqual(user_team, self.team)

        user2 = UserFactory.create()
        user2_team = self.service.get_team(user2, self.course_key,
                                           self.team.topic_id)
        self.assertIsNone(user2_team)

    def test_get_team_detail_url(self):
        # edx.org/courses/blah/teams/#teams/topic_id/team_id
        team_detail_url = self.service.get_team_detail_url(self.team)
        split_url = team_detail_url.split('/')
        self.assertEqual(split_url[1:], [
            'courses',
            str(self.course_run['key']),
            'teams',
            '#teams',
            self.team.topic_id,
            self.team.team_id,
        ])
コード例 #6
0
class TeamsServiceTests(ModuleStoreTestCase):
    """ Tests for the TeamsService """

    def setUp(self):
        super(TeamsServiceTests, self).setUp()
        self.course_run = CourseRunFactory.create()
        self.team = CourseTeamFactory.create(course_id=self.course_run['key'])
        self.service = TeamsService()

    def test_get_team_detail_url(self):
        # edx.org/courses/blah/teams/#teams/topic_id/team_id
        team_detail_url = self.service.get_team_detail_url(self.team)
        split_url = team_detail_url.split('/')
        self.assertEqual(
            split_url[1:],
            [
                'courses',
                str(self.course_run['key']),
                'teams',
                '#teams',
                self.team.topic_id,
                self.team.team_id,
            ]
        )
コード例 #7
0
 def setUp(self):
     super(TeamsServiceTests, self).setUp()
     self.course_run = CourseRunFactory.create()
     self.team = CourseTeamFactory.create(course_id=self.course_run['key'])
     self.service = TeamsService()
コード例 #8
0
ファイル: test_services.py プロジェクト: uetuluk/edx-platform
class TeamsServiceTests(ModuleStoreTestCase):
    """ Tests for the TeamsService """
    def setUp(self):
        super().setUp()
        self.course_run = CourseRunFactory.create()
        self.course_key = self.course_run['key']
        self.team = CourseTeamFactory.create(course_id=self.course_key)
        self.service = TeamsService()
        self.user = UserFactory.create()
        CourseEnrollmentFactory.create(user=self.user,
                                       course_id=self.course_key)
        self.team.add_user(self.user)

    def test_get_team_by_team_id(self):
        team = self.service.get_team_by_team_id('NONEXISTANCE')
        assert team is None

        team = self.service.get_team_by_team_id(self.team.team_id)
        assert team == self.team

    def test_get_team(self):
        user_team = self.service.get_team(self.user, self.course_key,
                                          self.team.topic_id)
        assert user_team == self.team

        user2 = UserFactory.create()
        user2_team = self.service.get_team(user2, self.course_key,
                                           self.team.topic_id)
        assert user2_team is None

    def test_get_team_detail_url(self):
        # edx.org/courses/blah/teams/#teams/topic_id/team_id
        team_detail_url = self.service.get_team_detail_url(self.team)
        split_url = team_detail_url.split('/')
        assert split_url[1:] ==\
               ['courses', str(self.course_run['key']), 'teams', '#teams', self.team.topic_id, self.team.team_id]

    def test_get_team_names(self):
        """
        get_team_names will return a dict mapping the team id to the team name for all teams in the given teamset
        """
        additional_teams = [
            CourseTeamFactory.create(course_id=self.course_key,
                                     topic_id=self.team.topic_id)
            for _ in range(3)
        ]

        result = self.service.get_team_names(self.course_key,
                                             self.team.topic_id)

        assert result == {
            self.team.team_id: self.team.name,
            additional_teams[0].team_id: additional_teams[0].name,
            additional_teams[1].team_id: additional_teams[1].name,
            additional_teams[2].team_id: additional_teams[2].name,
        }

    def test_get_team_names__none(self):
        """ If there are no teams in the teamset, the function will return an empty list"""
        course_run = CourseRunFactory.create()
        course_key = course_run['key']
        result = self.service.get_team_names(course_key, "some-topic-id")
        assert result == {}