@@ -97,6 +97,13 @@ def getUndrawables(self, console=None):
9797 y = random .randint (0 , h )
9898 results .append ((x , y ))
9999 return results
100+
101+ def compareConsoles (self , consoleA , consoleB , errorMsg = 'colors should be the same' ):
102+ "Compare two console assuming they match and failing if they don't"
103+ self .assertEqual (consoleA .getSize (), consoleB .getSize (), 'consoles should be the same size' )
104+ for x , y in self .getDrawables (consoleA ):
105+ self .assertEqual (self .consoleA .getChar (x , y ),
106+ self .consoleB .getChar (x , y ), '%s, position: (%i, %i)' % (errorMsg , x , y ))
100107
101108class BasicTests (TDLTemplate ):
102109
@@ -120,15 +127,13 @@ def test_clearConsole(self):
120127 def test_cloneConsole (self ):
121128 noiseData = self .randomizeConsole ()
122129 clone = copy .copy (self .console )
123- for x ,y in self .getDrawables ():
124- self .assertEqual (self .console .getChar (x , y ), clone .getChar (x , y ), 'console clone should match root console' )
130+ self .compareConsoles (self .console , clone , 'console clone should match root console' )
125131
126132 def test_pickleConsole (self ):
127133 noiseData = self .randomizeConsole ()
128134 pickled = pickle .dumps (self .console )
129135 clone = pickle .loads (pickled )
130- for x ,y in self .getDrawables ():
131- self .assertEqual (self .console .getChar (x , y ), clone .getChar (x , y ), 'pickled console should match root console' )
136+ self .compareConsoles (self .console , clone , 'pickled console should match root console' )
132137
133138 def test_changeFonts (self ):
134139 "Fonts are changable on the fly... kind of"
0 commit comments