Beispiel #1
0
    def test_unlock_all_unlocks_all(self):
        self.user.profile.api_valid = True
        self.user.profile.save()
        mock_assignments_with_one_assignment()

        checked_levels, unlocked_now_count, total_unlocked_count, locked_count = unlock_all_possible_levels_for_user(
            self.user)

        self.assertEqual(total_unlocked_count, 1)
Beispiel #2
0
    def post(self, request, *args, **kwargs):
        should_sync = False
        user = self.request.user
        lower_level_range = [level for level in range(1, user.profile.level + 1)]
        for level in lower_level_range:
            if level not in user.profile.unlocked_levels_list():
                should_sync = True
                user.profile.unlocked_levels.get_or_create(level=level)

        if should_sync:
            level_list, unlocked_count, locked_count = unlock_all_possible_levels_for_user(user)
            return HttpResponse("Unlocked {} levels, containing {} vocabulary.".format(len(level_list), unlocked_count))
        else:
            return HttpResponse("Everything has already been unlocked!")
Beispiel #3
0
    def test_unlock_all_unlocks_all(self):
        self.user.profile.api_valid = True
        self.user.profile.save()
        resp_body = sample_api_responses.single_vocab_response
        level_list = [level for level in range(1, self.user.profile.level + 1)]
        responses.add(responses.GET, build_API_sync_string_for_user_for_levels(self.user, level_list),
                      json=resp_body,
                      status=200,
                      content_type='application/json')

        checked_levels, unlocked_count, locked_count = unlock_all_possible_levels_for_user(self.user)

        self.assertListEqual(level_list, checked_levels)
        self.assertEqual(unlocked_count, 1)
Beispiel #4
0
    def test_unlock_all_unlocks_all(self):
        self.user.profile.api_valid = True
        self.user.profile.save()
        resp_body = sample_api_responses.single_vocab_response
        level_list = [level for level in range(1, self.user.profile.level + 1)]
        responses.add(
            responses.GET,
            self._vocab_api_regex,
            json=resp_body,
            status=200,
            content_type="application/json",
        )

        checked_levels, unlocked_now_count, total_unlocked_count, locked_count = unlock_all_possible_levels_for_user(
            self.user)

        self.assertListEqual(level_list, checked_levels)
        self.assertEqual(total_unlocked_count, 1)
Beispiel #5
0
    def test_unlock_all_unlocks_all(self):
        self.user.profile.api_valid = True
        self.user.profile.save()
        resp_body = sample_api_responses.single_vocab_response
        level_list = [level for level in range(1, self.user.profile.level + 1)]
        responses.add(
            responses.GET,
            self._vocab_api_regex,
            json=resp_body,
            status=200,
            content_type="application/json",
        )

        checked_levels, unlocked_now_count, total_unlocked_count, locked_count = unlock_all_possible_levels_for_user(
            self.user
        )

        self.assertListEqual(level_list, checked_levels)
        self.assertEqual(total_unlocked_count, 1)