import os import tempfile from scripts.mindmodel import checks def test_file_exists(tmp_path): # create a file under tmp_path base = str(tmp_path) p = tmp_path / "subdir" p.mkdir() f = p / "file.txt" f.write_text("hello") # path relative to base assert checks.file_exists(base, "subdir/file.txt") # non-existing assert not checks.file_exists(base, "subdir/missing.txt") def test_detect_truncated(): assert checks.detect_truncated("This is a truncated snippet...") assert checks.detect_truncated("Truncation marker: [truncated]") assert checks.detect_truncated("contains truncatED word") assert not checks.detect_truncated("This is complete") assert not checks.detect_truncated("") def test_find_potential_secrets(): text = """ api_key = "abcdEFGH1234ijklMNOP" password: 'hunter2' aws = AKIA1234567890ABCD12 random_hex = deadbeefdeadbeefdeadbeefdeadbeef not_a_secret = short """ found = checks.find_potential_secrets(text) # should find api_key value, password, aws and long hex assert "abcdEFGH1234ijklMNOP" in found assert "hunter2" in found assert any(item.startswith("AKIA") for item in found) assert any("deadbeef" in item for item in found)