b96a2a4fd4c75db180a03af13a1122db5ce6d512 galt Fri Feb 20 20:18:33 2026 -0800 Since it was present in 4 utils but missing and needed in 3 others, I have added bigWigToWig call in wigToBigWig test, and bigChainToChain to chainToBigChain test, and genePredToBigGenePred to bigGenePredToGenePred. Now all seven utilities properly run their inverse utilities so that they recreate the original input, verifying correctness. Requested in code-review by Mark. refs #28109, #36925 diff --git src/utils/wigToBigWig/tests/makefile src/utils/wigToBigWig/tests/makefile index ca0ca0f35ea..e074a41286c 100644 --- src/utils/wigToBigWig/tests/makefile +++ src/utils/wigToBigWig/tests/makefile @@ -1,104 +1,121 @@ kentSrc = ../../.. A = ${DESTBINDIR}/wigToBigWig +bigWigToWig = ${DESTBINDIR}/bigWigToWig include ../../../inc/common.mk # this can not be run in parallel due to each test removing and reusing output directories .NOTPARALLEL: .NOTPARALLEL: # files names are reused by tests test: test1 test2 test1: outputDir # generate big wigs ${A} input/testFixed.wig input/test.sizes tmp/testFixed.bigWig ${A} input/testVar.wig input/test.sizes tmp/testVar.bigWig ${A} input/testBedGraph.wig input/test.sizes tmp/testBedGraph.bigWig # get unscaled data back out bigWigToBedGraph tmp/testFixed.bigWig output/testFixed.bedGraph bigWigToBedGraph tmp/testVar.bigWig output/testVar.bedGraph bigWigToBedGraph tmp/testBedGraph.bigWig output/testBedGraph.bedGraph # generate summaries on testFixed at lots of resolutions bigWigSummary tmp/testFixed.bigWig chr7 115597761 115598761 1 > output/tf1.sum bigWigSummary tmp/testFixed.bigWig chr7 115597761 115598761 3 > output/tf3.sum bigWigSummary tmp/testFixed.bigWig chr7 115597761 115598761 10 > output/tf10.sum bigWigSummary tmp/testFixed.bigWig chr7 115597761 115598761 30 > output/tf30.sum bigWigSummary tmp/testFixed.bigWig chr7 115597761 115598761 100 > output/tf100.sum bigWigSummary tmp/testFixed.bigWig chr7 115597761 115598761 300 > output/tf300.sum bigWigSummary tmp/testFixed.bigWig chr7 115597761 115598761 1000 > output/tf1000.sum bigWigSummary tmp/testFixed.bigWig chr7 115597761 115598761 3000 > output/tf3000.sum bigWigSummary tmp/testFixed.bigWig chr7 115597761 115598761 10000 > output/tf10000.sum # generate summaries on testVar at 5 resolutions bigWigSummary tmp/testVar.bigWig chrY 81000 91000 1 > output/tv1.sum bigWigSummary tmp/testVar.bigWig chrY 81000 91000 10 > output/tv10.sum bigWigSummary tmp/testVar.bigWig chrY 81000 91000 100 > output/tv100.sum bigWigSummary tmp/testVar.bigWig chrY 81000 91000 1000 > output/tv1000.sum bigWigSummary tmp/testVar.bigWig chrY 81000 91000 10000 > output/tv10000.sum # generate summaries on testBedGraph at 5 resolutions bigWigSummary tmp/testBedGraph.bigWig chr5 131308806 132230652 1 > output/tbg1.sum bigWigSummary tmp/testBedGraph.bigWig chr5 131308806 132230652 10 > output/tbg10.sum bigWigSummary tmp/testBedGraph.bigWig chr5 131308806 132230652 100 > output/tbg100.sum bigWigSummary tmp/testBedGraph.bigWig chr5 131308806 132230652 1000 > output/tbg1000.sum bigWigSummary tmp/testBedGraph.bigWig chr5 131308806 132230652 10000 > output/tbg10000.sum # Do the diff diff output expected + ${bigWigToWig} tmp/testFixed.bigWig output/testFixed.wig + ${bigWigToWig} tmp/testVar.bigWig output/testVar.wig + ${bigWigToWig} tmp/testBedGraph.bigWig output/testBedGraph.wig + + # note that the text dumps have many small differences that make + # it difficult to simply compare input with output, things like + # rounding of floating differneces, one has comments the other lacks, + # having rows in different order by chromsome name. + # re-generate big wigs from dumped text + ${A} output/testFixed.wig input/test.sizes tmp/testFixed.bigWig2 + ${A} output/testVar.wig input/test.sizes tmp/testVar.bigWig2 + ${A} output/testBedGraph.wig input/test.sizes tmp/testBedGraph.bigWig2 + diff tmp/testFixed.bigWig tmp/testFixed.bigWig2 + diff tmp/testVar.bigWig tmp/testVar.bigWig2 + diff tmp/testBedGraph.bigWig tmp/testBedGraph.bigWig2 + # clean up temporary directories rm -r output tmp test2: outputDir mkdir -p tmp output # generate big wigs ${A} -fixedSummaries -keepAllChromosomes input/testFixed.wig input/test.sizes tmp/testFixed.bigWig ${A} -fixedSummaries -keepAllChromosomes input/testVar.wig input/test.sizes tmp/testVar.bigWig ${A} -fixedSummaries -keepAllChromosomes input/testBedGraph.wig input/test.sizes tmp/testBedGraph.bigWig # get unscaled data back out bigWigToBedGraph tmp/testFixed.bigWig output/testFixed.bedGraph bigWigToBedGraph tmp/testVar.bigWig output/testVar.bedGraph bigWigToBedGraph tmp/testBedGraph.bigWig output/testBedGraph.bedGraph # generate summaries on testFixed at lots of resolutions bigWigSummary tmp/testFixed.bigWig chr7 115597761 115598761 1 > output/tf1.sum bigWigSummary tmp/testFixed.bigWig chr7 115597761 115598761 3 > output/tf3.sum bigWigSummary tmp/testFixed.bigWig chr7 115597761 115598761 10 > output/tf10.sum bigWigSummary tmp/testFixed.bigWig chr7 115597761 115598761 30 > output/tf30.sum bigWigSummary tmp/testFixed.bigWig chr7 115597761 115598761 100 > output/tf100.sum bigWigSummary tmp/testFixed.bigWig chr7 115597761 115598761 300 > output/tf300.sum bigWigSummary tmp/testFixed.bigWig chr7 115597761 115598761 1000 > output/tf1000.sum bigWigSummary tmp/testFixed.bigWig chr7 115597761 115598761 3000 > output/tf3000.sum bigWigSummary tmp/testFixed.bigWig chr7 115597761 115598761 10000 > output/tf10000.sum # generate summaries on testVar at 5 resolutions bigWigSummary tmp/testVar.bigWig chrY 81000 91000 1 > output/tv1.sum bigWigSummary tmp/testVar.bigWig chrY 81000 91000 10 > output/tv10.sum bigWigSummary tmp/testVar.bigWig chrY 81000 91000 100 > output/tv100.sum bigWigSummary tmp/testVar.bigWig chrY 81000 91000 1000 > output/tv1000.sum bigWigSummary tmp/testVar.bigWig chrY 81000 91000 10000 > output/tv10000.sum # generate summaries on testBedGraph at 5 resolutions bigWigSummary tmp/testBedGraph.bigWig chr5 131308806 132230652 1 > output/tbg1.sum bigWigSummary tmp/testBedGraph.bigWig chr5 131308806 132230652 10 > output/tbg10.sum bigWigSummary tmp/testBedGraph.bigWig chr5 131308806 132230652 100 > output/tbg100.sum bigWigSummary tmp/testBedGraph.bigWig chr5 131308806 132230652 1000 > output/tbg1000.sum bigWigSummary tmp/testBedGraph.bigWig chr5 131308806 132230652 10000 > output/tbg10000.sum # Do the diff diff output expected_2 # clean up temporary directories rm -r output tmp clean:: @rm -rf output @rm -rf tmp outputDir: @${MKDIR} -p output @${MKDIR} -p tmp