diff options
| author | nyamatongwe <unknown> | 2009-05-12 23:39:51 +0000 | 
|---|---|---|
| committer | nyamatongwe <unknown> | 2009-05-12 23:39:51 +0000 | 
| commit | 77e5724a36c60f1f8318cd68cf1551a7892bfae7 (patch) | |
| tree | a554b9ac64e53a35379ae6e6a7d3160ac293a4de /test/performanceTests.py | |
| parent | d423d335288c9420c684d4123497b2ece9fbfbe0 (diff) | |
| download | scintilla-mirror-77e5724a36c60f1f8318cd68cf1551a7892bfae7.tar.gz | |
Include tests in standard repository.
Diffstat (limited to 'test/performanceTests.py')
| -rw-r--r-- | test/performanceTests.py | 84 | 
1 files changed, 84 insertions, 0 deletions
| diff --git a/test/performanceTests.py b/test/performanceTests.py new file mode 100644 index 000000000..ed0550558 --- /dev/null +++ b/test/performanceTests.py @@ -0,0 +1,84 @@ +# -*- coding: utf-8 -*- + +from __future__ import with_statement + +import os, string, time, unittest + +import XiteWin + +class TestPerformance(unittest.TestCase): + +	def setUp(self): +		self.xite = XiteWin.xiteFrame +		self.ed = self.xite.ed +		self.ed.ClearAll() +		self.ed.EmptyUndoBuffer() + +	def testAddLine(self): +		data = (string.ascii_letters + string.digits + "\n").encode('utf-8') +		start = time.time() +		for i in range(500): +			self.ed.AddText(len(data), data) +			self.assertEquals(self.ed.LineCount, i + 2) +		end = time.time() +		duration = end - start +		print("%6.3f testAddLine" % duration) +		self.xite.DoEvents() +		self.assert_(self.ed.Length > 0) + +	def testAddLineMiddle(self): +		data = (string.ascii_letters + string.digits + "\n").encode('utf-8') +		start = time.time() +		for i in range(500): +			self.ed.AddText(len(data), data) +			self.assertEquals(self.ed.LineCount, i + 2) +		end = time.time() +		duration = end - start +		print("%6.3f testAddLineMiddle" % duration) +		self.xite.DoEvents() +		self.assert_(self.ed.Length > 0) + +	def testHuge(self): +		data = (string.ascii_letters + string.digits + "\n").encode('utf-8') +		data = data * 100000 +		print("len is", len(data)) +		start = time.time() +		self.ed.AddText(len(data), data) +		end = time.time() +		duration = end - start +		print("%6.3f testHuge" % duration) +		self.xite.DoEvents() +		self.assert_(self.ed.Length > 0) + +	def testHugeInserts(self): +		data = (string.ascii_letters + string.digits + "\n").encode('utf-8') +		data = data * 100000 +		insert = (string.digits + "\n").encode('utf-8') +		self.ed.AddText(len(data), data) +		start = time.time() +		for i in range(500): +			self.ed.InsertText(0, insert) +		end = time.time() +		duration = end - start +		print("%6.3f testHugeInserts" % duration) +		self.xite.DoEvents() +		self.assert_(self.ed.Length > 0) + +	def testHugeReplace(self): +		oneLine = (string.ascii_letters + string.digits + "\n").encode('utf-8') +		data = oneLine * 100000 +		insert = (string.digits + "\n").encode('utf-8') +		self.ed.AddText(len(data), data) +		start = time.time() +		for i in range(500): +			self.ed.TargetStart = i * len(insert) +			self.ed.TargetEnd = self.ed.TargetStart + len(oneLine) +			self.ed.ReplaceTarget(len(insert), insert) +		end = time.time() +		duration = end - start +		print("%6.3f testHugeReplace" % duration) +		self.xite.DoEvents() +		self.assert_(self.ed.Length > 0) + +if __name__ == '__main__': +	XiteWin.main("performanceTests") | 
