Added simple stress test in python
This commit is contained in:
parent
f150f727b2
commit
43837f82e1
1 changed files with 87 additions and 0 deletions
87
src/tests/stress_test.py
Executable file
87
src/tests/stress_test.py
Executable file
|
@ -0,0 +1,87 @@
|
||||||
|
#!/usr/bin/env python
|
||||||
|
|
||||||
|
# This is a simple stress test:
|
||||||
|
# * resize
|
||||||
|
# * move
|
||||||
|
# * title change
|
||||||
|
# * create/delete window test
|
||||||
|
|
||||||
|
import gtk
|
||||||
|
import gobject
|
||||||
|
import random
|
||||||
|
import time
|
||||||
|
|
||||||
|
|
||||||
|
def rotate_left(values):
|
||||||
|
"""Rotate values left"""
|
||||||
|
|
||||||
|
new_values = values[1:len(values)]
|
||||||
|
new_values.append(values[0])
|
||||||
|
return new_values
|
||||||
|
|
||||||
|
class App:
|
||||||
|
def __init__(self):
|
||||||
|
self.titles = [ "fluxbox",
|
||||||
|
">>",
|
||||||
|
">>"*4,
|
||||||
|
">>"*8,
|
||||||
|
">>"*16,
|
||||||
|
">>"*24,
|
||||||
|
">>"*32,
|
||||||
|
">>"*64,
|
||||||
|
"more to come" ]
|
||||||
|
|
||||||
|
seed = int(time.time())
|
||||||
|
print "Seed:",seed
|
||||||
|
random.seed(seed)
|
||||||
|
|
||||||
|
self.window = None
|
||||||
|
|
||||||
|
self.create_window()
|
||||||
|
|
||||||
|
# Setup timers
|
||||||
|
gobject.timeout_add(100, self.change_title)
|
||||||
|
gobject.timeout_add(200, self.change_size)
|
||||||
|
gobject.timeout_add(300, self.change_position)
|
||||||
|
gobject.timeout_add(1000, self.create_window)
|
||||||
|
|
||||||
|
def create_window(self):
|
||||||
|
"""Destroys the old window and creates a new window"""
|
||||||
|
|
||||||
|
if self.window is not None:
|
||||||
|
self.window.destroy()
|
||||||
|
self.window = gtk.Window()
|
||||||
|
self.window.connect("delete-event", gtk.main_quit)
|
||||||
|
self.window.resize(300, 100)
|
||||||
|
self.window.set_title("fluxbox")
|
||||||
|
self.window.show()
|
||||||
|
|
||||||
|
return True
|
||||||
|
|
||||||
|
def change_title(self):
|
||||||
|
"""Changes the title of the window"""
|
||||||
|
|
||||||
|
self.window.set_title(self.titles[0])
|
||||||
|
self.titles = rotate_left(self.titles)
|
||||||
|
|
||||||
|
return True
|
||||||
|
|
||||||
|
def change_size(self):
|
||||||
|
"""Changes the size of the window"""
|
||||||
|
|
||||||
|
self.window.resize(random.randrange(1, 1000),
|
||||||
|
random.randrange(1, 1000))
|
||||||
|
|
||||||
|
return True
|
||||||
|
|
||||||
|
def change_position(self):
|
||||||
|
"""Changes the position of the window"""
|
||||||
|
|
||||||
|
self.window.move(random.randrange(-100, 1000),
|
||||||
|
random.randrange(-100, 1000))
|
||||||
|
|
||||||
|
return True
|
||||||
|
|
||||||
|
if __name__ == "__main__":
|
||||||
|
app = App()
|
||||||
|
gtk.main()
|
Loading…
Reference in a new issue