tests/delayedquery.py
author Radek Brich <radek.brich@devl.cz>
Sat, 29 Sep 2012 12:08:47 +0200
changeset 48 b82c7c2fb5af
parent 22 680631f35d83
child 78 64c62ac8f65d
permissions -rwxr-xr-x
PgManager: Fix logging, log queries before executing, possible exceptions are logged after. Add tests for RowDict. Add tests.py - runs all tests.

#!/usr/bin/env python3

import logging
import time

from config import Config
from pgtoolkit import pgmanager
from pgtoolkit.delayedquery import DelayedQuery


if __name__ == '__main__':
    cfg = Config('tests.conf')
    
    pgm = pgmanager.get_instance()
    pgm.create_conn(isolation_level = 'autocommit', **cfg)
    
    handler = logging.StreamHandler()
    logger = logging.getLogger('pgmanager')
    logger.addHandler(handler)
    logger.setLevel(logging.DEBUG)

    dq = DelayedQuery(pgm)
    
    print('add 1')
    dq.add(10, 'INSERT INTO test (name) VALUES (%s)', ['spam1'], queryid=1)
    dq.add(10, 'INSERT INTO test (name) VALUES (%s)', ['spam1'], queryid=1)
    print('after 1')
    
    time.sleep(5)
    
    print('add 2')
    dq.add(10, 'INSERT INTO test (name) VALUES (%s)', ['spam2'])
    
    time.sleep(5)
    print('after 10')

    time.sleep(10)