Ejemplo n.º 1
0
    def test_logged_in(self):
        self.client.login(username='******', password='******')
        response = self.client.get(self.path,
                                   HTTP_HOST=reverse_host('challenges'))

        self.assertEqual(response.status_code, 200)
        self.assertEqual(response.json()['recordsTotal'], 0)
Ejemplo n.º 2
0
 def test_response_gte20_activities(self):
     target = [
         baker.make('backend.ChallengeTarget',
                    target_type=baker.make('backend.TargetType',
                                           description='Elevation',
                                           field='total_elevation_gain'),
                    target_value=1000,
                    tracked_activity_type=self.activity_types)
     ]
     elev_challenge = baker.make('backend.Challenge',
                                 name='100k Run',
                                 targets=target)
     baker.make('backend.ChallengeSubscription',
                user=self.user,
                challenge=elev_challenge)
     baker.make('backend.Activity',
                date=elev_challenge.start,
                user=self.user,
                activity_type=self.activity_types[0],
                total_elevation_gain=300)
     self.client.login(username='******', password='******')
     response = self.client.get(reverse_lazy('api:challenge:graphic',
                                             kwargs={
                                                 'user_id': self.user.id,
                                                 'pk': elev_challenge.id
                                             }),
                                HTTP_HOST=reverse_host('challenges'))
     self.assertEqual(response.status_code, 200)
     self.assertEqual(response.json()['id'],
                      'id_challenge_status_{}'.format(elev_challenge.id))
     elev_challenge.delete()
Ejemplo n.º 3
0
    def test_response_0_activities(self):
        self.client.login(username='******', password='******')
        response = self.client.get(self.path,
                                   HTTP_HOST=reverse_host('challenges'))

        self.assertEqual(response.status_code, 200)
        self.assertEqual(response.json()['id'],
                         'id_challenge_status_{}'.format(self.challenge.id))
Ejemplo n.º 4
0
    def test_logged_in_different_user(self):
        self.path = reverse_lazy('api:user_connections',
                                 kwargs={'user_id': self.test_second_user.id})
        self.client.login(username='******', password='******')
        response = self.client.get(self.path,
                                   HTTP_HOST=reverse_host('challenges'))

        self.assertEqual(response.status_code, 401)
Ejemplo n.º 5
0
    def test_logged_in(self):
        self.client.login(username='******', password='******')
        response = self.client.get(self.path, {'code': '1'},
                                   HTTP_HOST=reverse_host('challenges'))

        self.assertEqual(response.status_code, 302)
        self.assertTrue(
            UserConnection.objects.filter(user_id=self.user.id).exists())
Ejemplo n.º 6
0
    def test_challenge_in_future_has_challenges(self):
        start, end = month_start_end(timezone.now() + relativedelta(months=2))
        baker.make('backend.Challenge', start=start, end=end)
        self.client.login(username='******', password='******')
        response = self.client.get(self.path,
                                   HTTP_HOST=reverse_host('challenges'))

        self.assertEqual(response.status_code, 200)
        self.assertEqual(response.json()['recordsTotal'], 0)
Ejemplo n.º 7
0
    def test_subscribe(self):
        self.assertEqual(self.challenge.challengesubscription_set.count(), 0)
        self.client.login(username='******', password='******')
        response = self.client.get(self.path,
                                   HTTP_HOST=reverse_host('challenges'))

        self.assertEqual(response.status_code, 200)
        self.assertEqual(response.json()['id'],
                         'id_challenge_sub_{}'.format(self.challenge.id))
        self.assertEqual(self.challenge.challengesubscription_set.count(), 1)
Ejemplo n.º 8
0
    def test_activites_loaded(self):
        activity_type = baker.make('backend.ActivityType')
        baker.make('backend.Activity',
                   user=self.user,
                   activity_type=activity_type,
                   _quantity=3)
        self.client.login(username='******', password='******')
        response = self.client.get(self.path,
                                   HTTP_HOST=reverse_host('challenges'))

        self.assertEqual(response.status_code, 200)
        self.assertEqual(response.json()['recordsTotal'], 3)
Ejemplo n.º 9
0
def login(request):
    # The current `next` parameter
    current_redirect_url = LoginView(request=request).get_redirect_url()

    login_path = reverse('login', host='main').partition(reverse_host('main'))[-1]
    # If at the login page:
    if request.path.startswith(login_path.rstrip("/")):
        # Let the `next` parameter be the same as it currently is
        login_redirect_path = current_redirect_url
    # If at the front page:
    elif request.path == "/":
        # Omit the `next` parameter
        login_redirect_path = None
    else:
        # Redirect back to the same page after logging in
        login_redirect_path = request.path

    return {
        'login_next_param': f"?next={login_redirect_path}" if login_redirect_path else "",
    }
Ejemplo n.º 10
0
 def test_redirect_if_not_logged_in(self):
     response = self.client.get(self.path,
                                HTTP_HOST=reverse_host('challenges'))
     self.assertEqual(response.status_code, 302)
Ejemplo n.º 11
0
 def test_users_name(self):
     self.client.login(username='******', password='******')
     response = self.client.get(self.path,
                                HTTP_HOST=reverse_host('challenges'))
     self.assertEqual(response.status_code, 200)
Ejemplo n.º 12
0
 def test_if_not_logged_in(self):
     self.path = reverse_lazy('api:user_connections',
                              kwargs={'user_id': 6000})
     response = self.client.get(self.path,
                                HTTP_HOST=reverse_host('challenges'))
     self.assertEqual(response.status_code, 401)
Ejemplo n.º 13
0
 def get_urls(self, page=1, site=None, protocol=None):
     dev_site = Site(domain=reverse_host('dev'), name='dev')
     return super(DevSitemap, self).get_urls(page, dev_site)
Ejemplo n.º 14
0
def login(request):
    direct = request.GET.get('next', '')
    domain = PARENT_HOST
    return redirect(
        reverse_host('login', host='account') + "?next=" + domain + direct)