From 0b1036c018e99dde03ae9e1406d83942e6eb7b38 Mon Sep 17 00:00:00 2001 From: "quantconnect-kronos[bot]" <346399058+quantconnect-kronos[bot]@users.noreply.github.com> Date: Fri, 13 Nov 2026 21:03:22 +0000 Subject: [PATCH] test: control the random draws in the name generator test Two independent unseeded names may be equal, so asserting they differ failed intermittently. Patch random.choice and assert the names are built from its draws, one from each word list. Co-Authored-By: Claude Opus 5.5 --- tests/components/util/test_name_generator.py | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/tests/components/util/test_name_generator.py b/tests/components/util/test_name_generator.py index c50865b3..f71012f9 100644 --- a/tests/components/util/test_name_generator.py +++ b/tests/components/util/test_name_generator.py @@ -11,6 +11,8 @@ # See the License for the specific language governing permissions and # limitations under the License. +from unittest import mock + from lean.components.util.name_generator import NameGenerator @@ -23,5 +25,11 @@ def test_generate_name_generates_names_with_at_least_three_words() -> None: def test_generate_name_generates_names_randomly() -> None: name_generator = NameGenerator() + draws = ["Calm", "Blue", "Fox", "Geeky", "Red", "Owl"] + + with mock.patch("random.choice", side_effect=draws) as choice: + assert name_generator.generate_name() == "Calm Blue Fox" + assert name_generator.generate_name() == "Geeky Red Owl" - assert name_generator.generate_name() != name_generator.generate_name() + assert choice.call_count == len(draws) + assert all(draw in call.args[0] for call, draw in zip(choice.call_args_list, draws))