Preparing git repo for final project

This commit is contained in:
2023-07-09 11:19:26 +02:00
parent 6a38966eef
commit 63d06d6b35
67 changed files with 1587 additions and 0 deletions

View File

@@ -0,0 +1,19 @@
import re
import sys
def main():
print(validate(input("IPv4 Address: ")))
def validate(ip):
if not re.match(r'^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}$', ip):
return False
for n in map(int, ip.split('.')):
if not 0 <= n <= 255:
return False
return True
if __name__ == "__main__":
main()

View File

@@ -0,0 +1,32 @@
from numb3rs import validate
def main():
test_non_digits()
test_negative_numbers()
test_numbers_too_big()
test_numbers_too_long()
def test_non_digits():
assert validate('aaa.bbb.ccc.ddd') == False
assert validate('cat') == False
def test_negative_numbers():
assert validate('-11.111.-1.-1') == False
def test_numbers_too_big():
assert validate('257.200.1.1') == False
assert validate('200.257.1.1') == False
assert validate('200.1.257.1') == False
assert validate('200.1.5.257') == False
def test_numbers_too_long():
assert validate('200.1.5.2.57') == False
if __name__ == '__main__':
main()