{
  "canonical_url": "https://crates.flyology.org/community/",
  "catalog": {
    "name": "community",
    "repository_url": "https://github.com/alire-project/alire-index",
    "revision": "cd12c6aa35b7d6483841517305d57ba167ec78d0"
  },
  "generated_at": "2026-08-23T04:55:42Z",
  "index": {
    "version": "1.4.0"
  },
  "package": {
    "catalog": "community",
    "description": "Ada 2022 AUnit with readable asserts & paramerised test",
    "development_only": false,
    "latest_version": "7.2.0",
    "name": "adacl_aunit",
    "selected_version": "7.2.0",
    "versions": [
      {
        "dependants": [],
        "dependencies": [
          {
            "catalog": "community",
            "condition": null,
            "name": "adacl",
            "package": "adacl",
            "provided_version": "7.2.0",
            "requirement": "^7.1",
            "resolved": true,
            "version": "7.2.0"
          },
          {
            "catalog": "community",
            "condition": null,
            "name": "aunit",
            "package": "aunit",
            "provided_version": "26.0.0",
            "requirement": "^26.0.0",
            "resolved": true,
            "version": "26.0.0"
          }
        ],
        "development": false,
        "external": false,
        "manifest": {
          "actions": [
            {
              "command": [
                "alr",
                "--chdir=test",
                "run"
              ],
              "directory": ".",
              "type": "test"
            }
          ],
          "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.1",
              "aunit": "^26.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:fc6bfd910aad6fd1d1495b46b7adb8b13bcd181d9cdcb3d0b69deb59f4426dd0",
              "sha512:bcaba5499dfa2a2fc9733b9aecf29deb516a52ede80f745cf896beddbd3295f348aba42da7868450f5075a408407a17ae13132f90207702c3a34d07df74df608"
            ],
            "url": "https://sourceforge.net/projects/adacl/files/Alire/adacl_aunit-7.2.0.tgz"
          },
          "tags": [
            "library",
            "aunit",
            "assert",
            "ada2022"
          ],
          "version": "7.2.0",
          "website": "https://sourceforge.net/projects/adacl_aunit/"
        },
        "path": "index/ad/adacl_aunit/adacl_aunit-7.2.0.toml",
        "version": "7.2.0"
      },
      {
        "dependants": [],
        "dependencies": [
          {
            "catalog": "community",
            "condition": null,
            "name": "adacl",
            "package": "adacl",
            "provided_version": "7.2.0",
            "requirement": "^7.1",
            "resolved": true,
            "version": "7.2.0"
          },
          {
            "catalog": "community",
            "condition": null,
            "name": "aunit",
            "package": "aunit",
            "provided_version": "26.0.0",
            "requirement": "^26.0.0",
            "resolved": true,
            "version": "26.0.0"
          }
        ],
        "development": false,
        "external": false,
        "manifest": {
          "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.1",
              "aunit": "^26.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:26ea0bad6222af3bed97456328d75ae292e37de7939e2f948b58ce1f613f10e7",
              "sha512:0fa1159df8cbadba08eab8c474ac8d252d2f6513530d2030d321abda32fe71ee3fbd6fe28ed369e7c4e1070862e1133c8380191259e8af12d0274f7b04ca643f"
            ],
            "url": "https://sourceforge.net/projects/adacl/files/Alire/adacl_aunit-7.1.2.tgz"
          },
          "tags": [
            "library",
            "aunit",
            "assert",
            "ada2022"
          ],
          "version": "7.1.2",
          "website": "https://sourceforge.net/projects/adacl_aunit/"
        },
        "path": "index/ad/adacl_aunit/adacl_aunit-7.1.2.toml",
        "version": "7.1.2"
      },
      {
        "dependants": [],
        "dependencies": [
          {
            "catalog": "community",
            "condition": null,
            "name": "adacl",
            "package": "adacl",
            "provided_version": "7.2.0",
            "requirement": "^7.0.0",
            "resolved": true,
            "version": "7.2.0"
          },
          {
            "catalog": "community",
            "condition": null,
            "name": "aunit",
            "package": "aunit",
            "provided_version": "25.0.0",
            "requirement": "25.0.0",
            "resolved": true,
            "version": "25.0.0"
          }
        ],
        "development": false,
        "external": false,
        "manifest": {
          "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/"
        },
        "path": "index/ad/adacl_aunit/adacl_aunit-7.1.0.toml",
        "version": "7.1.0"
      },
      {
        "dependants": [],
        "dependencies": [
          {
            "catalog": "community",
            "condition": null,
            "name": "adacl",
            "package": "adacl",
            "provided_version": "7.2.0",
            "requirement": "^7.0.0",
            "resolved": true,
            "version": "7.2.0"
          },
          {
            "catalog": "community",
            "condition": null,
            "name": "aunit",
            "package": "aunit",
            "provided_version": "25.0.0",
            "requirement": "25.0.0",
            "resolved": true,
            "version": "25.0.0"
          }
        ],
        "development": false,
        "external": false,
        "manifest": {
          "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:ebfefd3e7f69834409b1f2215dcede0772feaad9f41c477c4fde55cf17eede26",
              "sha512:db9a7cc4ffb7e773e074466fd65cd2520d9f9b6164fe5b016feaa6410e3a610363871297caf8bde90fa3cce9848daa0f44eec7c321cd5a5e02970bf9123241d5"
            ],
            "url": "https://sourceforge.net/projects/adacl/files/Alire/adacl_aunit-7.0.1.tgz"
          },
          "tags": [
            "library",
            "aunit",
            "assert",
            "ada2022"
          ],
          "version": "7.0.1",
          "website": "https://sourceforge.net/projects/adacl_aunit/"
        },
        "path": "index/ad/adacl_aunit/adacl_aunit-7.0.1.toml",
        "version": "7.0.1"
      },
      {
        "dependants": [],
        "dependencies": [
          {
            "catalog": "community",
            "condition": null,
            "name": "adacl",
            "package": "adacl",
            "provided_version": "7.2.0",
            "requirement": "^7.0.0",
            "resolved": true,
            "version": "7.2.0"
          },
          {
            "catalog": "community",
            "condition": null,
            "name": "aunit",
            "package": "aunit",
            "provided_version": "25.0.0",
            "requirement": "25.0.0",
            "resolved": true,
            "version": "25.0.0"
          }
        ],
        "development": false,
        "external": false,
        "manifest": {
          "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:4b06f31a213ba388117a0c31b6492ddebb2546966824c6e5a8c9b293877da813",
              "sha512:abd9381fad4411b2a22224a7ff065ca04a6097f05fbe42401cc1b9a8653e09dfd0ca786818218666f24164c70b36776caea97b750b97d8af399256961ceb7413"
            ],
            "url": "https://sourceforge.net/projects/adacl/files/Alire/adacl_aunit-7.0.0.tgz"
          },
          "tags": [
            "library",
            "aunit",
            "assert",
            "ada2022"
          ],
          "version": "7.0.0",
          "website": "https://sourceforge.net/projects/adacl_aunit/"
        },
        "path": "index/ad/adacl_aunit/adacl_aunit-7.0.0.toml",
        "version": "7.0.0"
      }
    ]
  },
  "schema_version": 4
}
