12d0bf30d4a9fbe7aee60fdf9e7f8827116ba400
markd
  Wed Jan 27 17:49:12 2021 -0800
allow overlap select to ignore non-standard columns in BED as well as genePred and PSL, as often come with bigBed

diff --git src/hg/utils/overlapSelect/tests/makefile src/hg/utils/overlapSelect/tests/makefile
index e9e26f9..6dc4feb 100644
--- src/hg/utils/overlapSelect/tests/makefile
+++ src/hg/utils/overlapSelect/tests/makefile
@@ -22,31 +22,32 @@
 	statsOutputBothTests \
 	thresholdTests \
 	similarityTests \
 	overlapBasesTests \
 	aggregateTests \
 	protTests \
 	idMatchTests \
 	rangeTests \
 	cds_id_out_gp \
 	wideTest \
 	name2EmptyTest \
 	orthoStrandTest \
 	xenoPslStatsTest \
 	xenoPslStatsStrandTest \
 	xenoPslGpStatsStrandTest \
-	xenoGpPslStatsStrandTest
+	xenoGpPslStatsStrandTest \
+	extraColumnTests
 
 ###
 # selecting PSLs
 ###
 pslSelectTests: psl_over_NM_015110gp psl_nonover_NM_015110gp \
 		psl_over_NM_015110bed psl_nonover_NM_015110bed psl_over_NM_001206gp \
 		psl_nonover_NM_001206gp psl_over_NM_001206bed psl_nonover_NM_001206bed \
 		psl_over_NM_015110bed_split psl_nonover_NM_015110bed_split \
 		psl_over_psl_stats pslq_over_psl_stats  psl_over_pslq_stats \
 		pslq_over_pslq_stats
 
 # select psls overlaping NM_015110 with gp
 psl_over_NM_015110gp: mkout
 	${overlapSelect} -dropped=output/$@.drop.psl input/NM_015110.gp input/mrna.psl output/$@.psl
 	${DIFF} expected/$@.psl output/$@.psl
@@ -778,20 +779,51 @@
 	${overlapSelect} -statsOutputAll -excludeSelf input/xenoEst1.psl input/xenoEst1.psl output/$@.stats
 	${DIFF} expected/$@.stats output/$@.stats
 
 xenoPslStatsStrandTest: mkout
 	${overlapSelect} -strand -statsOutputAll -excludeSelf input/xenoEst1.psl input/xenoEst1.psl output/$@.stats
 	${DIFF} expected/$@.stats output/$@.stats
 
 xenoPslGpStatsStrandTest: mkout
 	${overlapSelect} -strand -statsOutputAll -excludeSelf input/xenoEst1.psl input/xenoEst1.gp output/$@.stats
 	${DIFF} expected/$@.stats output/$@.stats
 
 xenoGpPslStatsStrandTest: mkout
 	${overlapSelect} -strand -statsOutputAll -excludeSelf input/xenoEst1.gp input/xenoEst1.psl output/$@.stats
 	${DIFF} expected/$@.stats output/$@.stats
 
+
+# test for passing through extra columns
+extraColumnTests: extraPslTest extraBed3Test extraBed3SelectTest extraBed6Test extraBed6SelectTest \
+	extraBigPslTest extraBigPslSelectTest extraGenePredTest
+
+extraPslTest: mkout
+	${overlapSelect} -strand -excludeSelf -inFmt=psl input/transMap.psl input/transMap.psl+meta output/$@.psl+meta
+	${DIFF} expected/$@.psl+meta output/$@.psl+meta
+extraBed3Test: mkout
+	${overlapSelect} -excludeSelf -selectFmt=bed3+ -inFmt=bed3+ input/transMap.bed4+meta input/transMap.bed4+meta output/$@.bed4+meta
+	${DIFF} expected/$@.bed4+meta output/$@.bed4+meta
+extraBed3SelectTest: mkout
+	${overlapSelect} -excludeSelf -selectFmt=bed3+ -inFmt=psl input/transMap.bed4+meta input/transMap.psl output/$@.psl
+	${DIFF} expected/$@.psl output/$@.psl
+extraBed6Test: mkout
+	${overlapSelect} -strand -excludeSelf -selectFmt=bed6+ -inFmt=bed6+ input/transMap.bed6+meta input/transMap.bed6+meta output/$@.bed6+meta
+	${DIFF} expected/$@.bed6+meta output/$@.bed6+meta
+extraBed6SelectTest: mkout
+	${overlapSelect} -strand -excludeSelf -selectFmt=bed6+ -inFmt=psl input/transMap.bed6+meta input/transMap.psl output/$@.psl
+	${DIFF} expected/$@.psl output/$@.psl
+extraBigPslTest: mkout
+	${overlapSelect} -strand -excludeSelf input/transMap.psl input/transMap.bigPsl.bed output/$@.bigPsl.bed
+	${DIFF} expected/$@.bigPsl.bed output/$@.bigPsl.bed
+extraBigPslSelectTest: mkout
+	${overlapSelect} -strand -excludeSelf input/transMap.bigPsl.bed input/transMap.bigPsl.bed output/$@.bigPsl.bed
+	${DIFF} expected/$@.bigPsl.bed output/$@.bigPsl.bed
+extraGenePredTest: mkout
+	${overlapSelect} -strand -excludeSelf -inFmt=genePred input/transMap.psl input/transMap.gp+meta output/$@.gp+meta
+	${DIFF} expected/$@.gp+meta output/$@.gp+meta
+
+
 mkout:
 	@${MKDIR} output
 
 clean:
 	rm -rf output