print("\nResult expected : WRONG TSP") client.main(t, 'toto') sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) try: # Connect to server and send data sock.connect((client.HOST, client.PORT)) #print("\ntest for padding : ") #print("timestamp : " + str(int(t)+4)) print("\nResult expected : PADDING ERROR") timestamp = struct.pack('>q', t+4) sock.sendall (encrypt_data_wrong_pad (timestamp, 'datadata')) client.parse_answer (t+4, sock.recv(35)) #print("\ntest for mac : ") #print("timestamp : " + str(int(t)+5)) print("\nResult expected : MAC ERROR") timestamp = struct.pack('>q', t+6) crypt = encrypt_data_wrong_mac(timestamp, 'data') sock.sendall (crypt) client.parse_answer (t+6, sock.recv(35)) finally: sock.close()
def test_parse_answer_not_dict(self, mock_stdout=None): parse_answer([]) self.assertEqual(mock_stdout.getvalue(), 'Server answer not dict\n')
def test_parse_answer_error(self, mock_stdout=None): parse_answer({'response': 400, 'error': 'error test'}) self.assertEqual( mock_stdout.getvalue(), 'Server answer: 400\n' + 'Server error message: error test\n')
def test_parse_answer_alert(self, mock_stdout=None): parse_answer({'response': 400, 'alert': 'alert test'}) self.assertEqual( mock_stdout.getvalue(), 'Server answer: 400\n' + 'Server alert message: alert test\n')
def test_parse_answer_ok(self, mock_stdout=None): parse_answer({'response': 200}) self.assertEqual(mock_stdout.getvalue(), 'Server answer: 200\n')
def test_parse_answer_no_response(self, mock_stdout=None): parse_answer({}) self.assertEqual(mock_stdout.getvalue(), 'Answer has not "response" code\n')