a8b15f82bbcff0d7953bae0da7df49363939f85a lrnassar Wed Aug 5 16:59:54 2026 -0700 Add tests for every maf sequence-name form, and describe the splitting in the usage messages. refs #37928 The existing testDot and testPipe inputs are identical copies of each other and both use pipe-form query names, so the dot path was never exercised in either tool. That is how the break in ae63ce5 shipped even though a test suite existed, and why the suite could not have caught the mafToBigMafSummary divergence either. New inputs in both tests directories cover an ordinary db.chrom, a species name with a dotted chrom, both GenArk accession forms, a GenArk accession with no chrom after the version, a pipe with a dotted chrom, a name with no separator, a reference assembly whose own name contains a dot, and a name where the reference db is a strict prefix of another assembly. Every rule in the splitter is now load-bearing: breaking any one of them fails a target. Also adds mafToBigMafSummary to TEST_DIRS in hg/utils, since nothing above the directory was running its suite, and adds a short note to both usage messages describing how a sequence name is split into assembly and sequence. diff --git src/hg/utils/makefile src/hg/utils/makefile index 64c6e86f8fd..8c1951dac1f 100644 --- src/hg/utils/makefile +++ src/hg/utils/makefile @@ -1,162 +1,163 @@ # Build all directories in utils # test comment # $Id: makefile,v 1.21 2010/06/04 00:12:42 larrym Exp $ kentSrc = ../.. include ${kentSrc}/inc/localEnvironment.mk include ${kentSrc}/inc/common.mk # to check for Mac OSX Darwin specifics: UNAME_S := $(shell uname -s) # can not build this on Mac OSX - has functions not supported ifeq ($(UNAME_S),Darwin) buildRefresh= else buildRefresh=refreshNamedSessionCustomTracks endif # List of directories to build for userApps UTILS_APPLIST = \ bedExtendRanges \ bedToPsl \ bedWeedOverlapping \ bedMergeAdjacent \ bedPartition \ bigChainBreaks \ bigChainToChain \ bigGenePredToGenePred \ bigMafToMaf \ bigPslToPsl \ binFromRange \ chainToBigChain \ chromGraphFromBin \ chromGraphToBin \ crTreeIndexBed \ crTreeSearchBed \ faToVcf \ gapToLift \ genePredFilter \ genePredToBigGenePred \ genePredToProt \ gencodeVersionForGenes \ gff3ToGenePred \ gff3ToPsl \ gtfToGenePred \ hicInfo \ hgvsToVcf \ hubCheck \ hubClone \ hubPublicCheck \ mafToBigMaf \ mafToBigMafSummary \ makeTableList \ oligoMatch \ overlapSelect \ positionalTblCheck \ pslLiftSubrangeBlat \ pslToBigPsl \ raSqlQuery \ rmskAlignToPsl \ tdbQuery \ transMapPslToGenePred \ twoBitMask \ vcfToBed \ fixTrackDb USER_APP_SCRIPTS = \ vai.pl SCRIPT_FILES = \ archiveTracks.sh \ dbNsfpToBed.pl \ dumpDb.pl \ mergeOverlapBed4.pl \ mergeSortedBed3Plus.pl \ mysqlRowSizes.pl \ ${USER_APP_SCRIPTS} APP_SCRIPTS = ${SCRIPT_FILES} # List of directories to build of interest only at UCSC DIRS = ${buildRefresh} \ automation \ rts \ blatServersCheck \ buildReleaseLog \ checkUrlsInTable \ geoMirrorNode \ hubCrawl \ makeTrackIndex \ mysqlSecurityCheck \ phyloRenameAndPrune \ pslFixCdsJoinGap \ pslMismatchGapToBed \ pslUniq \ refSeqGet \ safePush \ scaffoldFaToAgp \ toDev64 \ vcfRenameAndPrune \ vcfToHgvs \ wigBedToStep TEST_DIRS = \ bedMergeAdjacent \ bedPartition \ genePredFilter \ genePredToProt \ gff3ToGenePred \ gff3ToPsl \ gtfToGenePred \ hgvsToVcf \ hubCheck \ + mafToBigMafSummary \ overlapSelect \ pslToBigPsl \ refSeqGet \ transMapPslToGenePred \ vcfToHgvs APPS = $(DIRS) $(UTILS_APPLIST) all:: utils utils: $(APPS:%=%.utils) $(APP_SCRIPTS:%=%.appScript) # tolerate missing directories, as some were removed in kent-core %.utils: if test -d $* ; then cd $* && echo $* && $(MAKE) ; fi %.appScript: chmod +x $* rm -f ${DESTDIR}${SCRIPTS}/$* cp -p $* ${DESTDIR}${SCRIPTS}/$* userApps: $(UTILS_APPLIST:%=%.userApp) $(USER_APP_SCRIPTS:%=%.userAppScript) %.userApp: if test -d $* ; then cd $* && echo $* && $(MAKE) ; fi %.userAppScript: chmod +x $* rm -f ${DESTDIR}${BINDIR}/$* cp -p $* ${DESTDIR}${BINDIR}/$* scripts: $(SCRIPT_FILES:%=%.scripts) %.scripts: chmod +x $* rm -f ${SCRIPTS}/$* cp -p $* ${SCRIPTS}/$* alpha: scripts all test:: ${TEST_DIRS:%=%.test} %.test: (cd $* && ${MAKE} test) clean:: $(APPS:%=%.clean) - find . -name '*.o' -exec rm {} \; %.clean: (if test -d $* ; then cd $* && echo $* && $(MAKE) clean; fi) compile:: $(APPS:%=%.compile) - find . -name '*.o' -exec rm {} \; %.compile: (cd $* && ${MAKE} compile)