@@ -190,6 +190,36 @@ def test_init(self):
190190 self .assertEqual (rs .players , self .players )
191191 self .assertEqual (rs .num_players , len (self .players ))
192192
193+ def _clear_matrix (self , matrix ):
194+ for i in range (len (matrix )):
195+ for j in range (len (matrix [i ])):
196+ matrix [i ][j ] = 0
197+
198+ def test_ne_vectors (self ):
199+ rs_1 = axelrod .ResultSet (self .filename , self .players , self .repetitions )
200+
201+ rs_2 = axelrod .ResultSet (self .filename , self .players , self .repetitions )
202+
203+ # A different vector
204+ rs_2 .eigenmoses_rating = (- 1 , - 1 , - 1 )
205+
206+ self .assertNotEqual (rs_1 , rs_2 )
207+
208+ def test_nan_vectors (self ):
209+ rs_1 = axelrod .ResultSet (self .filename , self .players , self .repetitions )
210+ # Force a broken eigenmoses, by replacing vengeful_cooperation with
211+ # zeroes.
212+ self ._clear_matrix (rs_1 .vengeful_cooperation )
213+ rs_1 .eigenmoses_rating = rs_1 ._build_eigenmoses_rating ()
214+
215+ rs_2 = axelrod .ResultSet (self .filename , self .players , self .repetitions )
216+ # Force a broken eigenmoses, by replacing vengeful_cooperation with
217+ # zeroes.
218+ self ._clear_matrix (rs_2 .vengeful_cooperation )
219+ rs_2 .eigenmoses_rating = rs_2 ._build_eigenmoses_rating ()
220+
221+ self .assertEqual (rs_1 , rs_2 )
222+
193223 def test_init_multiprocessing (self ):
194224 rs = axelrod .ResultSet (
195225 self .filename ,
0 commit comments