本机代理节点检测器：离线测试记录
测试日期：2026-10-24
执行：tests\run-tests.cmd
结果：24 项通过，0 项失败，1 项跳过。

通过范围：
- 解析多行输入、带冒号的密码、方括号 IPv6；拒绝错误格式、无效端口、控制字符和超过 500 个节点。
- SOCKS5 用户名密码接受与拒绝、无认证、不支持的认证方式、错误协议版本、由代理解析目标域名。
- HTTP CONNECT 200、407、403；凭据只发给指定的代理；无认证节点不添加认证头。
- 超时、检测中取消及预先取消。
- 属性标记缺失、false、true 和错误字符串类型；IP 不一致时拒绝元数据；备用服务不凭 ISP 名称断言住宅。
- 分块响应、错误响应体、响应大小限制。
- CSV 公式注入防护；CSV / JSON / 明细导出不含测试代理账号密码。
- 源码边界检查：HTTPS 目标请求重新构建请求头，不读取代理用户名密码，不添加 Proxy-Authorization。

跳过项与准确限制：
TLS 不受信任证书的运行验证未完成。本测试主机的 Windows Schannel 在获取客户端 TLS 上下文时即返回
SEC_E_NO_CREDENTIALS (0x8009030E)，位置为 AcquireCredentialsHandle，尚未执行服务器证书验证。
使用 32 / 64 位程序、TLS 1.2 与系统默认协议均复现；.NET Framework 4.8 已安装。
因此该项记为跳过，不能把本次环境拒绝连接当成“已验证证书校验正确”。
程序保留系统默认证书链与域名校验，源码检查未发现绕过；应在可正常使用 Windows TLS 的电脑上重跑该项。

所有网络夹具仅监听 127.0.0.1，使用虚构凭据。本测试未使用真实代理，未进行在线出口查询，
不能据此声称任意真实代理或外部 API 已端到端通过。
HTTPS 目标请求不携带代理认证头的检查属于源码审查，并非本环境中成功 TLS 会话的抓包验证。

fixture.pfx 是专门生成的、不受信任的测试证书，密码为 fixture，不属于用户凭据。
测试不会安装或信任该证书，不会修改系统证书信任库。现有测试文件无需 Python。
make_fixture_cert.py 仅供开发者可选重新生成测试证书，需要 Python cryptography；普通用户无需执行。
