def testSetPriority_Jobs(): global me cursor = me.connection.cursor() try: dbtu.fillProcessorTable(cursor,3,stamp=dt.datetime(2008,3,4,5,6,7,tzinfo=UTC)) cursor.execute("SELECT id FROM processors") me.connection.commit() counts = dict((x[0],x[0]) for x in cursor.fetchall()) dbtu.addSomeJobs(cursor,counts,logger) cursor.execute("SELECT id FROM jobs") me.connection.commit() jobIds = [x[0] for x in cursor.fetchall()] half = len(jobIds)/2 expectPri = jobIds[:half] expectNon = jobIds[half:] dbtu.setPriority(cursor,expectPri) cursor.execute("SELECT id FROM jobs WHERE priority > 0 ORDER BY id") gotPri = [x[0] for x in cursor.fetchall()] cursor.execute("SELECT id FROM jobs WHERE priority = 0 ORDER BY id") gotNon = [x[0] for x in cursor.fetchall()] me.connection.commit() assert expectPri == gotPri assert expectNon == gotNon finally: jt = db_schema.JobsTable(logger) jt.drop(cursor) jt.create(cursor) pt = db_schema.ProcessorsTable(logger) pt.drop(cursor) pt.create(cursor) me.connection.commit()
def testSetPriority_PriorityJobs(): global me cursor = me.connection.cursor() try: dbtu.fillProcessorTable(cursor, 3, stamp=dt.datetime(2008, 3, 4, 5, 6, 7, tzinfo=UTC)) cursor.execute("SELECT id FROM processors") counts = dict((x[0], x[0]) for x in cursor.fetchall()) dbtu.addSomeJobs(cursor, counts, logger) cursor.execute("SELECT id,uuid FROM jobs") me.connection.commit() data = cursor.fetchall() jobIds = [x[0] for x in data] jobUuids = [x[1] for x in data] half = len(jobIds) / 2 expect1Pri = jobIds[:half] expect2Pri = jobIds[half:] expect1Uuid = sorted(jobUuids[:half]) expect2Uuid = sorted(jobUuids[half:]) dbtu.setPriority(cursor, expect1Pri, 'priority_jobs_1') dbtu.setPriority(cursor, expect2Pri, 'priority_jobs_2') sql = "SELECT uuid from %s ORDER BY uuid" cursor.execute(sql % 'priority_jobs_1') got1Uuid = [x[0] for x in cursor.fetchall()] cursor.execute(sql % 'priority_jobs_2') got2Uuid = [x[0] for x in cursor.fetchall()] me.connection.commit() assert expect1Uuid == got1Uuid assert expect2Uuid == got2Uuid finally: jt = db_schema.JobsTable(logger) jt.drop(cursor) jt.create(cursor) pt = db_schema.ProcessorsTable(logger) pt.drop(cursor) pt.create(cursor) me.connection.commit()
def testSetPriority_Jobs(): global me cursor = me.connection.cursor() try: dbtu.fillProcessorTable(cursor, 3, stamp=dt.datetime(2008, 3, 4, 5, 6, 7, tzinfo=UTC)) cursor.execute("SELECT id FROM processors") me.connection.commit() counts = dict((x[0], x[0]) for x in cursor.fetchall()) dbtu.addSomeJobs(cursor, counts, logger) cursor.execute("SELECT id FROM jobs") me.connection.commit() jobIds = [x[0] for x in cursor.fetchall()] half = len(jobIds) / 2 expectPri = jobIds[:half] expectNon = jobIds[half:] dbtu.setPriority(cursor, expectPri) cursor.execute("SELECT id FROM jobs WHERE priority > 0 ORDER BY id") gotPri = [x[0] for x in cursor.fetchall()] cursor.execute("SELECT id FROM jobs WHERE priority = 0 ORDER BY id") gotNon = [x[0] for x in cursor.fetchall()] me.connection.commit() assert expectPri == gotPri assert expectNon == gotNon finally: jt = db_schema.JobsTable(logger) jt.drop(cursor) jt.create(cursor) pt = db_schema.ProcessorsTable(logger) pt.drop(cursor) pt.create(cursor) me.connection.commit()
def testSetPriority_PriorityJobs(): global me cursor = me.connection.cursor() try: dbtu.fillProcessorTable(cursor,3,stamp=dt.datetime(2008,3,4,5,6,7,tzinfo=UTC)) cursor.execute("SELECT id FROM processors") counts = dict((x[0],x[0]) for x in cursor.fetchall()) dbtu.addSomeJobs(cursor,counts,logger) cursor.execute("SELECT id,uuid FROM jobs") me.connection.commit() data = cursor.fetchall() jobIds = [x[0] for x in data] jobUuids = [x[1] for x in data] half = len(jobIds)/2 expect1Pri = jobIds[:half] expect2Pri = jobIds[half:] expect1Uuid = sorted(jobUuids[:half]) expect2Uuid = sorted(jobUuids[half:]) dbtu.setPriority(cursor,expect1Pri,'priority_jobs_1') dbtu.setPriority(cursor,expect2Pri,'priority_jobs_2') sql = "SELECT uuid from %s ORDER BY uuid" cursor.execute(sql%'priority_jobs_1') got1Uuid = [x[0] for x in cursor.fetchall()] cursor.execute(sql%'priority_jobs_2') got2Uuid = [x[0] for x in cursor.fetchall()] me.connection.commit() assert expect1Uuid == got1Uuid assert expect2Uuid == got2Uuid finally: jt = db_schema.JobsTable(logger) jt.drop(cursor) jt.create(cursor) pt = db_schema.ProcessorsTable(logger) pt.drop(cursor) pt.create(cursor) me.connection.commit()