beremiz

a811e1ff718a
Tests: Add time emulation feature for tests with BEREMIZ_TEST_CYCLES CFLAG.

Adding BEREMIZ_TEST_CYCLES=1000 in a project's CFLAGS will:
- run 1000 cycles with no pause
- emulate time flowing normaly for PLC code
- exit PLC thread

This allows:
- testing standard library blocks that deal with time without having to wait
- unit testing and code coverage with POUs that uses time
#!/bin/bash
# Run python example throug command line, and check usual output
coproc setsid $BEREMIZPYTHONPATH $BEREMIZPATH/Beremiz_cli.py -k --project-home $BEREMIZPATH/exemples/python build transfer run;
while read -u ${COPROC[0]} line; do
echo "$line"
if [[ "$line" == *Grumpf* ]]; then
pkill -9 -s $COPROC_PID
exit 0
fi
done
exit 42