test: isolate box factory policy env in tests
This commit is contained in:
@ -518,6 +518,7 @@ mod tests {
|
|||||||
|
|
||||||
#[test]
|
#[test]
|
||||||
fn test_default_policy_is_strict_plugin_first() {
|
fn test_default_policy_is_strict_plugin_first() {
|
||||||
|
let prev = std::env::var("NYASH_BOX_FACTORY_POLICY").ok();
|
||||||
// Ensure NYASH_BOX_FACTORY_POLICY is not set
|
// Ensure NYASH_BOX_FACTORY_POLICY is not set
|
||||||
std::env::remove_var("NYASH_BOX_FACTORY_POLICY");
|
std::env::remove_var("NYASH_BOX_FACTORY_POLICY");
|
||||||
|
|
||||||
@ -527,10 +528,16 @@ mod tests {
|
|||||||
FactoryPolicy::StrictPluginFirst,
|
FactoryPolicy::StrictPluginFirst,
|
||||||
"Default policy should be StrictPluginFirst"
|
"Default policy should be StrictPluginFirst"
|
||||||
);
|
);
|
||||||
|
|
||||||
|
if let Some(v) = prev {
|
||||||
|
std::env::set_var("NYASH_BOX_FACTORY_POLICY", v);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
#[test]
|
#[test]
|
||||||
fn test_env_policy_override() {
|
fn test_env_policy_override() {
|
||||||
|
let prev = std::env::var("NYASH_BOX_FACTORY_POLICY").ok();
|
||||||
|
|
||||||
// Test builtin_first override
|
// Test builtin_first override
|
||||||
std::env::set_var("NYASH_BOX_FACTORY_POLICY", "builtin_first");
|
std::env::set_var("NYASH_BOX_FACTORY_POLICY", "builtin_first");
|
||||||
let registry = UnifiedBoxRegistry::with_env_policy();
|
let registry = UnifiedBoxRegistry::with_env_policy();
|
||||||
@ -547,8 +554,12 @@ mod tests {
|
|||||||
assert_eq!(registry.get_policy(), FactoryPolicy::StrictPluginFirst);
|
assert_eq!(registry.get_policy(), FactoryPolicy::StrictPluginFirst);
|
||||||
|
|
||||||
// Cleanup
|
// Cleanup
|
||||||
|
if let Some(v) = prev {
|
||||||
|
std::env::set_var("NYASH_BOX_FACTORY_POLICY", v);
|
||||||
|
} else {
|
||||||
std::env::remove_var("NYASH_BOX_FACTORY_POLICY");
|
std::env::remove_var("NYASH_BOX_FACTORY_POLICY");
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
#[test]
|
#[test]
|
||||||
fn test_reserved_type_protection() {
|
fn test_reserved_type_protection() {
|
||||||
|
|||||||
Reference in New Issue
Block a user