コード例 #1
0
 def test_list_pieces_when_some(self):
     from dynamicfixtures import (
         _djroot_user,
         _prize_juror,
         _prize_piece_alice,
         _prize_piece_bob,
         _rating_piece_alice,
         _rating_piece_bob,
         _alice_bitcoin_wallet,
         _bob_bitcoin_wallet,
     )
     from ..api import PrizePieceEndpoint
     _djroot_user()
     _prize_piece_alice()
     _prize_piece_bob()
     _rating_piece_alice()
     _rating_piece_bob()
     prize_juror = _prize_juror()
     _alice_bitcoin_wallet()
     _bob_bitcoin_wallet()
     subdomain = prize_juror.prize.whitelabel_settings.subdomain
     url = reverse('api:prize:prize-pieces-list',
                   kwargs={'domain_pk': subdomain})
     view = PrizePieceEndpoint.as_view({'get': 'list'})
     factory = APIRequestFactory()
     request = factory.get(url)
     force_authenticate(request, user=prize_juror.user)
     response = view(request, domain_pk=subdomain)
     self.assertEqual(response.status_code, status.HTTP_200_OK)
     self.assertEqual(response.data['count'], 2)
コード例 #2
0
 def test_retrieve_rating(self):
     from dynamicfixtures import (
         _prize_juror,
         _prize_piece_alice,
         _rating_piece_alice,
     )
     from ..api import RatingEndpoint
     prize_piece_alice = _prize_piece_alice()
     rating_piece_alice = _rating_piece_alice()
     prize_juror = _prize_juror()
     piece_pk = prize_piece_alice.piece.pk
     subdomain = prize_juror.prize.whitelabel_settings.subdomain
     url = reverse('api:prize:rating-detail',
                   kwargs={
                       'pk': piece_pk,
                       'domain_pk': subdomain
                   })
     view = RatingEndpoint.as_view({'get': 'retrieve'})
     factory = APIRequestFactory()
     request = factory.get(url)
     force_authenticate(request, user=prize_juror.user)
     response = view(request, pk=piece_pk, domain_pk=subdomain)
     self.assertEqual(response.status_code, status.HTTP_200_OK)
     self.assertEqual(response.data['rating']['rating'],
                      str(rating_piece_alice.rating))
コード例 #3
0
 def test_list_ratings_for_second_round_of_portfolioreview(self):
     from dynamicfixtures import (
         _prize_juror,
         _prize_piece_alice,
         _prize_piece_bob,
         _rating_piece_alice,
         _rating_piece_bob,
     )
     from ..api import RatingEndpoint
     round_two_starttime = datetime.strptime(
         settings.PORTFOLIO_REVIEW_ROUND_TWO_STARTTIME,
         settings.PORTFOLIO_REVIEW_ROUND_TIMEFORMAT,
     ).replace(tzinfo=pytz.UTC)
     subdomain = 'portfolioreview'
     _prize_piece_alice(subdomain=subdomain)
     _prize_piece_bob(subdomain=subdomain)
     rating_piece_alice = _rating_piece_alice(subdomain=subdomain)
     rating_piece_bob = _rating_piece_bob(subdomain=subdomain)
     rating_piece_alice.datetime = round_two_starttime
     rating_piece_alice.save()
     rating_piece_bob.datetime = round_two_starttime - timedelta(seconds=1)
     rating_piece_bob.save()
     prize_juror = _prize_juror(subdomain=subdomain)
     url = reverse('api:prize:rating-list', kwargs={'domain_pk': subdomain})
     view = RatingEndpoint.as_view({'get': 'list'})
     factory = APIRequestFactory()
     request = factory.get(url, {'prize_round': 2})
     force_authenticate(request, user=prize_juror.user)
     response = view(request, domain_pk=subdomain)
     self.assertEqual(response.status_code, status.HTTP_200_OK)
     self.assertIn('ratings', response.data)
     self.assertEqual(len(response.data['ratings']), 1)
     self.assertIn(str(rating_piece_alice.rating),
                   response.data['ratings'][0]['rating'])
コード例 #4
0
 def test_list_ratings_when_some(self):
     from dynamicfixtures import (
         _prize_juror,
         _prize_piece_alice,
         _prize_piece_bob,
         _rating_piece_alice,
         _rating_piece_bob,
     )
     from ..api import RatingEndpoint
     _prize_piece_alice()
     _prize_piece_bob()
     rating_piece_alice = _rating_piece_alice()
     rating_piece_bob = _rating_piece_bob()
     prize_juror = _prize_juror()
     subdomain = prize_juror.prize.whitelabel_settings.subdomain
     url = reverse('api:prize:rating-list', kwargs={'domain_pk': subdomain})
     view = RatingEndpoint.as_view({'get': 'list'})
     factory = APIRequestFactory()
     request = factory.get(url)
     force_authenticate(request, user=prize_juror.user)
     response = view(request, domain_pk=subdomain)
     self.assertEqual(response.status_code, status.HTTP_200_OK)
     self.assertIn('ratings', response.data)
     self.assertEqual(len(response.data['ratings']), 2)
     ratings = [rating['rating'] for rating in response.data['ratings']]
     self.assertIn(str(rating_piece_alice.rating), ratings)
     self.assertIn(str(rating_piece_bob.rating), ratings)
コード例 #5
0
 def test_list_pieces_for_second_round_of_portfolioreview(self):
     from dynamicfixtures import (
         _djroot_user,
         _prize_juror,
         _prize_piece_alice,
         _prize_piece_bob,
         _rating_piece_alice,
         _rating_piece_bob,
         _alice_bitcoin_wallet,
         _bob_bitcoin_wallet,
     )
     from ..api import PrizePieceEndpoint
     _djroot_user()
     _alice_bitcoin_wallet()
     _bob_bitcoin_wallet()
     subdomain = 'portfolioreview'
     prize_piece_alice = _prize_piece_alice(subdomain=subdomain)
     prize_piece_alice.round = 2
     prize_piece_alice.save()
     _prize_piece_bob(subdomain=subdomain)
     round_two_starttime = datetime.strptime(
         settings.PORTFOLIO_REVIEW_ROUND_TWO_STARTTIME,
         settings.PORTFOLIO_REVIEW_ROUND_TIMEFORMAT,
     ).replace(tzinfo=pytz.UTC)
     rating_piece_alice = _rating_piece_alice(subdomain=subdomain)
     rating_piece_bob = _rating_piece_bob(subdomain=subdomain)
     rating_piece_alice.datetime = round_two_starttime
     rating_piece_alice.save()
     rating_piece_bob.datetime = round_two_starttime - timedelta(seconds=1)
     rating_piece_bob.save()
     prize_juror = _prize_juror(subdomain=subdomain)
     prize = prize_juror.prize
     prize.active_round = 2
     prize.save()
     url = reverse('api:prize:prize-pieces-list',
                   kwargs={'domain_pk': subdomain})
     view = PrizePieceEndpoint.as_view({'get': 'list'})
     factory = APIRequestFactory()
     request = factory.get(url)
     force_authenticate(request, user=prize_juror.user)
     response = view(request, domain_pk=subdomain)
     self.assertEqual(response.status_code, status.HTTP_200_OK)
     self.assertEqual(response.data['count'], 1)
     self.assertIsNotNone(response.data['pieces'][0]['ratings'])