diff --git a/docs/en/observability/agentops.mdx b/docs/en/observability/agentops.mdx index 199a1de78..0c74927ad 100644 --- a/docs/en/observability/agentops.mdx +++ b/docs/en/observability/agentops.mdx @@ -79,11 +79,11 @@ This feature is useful for debugging and understanding how agents interact with ### Crew + AgentOps Examples - + @@ -92,21 +92,12 @@ This feature is useful for debugging and understanding how agents interact with Example of a Crew agent that validates Markdown files. - - Example of a Crew agent that generates Instagram posts. - ### Further Information diff --git a/docs/pt-BR/observability/agentops.mdx b/docs/pt-BR/observability/agentops.mdx index e7f13925f..aeb2e4fbe 100644 --- a/docs/pt-BR/observability/agentops.mdx +++ b/docs/pt-BR/observability/agentops.mdx @@ -79,11 +79,11 @@ Esse recurso é útil para depuração e entendimento de como os agentes interag ### Exemplos de Crew + AgentOps - + @@ -92,21 +92,12 @@ Esse recurso é útil para depuração e entendimento de como os agentes interag Exemplo de um agente Crew que valida arquivos Markdown. - - Exemplo de um agente Crew que gera posts para Instagram. - ### Mais Informações @@ -123,4 +114,4 @@ Para sugestões de funcionalidades ou relatos de bugs, entre em contato com o ti   •   🖇️ Dashboard AgentOps   •   -📙 Documentação \ No newline at end of file +📙 Documentação diff --git a/tests/test_documentation_links.py b/tests/test_documentation_links.py new file mode 100644 index 000000000..35d0699db --- /dev/null +++ b/tests/test_documentation_links.py @@ -0,0 +1,45 @@ +"""Test for documentation links to ensure they are valid and accessible.""" + +import pytest +import requests +from urllib.parse import urlparse + + +class TestDocumentationLinks: + """Test class for validating documentation links.""" + + @pytest.mark.parametrize("url", [ + "https://github.com/AgentOps-AI/agentops/blob/main/examples/crewai/job_posting.py", + "https://github.com/AgentOps-AI/agentops/blob/main/examples/crewai/markdown_validator.py", + ]) + def test_agentops_example_links_are_accessible(self, url): + """Test that AgentOps example links in documentation are accessible.""" + try: + response = requests.get(url, timeout=10) + assert response.status_code == 200, f"URL {url} returned status code {response.status_code}" + + parsed_url = urlparse(url) + assert parsed_url.scheme in ['http', 'https'], f"URL {url} should use http or https protocol" + assert parsed_url.netloc, f"URL {url} should have a valid domain" + + except requests.exceptions.RequestException as e: + pytest.fail(f"Failed to access URL {url}: {str(e)}") + + def test_agentops_examples_contain_agentops_implementation(self): + """Test that the linked examples actually contain AgentOps implementation.""" + urls = [ + "https://raw.githubusercontent.com/AgentOps-AI/agentops/main/examples/crewai/job_posting.py", + "https://raw.githubusercontent.com/AgentOps-AI/agentops/main/examples/crewai/markdown_validator.py", + ] + + for url in urls: + try: + response = requests.get(url, timeout=10) + assert response.status_code == 200, f"Could not fetch raw content from {url}" + + content = response.text.lower() + assert "agentops" in content, f"Example at {url} does not contain AgentOps implementation" + assert "import agentops" in content or "from agentops" in content, f"Example at {url} does not import AgentOps" + + except requests.exceptions.RequestException as e: + pytest.fail(f"Failed to fetch content from {url}: {str(e)}")