/usr/share/bedtools/test/slop/test-slop.sh is in bedtools-test 2.25.0-1.
This file is owned by root:root, with mode 0o755.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 | #!/bin/bash
BT=${BT-../../bin/bedtools}
check()
{
if diff $1 $2; then
echo ok
return 1
else
echo fail
return 0
fi
}
# cat a.bed
# chr1 100 200 a1 1 +
# chr1 100 200 a2 2 -
###########################################################
# test matching flanks via -b
###########################################################
echo " slop.t1...\c"
echo \
"chr1 95 205 a1 1 +
chr1 95 205 a2 2 -" > exp
$BT slop -i a.bed -b 5 -g tiny.genome > obs
check obs exp
rm obs exp
###########################################################
# test matching flanks via -l and -r
###########################################################
echo " slop.t2...\c"
echo \
"chr1 95 205 a1 1 +
chr1 95 205 a2 2 -" > exp > exp
$BT slop -i a.bed -l 5 -r 5 -g tiny.genome > obs
check obs exp
rm obs exp
###########################################################
# test just a -l flank (-r == 0)
###########################################################
echo " slop.t3...\c"
echo \
"chr1 95 200 a1 1 +
chr1 95 200 a2 2 -" > exp
$BT slop -i a.bed -l 5 -r 0 -g tiny.genome > obs
check obs exp
rm obs exp
###########################################################
# test just a -r flank (-l == 0)
###########################################################
echo " slop.t4...\c"
echo \
"chr1 100 205 a1 1 +
chr1 100 205 a2 2 -" > exp
$BT slop -i a.bed -l 0 -r 5 -g tiny.genome > obs
check obs exp
rm obs exp
###########################################################
# test just a -l flank (-r == 0) with -s
###########################################################
echo " slop.t5...\c"
echo \
"chr1 95 200 a1 1 +
chr1 100 205 a2 2 -" > exp
$BT slop -i a.bed -l 5 -r 0 -s -g tiny.genome > obs
check obs exp
rm obs exp
###########################################################
# test just a -r flank (-l == 0) with -s
###########################################################
echo " slop.t6...\c"
echo \
"chr1 100 205 a1 1 +
chr1 95 200 a2 2 -" > exp
$BT slop -i a.bed -l 0 -r 5 -s -g tiny.genome > obs
check obs exp
rm obs exp
###########################################################
# test -b with -s
###########################################################
echo " slop.t7...\c"
echo \
"chr1 95 205 a1 1 +
chr1 95 205 a2 2 -" > exp
$BT slop -i a.bed -b 5 -s -g tiny.genome > obs
check obs exp
rm obs exp
###########################################################
# test going beyond the start of the chrom
###########################################################
echo " slop.t8...\c"
echo \
"chr1 0 400 a1 1 +
chr1 0 400 a2 2 -" > exp
$BT slop -i a.bed -b 200 -g tiny.genome > obs
check obs exp
rm obs exp
###########################################################
# test going beyond the end of the chrom
###########################################################
echo " slop.t9...\c"
echo \
"chr1 100 1000 a1 1 +
chr1 100 1000 a2 2 -" > exp
$BT slop -i a.bed -l 0 -r 1000 -g tiny.genome > obs
check obs exp
rm obs exp
###########################################################
# test going beyond the start and end of the chrom
###########################################################
echo " slop.t10...\c"
echo \
"chr1 0 1000 a1 1 +
chr1 0 1000 a2 2 -" > exp
$BT slop -i a.bed -b 2000 -g tiny.genome > obs
check obs exp
rm obs exp
###########################################################
# test going beyond the start and end of the chrom with -s
###########################################################
echo " slop.t11...\c"
echo \
"chr1 0 1000 a1 1 +
chr1 0 1000 a2 2 -" > exp
$BT slop -i a.bed -b 2000 -s -g tiny.genome > obs
check obs exp
rm obs exp
###########################################################
# test slop factor being larger than a signed int
###########################################################
echo " slop.t12...\c"
echo \
"chr1 0 1000 a1 1 +
chr1 0 1000 a2 2 -" > exp
$BT slop -i a.bed -b 3000000000 -s -g tiny.genome > obs
check obs exp
rm obs exp
###########################################################
# test that old floating-point issues are solved
###########################################################
echo " slop.t13...\c"
echo \
"chr1 16778071 16778771" > exp
echo -e "chr1\t16778271\t16778571"| $BT slop -l 200 -r 200 -i - -g ../../genomes/human.hg19.genome > obs
check obs exp
rm obs exp
###########################################################
# test that old floating-point issues are solved
###########################################################
echo " slop.t14...\c"
echo \
"chr1 16778072 16778772" > exp
echo -e "chr1\t16778272\t16778572"| $BT slop -l 200 -r 200 -i - -g ../../genomes/human.hg19.genome > obs
check obs exp
rm obs exp
echo " slop.t15...\c"
echo \
"chr1 159 171
chr1 90 210" > exp
echo -e "chr1\t160\t170\nchr1\t100\t200"| $BT slop -b 0.1 -pct -i - -g ../../genomes/human.hg19.genome > obs
check obs exp
rm obs exp
|