| ... | ... |
@@ -13,8 +13,8 @@ build_asma() {
|
| 13 | 13 |
#01 .System/halt DEO |
| 14 | 14 |
BRK |
| 15 | 15 |
|
| 16 |
- &source-file "in.tal 00 |
|
| 17 |
- &dest-file "out.rom 00 |
|
| 16 |
+ &source-file "asma-test/in.tal 00 |
|
| 17 |
+ &dest-file "asma-test/out.rom 00 |
|
| 18 | 18 |
|
| 19 | 19 |
EOD |
| 20 | 20 |
sed -ne '/%asma-IF-ERROR/,$p' ../projects/software/asma.tal |
| ... | ... |
@@ -22,22 +22,21 @@ EOD |
| 22 | 22 |
|
| 23 | 23 |
expect_failure() {
|
| 24 | 24 |
cat > 'in.tal' |
| 25 |
- ../bin/uxncli asma.rom > asma.log 2>/dev/null |
|
| 25 |
+ ( cd .. && bin/uxncli asma-test/asma.rom ) > asma.log 2>/dev/null |
|
| 26 | 26 |
if ! grep -qF "${1}" asma.log; then
|
| 27 | 27 |
echo "error: asma didn't report error ${1} in faulty code"
|
| 28 |
- tail asma.log |
|
| 29 |
- exit 1 |
|
| 28 |
+ xxd asma.log |
|
| 30 | 29 |
fi |
| 31 | 30 |
} |
| 32 | 31 |
|
| 33 | 32 |
echo 'Assembling asma with uxnasm' |
| 34 | 33 |
build_asma > asma.tal |
| 35 |
-../bin/uxnasm asma.tal asma.rom > uxnasm.log |
|
| 36 |
-for F in $(find ../projects -path ../projects/library -prune -false -or -type f -name '*.tal' -not -name 'blank.tal'); do |
|
| 34 |
+( cd .. && bin/uxnasm asma-test/asma.tal asma-test/asma.rom ) > uxnasm.log |
|
| 35 |
+for F in $(find ../projects -path ../projects/library -prune -false -or -type f -name '*.tal' -not -name 'blank.tal' | sort); do |
|
| 37 | 36 |
echo "Comparing assembly of ${F}"
|
| 38 | 37 |
BN="$(basename "${F%.tal}")"
|
| 39 | 38 |
|
| 40 |
- if ! ../bin/uxnasm "${F}" "uxnasm-${BN}.rom" > uxnasm.log; then
|
|
| 39 |
+ if ! ( cd .. && bin/uxnasm "asma-test/${F}" "asma-test/uxnasm-${BN}.rom" ) > uxnasm.log; then
|
|
| 41 | 40 |
echo "error: uxnasm failed to assemble ${F}"
|
| 42 | 41 |
tail uxnasm.log |
| 43 | 42 |
exit 1 |
| ... | ... |
@@ -46,7 +45,7 @@ for F in $(find ../projects -path ../projects/library -prune -false -or -type f |
| 46 | 45 |
|
| 47 | 46 |
cp "${F}" 'in.tal'
|
| 48 | 47 |
rm -f 'out.rom' |
| 49 |
- ../bin/uxncli asma.rom > asma.log |
|
| 48 |
+ ( cd .. && bin/uxncli asma-test/asma.rom ) > asma.log |
|
| 50 | 49 |
if [ ! -f 'out.rom' ]; then |
| 51 | 50 |
echo "error: asma failed to assemble ${F}, while uxnasm succeeded"
|
| 52 | 51 |
tail asma.log |