Test ran at 2025-02-06 12:35:23.047990+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.14 libtk=8.6.14 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.14 (~8.6.0) tash=8.7.2 --> libtk=8.6.14 (~8.6.0) LOG: Spawning: alr -d -n get --build scripted_testing=2.0.0 Note: Deploying scripted_testing=2.0.0... Note: Deploying libtcl=8.6.14... 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 Selecting previously unselected package tcl8.6-dev: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 ... 223596 files and directories currently installed.) Preparing to unpack .../tcl8.6-dev_8.6.14+dfsg-1build1_amd64.deb ... Unpacking tcl8.6-dev:amd64 (8.6.14+dfsg-1build1) ... Setting up tcl8.6-dev:amd64 (8.6.14+dfsg-1build1) ... Running kernel seems to be up-to-date. Restarting services... Service restarts being deferred: /etc/needrestart/restart.d/dbus.service systemctl restart getty@tty1.service systemctl restart runner-provisioner.service systemctl restart serial-getty@ttyS0.service systemctl restart systemd-logind.service No containers need to be restarted. User sessions running outdated binaries: runner @ user manager service: systemd[897] No VM guests are running outdated hypervisor (qemu) binaries on this host. Note: Deploying libtk=8.6.14... 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 Selecting previously unselected package libxss-dev: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 ... 223665 files and directories currently installed.) Preparing to unpack .../libxss-dev_1%3a1.2.3-1build3_amd64.deb ... Unpacking libxss-dev:amd64 (1:1.2.3-1build3) ... Selecting previously unselected package tk8.6-dev:amd64. Preparing to unpack .../tk8.6-dev_8.6.14-1build1_amd64.deb ... Unpacking tk8.6-dev:amd64 (8.6.14-1build1) ... Setting up libxss-dev:amd64 (1:1.2.3-1build3) ... Setting up tk8.6-dev:amd64 (8.6.14-1build1) ... Processing triggers for man-db (2.12.0-4build2) ... Running kernel seems to be up-to-date. Restarting services... Service restarts being deferred: /etc/needrestart/restart.d/dbus.service systemctl restart getty@tty1.service systemctl restart runner-provisioner.service systemctl restart serial-getty@ttyS0.service systemctl restart systemd-logind.service No containers need to be restarted. User sessions running outdated binaries: runner @ user manager service: systemd[897] No VM guests are running outdated hypervisor (qemu) binaries on this host. Note: Deploying tash=8.7.2... Note: Running post-fetch actions for tash=8.7.2... make: Entering directory '/home/runner/.local/share/alire/builds/tash_8.7.2_4c588c12/3e347effa69b95986f9c967336d84ba3dd4a8af59e9d6936b00f81d587c55ad2/src' tclsh 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 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/.local/share/alire/builds/tash_8.7.2_4c588c12/3e347effa69b95986f9c967336d84ba3dd4a8af59e9d6936b00f81d587c55ad2/src' Note: Building scripted_testing=2.0.0/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_record_sizes.ads [ada] chelper.adb [ada] cargv.adb [ada] tcl-async.adb [ada] tcl.adb [ada] tcl-ada.adb [ada] tcl-tk.adb [ada] tcl-tk-ada.adb [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 scripted_testing=2.0.0 successfully retrieved and built. Dependencies were solved as follows: +b libtcl 8.6.14 (new,indirect,system package) +b libtk 8.6.14 (new,indirect,system package) + tash 8.7.2 (new) Found declared GPR file: scripted_testing.gpr