消除 AGC 导出测试对 HOME 环境变量的依赖
Project CI / AI game creator shell Rust crates (pull_request) Successful in 3m6s
Project CI / AI game creator shell Rust lane 2/2 (pull_request) Successful in 5m3s
Project CI / AI game creator shell Rust lane 1/2 (pull_request) Successful in 6m9s
Project CI / Backend tests (pull_request) Failing after 3m57s
Project CI / Frontend tests (pull_request) Successful in 3m8s
Project CI / AI game creator shell web tests (pull_request) Successful in 3m1s
Project CI / Repository checks (pull_request) Failing after 4m21s
Project CI / Native shell tests (pull_request) Successful in 7m42s
Project CI / AI game creator shell Rust crates (pull_request) Successful in 3m6s
Project CI / AI game creator shell Rust lane 2/2 (pull_request) Successful in 5m3s
Project CI / AI game creator shell Rust lane 1/2 (pull_request) Successful in 6m9s
Project CI / Backend tests (pull_request) Failing after 3m57s
Project CI / Frontend tests (pull_request) Successful in 3m8s
Project CI / AI game creator shell web tests (pull_request) Successful in 3m1s
Project CI / Repository checks (pull_request) Failing after 4m21s
Project CI / Native shell tests (pull_request) Successful in 7m42s
- export.rs:npm_export_tests 的 2 条用例(npm_package_contains_dist_project_root_assets_and_publish_readme、本批新增的 built_project_publish_payload_includes_uploaded_assets_and_prefers_dist_assets)不再用 std::env::var("HOME") 拼临时根,改用仓库既有约定的 crate::tests::canonical_test_tempdir
- 动机:Windows 只设 USERPROFILE、不设 HOME 时,std::env::var("HOME").unwrap() 会以 NotPresent panic;改后与本批另 5 条 publish_export_tests 的临时根口径一致
- 未动断言:两条用例的断言与语义保持不变,只替换临时根来源(canonical_test_tempdir 同样返回 tempfile::TempDir,root.path() 用法不变)
- 验证(同一命令 cargo test --locked --manifest-path apps/ai-game-creator-shell/src-tauri/Cargo.toml --bin genarrative-ai-game-creator-shell -- --test-threads=1 project::export::):HOME 未设置(env -u HOME)→ exit 0,test result: ok. 12 passed; 0 failed;HOME=C:/Users/dongy → exit 0,test result: ok. 12 passed; 0 failed
- 顺带核对:project/verification.rs 仍有 1 处同名 HOME 写法,属其它模块范围,本次不动
This commit is contained in:
@@ -934,9 +934,9 @@ mod npm_export_tests {
|
||||
|
||||
#[test]
|
||||
fn npm_package_contains_dist_project_root_assets_and_publish_readme() {
|
||||
let base = PathBuf::from(std::env::var("HOME").unwrap()).join("data/tmp");
|
||||
fs::create_dir_all(&base).unwrap();
|
||||
let root = tempfile::tempdir_in(base).unwrap();
|
||||
// 仓库约定的跨平台临时根(基于 std::env::temp_dir()):不依赖 HOME,
|
||||
// Windows 上只有 USERPROFILE 时同样可跑。
|
||||
let root = crate::tests::canonical_test_tempdir("agc-npm-export-");
|
||||
for directory in [
|
||||
"dist/assets/uploads",
|
||||
"assets/uploads",
|
||||
@@ -993,9 +993,8 @@ mod npm_export_tests {
|
||||
|
||||
#[test]
|
||||
fn built_project_publish_payload_includes_uploaded_assets_and_prefers_dist_assets() {
|
||||
let base = PathBuf::from(std::env::var("HOME").unwrap()).join("data/tmp");
|
||||
fs::create_dir_all(&base).unwrap();
|
||||
let root = tempfile::tempdir_in(base).unwrap();
|
||||
// 与同批另 5 条 publish_export_tests 同口径:用仓库的跨平台临时根,不依赖 HOME。
|
||||
let root = crate::tests::canonical_test_tempdir("agc-publish-payload-");
|
||||
for directory in [
|
||||
"dist/assets/uploads",
|
||||
"assets/uploads",
|
||||
|
||||
Reference in New Issue
Block a user