use super::uses_local_replica_transport;
use crate::test_support::temp_dir;
use std::fs;
#[test]
fn named_environment_uses_its_resolved_network_class() {
let root = temp_dir("canic-replica-query-network-class");
fs::create_dir_all(&root).expect("create project root");
fs::write(
root.join("icp.yaml"),
"networks:\n - name: local\n mode: managed\n\nenvironments:\n - name: caelum-backend\n network: local\n - name: production\n network: ic\n",
)
.expect("write icp config");
assert!(
uses_local_replica_transport(Some("caelum-backend"), Some(&root))
.expect("resolve named local environment")
);
assert!(
!uses_local_replica_transport(Some("production"), Some(&root))
.expect("resolve named IC environment")
);
fs::remove_dir_all(root).expect("remove project root");
}
#[test]
fn explicit_http_target_uses_direct_replica_transport() {
assert!(
uses_local_replica_transport(Some("http://127.0.0.1:8000"), None)
.expect("classify HTTP target")
);
}