{
  "authors": [
    "Martin Krischik <krischik@users.sourceforge.net>"
  ],
  "build-switches": {
    "*": {
      "ada_version": "Ada2022",
      "source_encoding": "UTF_8"
    },
    "development": {
      "compile_checks": "Warnings",
      "contracts": "Yes",
      "debug_info": "Yes",
      "optimization": "Debug",
      "runtime_checks": "Overflow"
    },
    "release": {
      "compile_checks": "Warnings",
      "contracts": "No",
      "debug_info": "No",
      "optimization": "Performance",
      "runtime_checks": "Default"
    },
    "validation": {
      "compile_checks": "Warnings",
      "contracts": "Yes",
      "debug_info": "Yes",
      "optimization": "Debug",
      "runtime_checks": "Everything"
    }
  },
  "depends-on": [
    {
      "adacl": "^7.0.0",
      "aunit": "25.0.0"
    }
  ],
  "description": "Ada 2022 AUnit with readable asserts & paramerised test",
  "licenses": "GPL-3.0-or-later",
  "long-description": "A versatile Ada 2022 testing library, enhancing AUnit with readable assertions and parameterised tests.\n\n## Features\n\n### AUnit-Compatible Assertions\n\n  - Generic support for access, array, discrete, floating-point, fixed-point, decimal, vector types, and files.\n  - **Readable Error Messages**: Assertions provide detailed feedback.\n\nExample for unbounded strings:\n\n```ada\n    procedure Equal\n       (Actual   : Ada.Strings.Unbounded.Unbounded_String;\n        Expected : String;\n        Name     : String;\n        Source   : String  := GNAT.Source_Info.File;\n        Line     : Natural := GNAT.Source_Info.Line)\n    is\n       use Ada.Strings.Unbounded;\n    begin\n       if not (Actual = Expected) then\n          Report_Assertion\n             (Message => \"In string «\" & Name & \"» the \" & Actual'Image & \" is not equal to \" & Expected'Image,\n              Source  => Source,\n              Line    => Line);\n       end if;\n    end Equal;\n```\n\nThis yields clear, context-rich error messages, surpassing standard AUnit\noutput.\n\n## Parameterised Tests\n\nRun the same test with varied inputs and expected values, boosting coverage\nefficiently.\n\nExample from hp41cx_tools:\n\n```ada\noverriding procedure Register_Tests (T : in out Test_Case) is\n   pragma Debug (AdaCL.Trace.Entering (In_Parameter => T.Name.all'Image));\nbegin\n   T.Parameter.Register_Routine (T, Test_To_HP_Duration_01'Access, \"WAKE_UP\",      \"2024-12-01 08:00:00\",   [3, 9, 4, 2, 0, 2, 8, 8, 0, 0, 0], 3942028800.0);\n   T.Parameter.Register_Routine (T, Test_To_HP_Duration_01'Access, \"^LBLTEST\",     \"2025-07-22 12:00:00\",   [3, 9, 6, 2, 1, 7, 4, 4, 0, 0, 0], 3962174400.0);\n   T.Parameter.Register_Routine (T, Test_To_HP_Duration_01'Access, \"TONE\",         \"2025-11-12 09:12:34\",   [3, 9, 7, 1, 9, 2, 7, 5, 5, 4, 0], 3971927554.0);\n   T.Parameter.Register_Routine (T, Test_To_HP_Duration_01'Access, \"FRACTION\",     \"2025-11-12 09:12:34.5\", [3, 9, 7, 1, 9, 2, 7, 5, 5, 4, 5], 3971927554.5);\n   T.Parameter.Register_Routine (T, Test_To_HP_Duration_01'Access, \"REPEAT24\",     \"24:00:00\",              [0, 0, 0, 0, 0, 8, 6, 4, 0, 0, 0], 0000086400.0);\n   T.Parameter.Register_Routine (T, Test_To_HP_Duration_01'Access, \"REPEAT'First\", \"0000:00:01.0\",          [0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0], 0000000010.0);\n   T.Parameter.Register_Routine (T, Test_To_HP_Duration_01'Access, \"REPEAT'Last\",  \"9999:59:59.9\",          [0, 0, 3, 5, 9, 9, 9, 9, 9, 9, 9], 0035999999.9);\n   pragma Debug (AdaCL.Trace.Exiting);\n   return;\nend Register_Tests;\n```\n\nRegistering tests multiple times with different data enhances test coverage\nwithout redundant code.\n\nSource: [SourceForge](https://sourceforge.net/p/adacl/git/ci/master/tree/adacl_aunit/test/src/)\nDocumentation: [GNATdoc](https://adacl.sourceforge.net/gnatdoc/adacl_aunit_test/index.html)\n",
  "maintainers": [
    "Martin Krischik <krischik@users.sourceforge.net>"
  ],
  "maintainers-logins": [
    "krischik"
  ],
  "name": "adacl_aunit",
  "origin": {
    "hashes": [
      "sha256:ba1b4d8f92e4de8447de7a6bf16d17005fcdabf2717984a43d8c456c3f4b3b29",
      "sha512:8e84182b0691de025bbee5e4ebeb35df1654f27b042b51d2b6cd3fb291b62b2d1102fdd76d0b02c912d63ce0ba8bf03b0f71e1a3329e5dc88456b0b1edf9e0c1"
    ],
    "url": "https://sourceforge.net/projects/adacl/files/Alire/adacl_aunit-7.1.0.tgz"
  },
  "tags": [
    "library",
    "aunit",
    "assert",
    "ada2022"
  ],
  "version": "7.1.0",
  "website": "https://sourceforge.net/projects/adacl_aunit/"
}
