123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354(*****************************************************************************)(* *)(* Open Source License *)(* Copyright (c) 2020 Nomadic Labs. <contact@nomadic-labs.com> *)(* *)(* Permission is hereby granted, free of charge, to any person obtaining a *)(* copy of this software and associated documentation files (the "Software"),*)(* to deal in the Software without restriction, including without limitation *)(* the rights to use, copy, modify, merge, publish, distribute, sublicense, *)(* and/or sell copies of the Software, and to permit persons to whom the *)(* Software is furnished to do so, subject to the following conditions: *)(* *)(* The above copyright notice and this permission notice shall be included *)(* in all copies or substantial portions of the Software. *)(* *)(* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR*)(* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, *)(* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL *)(* THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER*)(* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING *)(* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER *)(* DEALINGS IN THE SOFTWARE. *)(* *)(*****************************************************************************)(** [lwt_assert] contains Alcotest assertions lifted to the Lwt. *)openAssert(** Lwt-lifted assertion that [b] is [true]. *)letlwt_assert_truestrb=Lwt.return(assert_truestrb)(** Lwt-lifted assertion that [b] is [false]. *)letlwt_assert_falsestrb=Lwt.return(assert_falsestrb)(** Lwt-lift of [Alcotest.check]. *)letlwt_checktestablestrab=Lwt.return(Alcotest.checktestablestrab)(** Lwt-lifted Alcotest version of [assert false]. *)letlwt_impossiblestr=Lwt.return(impossiblestr)(** [lwt_fail str] is a lwt-lifted Alcotest version of [Alcotest.fail str]. *)letlwt_failstr=Lwt.return(Alcotest.failstr)(** [lwt_assert_catch p e] runs [p], expecting to catch [e] and fails
if [p] does not raise that exception *)letlwt_assert_catch(p:unit->'aLwt.t)(e:exn)=letcatchere'=Lwt.return(Alcotest.checkTestable.exn"Catched unexpected assertion"ee')inLwt.(letopenSyntaxinlet*()=catchpcatcherinlwt_fail("Expected an exception "^Printexc.to_stringe))