OCaml library for controlling Meross smart plugs via local HTTP API
at main 19 lines 644 B view raw
1(* Tests for the Runtime module *) 2 3let test_type () = 4 let r : Meross.Runtime.t = { signal = 75 } in 5 Alcotest.(check int) "signal" 75 r.signal 6 7let test_codec_roundtrip () = 8 let r : Meross.Runtime.t = { signal = 85 } in 9 let encoded = Meross.Protocol.encode Meross.Runtime.codec r in 10 match Meross.Protocol.decode Meross.Runtime.codec encoded with 11 | Ok decoded -> Alcotest.(check int) "signal" r.signal decoded.signal 12 | Error e -> Alcotest.failf "decode failed: %s" e 13 14let suite = 15 ( "runtime", 16 [ 17 Alcotest.test_case "type" `Quick test_type; 18 Alcotest.test_case "codec roundtrip" `Quick test_codec_roundtrip; 19 ] )