-- This source is licensed under the Sunset License v1.0 with Ada.Strings.Unbounded; package Unit_Tests is type Verbosity is (None, Weak, Strong); type Test_Result is (Fail, Pass); type Test_Function is access function return Test_Result; type Test is record Name : Ada.Strings.Unbounded.Unbounded_String; Func : Test_Function; end record; type Test_Array is array (Positive range <>) of Test; type Test_Result_Array is array (Positive range <>) of Test_Result; function Run_Test (To_Run : in Test; Verbose : in Verbosity := Weak) return Test_Result; procedure Run_Test (To_Run : in Test; Verbose : in Verbosity := Weak); function Run_Tests (To_Run : in Test_Array; Verbose : in Verbosity := Weak) return Test_Result_Array; procedure Run_Tests (To_Run : in Test_Array; Verbose : in Verbosity := Weak); function "+" (S : in String) return Ada.Strings.Unbounded.Unbounded_String renames Ada.Strings.Unbounded.To_Unbounded_String; function "-" (US : in Ada.Strings.Unbounded.Unbounded_String) return String renames Ada.Strings.Unbounded.To_String; end Unit_Tests;