Test ran at 2024-04-25 13:19:21.278290+00:00 SOLUTION: scripted_testing=2.0.0: Integration testing Origin: commit 6720b9250e31c58d150d52c554193e22767a0704 from https://github.com/simonjwright/scripted_testing.git Properties: Author: Simon Wright Description: Integration testing License: GPL-3.0-or-later Long_Description: To set the scene, the Ada software under test (SUT) forms part of a system. Generally, the system will be constructed using a layered approach, and the other parts of the system that interact with the SUT are higher-level (which can call interface subprograms presented by the SUT) or lower-level (whose interfaces can be called by the SUT, or which can provide callbacks to the SUT). This package is intended for testing at a level between unit testing (using, for example, [AUnit](https://github.com/AdaCore/aunit)) and integration testing (using real hardware). Unit testing tends to be fragile, requiring a lot of rework for even minor functional changes in the requirements. The scripting language supported is [Tcl](http://www.tcl.tk), and specifically the Ada binding [Tash](https://github.com/simonjwright/tcladashell). The reason for choosing Tcl rather than Python or Lua is that Tcl's interface is entirely string-based; this is important, considering the need to specify values of enumerated types. The package provides facilities to write new commands in Tcl to * call the interface subprograms presented by the SUT, * set up values to be returned by calls the SUT makes to lower-level system components, * call callbacks provided by lower-level system components, * delay for appropriate periods, and * check that the proper calls have been made to lower-level system components, with the required values. It's assumed that the interface subprograms of the lower-level subsystems are stubbed so that: * `in` and `in out` parameters can be recorded for later checking, * `out` (and `in out`) parameter values and function `return` values can be provided to be returned to the SUT, * exceptions can be raised when required, * the number of calls to the subprogram can be checked. Maintainer: Simon Wright Maintainers_Logins: simonjwright Name: scripted_testing Tag: testing Tag: integration Tag: scripting Version: 2.0.0 Website: https://github.com/simonjwright/scripted_testing.git Dependencies (direct): tash^8.7.0 Dependencies (solution): libtcl=8.6.12 libtk=8.6.12 tash=8.7.2 Dependencies (graph): scripted_testing=2.0.0 --> tash=8.7.2 (^8.7.0) tash=8.7.2 --> libtcl=8.6.12 (~8.6.0) tash=8.7.2 --> libtk=8.6.12 (~8.6.0) LOG: Note: Deploying scripted_testing=2.0.0... Note: Deploying libtcl=8.6.12... The system package 'tcl8.6-dev' is about to be installed. This action might require admin privileges and impact your system installation. Do you want Alire to install this system package? Using default: Yes debconf: delaying package configuration, since apt-utils is not installed Selecting previously unselected package libtcl8.6:amd64. (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 42243 files and directories currently installed.) Preparing to unpack .../libtcl8.6_8.6.12+dfsg-1build1_amd64.deb ... Unpacking libtcl8.6:amd64 (8.6.12+dfsg-1build1) ... Selecting previously unselected package tcl8.6. Preparing to unpack .../tcl8.6_8.6.12+dfsg-1build1_amd64.deb ... Unpacking tcl8.6 (8.6.12+dfsg-1build1) ... Selecting previously unselected package tcl8.6-dev:amd64. Preparing to unpack .../tcl8.6-dev_8.6.12+dfsg-1build1_amd64.deb ... Unpacking tcl8.6-dev:amd64 (8.6.12+dfsg-1build1) ... Setting up libtcl8.6:amd64 (8.6.12+dfsg-1build1) ... Setting up tcl8.6 (8.6.12+dfsg-1build1) ... Setting up tcl8.6-dev:amd64 (8.6.12+dfsg-1build1) ... Processing triggers for libc-bin (2.35-0ubuntu3.3) ... Note: Deploying libtk=8.6.12... The system package 'tk8.6-dev' is about to be installed. This action might require admin privileges and impact your system installation. Do you want Alire to install this system package? Using default: Yes debconf: delaying package configuration, since apt-utils is not installed Selecting previously unselected package libfontenc1:amd64. (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 42560 files and directories currently installed.) Preparing to unpack .../00-libfontenc1_1%3a1.1.4-1build3_amd64.deb ... Unpacking libfontenc1:amd64 (1:1.1.4-1build3) ... Selecting previously unselected package libxss1:amd64. Preparing to unpack .../01-libxss1_1%3a1.2.3-1build2_amd64.deb ... Unpacking libxss1:amd64 (1:1.2.3-1build2) ... Selecting previously unselected package libtk8.6:amd64. Preparing to unpack .../02-libtk8.6_8.6.12-1build1_amd64.deb ... Unpacking libtk8.6:amd64 (8.6.12-1build1) ... Selecting previously unselected package libutempter0:amd64. Preparing to unpack .../03-libutempter0_1.2.1-2build2_amd64.deb ... Unpacking libutempter0:amd64 (1.2.1-2build2) ... Selecting previously unselected package libxt6:amd64. Preparing to unpack .../04-libxt6_1%3a1.2.1-1_amd64.deb ... Unpacking libxt6:amd64 (1:1.2.1-1) ... Selecting previously unselected package libxmu6:amd64. Preparing to unpack .../05-libxmu6_2%3a1.1.3-3_amd64.deb ... Unpacking libxmu6:amd64 (2:1.1.3-3) ... Selecting previously unselected package libxaw7:amd64. Preparing to unpack .../06-libxaw7_2%3a1.0.14-1_amd64.deb ... Unpacking libxaw7:amd64 (2:1.0.14-1) ... Selecting previously unselected package libxcb-shape0:amd64. Preparing to unpack .../07-libxcb-shape0_1.14-3ubuntu3_amd64.deb ... Unpacking libxcb-shape0:amd64 (1.14-3ubuntu3) ... Selecting previously unselected package libxkbfile1:amd64. Preparing to unpack .../08-libxkbfile1_1%3a1.1.0-1build3_amd64.deb ... Unpacking libxkbfile1:amd64 (1:1.1.0-1build3) ... Selecting previously unselected package libxss-dev:amd64. Preparing to unpack .../09-libxss-dev_1%3a1.2.3-1build2_amd64.deb ... Unpacking libxss-dev:amd64 (1:1.2.3-1build2) ... Selecting previously unselected package libxv1:amd64. Preparing to unpack .../10-libxv1_2%3a1.0.11-1build2_amd64.deb ... Unpacking libxv1:amd64 (2:1.0.11-1build2) ... Selecting previously unselected package libxxf86dga1:amd64. Preparing to unpack .../11-libxxf86dga1_2%3a1.1.5-0ubuntu3_amd64.deb ... Unpacking libxxf86dga1:amd64 (2:1.1.5-0ubuntu3) ... Selecting previously unselected package tk8.6. Preparing to unpack .../12-tk8.6_8.6.12-1build1_amd64.deb ... Unpacking tk8.6 (8.6.12-1build1) ... Selecting previously unselected package tk8.6-dev:amd64. Preparing to unpack .../13-tk8.6-dev_8.6.12-1build1_amd64.deb ... Unpacking tk8.6-dev:amd64 (8.6.12-1build1) ... Selecting previously unselected package x11-utils. Preparing to unpack .../14-x11-utils_7.7+5build2_amd64.deb ... Unpacking x11-utils (7.7+5build2) ... Selecting previously unselected package xbitmaps. Preparing to unpack .../15-xbitmaps_1.1.1-2.1ubuntu1_all.deb ... Unpacking xbitmaps (1.1.1-2.1ubuntu1) ... Selecting previously unselected package xterm. Preparing to unpack .../16-xterm_372-1ubuntu1_amd64.deb ... Unpacking xterm (372-1ubuntu1) ... Setting up libxcb-shape0:amd64 (1.14-3ubuntu3) ... Setting up libxxf86dga1:amd64 (2:1.1.5-0ubuntu3) ... Setting up libfontenc1:amd64 (1:1.1.4-1build3) ... Setting up libxv1:amd64 (2:1.0.11-1build2) ... Setting up libxt6:amd64 (1:1.2.1-1) ... Setting up libutempter0:amd64 (1.2.1-2build2) ... Setting up libxss1:amd64 (1:1.2.3-1build2) ... Setting up libxkbfile1:amd64 (1:1.1.0-1build3) ... Setting up xbitmaps (1.1.1-2.1ubuntu1) ... Setting up libxmu6:amd64 (2:1.1.3-3) ... Setting up libtk8.6:amd64 (8.6.12-1build1) ... Setting up libxaw7:amd64 (2:1.0.14-1) ... Setting up libxss-dev:amd64 (1:1.2.3-1build2) ... Setting up x11-utils (7.7+5build2) ... Setting up xterm (372-1ubuntu1) ... update-alternatives: using /usr/bin/xterm to provide /usr/bin/x-terminal-emulator (x-terminal-emulator) in auto mode update-alternatives: warning: skip creation of /usr/share/man/man1/x-terminal-emulator.1.gz because associated file /usr/share/man/man1/xterm.1.gz (of link group x-terminal-emulator) doesn't exist update-alternatives: using /usr/bin/lxterm to provide /usr/bin/x-terminal-emulator (x-terminal-emulator) in auto mode update-alternatives: warning: skip creation of /usr/share/man/man1/x-terminal-emulator.1.gz because associated file /usr/share/man/man1/lxterm.1.gz (of link group x-terminal-emulator) doesn't exist Setting up tk8.6 (8.6.12-1build1) ... Setting up tk8.6-dev:amd64 (8.6.12-1build1) ... Processing triggers for libc-bin (2.35-0ubuntu3.3) ... Processing triggers for hicolor-icon-theme (0.17-2) ... Note: Deploying tash=8.7.2... Note: Running post_fetch actions for tash=8.7.2... make: Entering directory '/home/runner/work/alire-crates-ci/alire-crates-ci/test/cf87011b-3f4c-40f0-ae13-198b97aa9b6b/scripted_testing_2.0.0_6720b925/alire/cache/dependencies/tash_8.7.2_4c588c12/src' tclsh8.6 tcl_record_sizes.tcl >tcl_record_sizes.c gprbuild -P tcl_record_sizes.gpr -o tcl_record_sizes.exe Setup [mkdir] object directory for project Tcl_Record_Sizes Compile [c] tcl_record_sizes.c /home/runner/work/alire-crates-ci/alire-crates-ci/test/cf87011b-3f4c-40f0-ae13-198b97aa9b6b/scripted_testing_2.0.0_6720b925/alire/cache/dependencies/tash_8.7.2_4c588c12/src/tcl_record_sizes.c: In function ‘main’: /home/runner/work/alire-crates-ci/alire-crates-ci/test/cf87011b-3f4c-40f0-ae13-198b97aa9b6b/scripted_testing_2.0.0_6720b925/alire/cache/dependencies/tash_8.7.2_4c588c12/src/tcl_record_sizes.c:66:48: warning: format ‘%d’ expects argument of type ‘int’, but argument 2 has type ‘long unsigned int’ [-Wformat=] 66 | printf(" Tcl_CallFrame_Size : constant := %d;\n", | ~^ | | | int | %ld 67 | sizeof(struct Tcl_CallFrame)); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | | | long unsigned int /home/runner/work/alire-crates-ci/alire-crates-ci/test/cf87011b-3f4c-40f0-ae13-198b97aa9b6b/scripted_testing_2.0.0_6720b925/alire/cache/dependencies/tash_8.7.2_4c588c12/src/tcl_record_sizes.c:68:53: warning: format ‘%d’ expects argument of type ‘int’, but argument 2 has type ‘long unsigned int’ [-Wformat=] 68 | printf(" Tcl_CallFrame_Alignment : constant := %d;\n", | ~^ | | | int | %ld /home/runner/work/alire-crates-ci/alire-crates-ci/test/cf87011b-3f4c-40f0-ae13-198b97aa9b6b/scripted_testing_2.0.0_6720b925/alire/cache/dependencies/tash_8.7.2_4c588c12/src/tcl_record_sizes.c:72:48: warning: format ‘%d’ expects argument of type ‘int’, but argument 2 has type ‘long unsigned int’ [-Wformat=] 72 | printf(" Tcl_HashTable_Size : constant := %d;\n", | ~^ | | | int | %ld 73 | sizeof(struct Tcl_HashTable)); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | | | long unsigned int /home/runner/work/alire-crates-ci/alire-crates-ci/test/cf87011b-3f4c-40f0-ae13-198b97aa9b6b/scripted_testing_2.0.0_6720b925/alire/cache/dependencies/tash_8.7.2_4c588c12/src/tcl_record_sizes.c:74:53: warning: format ‘%d’ expects argument of type ‘int’, but argument 2 has type ‘long unsigned int’ [-Wformat=] 74 | printf(" Tcl_HashTable_Alignment : constant := %d;\n", | ~^ | | | int | %ld /home/runner/work/alire-crates-ci/alire-crates-ci/test/cf87011b-3f4c-40f0-ae13-198b97aa9b6b/scripted_testing_2.0.0_6720b925/alire/cache/dependencies/tash_8.7.2_4c588c12/src/tcl_record_sizes.c:78:49: warning: format ‘%d’ expects argument of type ‘int’, but argument 2 has type ‘long unsigned int’ [-Wformat=] 78 | printf(" Tcl_HashSearch_Size : constant := %d;\n", | ~^ | | | int | %ld 79 | sizeof(struct Tcl_HashSearch)); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | | | long unsigned int /home/runner/work/alire-crates-ci/alire-crates-ci/test/cf87011b-3f4c-40f0-ae13-198b97aa9b6b/scripted_testing_2.0.0_6720b925/alire/cache/dependencies/tash_8.7.2_4c588c12/src/tcl_record_sizes.c:80:54: warning: format ‘%d’ expects argument of type ‘int’, but argument 2 has type ‘long unsigned int’ [-Wformat=] 80 | printf(" Tcl_HashSearch_Alignment : constant := %d;\n", | ~^ | | | int | %ld /home/runner/work/alire-crates-ci/alire-crates-ci/test/cf87011b-3f4c-40f0-ae13-198b97aa9b6b/scripted_testing_2.0.0_6720b925/alire/cache/dependencies/tash_8.7.2_4c588c12/src/tcl_record_sizes.c:84:45: warning: format ‘%d’ expects argument of type ‘int’, but argument 2 has type ‘long unsigned int’ [-Wformat=] 84 | printf(" Tcl_Interp_Size : constant := %d;\n", | ~^ | | | int | %ld 85 | sizeof(struct Tcl_Interp)); | ~~~~~~~~~~~~~~~~~~~~~~~~~ | | | long unsigned int /home/runner/work/alire-crates-ci/alire-crates-ci/test/cf87011b-3f4c-40f0-ae13-198b97aa9b6b/scripted_testing_2.0.0_6720b925/alire/cache/dependencies/tash_8.7.2_4c588c12/src/tcl_record_sizes.c:86:50: warning: format ‘%d’ expects argument of type ‘int’, but argument 2 has type ‘long unsigned int’ [-Wformat=] 86 | printf(" Tcl_Interp_Alignment : constant := %d;\n", | ~^ | | | int | %ld /home/runner/work/alire-crates-ci/alire-crates-ci/test/cf87011b-3f4c-40f0-ae13-198b97aa9b6b/scripted_testing_2.0.0_6720b925/alire/cache/dependencies/tash_8.7.2_4c588c12/src/tcl_record_sizes.c:90:50: warning: format ‘%d’ expects argument of type ‘int’, but argument 2 has type ‘long unsigned int’ [-Wformat=] 90 | printf(" Tcl_SavedResult_Size : constant := %d;\n", | ~^ | | | int | %ld 91 | sizeof(struct Tcl_SavedResult)); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | | | long unsigned int /home/runner/work/alire-crates-ci/alire-crates-ci/test/cf87011b-3f4c-40f0-ae13-198b97aa9b6b/scripted_testing_2.0.0_6720b925/alire/cache/dependencies/tash_8.7.2_4c588c12/src/tcl_record_sizes.c:92:55: warning: format ‘%d’ expects argument of type ‘int’, but argument 2 has type ‘long unsigned int’ [-Wformat=] 92 | printf(" Tcl_SavedResult_Alignment : constant := %d;\n", | ~^ | | | int | %ld Link [archive] libtcl_record_sizes.a [index] libtcl_record_sizes.a [link] tcl_record_sizes.c ./tcl_record_sizes.exe >tcl_record_sizes.ads make: Leaving directory '/home/runner/work/alire-crates-ci/alire-crates-ci/test/cf87011b-3f4c-40f0-ae13-198b97aa9b6b/scripted_testing_2.0.0_6720b925/alire/cache/dependencies/tash_8.7.2_4c588c12/src' Note: Building scripted_testing/scripted_testing.gpr... Setup [mkdir] object directory for project Tash [mkdir] library directory for project Tash [mkdir] object directory for project Scripted_Testing [mkdir] library directory for project Scripted_Testing Compile [c] tkmacro.c [c] tclmacro.c [ada] tcl-tk.adb [ada] chelper.adb [ada] tcl-ada.adb [ada] tcl.adb [ada] tcl-async.adb tcl.adb:146:20: warning: unrecognized convention name, C assumed tcl.adb:188:20: warning: unrecognized convention name, C assumed tcl.adb:230:20: warning: unrecognized convention name, C assumed tcl.adb:273:20: warning: unrecognized convention name, C assumed [ada] cargv.adb [ada] tcl-tk-ada.adb [ada] tcl_record_sizes.ads [Ada] scripted_testing.adb Build Libraries [gprlib] tash.lexch [gprlib] scripted_testing.lexch [archive] libtash.a [index] libtash.a [archive] libscripted_testing.a [index] libscripted_testing.a Build finished successfully in 3.40 seconds. scripted_testing=2.0.0 successfully retrieved and built. Dependencies were solved as follows: + libtcl 8.6.12 (new,indirect) + libtk 8.6.12 (new,indirect) + tash 8.7.2 (new) Found declared GPR file: scripted_testing.gpr