mirror of
https://github.com/AdaCore/xmlada.git
synced 2026-02-12 12:30:28 -08:00
Move all the */test/ directories to tests/* Move all tests that potentially contain customer code or data to tests/adacore These will be moved to a separate git repository Part of O527-038 git-svn-id: svn+ssh://svn.eu.adacore.com/Dev/trunk/xmlada@240170 936e1b1b-40f2-da11-902a-00137254ae57
158 lines
3.9 KiB
Ada
158 lines
3.9 KiB
Ada
with Ada.Characters.Handling; use Ada.Characters.Handling;
|
|
with Ada.Command_Line; use Ada.Command_Line;
|
|
with Ada.Text_IO; use Ada.Text_IO;
|
|
with DOM.Core.Nodes; use DOM.Core.Nodes;
|
|
with GNAT.OS_Lib; use GNAT.OS_Lib;
|
|
|
|
package body Driver is
|
|
|
|
function Special_Chars (Str : String) return String;
|
|
-- Return Str, where special characters have been replaced for suitable
|
|
-- comparison
|
|
|
|
-------------------
|
|
-- Special_Chars --
|
|
-------------------
|
|
|
|
function Special_Chars (Str : String) return String is
|
|
Result : Unbounded_String;
|
|
begin
|
|
for S in Str'Range loop
|
|
if Str (S) = ASCII.LF then
|
|
Append (Result, "\n");
|
|
else
|
|
Append (Result, Str (S));
|
|
end if;
|
|
end loop;
|
|
return To_String (Result);
|
|
end Special_Chars;
|
|
|
|
-------------------
|
|
-- Assert_Equals --
|
|
-------------------
|
|
|
|
procedure Assert_Equals
|
|
(Expected : DOM_String;
|
|
Actual : DOM_String;
|
|
Ignore_Case : Boolean;
|
|
File : String;
|
|
Id : String)
|
|
is
|
|
Result : Boolean;
|
|
begin
|
|
if Ignore_Case then
|
|
Result := Special_Chars (To_Lower (Expected)) =
|
|
Special_Chars (To_Lower (Actual));
|
|
else
|
|
Result := Special_Chars (Expected) = Special_Chars (Actual);
|
|
end if;
|
|
|
|
if not Result then
|
|
Put_Line ("Test failed: " & Id & " (in " & File & ")");
|
|
Put_Line (" Expected=" & Expected);
|
|
Put_Line (" Actual =" & Actual);
|
|
OS_Exit (1);
|
|
end if;
|
|
end Assert_Equals;
|
|
|
|
-------------------
|
|
-- Assert_Equals --
|
|
-------------------
|
|
|
|
procedure Assert_Equals
|
|
(Expected : DOM_String;
|
|
Actual : Unbounded_String;
|
|
Ignore_Case : Boolean;
|
|
File : String;
|
|
Id : String)
|
|
is
|
|
begin
|
|
Assert_Equals (Expected, To_String (Actual), Ignore_Case, File, Id);
|
|
end Assert_Equals;
|
|
|
|
-----------------
|
|
-- Assert_Null --
|
|
-----------------
|
|
|
|
procedure Assert_Null
|
|
(Actual : Node;
|
|
File : String;
|
|
Id : String)
|
|
is
|
|
begin
|
|
if Actual /= null then
|
|
Put_Line ("Test failed " & Id & " (in " & File & ")");
|
|
Put_Line (" Expected null node");
|
|
OS_Exit (1);
|
|
end if;
|
|
end Assert_Null;
|
|
|
|
---------------------
|
|
-- Assert_Not_Null --
|
|
---------------------
|
|
|
|
procedure Assert_Not_Null
|
|
(Actual : Node;
|
|
File : String;
|
|
Id : String)
|
|
is
|
|
begin
|
|
if Actual = null then
|
|
Put_Line ("Test failed " & Id & " (in " & File & ")");
|
|
Put_Line (" Expected not null node");
|
|
OS_Exit (1);
|
|
end if;
|
|
end Assert_Not_Null;
|
|
|
|
---------------------
|
|
-- Assert_Not_Null --
|
|
---------------------
|
|
|
|
procedure Assert_Not_Null
|
|
(Actual : Named_Node_Map;
|
|
File : String;
|
|
Id : String)
|
|
is
|
|
begin
|
|
if Length (Actual) = 0 then
|
|
Put_Line ("Test failed " & Id & " (in " & File & ")");
|
|
Put_Line (" Expected non-empty node map");
|
|
OS_Exit (1);
|
|
end if;
|
|
end Assert_Not_Null;
|
|
|
|
-----------------
|
|
-- Assert_True --
|
|
-----------------
|
|
|
|
procedure Assert_True
|
|
(Actual : Boolean;
|
|
File : String;
|
|
Id : String)
|
|
is
|
|
begin
|
|
if not Actual then
|
|
Put_Line ("Test failed " & Id & " (in " & File & ")");
|
|
Put_Line (" Expected True, got " & Boolean'Image (Actual));
|
|
OS_Exit (1);
|
|
end if;
|
|
end Assert_True;
|
|
|
|
------------------
|
|
-- Assert_False --
|
|
------------------
|
|
|
|
procedure Assert_False
|
|
(Actual : Boolean;
|
|
File : String;
|
|
Id : String)
|
|
is
|
|
begin
|
|
if Actual then
|
|
Put_Line ("Test failed " & Id & " (in " & File & ")");
|
|
Put_Line (" Expected False, got " & Boolean'Image (Actual));
|
|
OS_Exit (1);
|
|
end if;
|
|
end Assert_False;
|
|
end Driver;
|