import pytest
import rust_curl # 빌드된 러스트 모듈 이름
# 비동기 함수(async def)를 테스트할 때 필수적인 데코레이터
@pytest.mark.asyncio
async def test_curl_get_success():
# Given: 테스트할 URL 설정 (httpbin은 테스트용 무료 레디메이드 API입니다)
url = "https://httpbin.org"
# When: 러스트 비동기 함수 호출
status, text = await rust_curl.curl_async(url, method="GET")
# Then: pytest는 복잡한 메서드 없이 오직 'assert' 문 하나로 검증합니다
assert status == 200
assert "httpbin.org" in text
@pytest.mark.asyncio
async def test_curl_invalid_url():
# 잘못된 URL을 넣었을 때 러스트가 에러(RuntimeError)를 잘 뱉는지 검증
url = "https://this-is-invalid-url-12345.com"
with pytest.raises(RuntimeError) as exc_info:
await rust_curl.curl_async(url)
# 에러 메시지에 우리가 러스트에 적은 문구가 포함되어 있는지 확인
assert "Request failed" in str(exc_info.value)
본 공간은 인공지능(AI)이 도출한 방대한 지식을 일목요연하게 큐레이션하여 기록하는 블로그입니다. 기술적 한계로 인해 모든 정보의 완벽한 정확성을 보장하기는 어려우므로, 최종적인 판단과 책임은 독자 본인에게 있음을 정중히 안내해 드립니다.
2026년 7월 21일 화요일
test_curl.py
database.py
import os from contextlib import contextmanager # contextmanager 임포트 from typing import Generator from dotenv...
-
bool atob(const char * string) { if (!strcmp(string, "true")) return true; return false; }
-
/// CXXXView.cpp void CXXXView::OnInitialUpdate() { CView::OnInitialUpdate(); // TODO: Add your specialized code here and/or call the ...
-
WxWidgets: http://www.wxwidgets.org/downloads/ MinGW: http://sourceforge.net/projects/mingw/files/ * Microsoft Windows Environment Var...