Beispiel #1
0
def test_protein_to_transcript_cache(accession, version, match_version,
                                     expected_forward, expected_reverse):
    """
    Get transcript for protein and check the resulting cache state.
    """
    try:
        ncbi.protein_to_transcript(accession, version, match_version)
    except ncbi.NoLinkError:
        pass

    forward = [(key.split(':')[-1], redis.get(key) or None)
               for key in redis.keys('ncbi:transcript-to-protein:*')]
    assert sorted(forward) == sorted(expected_forward)

    reverse = [(redis.get(key) or None, key.split(':')[-1])
               for key in redis.keys('ncbi:protein-to-transcript:*')]
    assert sorted(reverse) == sorted(expected_reverse)
Beispiel #2
0
def test_protein_to_transcript_cache(accession, version, match_version,
                                     expected_forward, expected_reverse):
    """
    Get transcript for protein and check the resulting cache state.
    """
    try:
        ncbi.protein_to_transcript(accession, version, match_version)
    except ncbi.NoLinkError:
        pass

    forward = [(key.split(':')[-1], redis.get(key) or None)
               for key in redis.keys('ncbi:transcript-to-protein:*')]
    assert sorted(forward) == sorted(expected_forward)

    reverse = [(redis.get(key) or None, key.split(':')[-1])
               for key in redis.keys('ncbi:protein-to-transcript:*')]
    assert sorted(reverse) == sorted(expected_reverse)
Beispiel #3
0
def get_totals():
    """
    Get the total for all known counters.

    Known counters are just those that have been incremented at least once.
    """
    counters = client.keys('counter:*:total')

    pipe = client.pipeline(transaction=False)
    for counter in counters:
        pipe.get(counter)

    return {counter.split(':')[1]: int(value)
            for counter, value in zip(counters, pipe.execute())}
Beispiel #4
0
def get_totals():
    """
    Get the total for all known counters.

    Known counters are just those that have been incremented at least once.
    """
    counters = client.keys('counter:*:total')

    pipe = client.pipeline(transaction=False)
    for counter in counters:
        pipe.get(counter)

    return {
        counter.split(':')[1]: int(value)
        for counter, value in zip(counters, pipe.execute())
    }