diff options
Diffstat (limited to 'test/simpleTests.py')
| -rw-r--r-- | test/simpleTests.py | 39 | 
1 files changed, 36 insertions, 3 deletions
| diff --git a/test/simpleTests.py b/test/simpleTests.py index 1ede72da3..7b4bfcaf2 100644 --- a/test/simpleTests.py +++ b/test/simpleTests.py @@ -1000,6 +1000,39 @@ class TestMarkers(unittest.TestCase):  		self.ed.MarkerDefine(1,3)  		self.assertEquals(self.ed.MarkerSymbolDefined(1), 3) +	def markerFromLineIndex(self, line, index): +		""" Helper that returns (handle, number) """ +		return (self.ed.MarkerHandleFromLine(line, index), self.ed.MarkerNumberFromLine(line, index)) + +	def markerSetFromLine(self, line): +		""" Helper that returns set of (handle, number) """ +		markerSet = set() +		index = 0 +		while 1: +			marker = self.markerFromLineIndex(line, index) +			if marker[0] == -1: +				return markerSet +			markerSet.add(marker) +			index += 1 + +	def testMarkerFromLine(self): +		self.assertEquals(self.ed.MarkerHandleFromLine(1, 0), -1) +		self.assertEquals(self.ed.MarkerNumberFromLine(1, 0), -1) +		self.assertEquals(self.markerFromLineIndex(1, 0), (-1, -1)) +		self.assertEquals(self.markerSetFromLine(1), set()) + +		handle = self.ed.MarkerAdd(1,10) +		self.assertEquals(self.markerFromLineIndex(1, 0), (handle, 10)) +		self.assertEquals(self.markerFromLineIndex(1, 1), (-1, -1)) +		self.assertEquals(self.markerSetFromLine(1), {(handle, 10)}) + +		handle2 = self.ed.MarkerAdd(1,11) +		# Don't want to depend on ordering so check as sets +		self.assertEquals(self.markerSetFromLine(1), {(handle, 10), (handle2, 11)}) + +		self.ed.MarkerDeleteHandle(handle2) +		self.assertEquals(self.markerSetFromLine(1), {(handle, 10)}) +  class TestIndicators(unittest.TestCase):  	def setUp(self): @@ -1053,7 +1086,7 @@ class TestIndicators(unittest.TestCase):  	def testIndicatorMovement(self):  		# Create a two character indicator over "BC" in "aBCd" and ensure that it doesn't -		# leak onto surrounding characters when insertions made at either end but  +		# leak onto surrounding characters when insertions made at either end but  		# insertion inside indicator does extend length  		self.ed.InsertText(0, b"aBCd")  		self.ed.IndicatorCurrent = 3 @@ -1398,7 +1431,7 @@ class TestMultiSelection(unittest.TestCase):  		# 3 lines of 3 characters  		t = b"xxx\nxxx\nxxx"  		self.ed.AddText(len(t), t) -		 +  	def textOfSelection(self, n):  		self.ed.TargetStart = self.ed.GetSelectionNStart(n)  		self.ed.TargetEnd = self.ed.GetSelectionNEnd(n) @@ -1605,7 +1638,7 @@ class TestMultiSelection(unittest.TestCase):  		self.assertEquals(self.ed.Selections, 2)  		self.assertEquals(self.textOfSelection(0), texts[1])  		self.assertEquals(self.textOfSelection(1), texts[0]) -	 +  	def selectionRepresentation(self, n):  		anchor = (self.ed.GetSelectionNAnchor(0), self.ed.GetSelectionNAnchorVirtualSpace(0))  		caret = (self.ed.GetSelectionNCaret(0), self.ed.GetSelectionNCaretVirtualSpace(0)) | 
