use libremetaverse_types::NotImplemented;

const MEMBER: &str = "M:LibreMetaverse.GridClient.Login(System.String)";

#[test]
fn every_api_crate_exposes_the_shared_error() {
    macro_rules! assert_aliases {
        ($($error:path),+ $(,)?) => {$({
            let _: $error = NotImplemented::new(MEMBER).into();
        })+};
    }

    assert_aliases!(
        libremetaverse::Error,
        libremetaverse_imaging::Error,
        libremetaverse_imaging_skia::Error,
        libremetaverse_lsl_tools::Error,
        libremetaverse_prim_mesher::Error,
        libremetaverse_rendering_mesh_foundry::Error,
        libremetaverse_rendering_simple::Error,
        libremetaverse_rlv::Error,
        libremetaverse_structured_data::Error,
        libremetaverse_types::Error,
        libremetaverse_utilities::Error,
        libremetaverse_voice_vivox::Error,
        libremetaverse_voice_webrtc::Error,
    );
}
