@@ -22,22 +22,27 @@ class TestMEM2(TestPlayer):
22
22
}
23
23
24
24
def test_strategy (self ):
25
+ self .first_play_test (C )
25
26
# Start with TFT
26
- self .responses_test ([C ])
27
- self .responses_test ([C ], [C ], [C ])
28
- self .responses_test ([D ], [C ], [D ])
29
- # TFT if mutual cooperation on first two rounds
30
- self .responses_test ([C ], [C , C ], [C , C ])
31
- self .responses_test ([D ], [C , D ], [D , D ])
27
+ actions = [(C , C ), (C , C )]
28
+ self .versus_test (opponent = axelrod .Cooperator (),
29
+ expected_actions = actions ,
30
+ attrs = {"play_as" : "TFT" , "shift_counter" : 1 ,
31
+ "alld_counter" : 0 })
32
+ actions = [(C , D ), (D , D )]
33
+ self .versus_test (opponent = axelrod .Defector (), expected_actions = actions ,
34
+ attrs = {"play_as" : "TFT" , "shift_counter" : 1 ,
35
+ "alld_counter" : 0 })
32
36
# TFTT if C, D and D, C
33
- self .responses_test ([C ], [C , C , C , D ], [C , C , D , C ])
34
- self .responses_test ([D ], [C , C , C , D , C , D ], [C , C , D , C , D , D ])
35
- # TFTT if D, C and C, D
36
- self .responses_test ([C ], [C , C , D , C ], [C , D , C , D ])
37
- self .responses_test ([D ], [C , C , D , C , C , D ], [C , C , D , C , D , D ])
38
- # ALLD Otherwise
39
- self .responses_test ([D ], [C , D ], [D , D ])
40
- self .responses_test ([D ], [C , D , D ], [D , D , D ])
41
- # ALLD forever if all D twice
42
- self .responses_test ([D ] * 10 , [C , D , D , D , D , D ], [D , D , D , D , D , D ])
43
- self .responses_test ([D ] * 9 , [C ] + [D ] * 5 + [C ] * 4 , [D ] * 6 + [C ] * 4 )
37
+ opponent = axelrod .MockPlayer ([D , C , D , D ])
38
+ actions = [(C , D ), (D , C ), (C , D ), (C , D )]
39
+ self .versus_test (opponent = opponent , expected_actions = actions ,
40
+ attrs = {"play_as" : "TFTT" , "shift_counter" : 1 ,
41
+ "alld_counter" : 0 })
42
+
43
+ opponent = axelrod .MockPlayer ([D , C , D , D ])
44
+ actions = [(C , D ), (D , C ), (C , D ), (C , D ), (D , D ),
45
+ (D , C ), (D , D ), (D , D ), (D , D ), (D , C )]
46
+ self .versus_test (opponent = opponent , expected_actions = actions ,
47
+ attrs = {"play_as" : "ALLD" , "shift_counter" : - 1 ,
48
+ "alld_counter" : 2 })
0 commit comments