Skip to content

Commit 024e301

Browse files
authored
Merge pull request #1932 from alessandralanz/lcore-1279
LCORE-1279: add unit tests for is_moderation_id and check_suid_prompt
2 parents 9ff72ff + 676bc53 commit 024e301

1 file changed

Lines changed: 53 additions & 0 deletions

File tree

tests/unit/utils/test_suid.py

Lines changed: 53 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -100,3 +100,56 @@ def test_to_llama_stack_conversation_id(self) -> None:
100100
valid_conv = "e6afd7aaa97b49ce8f4f96a801b07893d9cb784d72e53e3c"
101101
expected_conv = "conv_e6afd7aaa97b49ce8f4f96a801b07893d9cb784d72e53e3c"
102102
assert suid.to_llama_stack_conversation_id(valid_conv) == expected_conv
103+
104+
def test_is_moderation_id_valid(self) -> None:
105+
"""Test that is_moderation_id returns True for strings starting with 'modr'."""
106+
assert suid.is_moderation_id("modr-12345") is True
107+
assert suid.is_moderation_id("modr") is True
108+
assert suid.is_moderation_id("modranything") is True
109+
110+
def test_is_moderation_id_invalid(self) -> None:
111+
"""Test that is_moderation_id returns False for non-moderation strings."""
112+
assert suid.is_moderation_id("") is False
113+
assert suid.is_moderation_id("mod") is False
114+
assert suid.is_moderation_id("MODR-12345") is False
115+
assert suid.is_moderation_id("xxmodr-12345") is False
116+
assert suid.is_moderation_id("123e4567-e89b-12d3-a456-426614174000") is False
117+
118+
def test_check_suid_prompt_valid(self) -> None:
119+
"""Test that check_suid_prompt returns True for pmpt_ + 48 hex chars."""
120+
valid_hex = "e6afd7aaa97b49ce8f4f96a801b07893d9cb784d72e53e3c"
121+
assert len(valid_hex) == 48
122+
assert suid.check_suid_prompt(f"pmpt_{valid_hex}") is True
123+
124+
def test_check_suid_prompt_wrong_prefix(self) -> None:
125+
"""Test that check_suid_prompt returns False for wrong or missing prefix."""
126+
valid_hex = "e6afd7aaa97b49ce8f4f96a801b07893d9cb784d72e53e3c"
127+
assert suid.check_suid_prompt("") is False
128+
assert suid.check_suid_prompt(valid_hex) is False
129+
assert suid.check_suid_prompt(f"prompt_{valid_hex}") is False
130+
assert suid.check_suid_prompt(f"PMPT_{valid_hex}") is False
131+
132+
def test_check_suid_prompt_wrong_length(self) -> None:
133+
"""Test that check_suid_prompt returns False when hex part is not 48 chars."""
134+
assert suid.check_suid_prompt("pmpt_") is False
135+
assert suid.check_suid_prompt("pmpt_12345") is False
136+
# 47 hex chars (one short)
137+
short_hex = "e6afd7aaa97b49ce8f4f96a801b07893d9cb784d72e53e3"
138+
assert suid.check_suid_prompt(f"pmpt_{short_hex}") is False
139+
# 49 hex chars (one extra)
140+
long_hex = "e6afd7aaa97b49ce8f4f96a801b07893d9cb784d72e53e3c1"
141+
assert suid.check_suid_prompt(f"pmpt_{long_hex}") is False
142+
143+
def test_check_suid_prompt_non_hex_chars(self) -> None:
144+
"""Test that check_suid_prompt returns False for non-hex characters."""
145+
# 48 chars but 'g' and 'z' not valid hex
146+
invalid_hex = "g6afd7aaa97b49ce8f4f96a801b07893d9cb784d72e53ezz"
147+
assert len(invalid_hex) == 48
148+
assert suid.check_suid_prompt(f"pmpt_{invalid_hex}") is False
149+
150+
def test_check_suid_prompt_cross_format(self) -> None:
151+
"""Test that check_suid_prompt rejects other ID formats."""
152+
assert suid.check_suid_prompt("123e4567-e89b-12d3-a456-426614174000") is False
153+
assert suid.check_suid_prompt("modr-12345") is False
154+
valid_hex = "e6afd7aaa97b49ce8f4f96a801b07893d9cb784d72e53e3c"
155+
assert suid.check_suid_prompt(f"conv_{valid_hex}") is False

0 commit comments

Comments
 (0)