Import LinuxCNC source tree
This commit is contained in:
3
tests/halcompile/personalities_mod/.gitignore
vendored
Normal file
3
tests/halcompile/personalities_mod/.gitignore
vendored
Normal file
@@ -0,0 +1,3 @@
|
||||
bitslice_test.comp
|
||||
lincurve_test.comp
|
||||
logic_test.comp
|
||||
100
tests/halcompile/personalities_mod/4count_2pers.expected
Normal file
100
tests/halcompile/personalities_mod/4count_2pers.expected
Normal file
@@ -0,0 +1,100 @@
|
||||
bitslice_test u32 IN 0 bitslice-test.0.in
|
||||
bitslice_test bit OUT FALSE bitslice-test.0.out-00
|
||||
bitslice_test bit OUT FALSE bitslice-test.0.out-01
|
||||
bitslice_test s32 OUT 0 bitslice-test.0.time
|
||||
bitslice_test u32 IN 0 bitslice-test.1.in
|
||||
bitslice_test bit OUT FALSE bitslice-test.1.out-00
|
||||
bitslice_test bit OUT FALSE bitslice-test.1.out-01
|
||||
bitslice_test bit OUT FALSE bitslice-test.1.out-02
|
||||
bitslice_test s32 OUT 0 bitslice-test.1.time
|
||||
bitslice_test u32 IN 0 bitslice-test.2.in
|
||||
bitslice_test bit OUT FALSE bitslice-test.2.out-00
|
||||
bitslice_test bit OUT FALSE bitslice-test.2.out-01
|
||||
bitslice_test s32 OUT 0 bitslice-test.2.time
|
||||
bitslice_test u32 IN 0 bitslice-test.3.in
|
||||
bitslice_test bit OUT FALSE bitslice-test.3.out-00
|
||||
bitslice_test bit OUT FALSE bitslice-test.3.out-01
|
||||
bitslice_test bit OUT FALSE bitslice-test.3.out-02
|
||||
bitslice_test s32 OUT 0 bitslice-test.3.time
|
||||
lincurve_test float IN 0 lincurve-test.0.in
|
||||
lincurve_test float OUT 0 lincurve-test.0.out
|
||||
lincurve_test float I/O 0 lincurve-test.0.out-io
|
||||
lincurve_test s32 OUT 0 lincurve-test.0.time
|
||||
lincurve_test float IN 0 lincurve-test.1.in
|
||||
lincurve_test float OUT 0 lincurve-test.1.out
|
||||
lincurve_test float I/O 0 lincurve-test.1.out-io
|
||||
lincurve_test s32 OUT 0 lincurve-test.1.time
|
||||
lincurve_test float IN 0 lincurve-test.2.in
|
||||
lincurve_test float OUT 0 lincurve-test.2.out
|
||||
lincurve_test float I/O 0 lincurve-test.2.out-io
|
||||
lincurve_test s32 OUT 0 lincurve-test.2.time
|
||||
lincurve_test float IN 0 lincurve-test.3.in
|
||||
lincurve_test float OUT 0 lincurve-test.3.out
|
||||
lincurve_test float I/O 0 lincurve-test.3.out-io
|
||||
lincurve_test s32 OUT 0 lincurve-test.3.time
|
||||
logic_test bit OUT FALSE logic-test.0.and
|
||||
logic_test bit IN FALSE logic-test.0.in-00
|
||||
logic_test bit IN FALSE logic-test.0.in-01
|
||||
logic_test s32 OUT 0 logic-test.0.time
|
||||
logic_test bit IN FALSE logic-test.1.in-00
|
||||
logic_test bit IN FALSE logic-test.1.in-01
|
||||
logic_test bit IN FALSE logic-test.1.in-02
|
||||
logic_test bit IN FALSE logic-test.1.in-03
|
||||
logic_test bit OUT FALSE logic-test.1.or
|
||||
logic_test s32 OUT 0 logic-test.1.time
|
||||
logic_test bit OUT FALSE logic-test.2.and
|
||||
logic_test bit IN FALSE logic-test.2.in-00
|
||||
logic_test bit IN FALSE logic-test.2.in-01
|
||||
logic_test s32 OUT 0 logic-test.2.time
|
||||
logic_test bit IN FALSE logic-test.3.in-00
|
||||
logic_test bit IN FALSE logic-test.3.in-01
|
||||
logic_test bit IN FALSE logic-test.3.in-02
|
||||
logic_test bit IN FALSE logic-test.3.in-03
|
||||
logic_test bit OUT FALSE logic-test.3.or
|
||||
logic_test s32 OUT 0 logic-test.3.time
|
||||
|
||||
bitslice_test s32 RW 0 bitslice-test.0.tmax
|
||||
bitslice_test bit RO FALSE bitslice-test.0.tmax-increased
|
||||
bitslice_test s32 RW 0 bitslice-test.1.tmax
|
||||
bitslice_test bit RO FALSE bitslice-test.1.tmax-increased
|
||||
bitslice_test s32 RW 0 bitslice-test.2.tmax
|
||||
bitslice_test bit RO FALSE bitslice-test.2.tmax-increased
|
||||
bitslice_test s32 RW 0 bitslice-test.3.tmax
|
||||
bitslice_test bit RO FALSE bitslice-test.3.tmax-increased
|
||||
lincurve_test s32 RW 0 lincurve-test.0.tmax
|
||||
lincurve_test bit RO FALSE lincurve-test.0.tmax-increased
|
||||
lincurve_test float RW 0 lincurve-test.0.x-val-00
|
||||
lincurve_test float RW 0 lincurve-test.0.x-val-01
|
||||
lincurve_test float RW 0 lincurve-test.0.y-val-00
|
||||
lincurve_test float RW 0 lincurve-test.0.y-val-01
|
||||
lincurve_test s32 RW 0 lincurve-test.1.tmax
|
||||
lincurve_test bit RO FALSE lincurve-test.1.tmax-increased
|
||||
lincurve_test float RW 0 lincurve-test.1.x-val-00
|
||||
lincurve_test float RW 0 lincurve-test.1.x-val-01
|
||||
lincurve_test float RW 0 lincurve-test.1.x-val-02
|
||||
lincurve_test float RW 0 lincurve-test.1.y-val-00
|
||||
lincurve_test float RW 0 lincurve-test.1.y-val-01
|
||||
lincurve_test float RW 0 lincurve-test.1.y-val-02
|
||||
lincurve_test s32 RW 0 lincurve-test.2.tmax
|
||||
lincurve_test bit RO FALSE lincurve-test.2.tmax-increased
|
||||
lincurve_test float RW 0 lincurve-test.2.x-val-00
|
||||
lincurve_test float RW 0 lincurve-test.2.x-val-01
|
||||
lincurve_test float RW 0 lincurve-test.2.y-val-00
|
||||
lincurve_test float RW 0 lincurve-test.2.y-val-01
|
||||
lincurve_test s32 RW 0 lincurve-test.3.tmax
|
||||
lincurve_test bit RO FALSE lincurve-test.3.tmax-increased
|
||||
lincurve_test float RW 0 lincurve-test.3.x-val-00
|
||||
lincurve_test float RW 0 lincurve-test.3.x-val-01
|
||||
lincurve_test float RW 0 lincurve-test.3.x-val-02
|
||||
lincurve_test float RW 0 lincurve-test.3.y-val-00
|
||||
lincurve_test float RW 0 lincurve-test.3.y-val-01
|
||||
lincurve_test float RW 0 lincurve-test.3.y-val-02
|
||||
logic_test s32 RW 0 logic-test.0.tmax
|
||||
logic_test bit RO FALSE logic-test.0.tmax-increased
|
||||
logic_test s32 RW 0 logic-test.1.tmax
|
||||
logic_test bit RO FALSE logic-test.1.tmax-increased
|
||||
logic_test s32 RW 0 logic-test.2.tmax
|
||||
logic_test bit RO FALSE logic-test.2.tmax-increased
|
||||
logic_test s32 RW 0 logic-test.3.tmax
|
||||
logic_test bit RO FALSE logic-test.3.tmax-increased
|
||||
|
||||
10
tests/halcompile/personalities_mod/4count_2pers.hal
Normal file
10
tests/halcompile/personalities_mod/4count_2pers.hal
Normal file
@@ -0,0 +1,10 @@
|
||||
# personalities are used modulo the number of
|
||||
# halcompiled personalities
|
||||
|
||||
# 4 count, 2 personalities
|
||||
loadrt logic_test count=4 personality=0x102,0x204
|
||||
loadrt lincurve_test count=4 personality=2,3
|
||||
loadrt bitslice_test count=4 personality=2,3
|
||||
|
||||
show pin
|
||||
show parameter
|
||||
100
tests/halcompile/personalities_mod/4names_2pers.expected
Normal file
100
tests/halcompile/personalities_mod/4names_2pers.expected
Normal file
@@ -0,0 +1,100 @@
|
||||
bitslice_test u32 IN 0 bs1.in
|
||||
bitslice_test bit OUT FALSE bs1.out-00
|
||||
bitslice_test bit OUT FALSE bs1.out-01
|
||||
bitslice_test s32 OUT 0 bs1.time
|
||||
bitslice_test u32 IN 0 bs2.in
|
||||
bitslice_test bit OUT FALSE bs2.out-00
|
||||
bitslice_test bit OUT FALSE bs2.out-01
|
||||
bitslice_test bit OUT FALSE bs2.out-02
|
||||
bitslice_test s32 OUT 0 bs2.time
|
||||
bitslice_test u32 IN 0 bs3.in
|
||||
bitslice_test bit OUT FALSE bs3.out-00
|
||||
bitslice_test bit OUT FALSE bs3.out-01
|
||||
bitslice_test s32 OUT 0 bs3.time
|
||||
bitslice_test u32 IN 0 bs4.in
|
||||
bitslice_test bit OUT FALSE bs4.out-00
|
||||
bitslice_test bit OUT FALSE bs4.out-01
|
||||
bitslice_test bit OUT FALSE bs4.out-02
|
||||
bitslice_test s32 OUT 0 bs4.time
|
||||
lincurve_test float IN 0 lc1.in
|
||||
lincurve_test float OUT 0 lc1.out
|
||||
lincurve_test float I/O 0 lc1.out-io
|
||||
lincurve_test s32 OUT 0 lc1.time
|
||||
lincurve_test float IN 0 lc2.in
|
||||
lincurve_test float OUT 0 lc2.out
|
||||
lincurve_test float I/O 0 lc2.out-io
|
||||
lincurve_test s32 OUT 0 lc2.time
|
||||
lincurve_test float IN 0 lc3.in
|
||||
lincurve_test float OUT 0 lc3.out
|
||||
lincurve_test float I/O 0 lc3.out-io
|
||||
lincurve_test s32 OUT 0 lc3.time
|
||||
lincurve_test float IN 0 lc4.in
|
||||
lincurve_test float OUT 0 lc4.out
|
||||
lincurve_test float I/O 0 lc4.out-io
|
||||
lincurve_test s32 OUT 0 lc4.time
|
||||
logic_test bit OUT FALSE lg1.and
|
||||
logic_test bit IN FALSE lg1.in-00
|
||||
logic_test bit IN FALSE lg1.in-01
|
||||
logic_test s32 OUT 0 lg1.time
|
||||
logic_test bit IN FALSE lg2.in-00
|
||||
logic_test bit IN FALSE lg2.in-01
|
||||
logic_test bit IN FALSE lg2.in-02
|
||||
logic_test bit IN FALSE lg2.in-03
|
||||
logic_test bit OUT FALSE lg2.or
|
||||
logic_test s32 OUT 0 lg2.time
|
||||
logic_test bit OUT FALSE lg3.and
|
||||
logic_test bit IN FALSE lg3.in-00
|
||||
logic_test bit IN FALSE lg3.in-01
|
||||
logic_test s32 OUT 0 lg3.time
|
||||
logic_test bit IN FALSE lg4.in-00
|
||||
logic_test bit IN FALSE lg4.in-01
|
||||
logic_test bit IN FALSE lg4.in-02
|
||||
logic_test bit IN FALSE lg4.in-03
|
||||
logic_test bit OUT FALSE lg4.or
|
||||
logic_test s32 OUT 0 lg4.time
|
||||
|
||||
bitslice_test s32 RW 0 bs1.tmax
|
||||
bitslice_test bit RO FALSE bs1.tmax-increased
|
||||
bitslice_test s32 RW 0 bs2.tmax
|
||||
bitslice_test bit RO FALSE bs2.tmax-increased
|
||||
bitslice_test s32 RW 0 bs3.tmax
|
||||
bitslice_test bit RO FALSE bs3.tmax-increased
|
||||
bitslice_test s32 RW 0 bs4.tmax
|
||||
bitslice_test bit RO FALSE bs4.tmax-increased
|
||||
lincurve_test s32 RW 0 lc1.tmax
|
||||
lincurve_test bit RO FALSE lc1.tmax-increased
|
||||
lincurve_test float RW 0 lc1.x-val-00
|
||||
lincurve_test float RW 0 lc1.x-val-01
|
||||
lincurve_test float RW 0 lc1.y-val-00
|
||||
lincurve_test float RW 0 lc1.y-val-01
|
||||
lincurve_test s32 RW 0 lc2.tmax
|
||||
lincurve_test bit RO FALSE lc2.tmax-increased
|
||||
lincurve_test float RW 0 lc2.x-val-00
|
||||
lincurve_test float RW 0 lc2.x-val-01
|
||||
lincurve_test float RW 0 lc2.x-val-02
|
||||
lincurve_test float RW 0 lc2.y-val-00
|
||||
lincurve_test float RW 0 lc2.y-val-01
|
||||
lincurve_test float RW 0 lc2.y-val-02
|
||||
lincurve_test s32 RW 0 lc3.tmax
|
||||
lincurve_test bit RO FALSE lc3.tmax-increased
|
||||
lincurve_test float RW 0 lc3.x-val-00
|
||||
lincurve_test float RW 0 lc3.x-val-01
|
||||
lincurve_test float RW 0 lc3.y-val-00
|
||||
lincurve_test float RW 0 lc3.y-val-01
|
||||
lincurve_test s32 RW 0 lc4.tmax
|
||||
lincurve_test bit RO FALSE lc4.tmax-increased
|
||||
lincurve_test float RW 0 lc4.x-val-00
|
||||
lincurve_test float RW 0 lc4.x-val-01
|
||||
lincurve_test float RW 0 lc4.x-val-02
|
||||
lincurve_test float RW 0 lc4.y-val-00
|
||||
lincurve_test float RW 0 lc4.y-val-01
|
||||
lincurve_test float RW 0 lc4.y-val-02
|
||||
logic_test s32 RW 0 lg1.tmax
|
||||
logic_test bit RO FALSE lg1.tmax-increased
|
||||
logic_test s32 RW 0 lg2.tmax
|
||||
logic_test bit RO FALSE lg2.tmax-increased
|
||||
logic_test s32 RW 0 lg3.tmax
|
||||
logic_test bit RO FALSE lg3.tmax-increased
|
||||
logic_test s32 RW 0 lg4.tmax
|
||||
logic_test bit RO FALSE lg4.tmax-increased
|
||||
|
||||
10
tests/halcompile/personalities_mod/4names_2pers.hal
Normal file
10
tests/halcompile/personalities_mod/4names_2pers.hal
Normal file
@@ -0,0 +1,10 @@
|
||||
# personalities are used modulo the number of
|
||||
# halcompiled personalities
|
||||
|
||||
# 4 names, 2 personalities
|
||||
loadrt logic_test names=lg1,lg2,lg3,lg4 personality=0x102,0x204
|
||||
loadrt lincurve_test names=lc1,lc2,lc3,lc4 personality=2,3
|
||||
loadrt bitslice_test names=bs1,bs2,bs3,bs4 personality=2,3
|
||||
|
||||
show pin
|
||||
show parameter
|
||||
8
tests/halcompile/personalities_mod/README
Normal file
8
tests/halcompile/personalities_mod/README
Normal file
@@ -0,0 +1,8 @@
|
||||
Verify that personalities are used modulo 2 when
|
||||
using halcompile --personalities=2
|
||||
|
||||
Test in-tree components:
|
||||
lincurve
|
||||
logic
|
||||
bitslice
|
||||
|
||||
10
tests/halcompile/personalities_mod/checkresult
Executable file
10
tests/halcompile/personalities_mod/checkresult
Executable file
@@ -0,0 +1,10 @@
|
||||
#!/bin/bash
|
||||
cd "$(dirname "$1")" || exit
|
||||
RETVAL=0
|
||||
for EXPECTED in *.expected ; do
|
||||
BASE=$(basename "$EXPECTED" .expected)
|
||||
RESULT=$BASE.result
|
||||
diff -u "$EXPECTED" "$RESULT" || RETVAL=1
|
||||
done
|
||||
exit $RETVAL
|
||||
|
||||
1
tests/halcompile/personalities_mod/control
Normal file
1
tests/halcompile/personalities_mod/control
Normal file
@@ -0,0 +1 @@
|
||||
Restrictions: sudo
|
||||
35
tests/halcompile/personalities_mod/test.sh
Executable file
35
tests/halcompile/personalities_mod/test.sh
Executable file
@@ -0,0 +1,35 @@
|
||||
#!/bin/bash
|
||||
set -e
|
||||
|
||||
${SUDO} halcompile --personalities=2 --install lincurve_test.comp
|
||||
${SUDO} halcompile --personalities=2 --install logic_test.comp
|
||||
${SUDO} halcompile --personalities=2 --install bitslice_test.comp
|
||||
|
||||
# This tells us the expected filename extension ${MODULE_EXT} of realtime
|
||||
# modules.
|
||||
if [[ -f "${EMC2_HOME}/scripts/rtapi.conf" ]]; then
|
||||
source "${EMC2_HOME}/scripts/rtapi.conf"
|
||||
else
|
||||
source "/etc/linuxcnc/rtapi.conf"
|
||||
fi
|
||||
|
||||
for INSTALLED_FILE in "${RTLIB_DIR}"/{lincurve_test,logic_test,bitslice_test}"${MODULE_EXT}"; do
|
||||
if [[ ! -f "${INSTALLED_FILE}" ]]; then
|
||||
echo "'halcompile --install' did not install '${INSTALLED_FILE}'"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
MODE=$(stat --printf '%#03a\n' "${INSTALLED_FILE}")
|
||||
if [[ $((MODE & 0111)) != '0' ]]; then
|
||||
echo "installed file '${INSTALLED_FILE}' has incorrect permissions"
|
||||
echo "expected no execute bits, got ${MODE}"
|
||||
exit 1
|
||||
fi
|
||||
done
|
||||
|
||||
for HAL in *.hal; do
|
||||
echo "testing '$HAL'"
|
||||
BASE=$(basename "$HAL" .hal)
|
||||
# use -s to avoid different user assignments in show output
|
||||
halrun -s "$HAL" >| "$BASE".result
|
||||
done
|
||||
Reference in New Issue
Block a user