|
@ -9,25 +9,39 @@ library libvhdl; |
|
|
package AssertP is |
|
|
package AssertP is |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
procedure assert_true (a : in boolean); |
|
|
|
|
|
procedure assert_true (a : in boolean; str : in string); |
|
|
|
|
|
|
|
|
procedure assert_true ( a : in boolean; |
|
|
|
|
|
str : in string := "a should be evaluate to true"; |
|
|
|
|
|
level : in severity_level := failure); |
|
|
|
|
|
|
|
|
procedure assert_false (a : in boolean); |
|
|
|
|
|
procedure assert_false (a : in boolean; str : in string); |
|
|
|
|
|
|
|
|
procedure assert_false ( a : in boolean; |
|
|
|
|
|
str : in string := "a should be evaluate to false"; |
|
|
|
|
|
level : in severity_level := failure); |
|
|
|
|
|
|
|
|
procedure assert_equal (a : in integer; b : in integer); |
|
|
|
|
|
procedure assert_equal (a : in integer; b : in integer; str : in string); |
|
|
|
|
|
procedure assert_equal (a : in std_logic_vector; b : in std_logic_vector); |
|
|
|
|
|
procedure assert_equal (a : in std_logic_vector; b : in std_logic_vector; str : in string); |
|
|
|
|
|
procedure assert_equal (a : in string; b : in string); |
|
|
|
|
|
procedure assert_equal (a : in string; b : in string; str : in string); |
|
|
|
|
|
|
|
|
procedure assert_equal (a, b : in integer; |
|
|
|
|
|
str : in string := ""; |
|
|
|
|
|
level : in severity_level := failure); |
|
|
|
|
|
|
|
|
procedure assert_unequal (a : in integer; b : in integer); |
|
|
|
|
|
procedure assert_unequal (a : in integer; b : in integer; str : in string); |
|
|
|
|
|
procedure assert_unequal (a : in std_logic_vector; b : in std_logic_vector); |
|
|
|
|
|
procedure assert_unequal (a : in std_logic_vector; b : in std_logic_vector; str : in string); |
|
|
|
|
|
procedure assert_unequal (a : in string; b : in string); |
|
|
|
|
|
procedure assert_unequal (a : in string; b : in string; str : in string); |
|
|
|
|
|
|
|
|
procedure assert_equal ( a, b : in std_logic_vector; |
|
|
|
|
|
str : in string := ""; |
|
|
|
|
|
level : in severity_level := failure); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
procedure assert_equal ( a, b : in string; |
|
|
|
|
|
str : in string := ""; |
|
|
|
|
|
level : in severity_level := failure); |
|
|
|
|
|
|
|
|
|
|
|
procedure assert_unequal (a, b : in integer; |
|
|
|
|
|
str : in string := ""; |
|
|
|
|
|
level : in severity_level := failure); |
|
|
|
|
|
|
|
|
|
|
|
procedure assert_unequal ( a, b : in std_logic_vector; |
|
|
|
|
|
str : in string := ""; |
|
|
|
|
|
level : in severity_level := failure); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
procedure assert_unequal ( a, b : in string; |
|
|
|
|
|
str : in string := ""; |
|
|
|
|
|
level : in severity_level := failure); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
end package AssertP; |
|
|
end package AssertP; |
|
@ -37,116 +51,119 @@ end package AssertP; |
|
|
package body AssertP is |
|
|
package body AssertP is |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
procedure assert_true (a : in boolean) is |
|
|
|
|
|
|
|
|
procedure assert_true ( a : in boolean; |
|
|
|
|
|
str : in string := "a should be evaluate to true"; |
|
|
|
|
|
level : in severity_level := failure) is |
|
|
begin |
|
|
begin |
|
|
assert a |
|
|
assert a |
|
|
report "FAILURE: a should be evaluate to true" |
|
|
|
|
|
severity failure; |
|
|
|
|
|
|
|
|
report str |
|
|
|
|
|
severity level; |
|
|
end procedure assert_true; |
|
|
end procedure assert_true; |
|
|
|
|
|
|
|
|
procedure assert_true (a : in boolean; str : in string) is |
|
|
|
|
|
begin |
|
|
|
|
|
assert a |
|
|
|
|
|
report "FAILURE: " & str |
|
|
|
|
|
severity failure; |
|
|
|
|
|
end procedure assert_true; |
|
|
|
|
|
|
|
|
|
|
|
procedure assert_false (a : in boolean) is |
|
|
|
|
|
|
|
|
procedure assert_false ( a : in boolean; |
|
|
|
|
|
str : in string := "a should be evaluate to false"; |
|
|
|
|
|
level : in severity_level := failure) is |
|
|
begin |
|
|
begin |
|
|
assert not(a) |
|
|
assert not(a) |
|
|
report "FAILURE: a should be evaluate to false" |
|
|
|
|
|
severity failure; |
|
|
|
|
|
|
|
|
report str |
|
|
|
|
|
severity level; |
|
|
end procedure assert_false; |
|
|
end procedure assert_false; |
|
|
|
|
|
|
|
|
procedure assert_false (a : in boolean; str : in string) is |
|
|
|
|
|
begin |
|
|
|
|
|
assert not(a) |
|
|
|
|
|
report "FAILURE: " & str |
|
|
|
|
|
severity failure; |
|
|
|
|
|
end procedure assert_false; |
|
|
|
|
|
|
|
|
|
|
|
procedure assert_equal (a : in integer; b : in integer) is |
|
|
|
|
|
|
|
|
procedure assert_equal ( a, b : in integer; |
|
|
|
|
|
str : in string := ""; |
|
|
|
|
|
level : in severity_level := failure) is |
|
|
begin |
|
|
begin |
|
|
assert a = b |
|
|
|
|
|
report "FAILURE: " & integer'image(a) & " should be equal to " & integer'image(b) |
|
|
|
|
|
severity failure; |
|
|
|
|
|
|
|
|
if (str'length = 0) then |
|
|
|
|
|
assert a = b |
|
|
|
|
|
report integer'image(a) & " should be equal to " & integer'image(b) |
|
|
|
|
|
severity level; |
|
|
|
|
|
else |
|
|
|
|
|
assert a = b |
|
|
|
|
|
report str |
|
|
|
|
|
severity level; |
|
|
|
|
|
end if; |
|
|
end procedure assert_equal; |
|
|
end procedure assert_equal; |
|
|
|
|
|
|
|
|
procedure assert_equal (a : in integer; b : in integer; str : in string) is |
|
|
|
|
|
begin |
|
|
|
|
|
assert a = b |
|
|
|
|
|
report "FAILURE: " & str |
|
|
|
|
|
severity failure; |
|
|
|
|
|
end procedure assert_equal; |
|
|
|
|
|
|
|
|
|
|
|
procedure assert_equal (a : in std_logic_vector; b : in std_logic_vector) is |
|
|
|
|
|
begin |
|
|
|
|
|
assert a = b |
|
|
|
|
|
report "FAILURE: " & to_string(a) & " should be equal to " & to_string(b) |
|
|
|
|
|
severity failure; |
|
|
|
|
|
end procedure assert_equal; |
|
|
|
|
|
|
|
|
|
|
|
procedure assert_equal (a : in std_logic_vector; b : in std_logic_vector; str : in string) is |
|
|
|
|
|
|
|
|
procedure assert_equal ( a, b : in std_logic_vector; |
|
|
|
|
|
str : in string := ""; |
|
|
|
|
|
level : in severity_level := failure) is |
|
|
begin |
|
|
begin |
|
|
assert a = b |
|
|
|
|
|
report "FAILURE: " & str |
|
|
|
|
|
severity failure; |
|
|
|
|
|
|
|
|
if (str'length = 0) then |
|
|
|
|
|
assert a = b |
|
|
|
|
|
report "FAILURE: " & to_string(a) & " should be equal to " & to_string(b) |
|
|
|
|
|
severity level; |
|
|
|
|
|
else |
|
|
|
|
|
assert a = b |
|
|
|
|
|
report str |
|
|
|
|
|
severity level; |
|
|
|
|
|
end if; |
|
|
end procedure assert_equal; |
|
|
end procedure assert_equal; |
|
|
|
|
|
|
|
|
procedure assert_equal (a : in string; b : in string) is |
|
|
|
|
|
begin |
|
|
|
|
|
assert a = b |
|
|
|
|
|
report "FAILURE: " & a & " should be equal to " & b |
|
|
|
|
|
severity failure; |
|
|
|
|
|
end procedure assert_equal; |
|
|
|
|
|
|
|
|
|
|
|
procedure assert_equal (a : in string; b : in string; str : in string) is |
|
|
|
|
|
|
|
|
procedure assert_equal ( a,b : in string; |
|
|
|
|
|
str : in string := ""; |
|
|
|
|
|
level : in severity_level := failure) is |
|
|
begin |
|
|
begin |
|
|
assert a = b |
|
|
|
|
|
report "FAILURE: " & str |
|
|
|
|
|
severity failure; |
|
|
|
|
|
|
|
|
if (str'length = 0) then |
|
|
|
|
|
assert a = b |
|
|
|
|
|
report "FAILURE: " & a & " should be equal to " & b |
|
|
|
|
|
severity level; |
|
|
|
|
|
else |
|
|
|
|
|
assert a = b |
|
|
|
|
|
report str |
|
|
|
|
|
severity level; |
|
|
|
|
|
end if; |
|
|
end procedure assert_equal; |
|
|
end procedure assert_equal; |
|
|
|
|
|
|
|
|
procedure assert_unequal (a : in integer; b : in integer) is |
|
|
|
|
|
begin |
|
|
|
|
|
assert a /= b |
|
|
|
|
|
report "FAILURE: " & integer'image(a) & " should be unequal to " & integer'image(b) |
|
|
|
|
|
severity failure; |
|
|
|
|
|
end procedure assert_unequal; |
|
|
|
|
|
|
|
|
|
|
|
procedure assert_unequal (a : in integer; b : in integer; str : in string) is |
|
|
|
|
|
|
|
|
procedure assert_unequal ( a, b : in integer; |
|
|
|
|
|
str : in string := ""; |
|
|
|
|
|
level : in severity_level := failure) is |
|
|
begin |
|
|
begin |
|
|
assert a /= b |
|
|
|
|
|
report "FAILURE: " & str |
|
|
|
|
|
severity failure; |
|
|
|
|
|
|
|
|
if (str'length = 0) then |
|
|
|
|
|
assert a /= b |
|
|
|
|
|
report integer'image(a) & " should not be equal to " & integer'image(b) |
|
|
|
|
|
severity level; |
|
|
|
|
|
else |
|
|
|
|
|
assert a /= b |
|
|
|
|
|
report str |
|
|
|
|
|
severity level; |
|
|
|
|
|
end if; |
|
|
end procedure assert_unequal; |
|
|
end procedure assert_unequal; |
|
|
|
|
|
|
|
|
procedure assert_unequal (a : in std_logic_vector; b : in std_logic_vector) is |
|
|
|
|
|
begin |
|
|
|
|
|
assert a /= b |
|
|
|
|
|
report "FAILURE: " & to_string(a) & " should be unequal to " & to_string(b) |
|
|
|
|
|
severity failure; |
|
|
|
|
|
end procedure assert_unequal; |
|
|
|
|
|
|
|
|
|
|
|
procedure assert_unequal (a : in std_logic_vector; b : in std_logic_vector; str : in string) is |
|
|
|
|
|
|
|
|
procedure assert_unequal ( a, b : in std_logic_vector; |
|
|
|
|
|
str : in string := ""; |
|
|
|
|
|
level : in severity_level := failure) is |
|
|
begin |
|
|
begin |
|
|
assert a /= b |
|
|
|
|
|
report "FAILURE: " & str |
|
|
|
|
|
severity failure; |
|
|
|
|
|
|
|
|
if (str'length = 0) then |
|
|
|
|
|
assert a /= b |
|
|
|
|
|
report "FAILURE: " & to_string(a) & " should not be equal to " & to_string(b) |
|
|
|
|
|
severity level; |
|
|
|
|
|
else |
|
|
|
|
|
assert a /= b |
|
|
|
|
|
report str |
|
|
|
|
|
severity level; |
|
|
|
|
|
end if; |
|
|
end procedure assert_unequal; |
|
|
end procedure assert_unequal; |
|
|
|
|
|
|
|
|
procedure assert_unequal (a : in string; b : in string) is |
|
|
|
|
|
begin |
|
|
|
|
|
assert a /= b |
|
|
|
|
|
report "FAILURE: " & a & " should be unequal to " & b |
|
|
|
|
|
severity failure; |
|
|
|
|
|
end procedure assert_unequal; |
|
|
|
|
|
|
|
|
|
|
|
procedure assert_unequal (a : in string; b : in string; str : in string) is |
|
|
|
|
|
begin |
|
|
|
|
|
assert a /= b |
|
|
|
|
|
report "FAILURE: " & str |
|
|
|
|
|
severity failure; |
|
|
|
|
|
|
|
|
procedure assert_unequal ( a,b : in string; |
|
|
|
|
|
str : in string := ""; |
|
|
|
|
|
level : in severity_level := failure) is |
|
|
|
|
|
begin |
|
|
|
|
|
if (str'length = 0) then |
|
|
|
|
|
assert a /= b |
|
|
|
|
|
report "FAILURE: " & a & " should not be equal to " & b |
|
|
|
|
|
severity level; |
|
|
|
|
|
else |
|
|
|
|
|
assert a /= b |
|
|
|
|
|
report str |
|
|
|
|
|
severity level; |
|
|
|
|
|
end if; |
|
|
end procedure assert_unequal; |
|
|
end procedure assert_unequal; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|