-- Time the loading of a Zip archive catalogue. with Zip, Ada.Calendar, Ada.Text_IO; procedure Test_Zip_Info_timing is procedure Test_1_Archive (name : String) is zi : Zip.Zip_info; t1, t2 : Ada.Calendar.Time; use Ada.Calendar; begin if Zip.Exists (name) then t1 := Ada.Calendar.Clock; -- NB: for loading, the value of parameter "duplicate_names" won't impact performance. Zip.Load (zi, name); t2 := Ada.Calendar.Clock; Ada.Text_IO.Put_Line ("Zip Archive: " & Zip.Zip_name (zi)); Ada.Text_IO.Put_Line ("Entries:" & Integer'Image (Zip.Entries (zi))); Ada.Text_IO.Put_Line ("Time elapsed for loading the Zip catalogue:" & Duration'Image (t2 - t1)); Ada.Text_IO.New_Line; end if; end Test_1_Archive; begin -- Zip files created by the test Zip_with_many_files. Test_1_Archive ("65535.zip"); Test_1_Archive ("32768.zip"); Test_1_Archive ("16384.zip"); -- rt.jar: More than 17,000 entries, that is more than 510,000 bytes, not counting file names Test_1_Archive ("rt.jar"); end Test_Zip_Info_timing;