package ounit
Unit testing framework loosely based on HUnit. It is similar to JUnit, and other XUnit testing frameworks
Install
Dune Dependency
Authors
Maintainers
Sources
ounit-2.0.8.tar.gz
sha256=2e30fe79648e928b5a9d20f83d5a1a805826c7193e821464a9e4752661ba2e0e
md5=bd12d66c9dbd95a50570bb686b0f10f5
doc/src/oUnit.advanced/oUnitPlugin.ml.html
Source file oUnitPlugin.ml
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70
(**************************************************************************) (* The OUnit library *) (* *) (* Copyright (C) 2002-2008 Maas-Maarten Zeeman. *) (* Copyright (C) 2010 OCamlCore SARL *) (* Copyright (C) 2013 Sylvain Le Gall *) (* *) (* The package OUnit is copyright by Maas-Maarten Zeeman, OCamlCore SARL *) (* and Sylvain Le Gall. *) (* *) (* Permission is hereby granted, free of charge, to any person obtaining *) (* a copy of this document and the OUnit software ("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 Maas-Maarten Zeeman 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. *) (* *) (* See LICENSE.txt for details. *) (**************************************************************************) (** Standard functions for plugin (register, choose). *) module type SETTINGS = sig type t val name: string val conf_help: string val default_name: string val default_value: t end module Make(Settings: SETTINGS) = struct let all = ref [0, (Settings.default_name, Settings.default_value)] let register name pref f = all := (pref, (name, f)) :: !all let of_name s = try List.assoc s (List.map snd !all) with Not_found -> OUnitUtils.failwithf "Unable to find %s '%s'." Settings.name s let choice = OUnitConf.make_enum Settings.name (fun () -> List.map snd !all) Settings.default_name Settings.conf_help let preset lst = let _, (default, _) = List.fold_left max (List.hd !all) (List.tl !all) in (Settings.name, default) :: lst end
sectionYPositions = computeSectionYPositions($el), 10)"
x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
>