diff --git a/lib/crewai/tests/cli/test_utils.py b/lib/crewai/tests/cli/test_utils.py index 343f53ce1..3016ba289 100644 --- a/lib/crewai/tests/cli/test_utils.py +++ b/lib/crewai/tests/cli/test_utils.py @@ -1,5 +1,4 @@ import os -import shutil import tempfile from pathlib import Path @@ -7,101 +6,11 @@ import pytest from crewai.utilities import project_utils as utils -@pytest.fixture -def temp_tree(): - root_dir = tempfile.mkdtemp() - - create_file(os.path.join(root_dir, "file1.txt"), "Hello, world!") - create_file(os.path.join(root_dir, "file2.txt"), "Another file") - os.mkdir(os.path.join(root_dir, "empty_dir")) - nested_dir = os.path.join(root_dir, "nested_dir") - os.mkdir(nested_dir) - create_file(os.path.join(nested_dir, "nested_file.txt"), "Nested content") - - yield root_dir - - shutil.rmtree(root_dir) - - def create_file(path, content): with open(path, "w") as f: f.write(content) -def test_tree_find_and_replace_file_content(temp_tree): - utils.tree_find_and_replace(temp_tree, "world", "universe") - with open(os.path.join(temp_tree, "file1.txt"), "r") as f: - assert f.read() == "Hello, universe!" - - -def test_tree_find_and_replace_file_name(temp_tree): - old_path = os.path.join(temp_tree, "file2.txt") - new_path = os.path.join(temp_tree, "file2_renamed.txt") - os.rename(old_path, new_path) - utils.tree_find_and_replace(temp_tree, "renamed", "modified") - assert os.path.exists(os.path.join(temp_tree, "file2_modified.txt")) - assert not os.path.exists(new_path) - - -def test_tree_find_and_replace_directory_name(temp_tree): - utils.tree_find_and_replace(temp_tree, "empty", "renamed") - assert os.path.exists(os.path.join(temp_tree, "renamed_dir")) - assert not os.path.exists(os.path.join(temp_tree, "empty_dir")) - - -def test_tree_find_and_replace_nested_content(temp_tree): - utils.tree_find_and_replace(temp_tree, "Nested", "Updated") - with open(os.path.join(temp_tree, "nested_dir", "nested_file.txt"), "r") as f: - assert f.read() == "Updated content" - - -def test_tree_find_and_replace_no_matches(temp_tree): - utils.tree_find_and_replace(temp_tree, "nonexistent", "replacement") - assert set(os.listdir(temp_tree)) == { - "file1.txt", - "file2.txt", - "empty_dir", - "nested_dir", - } - - -def test_tree_copy_full_structure(temp_tree): - dest_dir = tempfile.mkdtemp() - try: - utils.tree_copy(temp_tree, dest_dir) - assert set(os.listdir(dest_dir)) == set(os.listdir(temp_tree)) - assert os.path.isfile(os.path.join(dest_dir, "file1.txt")) - assert os.path.isfile(os.path.join(dest_dir, "file2.txt")) - assert os.path.isdir(os.path.join(dest_dir, "empty_dir")) - assert os.path.isdir(os.path.join(dest_dir, "nested_dir")) - assert os.path.isfile(os.path.join(dest_dir, "nested_dir", "nested_file.txt")) - finally: - shutil.rmtree(dest_dir) - - -def test_tree_copy_preserve_content(temp_tree): - dest_dir = tempfile.mkdtemp() - try: - utils.tree_copy(temp_tree, dest_dir) - with open(os.path.join(dest_dir, "file1.txt"), "r") as f: - assert f.read() == "Hello, world!" - with open(os.path.join(dest_dir, "nested_dir", "nested_file.txt"), "r") as f: - assert f.read() == "Nested content" - finally: - shutil.rmtree(dest_dir) - - -def test_tree_copy_to_existing_directory(temp_tree): - dest_dir = tempfile.mkdtemp() - try: - create_file(os.path.join(dest_dir, "existing_file.txt"), "I was here first") - utils.tree_copy(temp_tree, dest_dir) - assert os.path.isfile(os.path.join(dest_dir, "existing_file.txt")) - assert os.path.isfile(os.path.join(dest_dir, "file1.txt")) - finally: - shutil.rmtree(dest_dir) - - @pytest.fixture def temp_project_dir(): """Create a temporary directory for testing tool extraction."""