uaveiro-leci/1ano/2semestre/labi/labi2023-ap-g6/client_server/test_units.py

51 lines
3.0 KiB
Python

import random
import socket
import subprocess
import sys
from subprocess import Popen
from subprocess import PIPE
import pytest
import client
import server
def test_client_verify_port():
assert client.verify_port("0") == {'status': False, 'error': 'Port number must be between 1024 and 65535'}
assert client.verify_port("1023") == {'status': False, 'error': 'Port number must be between 1024 and 65535'}
assert client.verify_port("1024") == {'status': True, "port": 1024}
assert client.verify_port("65535") == {'status': True, "port": 65535}
assert client.verify_port("65536") == {'status': False, 'error': 'Port number must be between 1024 and 65535'}
assert client.verify_port("100000") == {'status': False, 'error': 'Port number must be between 1024 and 65535'}
assert client.verify_port("example") == {'status': False, 'error': 'Port must be an integer'}
assert client.verify_port("test") == {'status': False, 'error': 'Port must be an integer'}
def test_verify_hostname():
assert client.verify_hostname("localhost") == {'status': True}
assert client.verify_hostname("123.123.123.123") == {'status': True}
assert client.verify_hostname("example.com") == {'status': False, 'error': 'Invalid DNS address'}
assert client.verify_hostname("test") == {'status': False, 'error': 'Invalid DNS address'}
assert client.verify_hostname("123.123.123") == {'status': False, 'error': 'Invalid DNS address'}
assert client.verify_hostname("413.123.123.123") == {'status': False, 'error': 'Invalid DNS address'}
assert client.verify_hostname("123.413.123.123") == {'status': False, 'error': 'Invalid DNS address'}
assert client.verify_hostname("123.123.413.123") == {'status': False, 'error': 'Invalid DNS address'}
assert client.verify_hostname("123.123.123.413") == {'status': False, 'error': 'Invalid DNS address'}
assert client.verify_hostname("-1.-1.-1.-1") == {'status': False, 'error': 'Invalid DNS address'}
assert client.verify_hostname("256.256.256.256") == {'status': False, 'error': 'Invalid DNS address'}
assert client.verify_hostname("0.0.0.0") == {'status': True}
assert client.verify_hostname("255.255.255.255") == {'status': True}
def test_server_verify_port():
assert server.verify_port("0") == {'status': False, 'error': 'Port number must be between 1024 and 65535'}
assert server.verify_port("1023") == {'status': False, 'error': 'Port number must be between 1024 and 65535'}
assert server.verify_port("1024") == {'status': True, "port": 1024}
assert server.verify_port("65535") == {'status': True, "port": 65535}
assert server.verify_port("65536") == {'status': False, 'error': 'Port number must be between 1024 and 65535'}
assert server.verify_port("100000") == {'status': False, 'error': 'Port number must be between 1024 and 65535'}
assert server.verify_port("example") == {'status': False, 'error': 'Port must be an integer'}
assert server.verify_port("test") == {'status': False, 'error': 'Port must be an integer'}