Path: blob/main/biology/barrnap/files/patch-test_test.sh
46591 views
--- test/test.sh.orig 2026-04-13 08:23:19 UTC1+++ test/test.sh2@@ -4,8 +4,8 @@ setup () {3bats_require_minimum_version 1.5.04dir=$(dirname "$BATS_TEST_FILENAME")5cd "$dir"6- cpus=$(nproc)7- exe="$dir/../bin/barrnap --threads $cpus"8+ cpus=${CPUS:-$(sysctl -n hw.ncpu)}9+ exe="$dir/../bin/barrnap --threads $cpus --dbdir $dir/../db"10dbs="bac arc fun"11tab=$'\t'12TRNA="${tab}tRNA${tab}"13@@ -14,6 +14,18 @@ setup () {14OPERON="${tab}operon${tab}"15SEQREG="##sequence-region"16}17+18+require_cmds() {19+ local cmd20+ for cmd in "$@"; do21+ command -v "$cmd" >/dev/null || skip "missing required command: $cmd"22+ done23+}24+25+require_db_models() {26+ find "$dir/../db" -name '*.cm' -print -quit | grep -q . || skip "missing bundled CM models"27+}28+29@test "Script syntax check" {30run -0 perl -c "$dir/../bin/barrnap"31}32@@ -47,33 +59,42 @@ setup () {33[[ "$output" =~ "--kingdom" ]]34}35@test "Null input" {36+ require_cmds cmsearch seqkit37run ! $exe null.fa38[[ "$output" =~ "ERROR" ]]39}40@test "Empry input" {41+ require_cmds cmsearch seqkit42run ! $exe empty.fa43[[ "$output" =~ "ERROR" ]]44}45@test "Weird poly-G sequence" {46+ require_cmds cmsearch seqkit47+ require_db_models48run -0 $exe --fast polyg.fa49[[ "$output" =~ "Found 0 features" ]]50}51@test "Input with no hits" {52+ require_cmds cmsearch seqkit53+ require_db_models54run -0 $exe nohits.fa55[[ "$output" =~ "Found 0 features" ]]56}57@test "Fast mode" {58+ require_cmds cmsearch seqkit59+ require_db_models60run -0 $exe -q --fast small.fa61[[ "$output" =~ $RRNA ]]62}63@test "Mini bacterial genome" {64+ require_cmds aragorn bedtools cmsearch cmscan diamond pyrodigal seqkit taxonkit transterm ziggypep65local outseq="${BATS_TMPDIR}/outseq.fa"66run -0 $exe --all --quiet \67--outseq "$outseq" \68--incseqreg --incseq --addids \69small.fa70[[ "$output" =~ $TRNA ]]71- [[ "$output" =~ $RRMA ]]72+ [[ "$output" =~ $RRNA ]]73[[ "$output" =~ $NCRNA ]]74[[ "$output" =~ "ID=5S" ]]75[[ "$output" =~ "ID=16S" ]]76@@ -90,9 +111,11 @@ barrnap_legacy() {77}7879barrnap_legacy() {80+ require_cmds cmsearch seqkit81+ require_db_models82run -0 $exe --quiet \83--kingdom "$1" "$1.fa"84- [[ "$output" =~ $RRMA ]]85+ [[ "$output" =~ $RRNA ]]86[[ ! "$output" =~ $TRNA ]]87[[ ! "$output" =~ $NCRNA ]]88[[ ! "$output" =~ "##FASTA" ]]89@@ -100,6 +123,8 @@ barrnap_legacy() {90[[ ! "$output" =~ "ID=" ]]91}92@test "Bacteria" {93+ require_cmds cmsearch seqkit94+ require_db_models95#type barrnap_legacy96run barrnap_legacy "bac"97#echo "STATUS=$status" >&398@@ -108,10 +133,14 @@ barrnap_legacy() {99#[[ "$FOO" =~ "5S_rRNA" ]]100}101@test "Archaea" {102+ require_cmds cmsearch seqkit103+ require_db_models104run -0 barrnap_legacy "arc"105#[[ "$output" =~ "5S_rRNA" ]]106}107@test "Fungi" {108+ require_cmds cmsearch seqkit109+ require_db_models110run -0 barrnap_legacy "fun"111#[[ "$output" =~ "28S_rRNA" ]]112}113114115