예제 #1
0
    def test_validate_one_invalid_uuid(self):
        factory = RequestFactory()
        get_request = factory.get('/', HTTP_DUNYA_COLLECTION='35671712-f6a8-449d-bad8-c8d7d94c84ba,x')

        try:
            get_collection_ids_from_request_or_error(get_request)
            self.fail('expected exception')
        except ValidationError:
            pass
예제 #2
0
    def test_validate_invalid_uuid(self):
        factory = RequestFactory()
        get_request = factory.get('/', HTTP_DUNYA_COLLECTION='x')

        try:
            get_collection_ids_from_request_or_error(get_request)
            self.fail('expected exception')
        except ValidationError:
            pass
예제 #3
0
 def release_list(self, ob):
     collection_ids = get_collection_ids_from_request_or_error(
         self.context['request'])
     permission = utils.get_user_permissions(self.context['request'].user)
     release = ob.release_set.with_permissions(collection_ids, permission)
     cs = ReleaseInnerSerializer(release, many=True)
     return cs.data
예제 #4
0
 def recording_list(self, ob):
     collection_ids = get_collection_ids_from_request_or_error(
         self.context['request'])
     permission = utils.get_user_permissions(self.context['request'].user)
     recordings = ob.recording_set.with_permissions(collection_ids,
                                                    permission)
     return RecordingInnerSerializer(recordings, many=True).data
예제 #5
0
 def get_queryset(self):
     collection_ids = get_collection_ids_from_request_or_error(self.request)
     permission = utils.get_user_permissions(self.request.user)
     return models.Recording.objects.with_permissions(
         collection_ids,
         permission).prefetch_related('raags', 'taals', 'layas', 'forms',
                                      'works', 'instrumentperformance_set')
예제 #6
0
 def concert_list(self, ob):
     collection_ids = get_collection_ids_from_request_or_error(
         self.context['request'])
     permission = utils.get_user_permissions(self.context['request'].user)
     concerts = ob.concert_set.with_permissions(collection_ids, permission)
     cs = ConcertInnerSerializer(concerts, many=True)
     return cs.data
예제 #7
0
파일: api.py 프로젝트: vishalbelsare/dunya
 def get_queryset(self):
     collection_ids = get_collection_ids_from_request_or_error(self.request)
     permission = utils.get_user_permissions(self.request.user)
     return models.Recording.objects.with_permissions(
         collection_ids, permission).prefetch_related(
             'works__makam', 'works__usul', 'makam', 'artists',
             'instrumentperformance_set__artist',
             'instrumentperformance_set__instrument')
예제 #8
0
 def get_queryset(self):
     collection_ids = get_collection_ids_from_request_or_error(self.request)
     permission = utils.get_user_permissions(self.request.user)
     return models.Recording.objects.with_permissions(
         collection_ids,
         permission).select_related('work').prefetch_related(
             'recordinginstrumentalist_set__artist',
             'recordinginstrumentalist_set__instrument', 'performers',
             'shengqiangbanshi')
예제 #9
0
 def get_album_artists(self, ob):
     collection_ids = get_collection_ids_from_request_or_error(self.context['request'])
     permission = utils.get_user_permissions(self.context['request'].user)
     releases = ob.release_set.with_permissions(collection_ids, permission)
     ret = []
     if len(releases):
         ret = releases[0].artists
     arts = ArtistInnerSerializer(ret, many=True)
     return arts.data
예제 #10
0
파일: api.py 프로젝트: MTG/dunya
 def get_queryset(self):
     collection_ids = get_collection_ids_from_request_or_error(self.request)
     permission = utils.get_user_permissions(self.request.user)
     return models.Recording.objects.with_permissions(collection_ids, permission).prefetch_related('raags', 'taals', 'layas', 'forms', 'works', 'instrumentperformance_set')
예제 #11
0
 def get_queryset(self):
     collection_ids = get_collection_ids_from_request_or_error(self.request)
     permission = utils.get_user_permissions(self.request.user)
     return models.Artist.objects.with_permissions(
         collection_ids, permission).select_related('role_type',
                                                    'instrument')
예제 #12
0
파일: api.py 프로젝트: MTG/dunya
 def recording_list(self, ob):
     collection_ids = get_collection_ids_from_request_or_error(self.context['request'])
     permission = utils.get_user_permissions(self.context['request'].user)
     recordings = ob.recordings(collection_ids=collection_ids, permission=permission)
     rs = RecordingInnerSerializer(recordings, many=True)
     return rs.data
예제 #13
0
파일: api.py 프로젝트: MTG/dunya
 def get_queryset(self):
     collection_ids = get_collection_ids_from_request_or_error(self.request)
     permission = utils.get_user_permissions(self.request.user)
     return models.Artist.objects.with_permissions(collection_ids, permission).select_related('role_type', 'instrument')
예제 #14
0
파일: api.py 프로젝트: MTG/dunya
 def get_queryset(self):
     collection_ids = get_collection_ids_from_request_or_error(self.request)
     permission = utils.get_user_permissions(self.request.user)
     return models.Recording.objects.with_permissions(collection_ids, permission).select_related('work').prefetch_related('recordinginstrumentalist_set__artist', 'recordinginstrumentalist_set__instrument', 'performers', 'shengqiangbanshi')
예제 #15
0
    def test_validate_one_uuid(self):
        factory = RequestFactory()
        get_request = factory.get('/', HTTP_DUNYA_COLLECTION='35671712-f6a8-449d-bad8-c8d7d94c84ba')

        uuids = get_collection_ids_from_request_or_error(get_request)
        self.assertEquals(uuids, ['35671712-f6a8-449d-bad8-c8d7d94c84ba'])
예제 #16
0
파일: api.py 프로젝트: MTG/dunya
 def release_list(self, ob):
     collection_ids = get_collection_ids_from_request_or_error(self.context['request'])
     permission = utils.get_user_permissions(self.context['request'].user)
     releases = ob.releases(collection_ids=collection_ids, permission=permission)
     cs = ReleaseInnerSerializer(releases, many=True)
     return cs.data
예제 #17
0
파일: api.py 프로젝트: MTG/dunya
 def get_queryset(self):
     collection_ids = get_collection_ids_from_request_or_error(self.request)
     permission = utils.get_user_permissions(self.request.user)
     return models.Recording.objects.with_permissions(collection_ids, permission).prefetch_related('works__makam', 'works__usul', 'makam', 'artists', 'instrumentperformance_set__artist', 'instrumentperformance_set__instrument')
예제 #18
0
 def get_queryset(self):
     collection_ids = get_collection_ids_from_request_or_error(self.request)
     permission = utils.get_user_permissions(self.request.user)
     return models.Release.objects.with_permissions(collection_ids, permission)
예제 #19
0
파일: api.py 프로젝트: MTG/dunya
 def concert_list(self, ob):
     collection_ids = get_collection_ids_from_request_or_error(self.context['request'])
     permission = utils.get_user_permissions(self.context['request'].user)
     concerts = ob.concerts(collection_ids=collection_ids, permission=permission)
     cs = ConcertInnerSerializer(concerts, many=True)
     return cs.data