use std::marker::PhantomData;
use nichlink::identity::NodeId as OfficialNodeId;
use nichlink::registry_core::identity::NodeId as KernelNodeId;
use nichlink_run_method::NodeId as SurfaceNodeId;
use nichlink_run_method::registry_core::identity::NodeId as SurfaceKernelNodeId;
#[test]
fn one_identity_resolves_through_every_historical_path() {
let official = OfficialNodeId::from_namespaced_path("ns", "a/a.rs", "A");
assert_eq!(
official,
KernelNodeId::from_namespaced_path("ns", "a/a.rs", "A")
);
assert_eq!(
official,
SurfaceNodeId::from_namespaced_path("ns", "a/a.rs", "A")
);
assert_eq!(
official,
SurfaceKernelNodeId::from_namespaced_path("ns", "a/a.rs", "A")
);
}
#[test]
fn the_whitelist_and_the_module_pages_both_hold() {
let _: PhantomData<nichlink::NodeId> = PhantomData;
let _: PhantomData<nichlink::Registry> = PhantomData;
let _: PhantomData<nichlink::identity::NodeId> = PhantomData;
let _: PhantomData<nichlink::declaration::RegistrationInfo> = PhantomData;
let _: PhantomData<nichlink::plugin::catalog::PluginCatalog> = PhantomData;
let _: PhantomData<nichlink::plugin::graft_document::GraftPlanDocument> = PhantomData;
let _: PhantomData<nichlink::plugin::graft::GraftCut> = PhantomData;
assert_eq!(nichlink::lexicon::GENERATED_LIB_FILE, "generated_lib.rs");
}
#[test]
fn the_surface_keeps_its_flat_kernel_names() {
let _: PhantomData<nichlink_run_method::PluginManifest> = PhantomData;
let _: PhantomData<nichlink_run_method::Registry> = PhantomData;
let _: PhantomData<nichlink_run_method::plugin::catalog::PluginCatalog> = PhantomData;
assert_eq!(nichlink_run_method::sha256_hex(b"").len(), 64);
}
#[test]
fn every_kernel_module_page_still_resolves() {
let _: PhantomData<nichlink::identity::NodeId> = PhantomData;
let _: PhantomData<nichlink::declaration::RegistrationInfo> = PhantomData;
let _: PhantomData<nichlink::diagnostic::RegistryError> = PhantomData;
let _: PhantomData<nichlink::mir::MirGraph> = PhantomData;
let _: PhantomData<nichlink::release::StaticPlan> = PhantomData;
let _: PhantomData<nichlink::requirements::CapabilityDeclaration> = PhantomData;
let _: PhantomData<nichlink::source::SourceFunction> = PhantomData;
let _: PhantomData<nichlink::tree::Registry> = PhantomData;
let _: PhantomData<nichlink::plugin::catalog::PluginCatalog> = PhantomData;
let _: PhantomData<nichlink::registry_core::identity::NodeId> = PhantomData;
let _: PhantomData<nichlink::registry_core::tree::Registry> = PhantomData;
assert_eq!(nichlink::lexicon::GENERATED_LIB_FILE, "generated_lib.rs");
assert_eq!(
nichlink::authoring::FACE_FIELD_COUNT,
nichlink::authoring::face_field::FACE_FIELD_COUNT
);
}
#[test]
fn the_plugin_module_pages_still_resolve() {
let _: PhantomData<nichlink::plugin::artifact::PluginArtifact> = PhantomData;
let _: PhantomData<nichlink::plugin::contracts::FlowContract> = PhantomData;
let _: PhantomData<nichlink::plugin::graft::GraftCut> = PhantomData;
let _: PhantomData<nichlink::plugin::plugin_policy::PluginPolicy> = PhantomData;
let _: PhantomData<nichlink::plugin::slot::PluginChannel> = PhantomData;
let _: PhantomData<nichlink::plugin::trust::PluginTrustPolicy> = PhantomData;
let _: PhantomData<nichlink_run_method::plugin::catalog::PluginCatalog> = PhantomData;
let _: PhantomData<nichlink_run_method::plugin::graft_document::GraftPlanDocument> =
PhantomData;
let _: PhantomData<nichlink_run_method::plugin::trust::PluginTrustError> = PhantomData;
}
#[test]
fn the_runtime_and_locals_pages_still_resolve() {
let _: PhantomData<nichlink_run_method::runtime::CallTrace> = PhantomData;
let _: PhantomData<nichlink_run_method::runtime::Coordinates> = PhantomData;
let _: PhantomData<nichlink_run_method::runtime::Provenance> = PhantomData;
let _: PhantomData<nichlink_run_method::runtime::RuntimeValue> = PhantomData;
let _: PhantomData<nichlink_run_method::runtime::trace::CallTrace> = PhantomData;
let _: PhantomData<nichlink_run_method::runtime::trace::locals::LocalId> = PhantomData;
let _: PhantomData<nichlink_run_method::runtime::trace::locals::LocalKind> = PhantomData;
let _: PhantomData<nichlink_run_method::runtime::trace::locals::LocalValue> = PhantomData;
let _: PhantomData<nichlink_run_method::runtime::trace::locals::Observation> = PhantomData;
}
#[test]
fn the_public_macro_names_still_resolve() {
#[allow(unused_imports)]
use nichlink_run_method::{
__admission, __assert_impls, __control_object, __external_object, __face_string_or,
__face_ty_name_or, __face_ty_or, __face_value_or, __flow, __flow_provider, __flow_select,
__nichlink_object, __plugin, __registration_face, __stable_name, __string_list,
__submit_registration,
};
#[allow(unused_imports)]
use nichlink_run_method::{
application, external_object, face_fields, face_fields_mirror, graft_plan, host,
static_graft_plan, trace_call, trace_call_result, trace_consume, trace_transform,
trace_value,
};
assert_eq!(
nichlink_run_method::lexicon::GENERATED_LIB_FILE,
"generated_lib.rs"
);
}
#[cfg(feature = "authoring")]
#[test]
fn the_authoring_surface_still_resolves() {
#[allow(unused_imports)]
use nichlink_run_method::authoring::{
AuthoringChange, AuthoringContext, FACE_FIELD_COUNT, ModuleFacePatch, NewModuleFace,
add_module, add_module_from_face, add_module_with_registration, delete_module,
edit_module_face, generated_snapshots, generated_snapshots_from,
};
#[allow(unused_imports)]
use nichlink_run_method::authoring::{
external_graft, filesystem, manifest, operations, parse, snapshot, validation,
};
assert_eq!(
nichlink_run_method::authoring::FACE_FIELD_COUNT,
nichlink_run_method::authoring::face_field::FACE_FIELD_COUNT
);
}