예제 #1
0
 def validate_quality(self, quality):
     # Check that the quality is valid
     # Make sure quality is in the format we expect
     if quality.upper() == 'ANY':
         return 'ANY'
     elif qualities.get(quality, False):
         return qualities.common_name(quality)
     else:
         raise QueueError('ERROR! Unknown quality `%s`' % quality, errno=1)
예제 #2
0
def validate_quality(quality):
    # Check that the quality is valid
    # Make sure quality is in the format we expect
    if isinstance(quality, qualities.Quality):
        if quality.value <= 0:
            return 'ANY'
        return quality.name
    elif quality.upper() == 'ANY':
        return 'ANY'
    elif qualities.get(quality, False):
        return qualities.common_name(quality)
    else:
        raise QueueError('ERROR! Unknown quality `%s`' % quality, errno=1)
예제 #3
0
파일: movie_queue.py 프로젝트: gray/Flexget
        if not options.get("title") or not (options.get("imdb_id") or options.get("tmdb_id")):
            console("could not determine movie")  # TODO: Rethink errors
            return

        try:
            if options["action"] == "add":
                try:
                    added = queue_add(
                        title=options["title"],
                        imdb_id=options["imdb_id"],
                        tmdb_id=options["tmdb_id"],
                        quality=options["quality"],
                        force=options["force"],
                    )
                    # warn about a bit silly quality value
                    if qualities.common_name(options["quality"]) == "720p":
                        console(
                            'WARNING: quality 720p in movie context will not retrieve BluRay rips. You might want to use "720p bluray" instead!'
                        )
                except QueueError, e:
                    console(e.message)
                    if e.errno == 1:
                        # This is an invalid quality error, display some more info
                        console("Recognized qualities are %s" % ", ".join([qual.name for qual in qualities.all()]))
                        console(
                            "ANY is the default and can also be used explicitly to specify that quality should be ignored."
                        )
                else:
                    console("Added %s to queue with quality %s" % (added["title"], added["quality"]))
        except OperationalError:
            log.critical("OperationalError")
예제 #4
0
 def test_common_name(self):
     for test_val in ('720p', '1280x720'):
         got_val = qualities.common_name(test_val)
         assert got_val == '720p', got_val
예제 #5
0
            what = parse_what(options['what'])
            options.update(what)
        except QueueError, e:
            console(e.message)

        if not options.get('title') or not (options.get('imdb_id') or options.get('tmdb_id')):
            console('could not determine movie')  # TODO: Rethink errors
            return

        try:
            if options['action'] == 'add':
                try:
                    added = queue_add(title=options['title'], imdb_id=options['imdb_id'],
                        tmdb_id=options['tmdb_id'], quality=options['quality'], force=options['force'])
                    # warn about a bit silly quality value
                    if qualities.common_name(options['quality']) == '720p':
                        console('WARNING: quality 720p in movie context will not retrieve BluRay rips. You might want to use "720p bluray" instead!')
                except QueueError, e:
                    console(e.message)
                    if e.errno == 1:
                        # This is an invalid quality error, display some more info
                        console('Recognized qualities are %s' % ', '.join([qual.name for qual in qualities.all()]))
                        console('ANY is the default and can also be used explicitly to specify that quality should be ignored.')
                else:
                    console('Added %s to queue with quality %s' % (added['title'], added['quality']))
        except OperationalError:
            log.critical('OperationalError')

    def queue_list(self, session, downloaded=False):
        """List IMDb queue"""