posthog514client_rs/
lib.rs1pub mod client;
6pub mod error;
7pub mod event;
8
9#[cfg(feature = "blocking")]
10mod blocking;
11
12pub use client::{Config, PostHog514Client, PostHogClient};
13pub use error::{ConfigErrorKind, PostHogError, SendEventErrorKind};
14pub use event::{Event514, EventType, MooseEventType};
15
16#[cfg(feature = "blocking")]
17pub use blocking::BlockingPostHog514Client;
18
19#[cfg(test)]
20mod tests {
21 use super::*;
22
23 #[tokio::test]
24 async fn test_basic_event_capture() {
25 let client = PostHogClient::new("test_key", "https://app.posthog.com").unwrap();
26 let event = Event514::new_moose(MooseEventType::MooseCliCommand)
27 .with_distinct_id("test_user")
28 .with_properties([("test".to_string(), "value".into())].into());
29
30 assert!(client.capture(event).await.is_err());
31 }
32}