From e86234e3e4fcaa87cec02515ef3b968b9b3ebcc2 Mon Sep 17 00:00:00 2001 From: Mason Ticehurst Date: Tue, 23 Jan 2024 21:18:08 -0500 Subject: [PATCH] Add constants for code-reuse and cleanup some compiler warnings --- eRINA_Tests/src/test_rina_register.adb | 81 ++++++++++++++------------ 1 file changed, 43 insertions(+), 38 deletions(-) diff --git a/eRINA_Tests/src/test_rina_register.adb b/eRINA_Tests/src/test_rina_register.adb index 3a999d9..ec2dbcf 100644 --- a/eRINA_Tests/src/test_rina_register.adb +++ b/eRINA_Tests/src/test_rina_register.adb @@ -2,7 +2,6 @@ pragma Style_Checks (Off); with AUnit.Assertions; -with exceptions; with AUnit.Test_Caller; with GNAT.OS_Lib; with Bindings.Rlite.API; @@ -13,6 +12,10 @@ package body Test_RINA_Register is use GNAT.OS_Lib; use Bindings.Rlite.API; + Application_Name : constant String := "TestApplicationName"; + DIF_Name : constant String := "test.DIF"; + RINA_Dev_FD : constant File_Descriptor := RINA_Open; + package Caller is new AUnit.Test_Caller (Test); Test_Suite : aliased AUnit.Test_Suites.Test_Suite; @@ -42,14 +45,13 @@ package body Test_RINA_Register is Test_Suite.Add_Test (Caller.Create (Name_009 & " Verify rina_register successfully reg. an App name to DIF", Test_Register_AppName_to_DIF'Access)); Test_Suite.Add_Test (Caller.Create - (Name_010 & " Verify rina_register returns -1 when inval. file descriptor is passed", Test_Register_Application_Empty'Access)); + (Name_010 & " Verify rina_register returns -1 when inval. file descriptor is passed", Test_Register_Invalid_File_Descriptor'Access)); return Test_Suite'Access; end Suite; --Test Case 003 procedure Test_Register_DIF_Length (Object : in out Test) is - RINA_Dev_FD : constant File_Descriptor := RINA_Open; Dif_Name : constant String := "this___is___a___really___long___dif___name___that___should___fail___because___it___is___over___128___characters___long___________"; Register_Success : File_Descriptor := Invalid_FD; Caused_Error : Boolean := False; @@ -65,90 +67,93 @@ package body Test_RINA_Register is --Test Case 004 procedure Test_Register_DIF_Empty (Object : in out Test) is - RINA_Dev_FD : constant File_Descriptor := RINA_Open; - DIF_Name : constant String := ""; Register_Success : File_Descriptor := Invalid_FD; + Caused_Error : Boolean := False; begin - Register_Success := RINA_Register (RINA_Dev_FD, DIF_Name, "TestApplicationName", 0); + Register_Success := RINA_Register (RINA_Dev_FD, "", Application_Name, 0); + exception + when Exceptions.Bounded_Length_Expcetion => + Caused_Error := True; - Assert(Register_Success = Invalid_FD, "DIF_Name blank"); + Assert(Caused_Error and Register_Success = Invalid_FD, "DIF_Name blank"); end Test_Register_DIF_Empty; --Test Case 005 procedure Test_Register_Not_Exist_IPCP (Object : in out Test) is - DIF_Name : Bounded_String := To_Bounded_String ("TestDIF"); Register_Success : File_Descriptor := Invalid_FD; - RINA_Dev_FD : File_Descriptor := RINA_Open; Caused_Error : Boolean := False; begin - Register_Success := RINA_Register (RINA_Dev_FD, DIF_Name, To_Bounded_String ("TestApplicationName"), 0); - exception - when EXCEPTIONS.DIF_REGISTRATION_FAILURE => - Caused_Error := True; - Assert(Caused_Error, "DIF_Name does not exist in IPCP"); + Register_Success := RINA_Register (RINA_Dev_FD, DIF_Name, Application_Name, 0); + exception + when EXCEPTIONS.DIF_REGISTRATION_FAILURE => + Caused_Error := True; + + Assert(Caused_Error and Register_Success = Invalid_FD, "DIF_Name does not exist in IPCP"); end Test_Register_Not_Exist_IPCP; --Test Case 006 procedure Test_Register_Application_Length (Object : in out Test) is - Fd : File_Descriptor := Invalid_FD; - App_Name : Bounded_String; + Register_Success : File_Descriptor := Invalid_FD; + App_Name : constant String := "this___is___a___really___long___app___name___that___should___fail___because___it___is___over___128___characters___long___________"; Caused_Error : Boolean := False; begin - App_Name := To_Bounded_String ("nnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnn"); + Register_Success := RINA_Register (RINA_Dev_FD, DIF_Name, App_Name, 0); exception - when Ada.Strings.Length_Error => + when Exceptions.Bounded_Length_Expcetion => Caused_Error := True; - Assert(Caused_Error, "Application_Name length > 128 characters"); + Assert(Caused_Error and Register_Success = Invalid_FD, "Application_Name length > 128 characters"); end Test_Register_Application_Length; --Test Case 007 procedure Test_Register_Application_Empty (Object : in out Test) is - App_Name : Bounded_String := To_Bounded_String (""); Register_Success : File_Descriptor := Invalid_FD; - RINA_Dev_FD : File_Descriptor := RINA_Open; + Caused_Error : Boolean := False; begin - Register_Success := RINA_Register (RINA_Dev_FD, App_Name, To_Bounded_String ("TestApplicationName"), 0); - - Assert(Register_Success = Invalid_FD, "Application_Name blank"); + Register_Success := RINA_Register (RINA_Dev_FD, DIF_Name, "", 0); + exception + when Exceptions.Bounded_Length_Expcetion => + Caused_Error := True; + + Assert(Caused_Error and Register_Success = Invalid_FD, "Application_Name blank"); end Test_Register_Application_Empty; -- Test Case 008 procedure Test_Register_App_Already_Reg (Object : in out Test) is - App_Name : Bounded_String := To_Bounded_String ("TestApplicationName"); - RINA_Dev_FD : File_Descriptor := RINA_Open; - Register_First : File_Descriptor := RINA_Register (RINA_Dev_FD, App_Name, To_Bounded_String ("TestDIF"), 0); - Register_Second : File_Descriptor := RINA_Register (RINA_Dev_FD, App_Name, To_Bounded_String ("TestDIF"), 0); + Register_First : constant File_Descriptor := RINA_Register (RINA_Dev_FD, DIF_Name, Application_Name, 0); + Register_Second : File_Descriptor; Caused_Error : Boolean := False; begin - Register_Second := RINA_Register (RINA_Dev_FD, App_Name, To_Bounded_String ("TestDIF"), 0); + Register_Second := RINA_Register (RINA_Dev_FD, DIF_Name, Application_Name, 0); exception when EXCEPTIONS.DIF_REGISTRATION_FAILURE => Caused_Error := True; - Assert (Caused_Error, "Application name could be registered twice"); + Assert (Caused_Error and Register_Second = Invalid_FD and Register_First /= Invalid_FD, "Application name could be registered twice"); end Test_Register_App_Already_Reg; -- Test Case 009 procedure Test_Register_AppName_to_DIF (Object : in out Test) is - App_Name : Bounded_String := To_Bounded_String ("UniqueTestApp"); - RINA_Dev_FD : File_Descriptor := RINA_Open; Register_Success : File_Descriptor; Caused_Error : Boolean := False; begin - Register_Success := RINA_Register (RINA_Dev_FD, App_Name, To_Bounded_String ("TestDIF"), 0); + Register_Success := RINA_Register (RINA_Dev_FD, DIF_Name, Application_Name, 0); exception when EXCEPTIONS.DIF_REGISTRATION_FAILURE => Caused_Error := True; - Assert (Caused_Error, "Failed to register a unique application name"); + Assert (Caused_Error and Register_Success = Invalid_FD, "Failed to register a unique application name"); end Test_Register_AppName_to_DIF; -- Test Case 010 procedure Test_Register_Invalid_File_Descriptor (Object : in out Test) is - App_Name : Bounded_String := To_Bounded_String ("TestApplicationName"); - Invalid_FD : File_Descriptor := -1; -- Assuming -1 is an invalid file descriptor - Register_Result : File_Descriptor := RINA_Register (Invalid_FD, App_Name, To_Bounded_String ("TestDIF"), 0); + Register_Result : File_Descriptor := Invalid_FD; + Caused_Error : Boolean := False; begin - Assert (Register_Result = Invalid_FD, "rina_register did not return -1 for invalid file descriptor"); + Register_Result := RINA_Register (Invalid_FD, DIF_Name, Application_Name, 0); + exception + when EXCEPTIONS.DIF_REGISTRATION_FAILURE => + Caused_Error := True; + + Assert (Caused_Error and Register_Result = Invalid_FD, "rina_register did not return -1 for invalid file descriptor"); end Test_Register_Invalid_File_Descriptor; end Test_RINA_Register;