root / pykota / trunk / tests / filldb.py @ 2682

Revision 2682, 3.4 kB (checked in by jerome, 18 years ago)

Added filldb.py and the tests/ directory

  • Property svn:eol-style set to native
  • Property svn:executable set to *
  • Property svn:keywords set to Author Date Id Revision
Line 
1#! /usr/bin/env python
2# -*- coding: ISO-8859-15 -*-
3
4# $Id$
5
6
7import sys
8import os
9import time
10
11def createBillingCodes(number) :
12    """Creates a number of billing codes."""
13    if number :
14        sys.stdout.write("Adding %i billing codes...\n" % number)
15        billingcodes = [ "test-billingcode-%05i" % i for i in range(number) ]
16        argsfile = open("arguments.list", "w")
17        argsfile.write('--add\n--reset\n--description\n"a billing code"\n')
18        for bname in billingcodes :
19            argsfile.write("%s\n" % bname)
20        argsfile.close()   
21        before = time.time()
22        os.system('pkbcodes --arguments arguments.list') 
23        after = time.time()
24        sys.stdout.write("\nTime elapsed : %.2f seconds\n\n" % (after - before))
25
26def deleteBillingCodes() :
27    """Deletes all test billing codes."""
28    sys.stdout.write("Deleting billing codes...\n")
29    before = time.time()
30    os.system('pkbcodes --delete "test-billingcode-*"') 
31    after = time.time()
32    sys.stdout.write("\nTime elapsed : %.2f seconds\n\n" % (after - before))
33   
34def createPrinters(number) :
35    """Creates a number of printers."""
36    if number :
37        sys.stdout.write("Adding %i printers...\n" % number)
38        printernames = [ "test-printer-%05i" % i for i in range(number) ]
39        argsfile = open("arguments.list", "w")
40        argsfile.write('--add\n--charge\n0.05\n--maxjobsize\n5\n--passthrough\n--description\n"a printer"\n')
41        for pname in printernames :
42            argsfile.write("%s\n" % pname)
43        argsfile.close()   
44        before = time.time()
45        os.system('pkprinters --arguments arguments.list') 
46        after = time.time()
47        sys.stdout.write("\nTime elapsed : %.2f seconds\n\n" % (after - before))
48
49def deletePrinters() :
50    """Deletes all test printers."""
51    sys.stdout.write("Deleting printers...\n")
52    before = time.time()
53    os.system('pkprinters --delete "test-printer-*"') 
54    after = time.time()
55    sys.stdout.write("\nTime elapsed : %.2f seconds\n\n" % (after - before))
56   
57def createUsers(number) :
58    """Creates a number of users."""
59    if number :
60        sys.stdout.write("Adding %i users...\n" % number)
61        usernames = [ "test-user-%05i" % i for i in range(number) ]
62        argsfile = open("arguments.list", "w")
63        argsfile.write('--add\n--limitby\nbalance\n--balance\n50.0\n')
64        for uname in usernames :
65            argsfile.write("%s\n" % uname)
66        argsfile.close()   
67        before = time.time()
68        os.system('edpykota --arguments arguments.list') 
69        after = time.time()
70        sys.stdout.write("\nTime elapsed : %.2f seconds\n\n" % (after - before))
71
72def deleteUsers() :
73    """Deletes all test users."""
74    sys.stdout.write("Deleting users...\n")
75    before = time.time()
76    os.system('edpykota --delete "test-user-*"') 
77    after = time.time()
78    sys.stdout.write("\nTime elapsed : %.2f seconds\n\n" % (after - before))
79   
80if __name__ == "__main__" :   
81    if len(sys.argv) == 1 :
82        sys.stderr.write("usage :  %s  NbBillingCodes  NbPrinters  NbUsers\n" % sys.argv[0])
83    else :   
84        createBillingCodes(int(sys.argv[1]))
85        createPrinters(int(sys.argv[2]))
86        createUsers(int(sys.argv[3]))
87        deleteBillingCodes()
88        deleteUsers()           # NB : either this one or the one below
89        deletePrinters()        # also delete user print quota entries.
90        os.remove("arguments.list")
91       
Note: See TracBrowser for help on using the browser.