rmm commited on
Commit
0124054
·
1 Parent(s): 8f1fe89

test: new test for input validation, and fix typo in args

Browse files
src/input/input_validator.py CHANGED
@@ -22,7 +22,7 @@ def generate_random_md5(length:int=16) -> str:
22
  """
23
 
24
  # Generate a random string
25
- random_string = ''.join(random.choices(string.ascii_letters + string.digits, length=16))
26
  # Encode the string and compute its MD5 hash
27
  md5_hash = hashlib.md5(random_string.encode()).hexdigest()
28
  return md5_hash
 
22
  """
23
 
24
  # Generate a random string
25
+ random_string = ''.join(random.choices(string.ascii_letters + string.digits, k=length))
26
  # Encode the string and compute its MD5 hash
27
  md5_hash = hashlib.md5(random_string.encode()).hexdigest()
28
  return md5_hash
tests/test_input_validator.py ADDED
@@ -0,0 +1,21 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import pytest
2
+ from input.input_validator import generate_random_md5
3
+
4
+ def test_generate_random_md5_length():
5
+ md5_hash = generate_random_md5(16)
6
+ assert len(md5_hash) == 32, "MD5 hash length should be 32 characters"
7
+
8
+ def test_generate_random_md5_uniqueness():
9
+ md5_hash1 = generate_random_md5(16)
10
+ md5_hash2 = generate_random_md5(16)
11
+ assert md5_hash1 != md5_hash2, "MD5 hashes should be unique for different random strings"
12
+
13
+ def test_generate_random_md5_default_length():
14
+ md5_hash = generate_random_md5()
15
+ assert len(md5_hash) == 32, "MD5 hash length should be 32 characters when using default length"
16
+
17
+ def test_generate_random_md5_different_data_lengths():
18
+ md5_hash_8 = generate_random_md5(8)
19
+ md5_hash_32 = generate_random_md5(32)
20
+ assert len(md5_hash_8) == 32, "MD5 hash length should be 32 characters for 8 character input"
21
+ assert len(md5_hash_32) == 32, "MD5 hash length should be 32 characters for 32 character input"