test_utils.py 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. from sweagent.environment.utils import format_trajectory_markdown, _MARKDOWN_TRAJECTORY_EMOJI_MAPPING, remove_triple_backticks, parse_gh_repo_url, parse_gh_issue_url, is_from_github_url, get_associated_commit_urls
  2. def test_format_trajectory_markdown(test_trajectory):
  3. formatted = format_trajectory_markdown(test_trajectory["trajectory"])
  4. assert formatted.startswith("<details>")
  5. assert formatted.endswith("</details>")
  6. for emoji in _MARKDOWN_TRAJECTORY_EMOJI_MAPPING.values():
  7. assert emoji in formatted
  8. def test_remove_triple_backticks():
  9. assert remove_triple_backticks("```") == ""
  10. def test_parse_gh_repo_url():
  11. url = "https://github.com/princeton-nlp/SWE-agent"
  12. owner, repo = parse_gh_repo_url(url)
  13. assert owner == "princeton-nlp"
  14. assert repo == "SWE-agent"
  15. def test_parse_gh_issue_url():
  16. url = "https://github.com/princeton-nlp/SWE-agent/issues/43"
  17. owner, repo, no = parse_gh_issue_url(url)
  18. assert owner == "princeton-nlp"
  19. assert repo == "SWE-agent"
  20. assert no == "43"
  21. def test_is_from_github_url():
  22. assert not is_from_github_url("")
  23. assert is_from_github_url("https://github.com/princeton-nlp/SWE-agent/issues/43")
  24. def test_get_associated_commit_urls():
  25. assoc = get_associated_commit_urls(
  26. org="princeton-nlp",
  27. repo="SWE-agent",
  28. issue_number="41"
  29. )
  30. assert len(assoc) > 0