Пример #1
0
def max_current_jobs_ready(client: greenstalk.Client,
                           tubes: List[Text]) -> int:
    """Get max current-jobs-ready from tubes specified"""
    max_jobs = 0
    for tube in tubes:
        # We need to check for the existense of a beanstalk tube
        # to avoid "NOT_FOUND" exceptions in the case where the tubes
        # are empty before first init
        if tube not in client.tubes():
            continue
        stats = client.stats_tube(tube)

        if stats:
            max_jobs = max(max_jobs, stats.get("current-jobs-ready", 0))

    return max_jobs
Пример #2
0
def test_stats_tube(c: Client) -> None:
    assert c.stats_tube("default") == {
        "name": "default",
        "current-jobs-urgent": 0,
        "current-jobs-ready": 0,
        "current-jobs-reserved": 0,
        "current-jobs-delayed": 0,
        "current-jobs-buried": 0,
        "total-jobs": 0,
        "current-using": 0,
        "current-watching": 1,
        "current-waiting": 0,
        "cmd-delete": 0,
        "cmd-pause-tube": 0,
        "pause": 0,
        "pause-time-left": 0,
    }
Пример #3
0
def test_stats_tube(c: Client) -> None:
    assert c.stats_tube('default') == {
        'name': 'default',
        'current-jobs-urgent': 0,
        'current-jobs-ready': 0,
        'current-jobs-reserved': 0,
        'current-jobs-delayed': 0,
        'current-jobs-buried': 0,
        'total-jobs': 0,
        'current-using': 0,
        'current-watching': 1,
        'current-waiting': 0,
        'cmd-delete': 0,
        'cmd-pause-tube': 0,
        'pause': 0,
        'pause-time-left': 0,
    }