Beispiel #1
0
 def test_first(self):
     """Ensure function first works correctly"""
     self.assertEqual(42, first([0, False, None, [], (), 42]))
     self.assertEqual(None, first([0, False, None, [], ()]))
     self.assertEqual('ohai', first([0, False, None, [], ()], default='ohai'))
     self.assertEqual('bc', first(re.match(regex, 'abc') for regex in ['b.*', 'a(.*)']).group(1))
     self.assertEqual(4, first([1, 1, 3, 4, 5], key=lambda x: x % 2 == 0))
Beispiel #2
0
 def test_first(self):
     """Ensure function first works correctly"""
     self.assertEqual(42, first([0, False, None, [], (), 42]))
     self.assertEqual(None, first([0, False, None, [], ()]))
     self.assertEqual('ohai', first([0, False, None, [], ()],
                                    default='ohai'))
     self.assertEqual(
         'bc',
         first(re.match(regex, 'abc')
               for regex in ['b.*', 'a(.*)']).group(1))
     self.assertEqual(4, first([1, 1, 3, 4, 5], key=lambda x: x % 2 == 0))
Beispiel #3
0
def setup_default_arguments(args, settings):
    """ Sets up args from settings or defaults """
    args.url = first([args.url, settings.get('REDIS_URL'), os.environ.get('RQ_REDIS_URL')])

    if (args.host or args.port or args.socket or args.db or args.password):
        warn('Host, port, db, password options for Redis will not be '
             'supported in future versions of RQ. '
             'Please use `REDIS_URL` or `--url` instead.', DeprecationWarning)

    strict_first = partial(first, key=lambda obj: obj is not None)

    args.host = strict_first([args.host, settings.get('REDIS_HOST'), os.environ.get('RQ_REDIS_HOST'), 'localhost'])
    args.port = int(strict_first([args.port, settings.get('REDIS_PORT'), os.environ.get('RQ_REDIS_PORT'), 6379]))
    args.socket = strict_first([args.socket, settings.get('REDIS_SOCKET'), os.environ.get('RQ_REDIS_SOCKET'), None])
    args.db = strict_first([args.db, settings.get('REDIS_DB'), os.environ.get('RQ_REDIS_DB'), 0])
    args.password = strict_first([args.password, settings.get('REDIS_PASSWORD'), os.environ.get('RQ_REDIS_PASSWORD')])
Beispiel #4
0
def setup_default_arguments(args, settings):
    """ Sets up args from settings or defaults """
    args.url = first(
        [args.url,
         settings.get('REDIS_URL'),
         os.environ.get('RQ_REDIS_URL')])

    if (args.host or args.port or args.socket or args.db or args.password):
        warn(
            'Host, port, db, password options for Redis will not be '
            'supported in future versions of RQ. '
            'Please use `REDIS_URL` or `--url` instead.', DeprecationWarning)

    strict_first = partial(first, key=lambda obj: obj is not None)

    args.host = strict_first([
        args.host,
        settings.get('REDIS_HOST'),
        os.environ.get('RQ_REDIS_HOST'), 'localhost'
    ])
    args.port = int(
        strict_first([
            args.port,
            settings.get('REDIS_PORT'),
            os.environ.get('RQ_REDIS_PORT'), 6379
        ]))
    args.socket = strict_first([
        args.socket,
        settings.get('REDIS_SOCKET'),
        os.environ.get('RQ_REDIS_SOCKET'), None
    ])
    args.db = strict_first(
        [args.db,
         settings.get('REDIS_DB'),
         os.environ.get('RQ_REDIS_DB'), 0])
    args.password = strict_first([
        args.password,
        settings.get('REDIS_PASSWORD'),
        os.environ.get('RQ_REDIS_PASSWORD')
    ])