dependencies:
- build_tools
script:
- - git diff --name-only origin/master..HEAD -- "*.nit" "*.res" "README.*" | grep -v "^tests/" > list0.txt || true
+ - git diff --name-only origin/master..HEAD -- "*.nit" "*.res" "README.*" | grep -v "^tests/\|contrib/" > list0.txt || true
- xargs nitls -pP < list0.txt > list.txt
- test -s list.txt || exit 0
- xargs nitunit < list.txt
if not goods.has(s) then bads.add(s)
end
- # Remove their transitions
+ # Remove their transitions and tags
for s in bads do
for t in s.ins.to_a do t.delete
for t in s.outs.to_a do t.delete
+ if tags.has_key(s) then
+ for t in tags[s] do retrotags[t].remove(s)
+ tags.keys.remove(s)
+ end
end
# Keep only the good stuff
echo "[***no sav***] cp 'out/$r' sav/"
test $verbose = true && { cat "out/$r" ; echo ; }
echo >>"$tap" "not ok $tapcount - $name # TODO no sav"
+ return 1
else
echo "[0K]"
echo >>"$tap" "ok $tapcount - $name"
+ return 0
fi
elif diff "sav/$r" "out/$r" >/dev/null
then
echo "[OK]"
echo >>"$tap" "ok $tapcount - $name"
+ return 0
else
echo "[******failed******] diff -u {sav,out}/$r"
test $verbose = true && { diff -u "sav/$r" "out/$r" ; echo ; }
echo >>"$tap" "not ok $tapcount - $name"
+ return 1
fi
}
+err=0
for f in "$@"
do
for a in "$f" `./alterner.pl $f`
grep -i "error" "out/$bn.nitcc.log" > "out/$res"
name="$a"
- differ $res
+ differ $res || err=1
if test \! -z $cla
then
cp "$langname.ast.out" "out/$resi"
name="$a $i"
- differ "$resi"
+ differ "$resi" || err=1
done
fi
done
echo >>"$tap" "1..$tapcount"
#prove --formatter=TAP::Formatter::JUnit /bin/cat :: tap.output > tap.xml
+exit "$err"