# ========= Copyright 2026 @ Strukto.AI All Rights Reserved. ========= # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ========= Copyright 2026 @ Strukto.AI All Rights Reserved. ========= import asyncio import sys import pytest from mirage import MountMode, RAMResource, Workspace from mirage.commands.builtin.general.curl import curl from mirage.resource.base import BaseResource curl_mod = sys.modules["mirage.commands.builtin.general.curl"] wget_mod = sys.modules["mirage.commands.builtin.general.wget"] @pytest.mark.network class TestCurl: def test_curl_raw_returns_html(self): # Use example.com (rock-solid IANA reserved host) instead of # httpbin.org which is flaky (502s) in CI. result, _ = asyncio.run(curl(None, None, "https://example.com")) body = result.decode() if isinstance(result, bytes) else result assert "