1#![allow(non_upper_case_globals)]
2#![allow(non_camel_case_types)]
3#![allow(non_snake_case)]
4
5#[cfg(not(feature = "bindgen"))]
6mod ffi;
7
8#[cfg(not(feature = "bindgen"))]
9pub use crate::ffi::*;
10
11#[cfg(feature = "bindgen")]
12include!(concat!(env!("OUT_DIR"), "/bindings.rs"));
13
14#[cfg(test)]
15mod tests {
16 use super::*;
17 use std::ffi::CString;
18
19 #[test]
20 fn login_auto() {
21 unsafe {
22 assert_eq!(0, NK_login_auto());
23 }
24 }
25
26 #[test]
27 fn login() {
28 let l = CString::new("L").unwrap();
29 let p = CString::new("P").unwrap();
30 let s = CString::new("S").unwrap();
31 let t = CString::new("T").unwrap();
32 unsafe {
33 assert_eq!(0, NK_login(l.as_ptr()));
35 assert_eq!(0, NK_login(p.as_ptr()));
36 assert_eq!(0, NK_login(s.as_ptr()));
37 assert_eq!(0, NK_login(t.as_ptr()));
39 }
40 }
41}