├── .github ├── dependabot.yml └── workflows │ ├── docker.yml │ ├── gradle.yml │ └── release.yml ├── .gitignore ├── Dockerfile ├── LICENSE ├── README.md ├── build.gradle ├── gradle └── wrapper │ ├── gradle-wrapper.jar │ └── gradle-wrapper.properties ├── gradlew ├── settings.gradle └── src ├── main ├── java │ └── com │ │ └── github │ │ └── discvrseq │ │ ├── Main.java │ │ ├── tools │ │ ├── DiscvrSeqDevProgramGroup.java │ │ ├── DiscvrSeqInternalProgramGroup.java │ │ ├── DiscvrSeqProgramGroup.java │ │ └── VariantManipulationProgramGroup.java │ │ ├── util │ │ ├── CigarPositionIterable.java │ │ ├── CsvUtils.java │ │ ├── NaturalSortComparator.java │ │ ├── SamUtils.java │ │ ├── SequenceMatcher.java │ │ ├── VariableOutputUtils.java │ │ └── help │ │ │ └── DISCVRSeqHelpDoclet.java │ │ └── walkers │ │ ├── AnnotateNovelSites.java │ │ ├── AppendGenotypes.java │ │ ├── BackportLiftedVcf.java │ │ ├── ClinvarAnnotator.java │ │ ├── ClipOverlappingAlignments.java │ │ ├── CrossSampleGenotypeComparison.java │ │ ├── ExtendedFuncotator.java │ │ ├── ExtendedMultiVariantWalkerGroupedOnStart.java │ │ ├── FindGenomeDifferences.java │ │ ├── GenotypeFilterBySample.java │ │ ├── GroupCompare.java │ │ ├── IdentifySoftClippedLoci.java │ │ ├── ImmunoGenotyper.java │ │ ├── MendelianViolationReport.java │ │ ├── MergeFastqReads.java │ │ ├── MergeVariantSites.java │ │ ├── MergeVcfsAndGenotypes.java │ │ ├── MultiSourceAnnotator.java │ │ ├── MultipleAllelesAtLoci.java │ │ ├── OutputVariantsStartingInIntervals.java │ │ ├── PrintReadBackedHaplotypes.java │ │ ├── PrintReadsContaining.java │ │ ├── RemoveAnnotations.java │ │ ├── SampleSpecificGenotypeFiltration.java │ │ ├── Save10xBarcodes.java │ │ ├── SplitVcfBySamples.java │ │ ├── Summarize10xAlignments.java │ │ ├── SummarizeGenotypeQuality.java │ │ ├── VariantConcordanceScore.java │ │ ├── VcfComparison.java │ │ ├── VcfFilterComparison.java │ │ ├── VcfToLuceneIndexer.java │ │ ├── annotator │ │ ├── DiscvrVariantAnnotator.java │ │ ├── GenotypeConcordance.java │ │ ├── GenotypeConcordanceArgumentCollection.java │ │ ├── GenotypeConcordanceBySite.java │ │ ├── Impact.java │ │ ├── MendelianViolationArgumentCollection.java │ │ ├── MendelianViolationBySample.java │ │ ├── MendelianViolationCount.java │ │ ├── MinorAlleleFrequency.java │ │ ├── RefAlleleFrequency.java │ │ ├── RefAlleleFrequencyArgumentCollection.java │ │ └── SVType.java │ │ ├── tagpcr │ │ ├── InsertDescriptor.java │ │ ├── InsertJunctionDescriptor.java │ │ ├── IntegrationSiteMapper.java │ │ └── SequenceDescriptor.java │ │ └── variantqc │ │ ├── BarPlotReportDescriptor.java │ │ ├── Contig.java │ │ ├── ExtendedVariantEvalEngine.java │ │ ├── GATKReportTableTransformer.java │ │ ├── HtmlGenerator.java │ │ ├── InfoFieldEvaluator.java │ │ ├── PivotingTransformer.java │ │ ├── ReportDescriptor.java │ │ ├── SectionJsonDescriptor.java │ │ ├── TableReportDescriptor.java │ │ └── VariantQC.java └── resources │ └── com │ └── github │ └── discvrseq │ ├── util │ └── docTemplates │ │ ├── README.md │ │ ├── _config.yml │ │ ├── common.html │ │ ├── generic.index.template.html │ │ ├── generic.template.html │ │ ├── images │ │ └── variantQC_ExampleReport.jpg │ │ ├── index.md │ │ ├── resources │ │ ├── genomeRequirements.html │ │ └── variantQCSampleReport.html │ │ └── stylesheet.css │ └── walkers │ ├── tagpcr │ ├── Lentivirus.yml │ ├── esTag-PCR-PREDICT.yml │ └── pENTR-PB511-Repro.yml │ └── variantqc │ └── templates │ ├── assets │ ├── css │ │ ├── bootstrap.min.css │ │ ├── default_multiqc.css │ │ └── font.css │ ├── fonts │ │ ├── glyphicons-halflings-regular.eot │ │ ├── glyphicons-halflings-regular.svg │ │ ├── glyphicons-halflings-regular.ttf │ │ ├── glyphicons-halflings-regular.woff │ │ └── glyphicons-halflings-regular.woff2 │ └── js │ │ ├── multiqc.js │ │ ├── multiqc_plotting.js │ │ ├── multiqc_tables.js │ │ ├── multiqc_toolbox.js │ │ ├── packages │ │ ├── FileSaver.min.js │ │ ├── bootstrap.min.js │ │ ├── chroma.min.js │ │ ├── clipboard.min.js │ │ ├── highcharts.exporting.js │ │ ├── highcharts.heatmap.js │ │ ├── highcharts.js │ │ ├── highcharts.offline-exporting.js │ │ ├── jquery-3.7.0.min.js │ │ ├── jquery-ui.min.js │ │ ├── jquery.tablesorter.min.js │ │ ├── lz-string.min.js │ │ └── numeral.min.js │ │ ├── shim.js │ │ └── summaryTable.js │ ├── template1.html │ └── template2.html └── test ├── java └── com │ └── github │ └── discvrseq │ └── walkers │ ├── AnnotateNovelSitesTest.java │ ├── AppendGenotypesIntegrationTest.java │ ├── BackportLiftedVcfIntegrationTest.java │ ├── BaseIntegrationTest.java │ ├── ClinvarAnnotatorIntegrationTest.java │ ├── ClipOverlappingAlignmentsIntegrationTest.java │ ├── CrossSampleGenotypeComparisonIntegrationTest.java │ ├── ExtendedFuncotatorIntegrationTest.java │ ├── GenotypeFilterBySampleIntegrationTest.java │ ├── GroupCompareIntegrationTest.java │ ├── IdentifySoftClippedLociIntegrationTest.java │ ├── ImmunoGenotyperIntegrationTest.java │ ├── MendelianViolationReportIntegrationTest.java │ ├── MergeFastqReadsIntegrationTest.java │ ├── MergeVariantSitesIntegrationTest.java │ ├── MergeVcfsAndGenotypesIntegrationTest.java │ ├── MergeVcfsAndGenotypesUnitTest.java │ ├── MultiSourceAnnotatorIntegrationTest.java │ ├── MultipleAllelesAtLociIntegrationTest.java │ ├── OutputVariantsStartingInIntervalsIntegrationTest.java │ ├── PrintReadBackedHaplotypesIntegrationTest.java │ ├── PrintReadsContainingIntegrationTest.java │ ├── RemoveAnnotationsIntegrationTest.java │ ├── SampleSpecificGenotypeFiltrationIntegrationTest.java │ ├── Save10xBarcodesIntegrationTest.java │ ├── SplitVcfBySamplesIntegrationTest.java │ ├── Summarize10xAlignmentsIntegrationTest.java │ ├── SummarizeGenotypeQualityIntegrationTest.java │ ├── VariantConcordanceScoreIntegrationTest.java │ ├── VcfComparisonIntegrationTest.java │ ├── VcfFilterComparisonIntegrationTest.java │ ├── VcfToLuceneIndexerIntegrationTest.java │ ├── annotator │ └── DiscvrVariantAnnotatorIntegrationTest.java │ ├── tagpcr │ └── IntegrationSiteMapperIntegrationTest.java │ └── variantqc │ └── VariantQCIntegrationTest.java └── resources └── com └── github └── discvrseq ├── TestData ├── 10xTestData.sam ├── 155_pRR_Reporter_U24.dict ├── 155_pRR_Reporter_U24.fasta ├── 155_pRR_Reporter_U24.fasta.fai ├── AnnotateNovelSitesRef.vcf ├── AnnotateNovelSitesRef.vcf.idx ├── ClinvarAnnotator.vcf ├── ClinvarAnnotator.vcf.idx ├── GenotypeFilterBySampleBlacklist.bed ├── GenotypeFilterBySampleBlacklist.bed.idx ├── ImmunoGenotyper.qsort.bam ├── MendelianViolationEval.ped ├── MendelianViolationEval.vcf ├── MendelianViolationEval.vcf.idx ├── MendelianViolationRefGT.vcf ├── MendelianViolationRefGT.vcf.idx ├── Population_iv.overlapping.bam ├── Population_iv.overlapping.bam.bai ├── Rhesus_KIR_and_MHC_1.0.dict ├── Rhesus_KIR_and_MHC_1.0.fasta ├── Rhesus_KIR_and_MHC_1.0.fasta.fai ├── SVType.vcf ├── SVType.vcf.idx ├── SimpleExample.vcf.gz ├── SimpleExample.vcf.gz.tbi ├── SoftClipTestData.sam ├── basicVcf.vcf ├── basicVcf.vcf.idx ├── basicVcfFiltered.vcf ├── basicVcfFiltered.vcf.idx ├── clinvarV2.vcf ├── clinvarV2.vcf.idx ├── funcotator │ ├── funcotatorFields.txt │ ├── gencode │ │ └── hg19 │ │ │ ├── gencode.config │ │ │ ├── hg19.gtf │ │ │ ├── hg19.gtf.idx │ │ │ ├── hg19_transcript.dict │ │ │ ├── hg19_transcript.fa │ │ │ └── hg19_transcript.fa.fai │ ├── testSource │ │ └── hg19 │ │ │ ├── testSource.config │ │ │ ├── testSource.table │ │ │ └── testSource.table.idx │ └── vcfTestSource │ │ └── hg19 │ │ ├── vcfTestSource.config │ │ ├── vcfTestSource.vcf │ │ └── vcfTestSource.vcf.idx ├── genotypeAppend1.vcf ├── genotypeAppend1.vcf.idx ├── genotypeAppend2.vcf ├── genotypeAppend2.vcf.idx ├── genotypeFilterTest.vcf ├── genotypeFilterTest.vcf.idx ├── hg19micro.dict ├── hg19micro.fasta ├── hg19micro.fasta.fai ├── indexInput.vcf ├── indexInput.vcf.idx ├── lineageMap.txt ├── mergeVcf1.vcf ├── mergeVcf1.vcf.idx ├── mergeVcf2.vcf ├── mergeVcf2.vcf.idx ├── mergeVcf3.vcf ├── mergeVcf3.vcf.idx ├── mergeVcfWithAlts.vcf ├── mergeVcfWithAlts.vcf.idx ├── sample-map.txt ├── simpleTest.vcf ├── simpleTest.vcf.idx ├── softClipVariants.vcf ├── softClipVariants.vcf.idx ├── tagPcrTest.sam ├── variantConcordanceRef1.vcf ├── variantConcordanceRef1.vcf.idx ├── variantConcordanceRef2.vcf ├── variantConcordanceRef2.vcf.idx ├── vcfTwoContigs.vcf └── vcfTwoContigs.vcf.idx └── walkers ├── AnnotateNovelSites ├── missing.vcf ├── novel.vcf ├── output.vcf └── outputNoRef.vcf ├── AppendGenotypes └── append1.vcf ├── BackportLiftedVcf ├── backportLifted.vcf └── backportLiftedOutput.vcf ├── ClinvarAnnotator └── ClinvarAnnotatorOutput.vcf ├── ClipOverlappingAlignments ├── SIVmac239-overlap.bed ├── SIVmac239-overlap.bed.idx ├── SIVmac239.dict ├── SIVmac239.fasta ├── SIVmac239.fasta.fai ├── clipInput.sam ├── expectedOutput.sam ├── expectedOutput.txt ├── expectedOutput2.sam ├── expectedOutput2.txt ├── intervals.bed ├── intervals.bed.idx └── testSAM.sam ├── CrossSampleGenotypeComparison ├── crossSampleGenotypeComparison.txt └── crossSampleGenotypeComparisonSummary.txt ├── ExtendedFuncotator └── funcotator1.vcf ├── GenotypeFilterBySample └── GenotypeFilterBySample.vcf ├── GroupCompare ├── groupCompareInput1.vcf ├── groupCompareInput1.vcf.idx ├── groupCompareOutput.vcf ├── groupCompareOutputWithRef.txt ├── groupCompareOutputWithRef.vcf ├── groupCompareRef.vcf └── groupCompareRef.vcf.idx ├── IdentifySoftClippedLoci ├── IdentifySoftClippedLoci.bed ├── IdentifySoftClippedLociFiltered.bed └── IdentifySoftClippedLociWithVcf.bed ├── ImmunoGenotyper ├── ImmunoGenotyperOutput.genotypes.txt ├── ImmunoGenotyperOutput.mismatches.txt ├── ImmunoGenotyperOutput.summary.txt ├── ImmunoGenotyperOutputMM.genotypes.txt ├── ImmunoGenotyperOutputMM.mismatches.txt ├── ImmunoGenotyperOutputMM.summary.txt ├── ImmunoGenotyperOutputNVP.genotypes.txt ├── ImmunoGenotyperOutputNVP.mismatches.txt └── ImmunoGenotyperOutputNVP.summary.txt ├── MendelianViolationReport └── expectedOutput.txt ├── MergeFastqReads ├── basicMergeTest.fastq └── mergeTestWithMinLength.fastq ├── MergeVariantSites └── merge1.vcf ├── MergeVcfsAndGenotypes ├── basicTest2Output.vcf ├── basicTest3Output.vcf └── basicTestOutput.vcf ├── MultiSourceAnnotator ├── cassandra.vcf ├── cassandra.vcf.idx ├── clinvar.vcf ├── clinvar.vcf.idx ├── liftoverRejects.vcf ├── liftoverRejects.vcf.idx ├── multiSourceInput.vcf ├── multiSourceInput.vcf.idx ├── multiSourceOutput.vcf └── multiSourceOutputSubsetArgs.vcf ├── MultipleAllelesAtLoci ├── MultipleAllelesAtLoci.bed └── MultipleAllelesAtLociFiltered.bed ├── OutputVariantsStartingInIntervals └── basicOutput.vcf ├── PrintReadBackedHaplotypes ├── basicTest.txt ├── filteredTest.txt └── filteredTest2.txt ├── PrintReadsContaining ├── ED1_R1.fastq ├── ED1_R2.fastq ├── ED2_R1.fastq ├── ED2_R2.fastq ├── fq1.fastq └── fq2.fastq ├── RemoveAnnotations ├── testBasicOperation.vcf └── testBasicOperationSitesOnly.vcf ├── SampleSpecificGenotypeFiltration ├── basicTestOut.vcf └── rgqTestOut.vcf ├── Save10xBarcodes └── output.txt ├── SplitVcfBySamples ├── mergeVcf3.1of2.vcf ├── mergeVcf3.1of2Discard.vcf ├── mergeVcf3.2of2.vcf ├── mergeVcf3.2of2Discard.vcf ├── mergeVcfWithAlts.1of2.vcf ├── mergeVcfWithAlts.2of2.vcf ├── mergeVcfWithAltsRemoveAlts.1of2.vcf ├── mergeVcfWithAltsRemoveAlts.2of2.vcf ├── outputVcf1.vcf ├── outputVcf2.vcf └── outputVcf3.vcf ├── Summarize10xAlignments └── basicTest.txt ├── SummarizeGenotypeQuality └── basicTest.txt ├── VariantConcordanceScore └── variantConcordanceOutput.txt ├── VcfComparison ├── missingSites.vcf ├── missingSites2.vcf ├── novelSites.vcf ├── novelSites2.vcf ├── vcfComparison.txt ├── vcfComparison2.txt ├── vcfComparisonSites.txt ├── vcfComparisonSites2.txt └── vcfComparisonWithNoCall.txt ├── VcfFilterComparison └── vcfFilterComparison.txt ├── VcfToLuceneIndexer └── luceneOutDir.stats.txt ├── annotator └── DiscvrVariantAnnotator │ ├── basicTestOutput.vcf │ ├── basicTestWithCustomAnnotationsOutput.vcf │ ├── basicTestWithRefAlleleFrequency.vcf │ └── svtypeOutput.vcf ├── tagpcr └── IntegrationSiteMapper │ ├── BasicTest-1.metrics.txt │ ├── BasicTest-1.outputTable.txt │ ├── BasicTest-3.backbone.metrics.txt │ ├── BasicTest-3.metrics.txt │ ├── BasicTest-3.outputTable.txt │ └── descriptors.txt └── variantqc └── VariantQC ├── extendedReports.txt ├── testBasicOperation.html ├── testBasicOperation.json ├── testBasicOperationNoSamples.html ├── testExtendedReports.html ├── testMaxContigs.html ├── testMaxContigs2.html ├── testMaxContigs3.html ├── testMultiVcf.html └── testPedigreeOutput.html /.github/dependabot.yml: -------------------------------------------------------------------------------- 1 | version: 2 2 | updates: 3 | # Maintain dependencies for GitHub Actions 4 | - package-ecosystem: "github-actions" 5 | directory: "/" 6 | schedule: 7 | interval: "daily" -------------------------------------------------------------------------------- /.github/workflows/docker.yml: -------------------------------------------------------------------------------- 1 | name: Build Docker 2 | on: 3 | workflow_dispatch: 4 | schedule: 5 | - cron: "0 4 * * *" 6 | push: 7 | branches: 8 | - main 9 | jobs: 10 | generate: 11 | name: Build Docker 12 | runs-on: ubuntu-latest 13 | if: github.ref == 'refs/heads/main' 14 | steps: 15 | - name: Checkout the repository 16 | uses: actions/checkout@v5 17 | - name: Docker meta 18 | id: docker_meta 19 | uses: docker/metadata-action@v5 20 | with: 21 | images: ghcr.io/bimberlab/discvrseq 22 | tags: | 23 | type=semver,pattern={{version}} 24 | type=semver,pattern={{major}}.{{minor}} 25 | type=sha 26 | 27 | - name: Set up QEMU 28 | uses: docker/setup-qemu-action@v3.6.0 29 | - name: Set up Docker Buildx 30 | uses: docker/setup-buildx-action@v3.11.1 31 | - name: Login to GitHub Container Registry 32 | if: github.event_name != 'pull_request' 33 | uses: docker/login-action@v3.5.0 34 | with: 35 | registry: ghcr.io 36 | username: ${{ github.actor }} 37 | password: ${{ secrets.PAT }} 38 | - name: Build and push 39 | id: docker_build 40 | uses: docker/build-push-action@v6.18.0 41 | with: 42 | context: . 43 | file: ./Dockerfile 44 | pull: true 45 | push: true 46 | tags: ghcr.io/bimberlab/discvrseq:nightly,ghcr.io/bimberlab/discvrseq:latest 47 | labels: | 48 | ${{ steps.docker_meta.outputs.labels }} 49 | org.opencontainers.image.title=DISCVRSeq Toolkit 50 | org.opencontainers.image.description=DISCVR-seq Toolkit is a diverse collection of tools for working with sequencing data, developed and maintained by the Bimber Lab, built using the GATK4 engine. 51 | 52 | 53 | -------------------------------------------------------------------------------- /.github/workflows/gradle.yml: -------------------------------------------------------------------------------- 1 | name: Github Actions CI 2 | on: 3 | push: 4 | branches: [ main ] 5 | pull_request: 6 | branches: [ main ] 7 | 8 | jobs: 9 | build: 10 | runs-on: ubuntu-latest 11 | name: Gradle Build/Test 12 | steps: 13 | - uses: actions/checkout@v5 14 | - name: Set up JDK 15 | uses: actions/setup-java@v5 16 | with: 17 | java-version: '17' 18 | distribution: 'temurin' 19 | - name: Cache 20 | uses: actions/cache@v4 21 | with: 22 | path: | 23 | ~/.gradle/caches 24 | ~/.gradle/wrapper 25 | key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*') }} 26 | restore-keys: | 27 | ${{ runner.os }}-gradle- 28 | 29 | - name: Grant execute permission for gradlew 30 | run: chmod +x gradlew 31 | 32 | - name: Build with Gradle 33 | run: | 34 | java -version; 35 | ./gradlew build; 36 | ./gradlew check; 37 | ./gradlew shadowJar -Drelease=${{startsWith(github.ref, 'refs/tags/v')}}; 38 | ./gradlew toolDoc -Drelease=${{startsWith(github.ref, 'refs/tags/v')}}; 39 | ls build/libs 40 | 41 | - name: Check JAR 42 | run: | 43 | java -version 44 | JAR=$(ls build/libs/*.jar) 45 | echo $JAR 46 | java -jar ${JAR} -h -------------------------------------------------------------------------------- /.github/workflows/release.yml: -------------------------------------------------------------------------------- 1 | on: 2 | release: 3 | types: [created] 4 | name: Publish Release 5 | jobs: 6 | generate: 7 | name: Create release-artifacts 8 | runs-on: ubuntu-latest 9 | steps: 10 | - name: Checkout the repository 11 | uses: actions/checkout@v5 12 | 13 | - name: Set up JDK 14 | uses: actions/setup-java@v5 15 | with: 16 | java-version: '17' 17 | distribution: 'temurin' 18 | 19 | - name: Grant execute permission for gradlew 20 | run: chmod +x gradlew 21 | 22 | - name: Build with Gradle 23 | run: | 24 | ./gradlew build; 25 | ./gradlew check; 26 | ./gradlew shadowJar -Drelease=true; 27 | ./gradlew toolDoc -Drelease=true; 28 | mv ./build/docs ./toolDoc 29 | 30 | - name: Inject slug/short variables 31 | uses: rlespinasse/github-slug-action@v3.x 32 | 33 | - name: Branch name 34 | run: echo running on branch ${{ env.GITHUB_REF_SLUG }} 35 | 36 | - name: Check JAR 37 | run: | 38 | java -version 39 | java -jar build/libs/DISCVRSeq-${{ env.GITHUB_REF_SLUG }}.jar -h 40 | 41 | - name: Upload Artifacts 42 | uses: softprops/action-gh-release@v2 43 | with: 44 | files: build/libs/DISCVRSeq-${{ env.GITHUB_REF_SLUG }}.jar 45 | token: ${{ secrets.GITHUB_TOKEN }} 46 | 47 | - name: GH Pages 48 | uses: peaceiris/actions-gh-pages@v4.0.0 49 | with: 50 | github_token: ${{ secrets.GITHUB_TOKEN }} 51 | publish_dir: ./toolDoc 52 | enable_jekyll: true 53 | 54 | - name: Docker meta 55 | id: docker_meta 56 | uses: docker/metadata-action@v5 57 | with: 58 | images: ghcr.io/bimberlab/discvrseq 59 | tags: | 60 | type=semver,pattern={{version}} 61 | type=semver,pattern={{major}}.{{minor}} 62 | type=sha 63 | 64 | - name: Set up QEMU 65 | uses: docker/setup-qemu-action@v3.6.0 66 | 67 | - name: Set up Docker Buildx 68 | uses: docker/setup-buildx-action@v3.11.1 69 | with: 70 | version: latest 71 | buildkitd-flags: --debug 72 | 73 | - name: Login to GitHub Container Registry 74 | if: github.event_name != 'pull_request' 75 | uses: docker/login-action@v3.5.0 76 | with: 77 | registry: ghcr.io 78 | username: ${{ github.actor }} 79 | password: ${{ secrets.PAT }} 80 | 81 | - name: Build and push 82 | id: docker_build 83 | uses: docker/build-push-action@v6.18.0 84 | with: 85 | context: . 86 | file: ./Dockerfile 87 | pull: true 88 | push: ${{ github.event_name != 'pull_request' }} 89 | tags: ${{ steps.docker_meta.outputs.tags }} 90 | labels: | 91 | ${{ steps.docker_meta.outputs.labels }} 92 | org.opencontainers.image.title=DISCVRSeq Toolkit 93 | org.opencontainers.image.description=DISCVR-seq Toolkit is a diverse collection of tools for working with sequencing data, developed and maintained by the Bimber Lab, built using the GATK4 engine. 94 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | .idea/ 2 | DISCVRSeq.iml 3 | *.ipr 4 | *.iml 5 | *.iws 6 | *.iml 7 | .gradle 8 | build/ 9 | .idea/libraries/Gradle__* 10 | *.*~ 11 | hellbender-engine/repos/ 12 | hellbender-tools/repos/ 13 | .DS_Store 14 | testSortingFile.txt 15 | gsalib.tar.gz 16 | *.swp 17 | gradlew.bat 18 | gradlew 19 | tmp/ 20 | src/main/java/local/ 21 | 22 | #Please don't commit me 23 | client_secret.json 24 | servicekey.json 25 | 26 | #Test Generated File 27 | I_SHOULD_HAVE_BEEN_DELETED 28 | 29 | out/* -------------------------------------------------------------------------------- /Dockerfile: -------------------------------------------------------------------------------- 1 | FROM eclipse-temurin:17 2 | 3 | # See: https://stackoverflow.com/questions/44331836/apt-get-install-tzdata-noninteractive 4 | ENV DEBIAN_FRONTEND=noninteractive 5 | 6 | RUN apt-get update \ 7 | && apt-get install -y wget ncbi-blast+ build-essential g++ cmake git-all \ 8 | && apt-get clean \ 9 | && rm -rf /var/lib/apt/lists/* 10 | 11 | #Primer3 12 | RUN cd / \ 13 | && wget https://github.com/primer3-org/primer3/archive/v2.5.0.tar.gz \ 14 | && tar -xf v2.5.0.tar.gz \ 15 | && rm v2.5.0.tar.gz \ 16 | && cd /primer3-2.5.0/src \ 17 | && make 18 | 19 | ENV PATH="/primer3-2.5.0/src:${PATH}" 20 | 21 | ADD . /discvr-build 22 | 23 | RUN cd /discvr-build \ 24 | && ./gradlew assemble \ 25 | && ./gradlew shadowJar \ 26 | && ./gradlew copyShadowJar \ 27 | && mv build/jars/DISCVRSeq-*.jar /DISCVRSeq.jar \ 28 | && cd / \ 29 | && rm -Rf /discvr-build \ 30 | # Sanity check: 31 | && java -version \ 32 | && which blastn \ 33 | && which primer3_core \ 34 | && stat /DISCVRSeq.jar 35 | 36 | ENTRYPOINT ["java", "-jar", "/DISCVRSeq.jar"] 37 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | ![Github CI](https://github.com/BimberLab/DISCVRSeq/workflows/Github%20Actions%20CI/badge.svg) 2 | 3 | ## Overview 4 | DISCVR-seq Toolkit is a diverse collection of tools for working with sequencing data, developed and maintained by the Bimber Lab, built using the GATK4 engine. The set of tools is analogous to GATK or Picard. A description of all software produced by the Bimber Lab can be found [here](https://bimberlab.github.io). 5 | 6 | ## Documentation 7 | [Please view our documentation](https://bimberlab.github.io/DISCVRSeq/) for more information about the set of tools and usage. 8 | 9 | ## Published Tools 10 | While DISCVR-seq contains many useful tools that will not be published, a handful of the tools have their own publications: 11 | 12 | | Tool | Description | Citation | 13 | | ---- | ----------- | -------- | 14 | | [VariantQC](https://bimberlab.github.io/DISCVRSeq/toolDoc/com_github_discvrseq_walkers_variantqc_VariantQC.html) | Creates an HTML report summarizing VCF data | [VariantQC: a visual quality control report for variant evaluation. Yan MY, Ferguson B, Bimber BN. Bioinformatics. 2019 Dec 15;35(24):5370-5371. PMID: 31309221](https://pubmed.ncbi.nlm.nih.gov/31309221/) | 15 | | [IntegrationSiteMapper](https://bimberlab.github.io/DISCVRSeq/toolDoc/com_github_discvrseq_walkers_tagpcr_IntegrationSiteMapper.html) | Detect and summarize transgene integration | [Ryu J, Chan W, Wettengel JM, Hanna CB, Burwitz BJ, Hennebold JD, Bimber BN. Rapid, accurate mapping of transgene integration in viable rhesus macaque embryos using enhanced-specificity tagmentation-assisted PCR. Mol Ther Methods Clin Dev. 2022 Jan 19;24:241-254. PMID: 35211637.](https://pubmed.ncbi.nlm.nih.gov/35211637/) | 16 | 17 | ## Getting Started 18 | DISCVR-seq Toolkit is a java program distributed as a single JAR. You can download the latest JAR from our [release page](https://github.com/BimberLab/DISCVRSeq/releases). Running tools is analogous to GATK4. 19 | 20 | While we recommend [our documentation](https://bimberlab.github.io/DISCVRSeq/) to learn about available tools and options, one can also list arguments from the command line: 21 | 22 | ``` 23 | # View arguments for a specific tool (VariantQC in this example): 24 | java -jar DISCVRseq.jar VariantQC --help 25 | ``` 26 | 27 | ## Docker 28 | 29 | By popular demand, DISCVR-seq releases are available as docker images, via [GitHub Packages](https://github.com/orgs/BimberLab/packages/container/package/discvrseq). We recommend using a specific release, which you can do using tags: 30 | 31 | ``` 32 | 33 | # Pull specific version: 34 | docker pull ghcr.io/bimberlab/discvrseq:1.20 35 | 36 | # Pull latest version: 37 | docker pull ghcr.io/bimberlab/discvrseq:latest 38 | # Or: 39 | docker pull ghcr.io/bimberlab/discvrseq 40 | 41 | # Running the container will automatically run DISCVRseq (equivalent to java -jar DISCVRseq.jar ...): 42 | docker run ghcr.io/bimberlab/discvrseq VariantQC --help 43 | 44 | ``` -------------------------------------------------------------------------------- /gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BimberLab/DISCVRSeq/88e5574ba4918a17414b2973d3500f23ad9717ff/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- 1 | distributionBase=GRADLE_USER_HOME 2 | distributionPath=wrapper/dists 3 | distributionUrl=https\://services.gradle.org/distributions/gradle-8.10.2-bin.zip 4 | zipStoreBase=GRADLE_USER_HOME 5 | zipStorePath=wrapper/dists 6 | -------------------------------------------------------------------------------- /settings.gradle: -------------------------------------------------------------------------------- 1 | rootProject.name = 'DISCVRSeq' 2 | 3 | -------------------------------------------------------------------------------- /src/main/java/com/github/discvrseq/Main.java: -------------------------------------------------------------------------------- 1 | package com.github.discvrseq; 2 | 3 | import com.google.common.annotations.VisibleForTesting; 4 | 5 | import java.util.ArrayList; 6 | import java.util.List; 7 | 8 | /** 9 | * Created by bimber on 7/30/2017. 10 | */ 11 | public final class Main extends org.broadinstitute.hellbender.Main { 12 | /** Only include discvr-seq tools . */ 13 | @Override 14 | protected List getPackageList() { 15 | final List packageList = new ArrayList<>(); 16 | packageList.add("com.github.discvrseq"); 17 | return packageList; 18 | } 19 | 20 | /** Returns the command line that will appear in the usage. */ 21 | protected String getCommandLineName() { 22 | return "java -jar DISCVRseq.jar"; 23 | } 24 | 25 | public static void main(final String[] args) { 26 | final Main main = new Main(); 27 | // if only the --version / -v is requested, exit directly 28 | if (main.printOnlyVersion(args)) { 29 | System.exit(0); 30 | } 31 | 32 | main.mainEntry(args); 33 | } 34 | 35 | @VisibleForTesting 36 | protected boolean printOnlyVersion(final String[] args) { 37 | System.out.println("Version: " + getClass().getPackage().getImplementationVersion()); 38 | if (args.length == 1 && ("--version".equals(args[0]) || "-v".equals(args[0]))) { 39 | return true; 40 | } 41 | return false; 42 | } 43 | } 44 | -------------------------------------------------------------------------------- /src/main/java/com/github/discvrseq/tools/DiscvrSeqDevProgramGroup.java: -------------------------------------------------------------------------------- 1 | package com.github.discvrseq.tools; 2 | 3 | import org.broadinstitute.barclay.argparser.CommandLineProgramGroup; 4 | 5 | /** 6 | * Created by bimber on 8/1/2017. 7 | */ 8 | public class DiscvrSeqDevProgramGroup implements CommandLineProgramGroup { 9 | @Override 10 | public String getName() { 11 | return "Development/Pre-production Tools"; 12 | } 13 | 14 | @Override 15 | public String getDescription() { 16 | return "Unlike the public tools group, these tools may have have received less rigorous testing and may be under active development."; 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /src/main/java/com/github/discvrseq/tools/DiscvrSeqInternalProgramGroup.java: -------------------------------------------------------------------------------- 1 | package com.github.discvrseq.tools; 2 | 3 | import org.broadinstitute.barclay.argparser.CommandLineProgramGroup; 4 | 5 | /** 6 | * Created by bimber on 8/1/2017. 7 | */ 8 | public class DiscvrSeqInternalProgramGroup implements CommandLineProgramGroup { 9 | @Override 10 | public String getName() { 11 | return "Specialized/Internal Tools"; 12 | } 13 | 14 | @Override 15 | public String getDescription() { 16 | return "These tools are designed for fairly specialized purposes and are most likely only useful internally."; 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /src/main/java/com/github/discvrseq/tools/DiscvrSeqProgramGroup.java: -------------------------------------------------------------------------------- 1 | package com.github.discvrseq.tools; 2 | 3 | import org.broadinstitute.barclay.argparser.CommandLineProgramGroup; 4 | 5 | /** 6 | * Created by bimber on 8/1/2017. 7 | */ 8 | public class DiscvrSeqProgramGroup implements CommandLineProgramGroup { 9 | @Override 10 | public String getName() { 11 | return "Public/Stable Tools"; 12 | } 13 | 14 | @Override 15 | public String getDescription() { 16 | return "These tools should be rigorously validated and stable."; 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /src/main/java/com/github/discvrseq/tools/VariantManipulationProgramGroup.java: -------------------------------------------------------------------------------- 1 | package com.github.discvrseq.tools; 2 | 3 | import org.broadinstitute.barclay.argparser.CommandLineProgramGroup; 4 | 5 | /** 6 | * Created by bimber on 8/1/2017. 7 | */ 8 | public class VariantManipulationProgramGroup implements CommandLineProgramGroup { 9 | @Override 10 | public String getName() { 11 | return "Variant Manipulation"; 12 | } 13 | 14 | @Override 15 | public String getDescription() { 16 | return "These tools perform manipulation/QC of variant data, and should be rigorously validated and stable."; 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /src/main/java/com/github/discvrseq/util/CsvUtils.java: -------------------------------------------------------------------------------- 1 | package com.github.discvrseq.util; 2 | 3 | import com.opencsv.*; 4 | import htsjdk.samtools.util.IOUtil; 5 | 6 | import java.io.File; 7 | import java.nio.file.Path; 8 | 9 | public class CsvUtils { 10 | public static ICSVWriter getTsvWriter(File output) { 11 | return getTsvWriter(output.toPath()); 12 | } 13 | 14 | public static ICSVWriter getTsvWriter(Path output) { 15 | return new CSVWriterBuilder(IOUtil.openFileForBufferedUtf8Writing(output)).withSeparator('\t').withQuoteChar(CSVWriter.NO_QUOTE_CHARACTER).build(); 16 | } 17 | 18 | public static CSVReader getTsvReader(File input) { 19 | return new CSVReaderBuilder(IOUtil.openFileForBufferedUtf8Reading(input)).withCSVParser(new CSVParserBuilder().withSeparator('\t').build()).build(); 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /src/main/java/com/github/discvrseq/util/SamUtils.java: -------------------------------------------------------------------------------- 1 | package com.github.discvrseq.util; 2 | 3 | import htsjdk.samtools.*; 4 | import org.apache.logging.log4j.Logger; 5 | import org.broadinstitute.hellbender.exceptions.GATKException; 6 | 7 | import java.io.File; 8 | import java.io.IOException; 9 | import java.nio.file.Path; 10 | 11 | public class SamUtils { 12 | public static File ensureQuerySorted(File bam, Path genomeFasta, Logger logger) { 13 | SamReaderFactory fact = SamReaderFactory.makeDefault(); 14 | fact.validationStringency(ValidationStringency.SILENT); 15 | fact.referenceSequence(genomeFasta); 16 | 17 | SAMFileHeader.SortOrder so = fact.getFileHeader(bam).getSortOrder(); 18 | if (so == SAMFileHeader.SortOrder.queryname) { 19 | logger.info("BAM is already query sorted, no need to sort"); 20 | return bam; 21 | } 22 | 23 | logger.info("Sorting BAM in queryName order"); 24 | try (SamReader reader = SamReaderFactory.makeDefault().referenceSequence(genomeFasta).open(bam)) { 25 | reader.getFileHeader().setSortOrder(SAMFileHeader.SortOrder.queryname); 26 | 27 | File querySorted = File.createTempFile(bam.getName(), ".querySorted.bam").toPath().normalize().toFile(); 28 | logger.info("writing to file: " + querySorted.getPath()); 29 | 30 | try (SAMFileWriter writer = new SAMFileWriterFactory().makeSAMOrBAMWriter(reader.getFileHeader(), false, querySorted)) { 31 | for (final SAMRecord rec : reader) { 32 | writer.addAlignment(rec); 33 | } 34 | } 35 | 36 | return querySorted; 37 | } 38 | catch (IOException e) { 39 | throw new GATKException(e.getMessage(), e); 40 | } 41 | } 42 | } 43 | -------------------------------------------------------------------------------- /src/main/java/com/github/discvrseq/util/SequenceMatcher.java: -------------------------------------------------------------------------------- 1 | package com.github.discvrseq.util; 2 | 3 | import org.apache.commons.text.similarity.HammingDistance; 4 | 5 | public class SequenceMatcher { 6 | private static final HammingDistance hd = new HammingDistance(); 7 | 8 | public static Integer fuzzyMatch(String query, String readSeq, int editDistance) { 9 | int windows = readSeq.length() - query.length(); 10 | 11 | int i = 0; 12 | while (i < windows) { 13 | CharSequence test = readSeq.subSequence(i, i + query.length()); 14 | if (hd.apply(query, test) <= editDistance) { 15 | return i; 16 | } 17 | 18 | i++; 19 | } 20 | 21 | return null; 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /src/main/java/com/github/discvrseq/util/help/DISCVRSeqHelpDoclet.java: -------------------------------------------------------------------------------- 1 | package com.github.discvrseq.util.help; 2 | 3 | import jdk.javadoc.doclet.DocletEnvironment; 4 | import org.broadinstitute.hellbender.utils.help.GATKHelpDoclet; 5 | 6 | @SuppressWarnings("removal") 7 | public class DISCVRSeqHelpDoclet extends GATKHelpDoclet { 8 | public DISCVRSeqHelpDoclet() { 9 | 10 | } 11 | 12 | public static boolean processDocs(final DocletEnvironment docletEnv) { 13 | return new DISCVRSeqHelpDoclet().run(docletEnv); 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /src/main/java/com/github/discvrseq/walkers/ExtendedMultiVariantWalkerGroupedOnStart.java: -------------------------------------------------------------------------------- 1 | package com.github.discvrseq.walkers; 2 | 3 | import htsjdk.variant.variantcontext.VariantContext; 4 | import htsjdk.variant.variantcontext.VariantContextComparator; 5 | import org.broadinstitute.hellbender.engine.FeatureInput; 6 | import org.broadinstitute.hellbender.engine.MultiVariantWalkerGroupedOnStart; 7 | 8 | import java.util.*; 9 | 10 | abstract public class ExtendedMultiVariantWalkerGroupedOnStart extends MultiVariantWalkerGroupedOnStart { 11 | // maintain the mapping of source name (from VC) to FeatureInput name 12 | private Map> drivingVariantSourceMap = null; 13 | 14 | protected Map> getDrivingVariantSourceMap() { 15 | if (drivingVariantSourceMap == null) { 16 | // Cache map of source name -> FeatureInput 17 | drivingVariantSourceMap = new HashMap<>(); 18 | getDrivingVariantsFeatureInputs().forEach(x -> drivingVariantSourceMap.put(x.getName(), x)); 19 | } 20 | 21 | return drivingVariantSourceMap; 22 | } 23 | 24 | protected Map, List> groupVariantsByFeatureInput(final List variants) { 25 | final Map, List> byFeatureInput = new HashMap<>(); 26 | variants.forEach(vc -> byFeatureInput.compute(getDrivingVariantSourceMap().get(vc.getSource()), 27 | (k, v) -> { 28 | final List variantList = v == null ? new ArrayList<>() : v; 29 | variantList.add(vc); 30 | return variantList; 31 | } 32 | )); 33 | 34 | for (FeatureInput fi : getDrivingVariantsFeatureInputs()) { 35 | if (!byFeatureInput.containsKey(fi)) { 36 | byFeatureInput.put(fi, Collections.emptyList()); 37 | } 38 | else { 39 | byFeatureInput.get(fi).sort(new VariantContextComparator(getBestAvailableSequenceDictionary())); 40 | } 41 | } 42 | 43 | return byFeatureInput; 44 | } 45 | } 46 | -------------------------------------------------------------------------------- /src/main/java/com/github/discvrseq/walkers/annotator/GenotypeConcordanceArgumentCollection.java: -------------------------------------------------------------------------------- 1 | package com.github.discvrseq.walkers.annotator; 2 | 3 | import htsjdk.variant.variantcontext.VariantContext; 4 | import org.broadinstitute.barclay.argparser.Argument; 5 | import org.broadinstitute.hellbender.engine.FeatureInput; 6 | import org.broadinstitute.hellbender.engine.FeatureManager; 7 | import org.broadinstitute.hellbender.exceptions.UserException; 8 | 9 | public class GenotypeConcordanceArgumentCollection { 10 | @Argument(doc="Reference genotypes VCF", fullName = "reference-genotypes-vcf", shortName = "rg", optional = true) 11 | public FeatureInput referenceVcf = null; 12 | 13 | public static interface UsesGenotypeConcordanceArgumentCollection { 14 | public void setArgumentCollection(GenotypeConcordanceArgumentCollection args); 15 | } 16 | 17 | public void validateArguments() { 18 | if (referenceVcf == null) { 19 | throw new UserException.BadInput("Missing reference-genotypes-vcf argument"); 20 | } 21 | } 22 | 23 | public FeatureManager featureManager = null; 24 | } 25 | -------------------------------------------------------------------------------- /src/main/java/com/github/discvrseq/walkers/annotator/MendelianViolationArgumentCollection.java: -------------------------------------------------------------------------------- 1 | package com.github.discvrseq.walkers.annotator; 2 | 3 | import org.broadinstitute.barclay.argparser.Argument; 4 | import org.broadinstitute.hellbender.engine.GATKPath; 5 | import org.broadinstitute.hellbender.utils.samples.PedigreeValidationType; 6 | import org.broadinstitute.hellbender.utils.samples.SampleDB; 7 | 8 | public class MendelianViolationArgumentCollection { 9 | @Argument(fullName = "pedigreeValidationType", shortName = "pedValidationType", doc="The strictness for validating the pedigree. Can be either STRICT or SILENT. Default is STRICT", optional=true) 10 | public PedigreeValidationType pedigreeValidationType = PedigreeValidationType.STRICT; 11 | 12 | /** 13 | * This argument specifies the genotype quality (GQ) threshold that all members of a trio must have in order 14 | * for a site to be accepted as a mendelian violation. Note that the `-mv` flag must be set for this argument 15 | * to have an effect. 16 | */ 17 | @Argument(fullName="mendelian-violation-qual-threshold", doc="Minimum GQ score for each trio member to accept a site as a violation", optional=true) 18 | public double minGenotypeQuality = 10.0; 19 | 20 | public static interface UsesMendelianViolationArgumentCollection { 21 | public void setArgumentCollection(MendelianViolationArgumentCollection args); 22 | } 23 | 24 | public void validateArguments() { 25 | 26 | } 27 | 28 | public SampleDB getSampleDB(GATKPath pedigreeFile) { 29 | return SampleDB.createSampleDBFromPedigree(pedigreeFile, pedigreeValidationType); 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /src/main/java/com/github/discvrseq/walkers/annotator/MendelianViolationBySample.java: -------------------------------------------------------------------------------- 1 | package com.github.discvrseq.walkers.annotator; 2 | 3 | import htsjdk.variant.variantcontext.Allele; 4 | import htsjdk.variant.variantcontext.Genotype; 5 | import htsjdk.variant.variantcontext.GenotypeBuilder; 6 | import htsjdk.variant.variantcontext.VariantContext; 7 | import htsjdk.variant.vcf.VCFCompoundHeaderLine; 8 | import htsjdk.variant.vcf.VCFFormatHeaderLine; 9 | import htsjdk.variant.vcf.VCFHeaderLineType; 10 | import org.broadinstitute.hellbender.engine.GATKPath; 11 | import org.broadinstitute.hellbender.engine.ReferenceContext; 12 | import org.broadinstitute.hellbender.tools.walkers.annotator.GenotypeAnnotation; 13 | import org.broadinstitute.hellbender.tools.walkers.annotator.PedigreeAnnotation; 14 | import org.broadinstitute.hellbender.utils.genotyper.AlleleLikelihoods; 15 | import org.broadinstitute.hellbender.utils.read.GATKRead; 16 | import org.broadinstitute.hellbender.utils.samples.SampleDB; 17 | 18 | import java.util.Collections; 19 | import java.util.List; 20 | import java.util.Set; 21 | 22 | /** 23 | * Created by bimber on 3/13/2017. 24 | * 25 | */ 26 | public class MendelianViolationBySample extends PedigreeAnnotation implements GenotypeAnnotation, MendelianViolationArgumentCollection.UsesMendelianViolationArgumentCollection { 27 | private SampleDB sampleDB = null; 28 | 29 | public static final String MV_KEY = "MV"; 30 | 31 | public MendelianViolationArgumentCollection args = null; 32 | 33 | public MendelianViolationBySample() 34 | { 35 | super((Set) null); 36 | } 37 | 38 | public MendelianViolationBySample(final GATKPath pedigreeFile){ 39 | super(pedigreeFile); 40 | } 41 | 42 | @Override 43 | public List getKeyNames() { 44 | return Collections.singletonList(MV_KEY); 45 | } 46 | 47 | @Override 48 | public void setArgumentCollection(MendelianViolationArgumentCollection args) { 49 | this.args = args; 50 | sampleDB = args.getSampleDB(getPedigreeFile()); 51 | } 52 | 53 | @Override 54 | public void annotate(ReferenceContext referenceContext, VariantContext variantContext, Genotype genotype, GenotypeBuilder gb, AlleleLikelihoods alleleLikelihoods) { 55 | for (String key : getKeyNames()) 56 | { 57 | gb.attribute(key, null); 58 | } 59 | 60 | if (sampleDB != null) { 61 | int totalViolations = MendelianViolationCount.countViolations(sampleDB.getSample(genotype.getSampleName()), variantContext, args.minGenotypeQuality); 62 | gb.attribute(MV_KEY, totalViolations); 63 | } 64 | } 65 | 66 | @Override 67 | public List getDescriptions() { 68 | return Collections.singletonList(new VCFFormatHeaderLine(MV_KEY, 1, VCFHeaderLineType.Integer, "Number of mendelian violations observed for this sample.")); 69 | } 70 | } 71 | -------------------------------------------------------------------------------- /src/main/java/com/github/discvrseq/walkers/annotator/RefAlleleFrequencyArgumentCollection.java: -------------------------------------------------------------------------------- 1 | package com.github.discvrseq.walkers.annotator; 2 | 3 | import htsjdk.variant.variantcontext.VariantContext; 4 | import org.broadinstitute.barclay.argparser.Argument; 5 | import org.broadinstitute.hellbender.engine.FeatureInput; 6 | import org.broadinstitute.hellbender.engine.FeatureManager; 7 | import org.broadinstitute.hellbender.exceptions.UserException; 8 | 9 | public class RefAlleleFrequencyArgumentCollection { 10 | public FeatureManager featureManager = null; 11 | 12 | public static interface UsesRefAlleleFrequencyArgumentCollection { 13 | public void setArgumentCollection(RefAlleleFrequencyArgumentCollection args); 14 | } 15 | 16 | @Argument(doc="Allele frequency source VCF", fullName = "af-source-vcf", shortName = "asv", optional = true) 17 | public FeatureInput referenceVcf = null; 18 | 19 | @Argument(doc="Target INFO field key", fullName = "target-info-field-key", optional = true) 20 | public String targetInfoFieldKey = null; 21 | 22 | @Argument(doc="Source INFO field key", fullName = "source-info-field-key", optional = true) 23 | public String sourceInfoFieldKey = "AF"; 24 | 25 | public void validateArguments() { 26 | if (referenceVcf == null) { 27 | throw new UserException.BadInput("Missing reference-genotypes-vcf argument"); 28 | } 29 | 30 | if (targetInfoFieldKey == null) { 31 | throw new UserException.BadInput("Missing target-info-field-key argument"); 32 | } 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /src/main/java/com/github/discvrseq/walkers/tagpcr/InsertDescriptor.java: -------------------------------------------------------------------------------- 1 | package com.github.discvrseq.walkers.tagpcr; 2 | 3 | import htsjdk.samtools.util.SequenceUtil; 4 | 5 | import java.util.ArrayList; 6 | import java.util.Collections; 7 | import java.util.List; 8 | 9 | public class InsertDescriptor { 10 | private String name; 11 | private SequenceDescriptor insertUpstreamRegion; 12 | private SequenceDescriptor insertDownstreamRegion; 13 | 14 | private List internalPrimers; 15 | private List backboneSearchStrings; 16 | private List backboneSearchStringsRC = null; 17 | private int backboneSearchEditDistance = 2; 18 | 19 | private List junctions; 20 | 21 | public InsertDescriptor() { 22 | 23 | } 24 | 25 | public String getFeatureLabel(IntegrationSiteMapper.END_TYPE type) { 26 | switch (type) { 27 | case upstream: 28 | return insertUpstreamRegion.getName(); 29 | case downstream: 30 | return insertDownstreamRegion.getName(); 31 | default: 32 | throw new IllegalArgumentException("Unknown type"); 33 | } 34 | } 35 | 36 | public String getName() { 37 | return name; 38 | } 39 | 40 | public SequenceDescriptor getInsertUpstreamRegion() { 41 | return insertUpstreamRegion; 42 | } 43 | 44 | public SequenceDescriptor getInsertDownstreamRegion() { 45 | return insertDownstreamRegion; 46 | } 47 | 48 | public List getInternalPrimers() { 49 | return internalPrimers; 50 | } 51 | 52 | public List getJunctions() { 53 | return junctions; 54 | } 55 | 56 | public int getBackboneSearchEditDistance() { 57 | return backboneSearchEditDistance; 58 | } 59 | 60 | public void setBackboneSearchEditDistance(int backboneSearchEditDistance) { 61 | this.backboneSearchEditDistance = backboneSearchEditDistance; 62 | } 63 | 64 | public List getAllBackboneSearchStrings() { 65 | if (backboneSearchStrings == null) { 66 | return Collections.emptyList(); 67 | } 68 | 69 | List ret = new ArrayList<>(backboneSearchStrings); 70 | if (backboneSearchStringsRC == null) { 71 | backboneSearchStringsRC = new ArrayList<>(); 72 | backboneSearchStrings.forEach(x -> { 73 | backboneSearchStringsRC.add(SequenceUtil.reverseComplement(x)); 74 | }); 75 | } 76 | 77 | ret.addAll(backboneSearchStringsRC); 78 | 79 | return ret; 80 | } 81 | 82 | public List getBackboneSearchStrings() { 83 | return backboneSearchStrings; 84 | } 85 | 86 | public void setBackboneSearchStrings(List backboneSearchStrings) { 87 | this.backboneSearchStrings = backboneSearchStrings; 88 | } 89 | } 90 | -------------------------------------------------------------------------------- /src/main/java/com/github/discvrseq/walkers/tagpcr/SequenceDescriptor.java: -------------------------------------------------------------------------------- 1 | package com.github.discvrseq.walkers.tagpcr; 2 | 3 | public class SequenceDescriptor { 4 | private String name; 5 | private String sequence; 6 | 7 | public SequenceDescriptor() { 8 | 9 | } 10 | 11 | public String getName() { 12 | return name; 13 | } 14 | 15 | public String getSequence() { 16 | return sequence; 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /src/main/java/com/github/discvrseq/walkers/variantqc/ExtendedVariantEvalEngine.java: -------------------------------------------------------------------------------- 1 | package com.github.discvrseq.walkers.variantqc; 2 | 3 | import htsjdk.samtools.SAMSequenceDictionary; 4 | import org.broadinstitute.hellbender.engine.FeatureManager; 5 | import org.broadinstitute.hellbender.tools.walkers.varianteval.VariantEvalArgumentCollection; 6 | import org.broadinstitute.hellbender.tools.walkers.varianteval.VariantEvalEngine; 7 | import org.broadinstitute.hellbender.tools.walkers.varianteval.evaluators.VariantEvaluator; 8 | import org.broadinstitute.hellbender.tools.walkers.varianteval.stratifications.VariantStratifier; 9 | import org.broadinstitute.hellbender.tools.walkers.varianteval.util.EvaluationContext; 10 | import org.broadinstitute.hellbender.utils.SimpleInterval; 11 | 12 | import javax.annotation.Nullable; 13 | import java.util.*; 14 | 15 | public class ExtendedVariantEvalEngine extends VariantEvalEngine { 16 | 17 | private final List infoFields = new ArrayList<>(); 18 | private final int maxContigs; 19 | private final List contigsToRetain; 20 | 21 | public ExtendedVariantEvalEngine(VariantEvalArgumentCollection variantEvalArgs, FeatureManager features, List traversalIntervals, SAMSequenceDictionary samSequenceDictionaryForDrivingVariants, @Nullable Collection samples, List infoFields, int maxContigs, List contigsToRetain) { 22 | super(variantEvalArgs, features, traversalIntervals, samSequenceDictionaryForDrivingVariants, samples); 23 | 24 | this.infoFields.addAll(infoFields); 25 | this.maxContigs = maxContigs; 26 | this.contigsToRetain = contigsToRetain; 27 | 28 | this.doValidateAndInitialize(samples); 29 | } 30 | 31 | @Override 32 | protected void validateAndInitialize(@Nullable Collection samples) { 33 | // Deliberate no-op to defer initialization of EvaluationContext 34 | } 35 | 36 | private void doValidateAndInitialize(@Nullable Collection samples) { 37 | super.validateAndInitialize(samples); 38 | } 39 | 40 | @Override 41 | protected EvaluationContext createEvaluationContext(final Set> evaluationObjects) { 42 | return new ExtendedEvaluationContext(this, evaluationObjects, infoFields); 43 | } 44 | 45 | public static class ExtendedEvaluationContext extends EvaluationContext { 46 | public ExtendedEvaluationContext(VariantEvalEngine engine, Set> evaluationClasses, List infoFields) { 47 | super(engine, evaluationClasses); 48 | 49 | for (String field : infoFields) { 50 | getEvaluationInstances().add(new InfoFieldEvaluator(engine, field)); 51 | } 52 | } 53 | } 54 | 55 | @Override 56 | public VariantStratifier createVariantStratifier(Class clazz) { 57 | if (org.broadinstitute.hellbender.tools.walkers.varianteval.stratifications.Contig.class == clazz) { 58 | return new Contig(this, maxContigs, contigsToRetain); 59 | } 60 | 61 | return super.createVariantStratifier(clazz); 62 | } 63 | } 64 | -------------------------------------------------------------------------------- /src/main/java/com/github/discvrseq/walkers/variantqc/GATKReportTableTransformer.java: -------------------------------------------------------------------------------- 1 | package com.github.discvrseq.walkers.variantqc; 2 | 3 | 4 | import org.broadinstitute.hellbender.utils.report.GATKReportTable; 5 | import org.broadinstitute.hellbender.utils.samples.SampleDB; 6 | 7 | import javax.annotation.Nullable; 8 | 9 | /** 10 | * Created by bimber on 5/31/2017. 11 | */ 12 | public interface GATKReportTableTransformer { 13 | public String getEvalModuleName(); 14 | 15 | public GATKReportTable transform(GATKReportTable table, @Nullable SampleDB sampleDB); 16 | } 17 | -------------------------------------------------------------------------------- /src/main/java/com/github/discvrseq/walkers/variantqc/InfoFieldEvaluator.java: -------------------------------------------------------------------------------- 1 | package com.github.discvrseq.walkers.variantqc; 2 | 3 | import htsjdk.variant.variantcontext.VariantContext; 4 | import org.broadinstitute.hellbender.engine.FeatureContext; 5 | import org.broadinstitute.hellbender.engine.ReadsContext; 6 | import org.broadinstitute.hellbender.engine.ReferenceContext; 7 | import org.broadinstitute.hellbender.tools.walkers.varianteval.VariantEvalEngine; 8 | import org.broadinstitute.hellbender.tools.walkers.varianteval.evaluators.VariantEvaluator; 9 | import org.broadinstitute.hellbender.tools.walkers.varianteval.util.Analysis; 10 | import org.broadinstitute.hellbender.tools.walkers.varianteval.util.Molten; 11 | import org.broadinstitute.hellbender.tools.walkers.varianteval.util.VariantEvalContext; 12 | 13 | import java.util.HashMap; 14 | import java.util.Map; 15 | 16 | import static com.github.discvrseq.walkers.variantqc.TableReportDescriptor.InfoFieldTableReportDescriptor.getEvalModuleSimpleName; 17 | 18 | @Analysis( 19 | name = "Info Field Summary", 20 | description = "Summary of the specified INFO field", 21 | molten = true 22 | ) 23 | public class InfoFieldEvaluator extends VariantEvaluator { 24 | private final String infoFieldName; 25 | 26 | @Molten ( 27 | variableName = "Value", 28 | valueName = "Count" 29 | ) 30 | public Map counts = new HashMap<>(); 31 | private long total = 0; 32 | 33 | protected InfoFieldEvaluator(VariantEvalEngine engine, String infoFieldName) { 34 | super(engine, getEvalModuleSimpleName(infoFieldName)); 35 | this.infoFieldName = infoFieldName; 36 | } 37 | 38 | @Override 39 | public void update1(VariantContext vc, VariantEvalContext context) { 40 | if (context != null && vc.hasAttribute(infoFieldName)) { 41 | Object val = vc.getAttribute(infoFieldName); 42 | if (val != null) { 43 | String stringVal = val.toString(); 44 | 45 | Long count = counts.getOrDefault(stringVal, 0L); 46 | count += 1; 47 | 48 | counts.put(stringVal, count); 49 | } 50 | 51 | total += 1; 52 | } 53 | } 54 | 55 | @Override 56 | public int getComparisonOrder() { 57 | return 1; 58 | } 59 | 60 | @Override 61 | public void finalizeEvaluation() { 62 | if (counts.isEmpty()) { 63 | counts.put("Empty/Blank", total); 64 | } 65 | } 66 | } 67 | -------------------------------------------------------------------------------- /src/main/resources/com/github/discvrseq/util/docTemplates/README.md: -------------------------------------------------------------------------------- 1 | ## DISCVR-Seq Toolkit Documentation 2 | This branch holds the raw HTML for the DISCVR-seq Toolkit docs and is not meant for direct viewing. See [https://bimberlab.github.io/DISCVRSeq/](https://bimberlab.github.io/DISCVRSeq/) for the full docs. -------------------------------------------------------------------------------- /src/main/resources/com/github/discvrseq/util/docTemplates/_config.yml: -------------------------------------------------------------------------------- 1 | plugins: 2 | - jekyll-relative-links 3 | title: DISCVR-seq Toolkit Documentation 4 | description: The primary documentation for DISCVR-seq Toolkit 5 | relative_links: 6 | enabled: true 7 | collections: true 8 | include: 9 | - index.md 10 | theme: jekyll-theme-slate 11 | -------------------------------------------------------------------------------- /src/main/resources/com/github/discvrseq/util/docTemplates/common.html: -------------------------------------------------------------------------------- 1 | 2 | <#global siteRoot = "https://github.com/bimberlab/discvrseq" /> 3 | <#global guideIndex = "https://bimberlab.github.io/DISCVRSeq/" /> 4 | <#global forum = "https://github.com/bimberlab/discvrseq/issues/" /> 5 | 6 | <#macro footerInfo> 7 |
8 |

Return to top

9 |
10 |

See also 11 | General Documentation | 12 | Tool Docs Index Tool Docs Index | 13 | Issues/Help 14 |

15 | 16 |

DISCVR-Seq version ${version} built at ${timestamp}. 17 | <#-- closing P tag in next macro --> 18 | 19 | 20 | <#macro footerClose> 21 | <#-- ugly little hack to enable adding tool-specific info inline --> 22 |

23 | 24 | 25 | <#macro getCategories groups> 26 | 27 | 36 | 37 | 61 | 62 | 63 | -------------------------------------------------------------------------------- /src/main/resources/com/github/discvrseq/util/docTemplates/images/variantQC_ExampleReport.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BimberLab/DISCVRSeq/88e5574ba4918a17414b2973d3500f23ad9717ff/src/main/resources/com/github/discvrseq/util/docTemplates/images/variantQC_ExampleReport.jpg -------------------------------------------------------------------------------- /src/main/resources/com/github/discvrseq/util/docTemplates/index.md: -------------------------------------------------------------------------------- 1 | ## Overview 2 | DISCVR-seq Toolkit is a diverse collection of tools for working with sequencing data, developed and maintained by the Bimber Lab, built using the GATK4 engine. The set of tools is analogous to GATK or Picard. A description of all software produced by the Bimber Lab can be found [here](https://bimberlab.github.io). 3 | 4 | ## Published Tools 5 | While DISCVR-seq contains many useful tools that will not be published, a handful of the tools have their own publications: 6 | 7 | | Tool | Description | Citation | 8 | | ---- | ----------- | -------- | 9 | | [VariantQC](https://bimberlab.github.io/DISCVRSeq/toolDoc/com_github_discvrseq_walkers_variantqc_VariantQC.html) | Creates an HTML report summarizing VCF data | [VariantQC: a visual quality control report for variant evaluation. Yan MY, Ferguson B, Bimber BN. Bioinformatics. 2019 Dec 15;35(24):5370-5371. PMID: 31309221](https://pubmed.ncbi.nlm.nih.gov/31309221/) | 10 | | [IntegrationSiteMapper](https://bimberlab.github.io/DISCVRSeq/toolDoc/com_github_discvrseq_walkers_tagpcr_IntegrationSiteMapper.html) | Detect and summarize transgene integration | [Ryu J, Chan W, Wettengel JM, Hanna CB, Burwitz BJ, Hennebold JD, Bimber BN. Rapid, accurate mapping of transgene integration in viable rhesus macaque embryos using enhanced-specificity tagmentation-assisted PCR. Mol Ther Methods Clin Dev. 2022 Jan 19;24:241-254. PMID: 35211637.](https://pubmed.ncbi.nlm.nih.gov/35211637/) | 11 | 12 | ## Getting Started 13 | DISCVR-seq Toolkit is a java program distributed as a single JAR. You can download the latest JAR from our [release page](https://github.com/BimberLab/DISCVRSeq/releases). Running tools is analogous to GATK4. 14 | 15 | While we recommend [our documentation](toolDoc/index.html) to learn about available tools and options, one can also list arguments from the command line: 16 | 17 | ``` 18 | # View arguments for a specific tool (VariantQC in this example): 19 | java -jar DISCVRseq.jar VariantQC --help 20 | ``` 21 | 22 | Please note that any tool that uses a reference genome requires this genome to be indexed with samtools and to have a sequence dictionary created with Picard. These requirements are identical to most tools from GATK or Picard. [See here for more information](toolDoc/resources/genomeRequirements.html) 23 | 24 | ## List of Tools 25 | [Our complete list of tools and arguments is available here](toolDoc/index.html). View each tool's page for more information about usage. 26 | 27 | 28 | ## Docker 29 | 30 | By popular demand, DISCVR-seq releases are available as docker images, via [GitHub Packages](https://github.com/orgs/BimberLab/packages/container/package/discvrseq). We recommend using a specific release, which you can do using tags: 31 | 32 | ``` 33 | 34 | # Pull specific version: 35 | docker pull ghcr.io/bimberlab/discvrseq:1.20 36 | 37 | # Pull latest version: 38 | docker pull ghcr.io/bimberlab/discvrseq:latest 39 | # Or: 40 | docker pull ghcr.io/bimberlab/discvrseq 41 | 42 | # Running the container will automatically run DISCVRseq (equivalent to java -jar DISCVRseq.jar ...): 43 | docker run ghcr.io/bimberlab/discvrseq VariantQC --help 44 | 45 | ``` -------------------------------------------------------------------------------- /src/main/resources/com/github/discvrseq/util/docTemplates/resources/genomeRequirements.html: -------------------------------------------------------------------------------- 1 | 2 | Genome Requirements 3 | 4 |
5 |

Back to Tool Docs Index

6 |
7 |
8 | 9 |
10 |

DISCVR-Seq Genome Requirements:

11 | 12 | 13 | Any genome FASTA files used with DISCVR-seq tools must be indexed with samtools faidx, and have a sequence dictionary created by Picard's CreateSequenceDictionary. These requirements are identical to most tools from GATK and Picard. 14 | 15 |

16 | See here for more information on the purpose of the index/dictionary files. 17 | 18 |

19 | Below are example commands to create these files: 20 |
21 | 22 |
23 |     samtools faidx reference.fasta
24 | 
25 |     java -jar picard.jar CreateSequenceDictionary \
26 |         R=reference.fasta \
27 |         O=reference.dict
28 | 
29 | 30 |
31 | -------------------------------------------------------------------------------- /src/main/resources/com/github/discvrseq/walkers/tagpcr/Lentivirus.yml: -------------------------------------------------------------------------------- 1 | name: Lentivirus 2 | junctions: 3 | - name: LV-3LTR 4 | searchStrings: [ AGTGTGGAAAATCTCTAGCA ] 5 | invertHitOrientation: false 6 | - name: LV-5LTR 7 | searchStrings: [ TGGAAGGGCTAATTCACTCC ] 8 | invertHitOrientation: true 9 | insertUpstreamRegion: 10 | name: LV-5LTR 11 | sequence: TGGAAGGGCTAATTCACTCCCAAAGAAGACAAGATATCCTTGATCTGTGGATCTACCACACACAAGGCTACTTCCCTGATTAGCAGAACTACACACCAGGGCCAGGGGTCAGATATCCACTGACCTTTGGATGGTGCTACAAGCTAGTACCAGTTGAGCCAGATAAGGTAGAAGAGGCCAATAAAGGAGAGAACACCAGCTTGTTACACCCTGTGAGCCTGCATGGGATGGATGACCCGGAGAGAGAAGTGTTAGAGTGGAGGTTTGACAGCCGCCTAGCATTTCATCACGTGGCCCGAGAGCTGCATCCGGAGTACTTCAAGAACTGCTGATATCGAGCTTGCTACAAGGGACTTTCCGCTGGGGACTTTCCAGGGAGGCGTGGCCTGGGCGGGACTGGGGAGTGGCGAGCCCTCAGATCCTGCATATAAGCAGCTGCTTTTTGCCTGTACTGGGTCTCTCTGGTTAGACCAGATCTGAGCCTGGGAGCTCTCTGGCTAACTAGGGAACCCACTGCTTAAGCCTCAATAAAGCTTGCCTTGAGTGCTTCAAGTAGTGTGTGCCCGTCTGTTGTGTGACTCTGGTAACTAGAGATCCCTCAGACCCTTTTAGTCAGTGTGGAAAATCTCTAGCA 12 | insertDownstreamRegion: 13 | name: LV-3LTR 14 | sequence: TGGAAGGGCTAATTCACTCCCAACGAAGACAAGATATCCTTGATCTGTGGATCTACCACACACAAGGCTACTTCCCTGATTAGCAGAACTACACACCAGGGCCAGGGGTCAGATATCCACTGACCTTTGGATGGTGCTACAAGCTAGTACCAGTTGAGCCAGATAAGGTAGAAGAGGCCAATAAAGGAGAGAACACCAGCTTGTTACACCCTGTGAGCCTGCATGGGATGGATGACCCGGAGAGAGAAGTGTTAGAGTGGAGGTTTGACAGCCGCCTAGCATTTCATCACGTGGCCCGAGAGCTGCATCCGGAGTACTTCAAGAACTGCTGATATCGAGCTTGCTACAAGGGACTTTCCGCTGGGGACTTTCCAGGGAGGCGTGGCCTGGGCGGGACTGGGGAGTGGCGAGCCCTCAGATCCTGCATATAAGCAGCTGCTTTTTGCCTGTACTGGGTCTCTCTGGTTAGACCAGATCTGAGCCTGGGAGCTCTCTGGCTAACTAGGGAACCCACTGCTTAAGCCTCAATAAAGCTTGCCTTGAGTGCTTCAAGTAGTGTGTGCCCGTCTGTTGTGTGACTCTGGTAACTAGAGATCCCTCAGACCCTTTTAGTCAGTGTGGAAAATCTCTAGCA 15 | internalPrimers: 16 | - name: LV-3LTR-Outer 17 | sequence: GAGAGCTGCATCCGGAGTAC 18 | - name: LV-3LTR-Inner 19 | sequence: TAGTGTGTGCCCGTCTGTTG 20 | - name: LV-5LTR-Outer 21 | sequence: TCCTCTGGTTTCCCTTTCGC 22 | - name: LV-5LTR-Inner 23 | sequence: AAGCAGTGGGTTCCCTAGTT -------------------------------------------------------------------------------- /src/main/resources/com/github/discvrseq/walkers/tagpcr/esTag-PCR-PREDICT.yml: -------------------------------------------------------------------------------- 1 | name: esTag-PCR PREDICT 2 | junctions: 3 | - name: PB-3TR 4 | searchStrings: [ GCAGACTATCTTTCTAGGGTTAA ] 5 | invertHitOrientation: false 6 | offset: -2 7 | - name: PB-5TR 8 | searchStrings: [ ATGATTATCTTTCTAGGGTTAA ] 9 | invertHitOrientation: true 10 | offset: -2 11 | insertUpstreamRegion: 12 | name: PB-5TR 13 | sequence: TTAACCCTAGAAAGATAATCATATTGTGACGTACGTTAAAGATAATCATGCGTAAAATTGACGCATGTTGGCTCCGGTGCCCGTCAGTGGGCAGAGCGCACATCGCCCACAGTCCCCGAGAAGTTGGGGGGAGGGGTCGGCAATTGAACCGGTGCCTAGAGAAGGTGGCGCGGGGTAAACTGGGAAAGTGATGTCGTGTACTGGCTCCGCCTTTTTCCCGAGGGTGGGGGAGAACCGTATATAAGTGCAGTAGTCGCCGTGAACGTTCTTTTTCGCAACGGGTTTGCCGCCAGAACACAGGTAAGTGCCGTGTGTGGTTCCCGCGGGCCTGGCCTCTTTACGGGTTATGGCCCTTGCGTGCCTTGAATTACTTCCACGCCCCTGGCTGCAGTACGTGATTCTTGATCCCGAGCTTCGGGTTGGAAGTGGGTGGGAGAGTTCGAGGCCTTG 14 | insertDownstreamRegion: 15 | name: PB-3TR 16 | sequence: GGACGGCGGCCACTACGACGCTGAGGTCAAGACCACCTACAAGGCCAAGAAGCCCGTGCAGCTGCCCGGCGCCTACAACGTCAACATCAAGTTGGACATCACCTCCCACAACGAGGACTACACCATCGTGGAACAGTACGAACGCGCCGAGGGCCGCCACTCCACCGGCGGCATGGACGAGCTGTACAAGTAGCTTAAGCCATGGCCCTAGCTAAGTGAAACTTGTTTATTGCAGCTTATAATGGTTACAAATAAAGCAATAGCATCACAAATTTCACAAATAAAGCATTTTTTTCACTGCATTCTAGTTGTGGTTTGTCCAAACTCATCAATGTATCTTATCATGTCTGGATCTCCGGATAGCTAAGTGACATGCGTCAATTTTACGCAGACTATCTTTCTAGGGTTAA 17 | internalPrimers: 18 | - name: PB-3TR-Nested4 19 | sequence: CATTGACAAGCACGCCTCAC 20 | - name: PB-NTSR2-R2 21 | sequence: GCGACGGATTCGCGCTATTT 22 | - name: Predict-5TR-Outer 23 | sequence: AGCTAAGTGACATGCGTCAATTTTA 24 | - name: Predict-3TR-Outer-V2 25 | sequence: TCAATTTTACGCATGATTATCTTTAAC 26 | - name: PB-RCR1 27 | sequence: GACCGATAAAACACATGCGTCA 28 | backboneSearchStrings: [ TGTGTACCACTTCACCGGCG, TCACCGGCGGACCTTGCGCC, ACCTTGCGCCGAACTGGTTG, TGGCAGAATCTTCACAGGCG, TGTCCTCCGATGGCAGAATC, TCTGCTGCCCTGTCCTCCGA ] -------------------------------------------------------------------------------- /src/main/resources/com/github/discvrseq/walkers/tagpcr/pENTR-PB511-Repro.yml: -------------------------------------------------------------------------------- 1 | name: PiggyBac 2 | junctions: 3 | - name: PB-3TR 4 | searchStrings: [ GCAGACTATCTTTCTAGGGTTAA ] 5 | invertHitOrientation: false 6 | offset: -2 7 | - name: PB-5TR 8 | searchStrings: [ ATGATTATCTTTCTAGGGTTAA ] 9 | invertHitOrientation: true 10 | offset: -2 11 | insertUpstreamRegion: 12 | name: PB-5TR 13 | sequence: TTAACCCTAGAAAGATAATCATATTGTGACGTACGTTAAAGATAATCATGTGTAAAATTGACGCATGTGTTTTATCGGTCTGTATATCGAGGTTTATTTATTAATTTGAATAGATATTAAGTTTTATTATATTTACACTTACATACTAATAATAAATTCAACAAACAATTTATTTATGTTTATTTATTTATTAAAAAAAACAAAAACTCAAAATTTCTTCTATAAAGTAACAAAACTTTTATGAGGGACAGCCCCCCCCCAAAGCCCCCAGGGATGTAATTACGTCCCTCCCCCGCTAGGGGGCAGCAGCGAGCCGCCCGGGGCTCCGCTCCGGTCCGGCGCTCCCCCCGCATCCCCGAGCCGGCAGCGTGCGGGGACAGCCCGGGCACGGGGAAGGTGGCACGGGATCGCTTTCCTCTGAACGCTTCTCGCTGCTCTTTGAGCCTGCAGACACCTGGGGGGATA 14 | insertDownstreamRegion: 15 | name: PB-3TR 16 | sequence: CGTAAAAGATAATCATGCGTCATTTTGACTCACGCGGTCGTTATAGTTCAAAATCAGTGACACTTACCGCATTGACAAGCACGCCTCACGGGAGCTCCAAGCGGCGACTGAGATGTCCTAAATGCACAGCGACGGATTCGCGCTATTTAGAAAGAGAGAGCAATATTTCAAGAATGCATGCGTCAATTTTACGCAGACTATCTTTCTAGGGTTAA 17 | internalPrimers: 18 | - name: PB-3TR-Nested4 19 | sequence: CATTGACAAGCACGCCTCAC 20 | - name: PB-NTSR2-R2 21 | sequence: GCGACGGATTCGCGCTATTT 22 | - name: PB-3TR-Nested 23 | sequence: ATTTCAAGAATGCATGCGTCA 24 | - name: PB-5TR-New 25 | sequence: CACATGATTATCTTTAACGTACGTCAC 26 | - name: PB-RCR1 27 | sequence: GACCGATAAAACACATGCGTCA 28 | backboneSearchStrings: [ TCTAGCTGCATCAGGATCAT, TCAGGATCATATCGTCGGGT, TCTAGCTGCGTGTTCTGCAG, GTGTTCTGCAGCGTGTCGAG ] -------------------------------------------------------------------------------- /src/main/resources/com/github/discvrseq/walkers/variantqc/templates/assets/fonts/glyphicons-halflings-regular.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BimberLab/DISCVRSeq/88e5574ba4918a17414b2973d3500f23ad9717ff/src/main/resources/com/github/discvrseq/walkers/variantqc/templates/assets/fonts/glyphicons-halflings-regular.eot -------------------------------------------------------------------------------- /src/main/resources/com/github/discvrseq/walkers/variantqc/templates/assets/fonts/glyphicons-halflings-regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BimberLab/DISCVRSeq/88e5574ba4918a17414b2973d3500f23ad9717ff/src/main/resources/com/github/discvrseq/walkers/variantqc/templates/assets/fonts/glyphicons-halflings-regular.ttf -------------------------------------------------------------------------------- /src/main/resources/com/github/discvrseq/walkers/variantqc/templates/assets/fonts/glyphicons-halflings-regular.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BimberLab/DISCVRSeq/88e5574ba4918a17414b2973d3500f23ad9717ff/src/main/resources/com/github/discvrseq/walkers/variantqc/templates/assets/fonts/glyphicons-halflings-regular.woff -------------------------------------------------------------------------------- /src/main/resources/com/github/discvrseq/walkers/variantqc/templates/assets/fonts/glyphicons-halflings-regular.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BimberLab/DISCVRSeq/88e5574ba4918a17414b2973d3500f23ad9717ff/src/main/resources/com/github/discvrseq/walkers/variantqc/templates/assets/fonts/glyphicons-halflings-regular.woff2 -------------------------------------------------------------------------------- /src/main/resources/com/github/discvrseq/walkers/variantqc/templates/assets/js/multiqc.js: -------------------------------------------------------------------------------- 1 | //////////////////////////////////////////////// 2 | // Base JS for MultiQC Reports 3 | //////////////////////////////////////////////// 4 | 5 | // Helper config - is defined and object length > 0? 6 | function notEmptyObj (obj){ 7 | try{ 8 | if(obj === undefined){ return false; } 9 | if(obj.length == 0){ return false; } 10 | } catch(e){ return false; } 11 | return true; 12 | } 13 | 14 | $(function () { 15 | 16 | // Enable the bootstrap tooltip hovers 17 | $('[data-toggle="tooltip"]').tooltip(); 18 | 19 | // Side nav expansion 20 | $('#side-nav-handle').click(function(e){ 21 | $('.mainpage, .side-nav, .footer').toggleClass('hidden-nav'); 22 | $('#side-nav-handle span').toggleClass('glyphicon-triangle-left glyphicon-triangle-right'); 23 | // send resize trigger for replotting after css animation 24 | setTimeout(function(){ $(document).resize(); }, 510); 25 | }); 26 | 27 | // Hide welcome alert if setting saved 28 | try { 29 | var hide_welcome = localStorage.getItem("mqc_hide_welcome"); 30 | if(hide_welcome !== 'true'){ 31 | $('#mqc_header_hr').slideUp(); 32 | $('#mqc_welcome').slideDown(); 33 | } 34 | $('#mqc_hide_welcome_btn').click(function(e){ 35 | localStorage.setItem("mqc_hide_welcome", 'true'); 36 | }); 37 | } catch(e){ 38 | console.log("Could not access localStorage: "+e+"\nPlease disable 'Block third-party cookies and site data' or browser equivalent.") 39 | } 40 | $('#mqc_hide_welcome_btn, #mqc_welcome .close').click(function(e){ 41 | $('#mqc_header_hr').show(); 42 | }); 43 | 44 | }); -------------------------------------------------------------------------------- /src/main/resources/com/github/discvrseq/walkers/variantqc/templates/assets/js/packages/FileSaver.min.js: -------------------------------------------------------------------------------- 1 | /*! @source http://purl.eligrey.com/github/FileSaver.js/blob/master/FileSaver.js */ 2 | var saveAs=saveAs||function(e){"use strict";if(typeof e==="undefined"||typeof navigator!=="undefined"&&/MSIE [1-9]\./.test(navigator.userAgent)){return}var t=e.document,n=function(){return e.URL||e.webkitURL||e},r=t.createElementNS("http://www.w3.org/1999/xhtml","a"),o="download"in r,a=function(e){var t=new MouseEvent("click");e.dispatchEvent(t)},i=/constructor/i.test(e.HTMLElement)||e.safari,f=/CriOS\/[\d]+/.test(navigator.userAgent),u=function(t){(e.setImmediate||e.setTimeout)(function(){throw t},0)},s="application/octet-stream",d=1e3*40,c=function(e){var t=function(){if(typeof e==="string"){n().revokeObjectURL(e)}else{e.remove()}};setTimeout(t,d)},l=function(e,t,n){t=[].concat(t);var r=t.length;while(r--){var o=e["on"+t[r]];if(typeof o==="function"){try{o.call(e,n||e)}catch(a){u(a)}}}},p=function(e){if(/^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(e.type)){return new Blob([String.fromCharCode(65279),e],{type:e.type})}return e},v=function(t,u,d){if(!d){t=p(t)}var v=this,w=t.type,m=w===s,y,h=function(){l(v,"writestart progress write writeend".split(" "))},S=function(){if((f||m&&i)&&e.FileReader){var r=new FileReader;r.onloadend=function(){var t=f?r.result:r.result.replace(/^data:[^;]*;/,"data:attachment/file;");var n=e.open(t,"_blank");if(!n)e.location.href=t;t=undefined;v.readyState=v.DONE;h()};r.readAsDataURL(t);v.readyState=v.INIT;return}if(!y){y=n().createObjectURL(t)}if(m){e.location.href=y}else{var o=e.open(y,"_blank");if(!o){e.location.href=y}}v.readyState=v.DONE;h();c(y)};v.readyState=v.INIT;if(o){y=n().createObjectURL(t);setTimeout(function(){r.href=y;r.download=u;a(r);h();c(y);v.readyState=v.DONE});return}S()},w=v.prototype,m=function(e,t,n){return new v(e,t||e.name||"download",n)};if(typeof navigator!=="undefined"&&navigator.msSaveOrOpenBlob){return function(e,t,n){t=t||e.name||"download";if(!n){e=p(e)}return navigator.msSaveOrOpenBlob(e,t)}}w.abort=function(){};w.readyState=w.INIT=0;w.WRITING=1;w.DONE=2;w.error=w.onwritestart=w.onprogress=w.onwrite=w.onabort=w.onerror=w.onwriteend=null;return m}(typeof self!=="undefined"&&self||typeof window!=="undefined"&&window||this.content);if(typeof module!=="undefined"&&module.exports){module.exports.saveAs=saveAs}else if(typeof define!=="undefined"&&define!==null&&define.amd!==null){define("FileSaver.js",function(){return saveAs})} 3 | -------------------------------------------------------------------------------- /src/main/resources/com/github/discvrseq/walkers/variantqc/templates/template1.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | VariantQC Report -------------------------------------------------------------------------------- /src/test/java/com/github/discvrseq/walkers/AnnotateNovelSitesTest.java: -------------------------------------------------------------------------------- 1 | package com.github.discvrseq.walkers; 2 | 3 | import org.broadinstitute.hellbender.testutils.ArgumentsBuilder; 4 | import org.broadinstitute.hellbender.testutils.IntegrationTestSpec; 5 | import org.testng.annotations.Test; 6 | 7 | import java.io.File; 8 | import java.util.Arrays; 9 | 10 | public class AnnotateNovelSitesTest extends BaseIntegrationTest { 11 | 12 | @Test 13 | public void testBasicOperation() throws Exception { 14 | ArgumentsBuilder args = getBaseArgs(); 15 | 16 | args.addRaw("--variant"); 17 | File input = new File(testBaseDir, "ClinvarAnnotator.vcf"); 18 | ensureVcfIndex(input); 19 | args.addRaw(normalizePath(input)); 20 | 21 | args.addRaw("-rv"); 22 | File ref = new File(testBaseDir, "AnnotateNovelSitesRef.vcf"); 23 | ensureVcfIndex(ref); 24 | args.addRaw(normalizePath(ref)); 25 | 26 | args.add("an", "mGAPV"); 27 | args.add("ad", "'The first mGAP version where variants at this site appeared'"); 28 | args.add("av", "2.0"); 29 | 30 | args.addRaw("-ns"); 31 | args.addRaw("%s"); 32 | args.addRaw("-ms"); 33 | args.addRaw("%s"); 34 | 35 | IntegrationTestSpec spec = new IntegrationTestSpec( 36 | args.getString(), 37 | Arrays.asList( 38 | getTestFile("output.vcf").getPath(), 39 | getTestFile("novel.vcf").getPath(), 40 | getTestFile("missing.vcf").getPath() 41 | )); 42 | 43 | spec.executeTest("testBasicOperation", this); 44 | } 45 | 46 | private ArgumentsBuilder getBaseArgs() { 47 | ArgumentsBuilder args = new ArgumentsBuilder(); 48 | args.add("R", normalizePath(getHg19Micro())); 49 | 50 | args.addRaw("-O"); 51 | args.addRaw("%s"); 52 | args.addRaw("--tmp-dir"); 53 | args.addRaw(getTmpDir()); 54 | 55 | return args; 56 | } 57 | 58 | @Test 59 | public void testWithoutRef() throws Exception { 60 | ArgumentsBuilder args = getBaseArgs(); 61 | 62 | args.addRaw("--variant"); 63 | File input = new File(testBaseDir, "ClinvarAnnotator.vcf"); 64 | ensureVcfIndex(input); 65 | args.addRaw(normalizePath(input)); 66 | 67 | args.addRaw("--allow-missing-ref"); 68 | 69 | args.add("an", "mGAPV"); 70 | args.add("ad", "'The first mGAP version where variants at this site appeared'"); 71 | args.add("av", "2.0"); 72 | 73 | IntegrationTestSpec spec = new IntegrationTestSpec( 74 | args.getString(), 75 | Arrays.asList( 76 | getTestFile("outputNoRef.vcf").getPath() 77 | )); 78 | 79 | spec.executeTest("testBasicOperation", this); 80 | } 81 | } 82 | -------------------------------------------------------------------------------- /src/test/java/com/github/discvrseq/walkers/AppendGenotypesIntegrationTest.java: -------------------------------------------------------------------------------- 1 | package com.github.discvrseq.walkers; 2 | 3 | import htsjdk.tribble.bed.BEDCodec; 4 | import org.broadinstitute.hellbender.testutils.ArgumentsBuilder; 5 | import org.broadinstitute.hellbender.testutils.IntegrationTestSpec; 6 | import org.testng.annotations.Test; 7 | 8 | import java.io.File; 9 | import java.util.Arrays; 10 | 11 | public class AppendGenotypesIntegrationTest extends BaseIntegrationTest { 12 | 13 | @Test 14 | public void testBasicOperation() throws Exception { 15 | ArgumentsBuilder args = getBaseArgs(); 16 | 17 | String fn = "append1.vcf"; 18 | 19 | args.addRaw("-O"); 20 | args.addRaw("%s"); 21 | args.addRaw("--tmp-dir"); 22 | args.addRaw(getTmpDir()); 23 | 24 | IntegrationTestSpec spec = new IntegrationTestSpec( 25 | args.getString(), 26 | Arrays.asList(getTestFile(fn).getPath())); 27 | 28 | spec.executeTest("testBasicOperation", this); 29 | } 30 | 31 | private ArgumentsBuilder getBaseArgs() { 32 | ArgumentsBuilder args = new ArgumentsBuilder(); 33 | 34 | args.addRaw("--variant"); 35 | File input = new File(testBaseDir, "basicVcf.vcf"); 36 | ensureVcfIndex(input); 37 | 38 | args.addRaw(normalizePath(input)); 39 | 40 | args.addRaw("-g"); 41 | File geno1 = new File(testBaseDir, "genotypeAppend1.vcf"); 42 | ensureVcfIndex(geno1); 43 | args.addRaw(normalizePath(geno1)); 44 | 45 | args.addRaw("-g"); 46 | File geno2 = new File(testBaseDir, "genotypeAppend2.vcf"); 47 | ensureVcfIndex(geno2); 48 | args.addRaw(normalizePath(geno2)); 49 | 50 | return args; 51 | } 52 | } 53 | -------------------------------------------------------------------------------- /src/test/java/com/github/discvrseq/walkers/BackportLiftedVcfIntegrationTest.java: -------------------------------------------------------------------------------- 1 | package com.github.discvrseq.walkers; 2 | 3 | import htsjdk.samtools.util.IOUtil; 4 | import org.broadinstitute.hellbender.testutils.IntegrationTestSpec; 5 | import org.broadinstitute.hellbender.utils.io.IOUtils; 6 | import org.testng.annotations.Test; 7 | 8 | import java.io.*; 9 | import java.util.Arrays; 10 | 11 | public class BackportLiftedVcfIntegrationTest extends BaseIntegrationTest { 12 | private static File testBaseDir = new File(publicTestDir + "com/github/discvrseq/walkers/BackportLiftedVcf"); 13 | 14 | @Test 15 | public void doBasicTest() throws Exception { 16 | File fasta = getHg19Micro(); 17 | 18 | IntegrationTestSpec spec = new IntegrationTestSpec( 19 | " -R " + normalizePath(fasta) + 20 | " -V " + normalizePath(getInputVcf()) + 21 | " --targetFasta " + normalizePath(fasta) + 22 | " -O " + "%s" + 23 | " --tmp-dir " + getTmpDir(), 24 | Arrays.asList(testBaseDir + "/backportLiftedOutput.vcf")); 25 | 26 | spec.executeTest("doBasicTest", this); 27 | } 28 | 29 | @Test 30 | public void doBasicTestBcftools() throws Exception { 31 | File fasta = getHg19Micro(); 32 | 33 | File tempVcf = IOUtils.createTempFile("backportLiftedBcftools", ".vcf"); 34 | try (BufferedReader reader = IOUtil.openFileForBufferedUtf8Reading(getInputVcf()); PrintWriter writer = new PrintWriter(IOUtil.openFileForBufferedUtf8Writing(tempVcf))) { 35 | String line; 36 | while ((line = reader.readLine()) != null) { 37 | line = line.replaceAll(BackportLiftedVcf.ORIGINAL_CONTIG, BackportLiftedVcf.ORIGINAL_CONTIG_BCF); 38 | line = line.replaceAll(BackportLiftedVcf.ORIGINAL_START, BackportLiftedVcf.ORIGINAL_START_BCF); 39 | line = line.replaceAll(BackportLiftedVcf.ORIGINAL_ALLELES, BackportLiftedVcf.ORIGINAL_ALLELES_BCF); 40 | 41 | writer.println(line); 42 | } 43 | } 44 | 45 | try { 46 | IntegrationTestSpec spec = new IntegrationTestSpec( 47 | " -R " + normalizePath(fasta) + 48 | " -V " + normalizePath(tempVcf) + 49 | " --targetFasta " + normalizePath(fasta) + 50 | " -O " + "%s" + 51 | " --tmp-dir " + getTmpDir(), 52 | Arrays.asList(testBaseDir + "/backportLiftedOutput.vcf")); 53 | 54 | spec.executeTest("doBasicTest", this); 55 | } 56 | finally { 57 | tempVcf.delete(); 58 | } 59 | } 60 | 61 | private File getInputVcf(){ 62 | return new File(testBaseDir, "backportLifted.vcf"); 63 | } 64 | } 65 | -------------------------------------------------------------------------------- /src/test/java/com/github/discvrseq/walkers/ClinvarAnnotatorIntegrationTest.java: -------------------------------------------------------------------------------- 1 | package com.github.discvrseq.walkers; 2 | 3 | import org.broadinstitute.hellbender.testutils.ArgumentsBuilder; 4 | import org.broadinstitute.hellbender.testutils.IntegrationTestSpec; 5 | import org.testng.annotations.Test; 6 | 7 | import java.io.File; 8 | import java.util.Arrays; 9 | 10 | public class ClinvarAnnotatorIntegrationTest extends BaseIntegrationTest { 11 | 12 | @Test 13 | public void testBasicOperation() throws Exception { 14 | ArgumentsBuilder args = getBaseArgs(); 15 | 16 | doTest("testBasicOperation", args, "ClinvarAnnotatorOutput.vcf"); 17 | } 18 | 19 | private void doTest(String name, ArgumentsBuilder args, String fn) throws Exception { 20 | args.addRaw("-O"); 21 | args.addRaw("%s"); 22 | args.addRaw("--tmp-dir"); 23 | args.addRaw(getTmpDir()); 24 | 25 | File fasta = getHg19Micro(); 26 | args.addRaw("-R"); 27 | args.addRaw(normalizePath(fasta)); 28 | 29 | IntegrationTestSpec spec = new IntegrationTestSpec( 30 | args.getString(), 31 | Arrays.asList(getTestFile(fn).getPath())); 32 | 33 | spec.executeTest(name, this); 34 | } 35 | 36 | private ArgumentsBuilder getBaseArgs() { 37 | ArgumentsBuilder args = new ArgumentsBuilder(); 38 | 39 | //Must also create index once for clinvar VCF 40 | args.addRaw("--clinvar"); 41 | File clinvar = new File(testBaseDir, "clinvarV2.vcf"); 42 | ensureVcfIndex(clinvar); 43 | args.addRaw(normalizePath(clinvar)); 44 | 45 | args.addRaw("--variant"); 46 | File input = new File(testBaseDir, "ClinvarAnnotator.vcf"); 47 | ensureVcfIndex(input); 48 | args.addRaw(normalizePath(input)); 49 | 50 | return args; 51 | } 52 | } 53 | -------------------------------------------------------------------------------- /src/test/java/com/github/discvrseq/walkers/ClipOverlappingAlignmentsIntegrationTest.java: -------------------------------------------------------------------------------- 1 | package com.github.discvrseq.walkers; 2 | 3 | import org.broadinstitute.hellbender.testutils.IntegrationTestSpec; 4 | import org.broadinstitute.hellbender.testutils.SamAssertionUtils; 5 | import org.broadinstitute.hellbender.utils.io.IOUtils; 6 | import org.testng.annotations.Test; 7 | 8 | import java.io.File; 9 | import java.util.Collections; 10 | 11 | public class ClipOverlappingAlignmentsIntegrationTest extends BaseIntegrationTest{ 12 | @Test 13 | public void doBasicTest() throws Exception{ 14 | File fasta = getTestFile("SIVmac239.fasta"); 15 | File bam = getTestFile("clipInput.sam"); 16 | File bed = getTestFile("SIVmac239-overlap.bed"); 17 | 18 | File outFile = IOUtils.createTempFile("clipOverlappingAlignmentsIntegrationTest", ".sam"); 19 | File outReport = IOUtils.createTempFile("clipOverlappingAlignmentsIntegrationTest", ".txt"); 20 | 21 | IntegrationTestSpec spec = new IntegrationTestSpec( 22 | " -R " + normalizePath(fasta) + 23 | " -I " + normalizePath(bam) + 24 | " --clipIntervals " + normalizePath(bed) + 25 | " -rf " + normalizePath(outReport) + 26 | " -O " + normalizePath(outFile) + 27 | " --tmp-dir " + getTmpDir(), 28 | Collections.emptyList()); 29 | 30 | spec.executeTest("doBasicTest", this); 31 | 32 | File expectedOutput = getTestFile("expectedOutput.sam"); 33 | SamAssertionUtils.assertSamsEqual(outFile, expectedOutput); 34 | 35 | File expectedReport = getTestFile("expectedOutput.txt"); 36 | IntegrationTestSpec.assertEqualTextFiles(outReport, expectedReport); 37 | 38 | outFile.delete(); 39 | outReport.delete(); 40 | } 41 | 42 | @Test 43 | public void doOneBpTest() throws Exception{ 44 | File bam = getTestFile("testSAM.sam"); 45 | File bed = getTestFile("intervals.bed"); 46 | 47 | File outFile = IOUtils.createTempFile("clipOverlappingAlignmentsIntegrationTest", ".sam"); 48 | File outReport = IOUtils.createTempFile("clipOverlappingAlignmentsIntegrationTest", ".txt"); 49 | 50 | IntegrationTestSpec spec = new IntegrationTestSpec( 51 | " -I " + normalizePath(bam) + 52 | " --clipIntervals " + normalizePath(bed) + 53 | " -rf " + normalizePath(outReport) + 54 | " -O " + normalizePath(outFile) + 55 | " --tmp-dir " + getTmpDir(), 56 | Collections.emptyList()); 57 | 58 | spec.executeTest("doBasicTest", this); 59 | 60 | File expectedOutput = getTestFile("expectedOutput2.sam"); 61 | SamAssertionUtils.assertSamsEqual(outFile, expectedOutput); 62 | 63 | File expectedReport = getTestFile("expectedOutput2.txt"); 64 | IntegrationTestSpec.assertEqualTextFiles(outReport, expectedReport); 65 | 66 | outFile.delete(); 67 | outReport.delete(); 68 | } 69 | } 70 | -------------------------------------------------------------------------------- /src/test/java/com/github/discvrseq/walkers/CrossSampleGenotypeComparisonIntegrationTest.java: -------------------------------------------------------------------------------- 1 | package com.github.discvrseq.walkers; 2 | 3 | import htsjdk.tribble.bed.BEDCodec; 4 | import org.broadinstitute.hellbender.testutils.ArgumentsBuilder; 5 | import org.broadinstitute.hellbender.testutils.IntegrationTestSpec; 6 | import org.testng.annotations.Test; 7 | 8 | import java.io.File; 9 | import java.util.Arrays; 10 | 11 | public class CrossSampleGenotypeComparisonIntegrationTest extends BaseIntegrationTest { 12 | 13 | @Test 14 | public void testBasicOperation() throws Exception { 15 | ArgumentsBuilder args = getBaseArgs(); 16 | 17 | IntegrationTestSpec spec = new IntegrationTestSpec( 18 | args.getString(), 19 | Arrays.asList( 20 | getTestFile("crossSampleGenotypeComparison.txt").getPath(), 21 | getTestFile("crossSampleGenotypeComparisonSummary.txt").getPath() 22 | )); 23 | 24 | spec.executeTest("testBasicOperation", this); 25 | } 26 | 27 | private ArgumentsBuilder getBaseArgs() { 28 | ArgumentsBuilder args = new ArgumentsBuilder(); 29 | 30 | args.addRaw("--variant"); 31 | File input = new File(testBaseDir, "MendelianViolationEval.vcf"); 32 | ensureVcfIndex(input); 33 | 34 | args.addRaw(normalizePath(input)); 35 | 36 | args.addRaw("-referenceVCF"); 37 | args.addRaw(normalizePath(input)); 38 | 39 | args.addRaw("-O"); 40 | args.addRaw("%s"); 41 | args.addRaw("-summaryTable"); 42 | args.addRaw("%s"); 43 | args.addRaw("--tmp-dir"); 44 | args.addRaw(getTmpDir()); 45 | 46 | return args; 47 | } 48 | } 49 | -------------------------------------------------------------------------------- /src/test/java/com/github/discvrseq/walkers/ExtendedFuncotatorIntegrationTest.java: -------------------------------------------------------------------------------- 1 | package com.github.discvrseq.walkers; 2 | 3 | import org.broadinstitute.hellbender.testutils.ArgumentsBuilder; 4 | import org.broadinstitute.hellbender.testutils.IntegrationTestSpec; 5 | import org.broadinstitute.hellbender.utils.codecs.gtf.EnsemblGtfCodec; 6 | import org.broadinstitute.hellbender.utils.codecs.table.TableCodec; 7 | import org.testng.annotations.Test; 8 | 9 | import java.io.File; 10 | import java.util.Arrays; 11 | 12 | public class ExtendedFuncotatorIntegrationTest extends BaseIntegrationTest { 13 | 14 | @Test 15 | public void testBasicOperation() throws Exception { 16 | ArgumentsBuilder args = getBaseArgs(); 17 | 18 | args.addRaw("--variant"); 19 | File input = new File(testBaseDir, "simpleTest.vcf"); 20 | ensureVcfIndex(input); 21 | args.addRaw(normalizePath(input)); 22 | 23 | IntegrationTestSpec spec = new IntegrationTestSpec( 24 | args.getString(), 25 | Arrays.asList( 26 | getTestFile("funcotator1.vcf").getPath() 27 | )); 28 | 29 | spec.executeTest("testBasicOperation", this); 30 | } 31 | 32 | private ArgumentsBuilder getBaseArgs() { 33 | ArgumentsBuilder args = new ArgumentsBuilder(); 34 | args.add("R", normalizePath(getHg19Micro())); 35 | args.add("ref-version", "hg19"); 36 | 37 | args.add("data-sources-path", normalizePath(new File(testBaseDir, "funcotator"))); 38 | args.add("output-file-format", "VCF"); 39 | args.add("cf", normalizePath(new File(testBaseDir, "funcotator/funcotatorFields.txt"))); 40 | 41 | args.addRaw("-O"); 42 | args.addRaw("%s"); 43 | args.addRaw("--tmp-dir"); 44 | args.addRaw(getTmpDir()); 45 | 46 | ensureIndex(new File(testBaseDir, "funcotator/testSource/hg19/testSource.table"), new TableCodec()); 47 | ensureIndex(new File(testBaseDir, "funcotator/gencode/hg19/hg19.gtf"), new EnsemblGtfCodec()); 48 | ensureVcfIndex(new File(testBaseDir, "funcotator/vcfTestSource/hg19/vcfTestSource.vcf")); 49 | 50 | return args; 51 | } 52 | } 53 | -------------------------------------------------------------------------------- /src/test/java/com/github/discvrseq/walkers/GenotypeFilterBySampleIntegrationTest.java: -------------------------------------------------------------------------------- 1 | package com.github.discvrseq.walkers; 2 | 3 | import htsjdk.tribble.bed.BEDCodec; 4 | import org.broadinstitute.hellbender.testutils.ArgumentsBuilder; 5 | import org.broadinstitute.hellbender.testutils.IntegrationTestSpec; 6 | import org.testng.annotations.Test; 7 | 8 | import java.io.File; 9 | import java.util.Arrays; 10 | 11 | public class GenotypeFilterBySampleIntegrationTest extends BaseIntegrationTest { 12 | 13 | @Test 14 | public void testBasicOperation() throws Exception { 15 | ArgumentsBuilder args = getBaseArgs(); 16 | 17 | String fn = "GenotypeFilterBySample.vcf"; 18 | 19 | args.addRaw("-O"); 20 | args.addRaw("%s"); 21 | args.addRaw("--tmp-dir"); 22 | args.addRaw(getTmpDir()); 23 | 24 | IntegrationTestSpec spec = new IntegrationTestSpec( 25 | args.getString(), 26 | Arrays.asList(getTestFile(fn).getPath())); 27 | 28 | spec.executeTest("testBasicOperation", this); 29 | } 30 | 31 | private ArgumentsBuilder getBaseArgs() { 32 | ArgumentsBuilder args = new ArgumentsBuilder(); 33 | 34 | args.addRaw("--variant"); 35 | File input = new File(testBaseDir, "ClinvarAnnotator.vcf"); 36 | ensureVcfIndex(input); 37 | 38 | args.addRaw(normalizePath(input)); 39 | 40 | args.addRaw("-bl"); 41 | File blackListBed = new File(testBaseDir, "GenotypeFilterBySampleBlacklist.bed"); 42 | ensureIndex(blackListBed, new BEDCodec()); 43 | args.addRaw(normalizePath(blackListBed)); 44 | 45 | return args; 46 | } 47 | } 48 | -------------------------------------------------------------------------------- /src/test/java/com/github/discvrseq/walkers/IdentifySoftClippedLociIntegrationTest.java: -------------------------------------------------------------------------------- 1 | package com.github.discvrseq.walkers; 2 | 3 | import org.broadinstitute.hellbender.testutils.ArgumentsBuilder; 4 | import org.broadinstitute.hellbender.testutils.IntegrationTestSpec; 5 | import org.testng.annotations.Test; 6 | 7 | import java.io.File; 8 | import java.util.Arrays; 9 | 10 | public class IdentifySoftClippedLociIntegrationTest extends BaseIntegrationTest { 11 | 12 | @Test 13 | public void testBasicOperation() throws Exception { 14 | ArgumentsBuilder args = getBaseArgs(); 15 | 16 | doTest("testBasicOperation", args, "IdentifySoftClippedLoci.bed"); 17 | } 18 | 19 | @Test 20 | public void testWithFilter() throws Exception { 21 | ArgumentsBuilder args = getBaseArgs(); 22 | args.addRaw("--minFraction"); 23 | args.addRaw("0.2"); 24 | 25 | doTest("testWithFilter", args, "IdentifySoftClippedLociFiltered.bed"); 26 | } 27 | 28 | private void doTest(String name, ArgumentsBuilder args, String expectedFile) throws Exception { 29 | IntegrationTestSpec spec = new IntegrationTestSpec( 30 | args.getString(), 31 | Arrays.asList(getTestFile(expectedFile).getPath())); 32 | 33 | spec.executeTest(name, this); 34 | } 35 | 36 | private ArgumentsBuilder getBaseArgs() { 37 | ArgumentsBuilder args = new ArgumentsBuilder(); 38 | 39 | File fasta = new File(testBaseDir, "Rhesus_KIR_and_MHC_1.0.fasta"); 40 | args.addRaw("-R"); 41 | args.addRaw(normalizePath(fasta)); 42 | 43 | args.addRaw("-I"); 44 | args.addRaw(normalizePath(new File(testBaseDir, "ImmunoGenotyper.qsort.bam"))); 45 | 46 | args.addRaw("-O"); 47 | args.addRaw("%s"); 48 | args.addRaw("--tmp-dir"); 49 | args.addRaw(getTmpDir()); 50 | 51 | return args; 52 | } 53 | 54 | @Test 55 | public void doTestWithVcf() throws Exception { 56 | ArgumentsBuilder args = new ArgumentsBuilder(); 57 | 58 | args.addRaw("-I"); 59 | args.addRaw(normalizePath(new File(testBaseDir, "SoftClipTestData.sam"))); 60 | 61 | File vcf = new File(testBaseDir, "softClipVariants.vcf"); 62 | ensureVcfIndex(vcf); 63 | args.addRaw("-rv"); 64 | args.addRaw(normalizePath(vcf)); 65 | 66 | args.addRaw("-O"); 67 | args.addRaw("%s"); 68 | args.addRaw("--tmp-dir"); 69 | args.addRaw(getTmpDir()); 70 | 71 | IntegrationTestSpec spec = new IntegrationTestSpec( 72 | args.getString(), 73 | Arrays.asList(getTestFile("IdentifySoftClippedLociWithVcf.bed").getPath())); 74 | 75 | spec.executeTest("doTestWithVcf", this); 76 | } 77 | } 78 | -------------------------------------------------------------------------------- /src/test/java/com/github/discvrseq/walkers/MendelianViolationReportIntegrationTest.java: -------------------------------------------------------------------------------- 1 | package com.github.discvrseq.walkers; 2 | 3 | import org.broadinstitute.hellbender.testutils.ArgumentsBuilder; 4 | import org.broadinstitute.hellbender.testutils.IntegrationTestSpec; 5 | import org.testng.annotations.Test; 6 | 7 | import java.io.File; 8 | import java.util.Arrays; 9 | 10 | public class MendelianViolationReportIntegrationTest extends BaseIntegrationTest { 11 | @Test 12 | public void basicTest() throws Exception { 13 | ArgumentsBuilder args = new ArgumentsBuilder(); 14 | 15 | File input = new File(testBaseDir, "MendelianViolationEval.vcf"); 16 | args.add("V", normalizePath(input)); 17 | 18 | File pedigree = new File(testBaseDir, "MendelianViolationEval.ped"); 19 | args.add("ped", normalizePath(pedigree)); 20 | 21 | args.add("violationReportThreshold", 3); 22 | 23 | args.addRaw("-O"); 24 | args.addRaw("%s"); 25 | args.addRaw("--tmp-dir"); 26 | args.addRaw(getTmpDir()); 27 | 28 | IntegrationTestSpec spec = new IntegrationTestSpec( 29 | args.getString(), 30 | Arrays.asList(normalizePath(getTestFile("/expectedOutput.txt")))); 31 | 32 | spec.executeTest("basicTest", this); 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /src/test/java/com/github/discvrseq/walkers/MergeFastqReadsIntegrationTest.java: -------------------------------------------------------------------------------- 1 | package com.github.discvrseq.walkers; 2 | 3 | import org.broadinstitute.hellbender.testutils.ArgumentsBuilder; 4 | import org.broadinstitute.hellbender.testutils.IntegrationTestSpec; 5 | import org.testng.annotations.Test; 6 | 7 | import java.io.File; 8 | import java.io.IOException; 9 | import java.util.Arrays; 10 | 11 | public class MergeFastqReadsIntegrationTest extends BaseIntegrationTest { 12 | @Test 13 | public void basicMergeTest() throws IOException { 14 | ArgumentsBuilder args = new ArgumentsBuilder(); 15 | 16 | args.addRaw("-fq1"); 17 | File fq1 = new File(new File(getToolTestDataDir()).getParentFile(), "PrintReadsContaining/fq1.fastq"); 18 | args.addRaw(normalizePath(fq1)); 19 | 20 | args.addRaw("-fq2"); 21 | File fq2 = new File(new File(getToolTestDataDir()).getParentFile(), "PrintReadsContaining/fq2.fastq"); 22 | args.addRaw(normalizePath(fq2)); 23 | 24 | args.addRaw("-O"); 25 | args.addRaw("%s"); 26 | 27 | args.addRaw("--tmp-dir"); 28 | args.addRaw(getTmpDir()); 29 | 30 | IntegrationTestSpec spec = new IntegrationTestSpec( 31 | args.getString(), 32 | Arrays.asList(getTestFile("basicMergeTest.fastq").getPath())); 33 | 34 | spec.executeTest("basicMergeTest", this); 35 | } 36 | 37 | @Test 38 | public void mergeTestWithMinLength() throws IOException { 39 | ArgumentsBuilder args = new ArgumentsBuilder(); 40 | 41 | args.addRaw("-fq1"); 42 | File fq1 = new File(new File(getToolTestDataDir()).getParentFile(), "PrintReadsContaining/fq1.fastq"); 43 | args.addRaw(normalizePath(fq1)); 44 | 45 | args.addRaw("-fq2"); 46 | File fq2 = new File(new File(getToolTestDataDir()).getParentFile(), "PrintReadsContaining/fq2.fastq"); 47 | args.addRaw(normalizePath(fq2)); 48 | 49 | args.addRaw("-O"); 50 | args.addRaw("%s"); 51 | 52 | args.addRaw("--minLength"); 53 | args.addRaw("100"); 54 | 55 | args.addRaw("--tmp-dir"); 56 | args.addRaw(getTmpDir()); 57 | 58 | IntegrationTestSpec spec = new IntegrationTestSpec( 59 | args.getString(), 60 | Arrays.asList(getTestFile("mergeTestWithMinLength.fastq").getPath())); 61 | 62 | spec.executeTest("mergeTestWithMinLength", this); 63 | } 64 | } 65 | -------------------------------------------------------------------------------- /src/test/java/com/github/discvrseq/walkers/MergeVariantSitesIntegrationTest.java: -------------------------------------------------------------------------------- 1 | package com.github.discvrseq.walkers; 2 | 3 | import org.broadinstitute.hellbender.testutils.ArgumentsBuilder; 4 | import org.broadinstitute.hellbender.testutils.IntegrationTestSpec; 5 | import org.testng.annotations.Test; 6 | 7 | import java.io.File; 8 | import java.util.Arrays; 9 | 10 | public class MergeVariantSitesIntegrationTest extends BaseIntegrationTest { 11 | 12 | @Test 13 | public void testBasicOperation() throws Exception { 14 | ArgumentsBuilder args = getBaseArgs(); 15 | 16 | String fn = "merge1.vcf"; 17 | 18 | args.addRaw("-O"); 19 | args.addRaw("%s"); 20 | args.addRaw("--tmp-dir"); 21 | args.addRaw(getTmpDir()); 22 | 23 | IntegrationTestSpec spec = new IntegrationTestSpec( 24 | args.getString(), 25 | Arrays.asList(getTestFile(fn).getPath())); 26 | 27 | spec.executeTest("testBasicOperation", this); 28 | } 29 | 30 | private ArgumentsBuilder getBaseArgs() { 31 | ArgumentsBuilder args = new ArgumentsBuilder(); 32 | 33 | args.add("R", normalizePath(getHg19Micro())); 34 | args.addRaw("--variant"); 35 | File input = new File(testBaseDir, "mergeVcf1.vcf"); 36 | ensureVcfIndex(input); 37 | 38 | args.addRaw(normalizePath(input)); 39 | 40 | args.addRaw("-V"); 41 | File input2 = new File(testBaseDir, "mergeVcf2.vcf"); 42 | ensureVcfIndex(input2); 43 | args.addRaw(normalizePath(input2)); 44 | 45 | return args; 46 | } 47 | } 48 | -------------------------------------------------------------------------------- /src/test/java/com/github/discvrseq/walkers/MultipleAllelesAtLociIntegrationTest.java: -------------------------------------------------------------------------------- 1 | package com.github.discvrseq.walkers; 2 | 3 | import org.broadinstitute.hellbender.testutils.ArgumentsBuilder; 4 | import org.broadinstitute.hellbender.testutils.IntegrationTestSpec; 5 | import org.testng.annotations.Test; 6 | 7 | import java.io.File; 8 | import java.util.Arrays; 9 | 10 | public class MultipleAllelesAtLociIntegrationTest extends BaseIntegrationTest { 11 | 12 | @Test 13 | public void testBasicOperation() throws Exception { 14 | ArgumentsBuilder args = getBaseArgs(); 15 | 16 | doTest("testBasicOperation", args, "MultipleAllelesAtLoci.bed"); 17 | } 18 | 19 | @Test 20 | public void testWithFilter() throws Exception { 21 | ArgumentsBuilder args = getBaseArgs(); 22 | args.addRaw("--minBasePct"); 23 | args.addRaw("0.2"); 24 | 25 | doTest("testWithFilter", args, "MultipleAllelesAtLociFiltered.bed"); 26 | } 27 | 28 | private void doTest(String name, ArgumentsBuilder args, String expectedFile) throws Exception { 29 | IntegrationTestSpec spec = new IntegrationTestSpec( 30 | args.getString(), 31 | Arrays.asList(getTestFile(expectedFile).getPath())); 32 | 33 | spec.executeTest(name, this); 34 | } 35 | 36 | private ArgumentsBuilder getBaseArgs() { 37 | ArgumentsBuilder args = new ArgumentsBuilder(); 38 | 39 | File fasta = new File(testBaseDir, "Rhesus_KIR_and_MHC_1.0.fasta"); 40 | args.addRaw("-R"); 41 | args.addRaw(normalizePath(fasta)); 42 | 43 | args.addRaw("-I"); 44 | args.addRaw(normalizePath(new File(testBaseDir, "ImmunoGenotyper.qsort.bam"))); 45 | 46 | args.addRaw("-O"); 47 | args.addRaw("%s"); 48 | args.addRaw("--tmp-dir"); 49 | args.addRaw(getTmpDir()); 50 | 51 | return args; 52 | } 53 | } 54 | -------------------------------------------------------------------------------- /src/test/java/com/github/discvrseq/walkers/OutputVariantsStartingInIntervalsIntegrationTest.java: -------------------------------------------------------------------------------- 1 | package com.github.discvrseq.walkers; 2 | 3 | import htsjdk.samtools.util.IOUtil; 4 | import org.broadinstitute.hellbender.testutils.ArgumentsBuilder; 5 | import org.broadinstitute.hellbender.testutils.IntegrationTestSpec; 6 | import org.testng.annotations.Test; 7 | 8 | import java.io.BufferedWriter; 9 | import java.io.File; 10 | import java.io.PrintWriter; 11 | import java.util.Arrays; 12 | import java.util.Collections; 13 | 14 | public class OutputVariantsStartingInIntervalsIntegrationTest extends BaseIntegrationTest { 15 | @Test 16 | public void testBasicOperation() throws Exception { 17 | ArgumentsBuilder args = new ArgumentsBuilder(); 18 | 19 | args.add("R", normalizePath(getHg19Micro())); 20 | args.addRaw("--variant"); 21 | File input = new File(testBaseDir, "basicVcf.vcf"); 22 | ensureVcfIndex(input); 23 | args.addRaw(normalizePath(input)); 24 | 25 | args.addRaw("-L"); 26 | File intervalFile = new File(getTmpDir(), "intervals.list"); 27 | try (BufferedWriter writer = IOUtil.openFileForBufferedUtf8Writing(intervalFile)) { 28 | writer.write("1:62-100"); 29 | } 30 | args.addRaw(normalizePath(intervalFile)); 31 | 32 | args.addRaw("-O"); 33 | args.addRaw("%s"); 34 | args.addRaw("--tmp-dir"); 35 | args.addRaw(getTmpDir()); 36 | 37 | IntegrationTestSpec spec = new IntegrationTestSpec( 38 | args.getString(), 39 | Collections.singletonList(getTestFile("basicOutput.vcf").getPath())); 40 | 41 | spec.executeTest("testBasicOperation", this); 42 | 43 | intervalFile.delete(); 44 | } 45 | } 46 | -------------------------------------------------------------------------------- /src/test/java/com/github/discvrseq/walkers/RemoveAnnotationsIntegrationTest.java: -------------------------------------------------------------------------------- 1 | package com.github.discvrseq.walkers; 2 | 3 | import org.broadinstitute.hellbender.testutils.ArgumentsBuilder; 4 | import org.broadinstitute.hellbender.testutils.IntegrationTestSpec; 5 | import org.testng.annotations.Test; 6 | 7 | import java.io.File; 8 | import java.util.Arrays; 9 | 10 | public class RemoveAnnotationsIntegrationTest extends BaseIntegrationTest { 11 | 12 | @Test 13 | public void testBasicOperation() throws Exception { 14 | File cassandra = new File(testBaseDir, "ClinvarAnnotator.vcf"); 15 | 16 | IntegrationTestSpec spec = new IntegrationTestSpec( 17 | " -V " + normalizePath(cassandra) + 18 | " -XA PURPOSE" + 19 | " -XA RN" + 20 | " -GA DP" + 21 | " -GA AD" + 22 | " -GA GQ" + 23 | " -GA GT" + 24 | " -GA PL" + 25 | " -ef" + 26 | " -cgf" + 27 | " -O " + "%s" + 28 | " --tmp-dir " + getTmpDir(), 29 | Arrays.asList(normalizePath(getTestFile("/testBasicOperation.vcf")))); 30 | 31 | spec.executeTest("testBasicOperation", this); 32 | } 33 | 34 | @Test 35 | public void testBasicOperationSitesOnly() throws Exception { 36 | File cassandra = new File(testBaseDir, "ClinvarAnnotator.vcf"); 37 | 38 | IntegrationTestSpec spec = new IntegrationTestSpec( 39 | " -V " + normalizePath(cassandra) + 40 | " -XA PURPOSE" + 41 | " -XA RN" + 42 | " -GA DP" + 43 | " -GA AD" + 44 | " -GA GQ" + 45 | " -GA GT" + 46 | " -GA PL" + 47 | " -ef" + 48 | " -cgf" + 49 | " --sitesOnly" + 50 | " -O " + "%s" + 51 | " --tmp-dir " + getTmpDir(), 52 | Arrays.asList(normalizePath(getTestFile("/testBasicOperationSitesOnly.vcf")))); 53 | 54 | spec.executeTest("testBasicOperationSitesOnly", this); 55 | } 56 | } 57 | -------------------------------------------------------------------------------- /src/test/java/com/github/discvrseq/walkers/Save10xBarcodesIntegrationTest.java: -------------------------------------------------------------------------------- 1 | package com.github.discvrseq.walkers; 2 | 3 | import org.broadinstitute.hellbender.testutils.IntegrationTestSpec; 4 | import org.testng.annotations.Test; 5 | 6 | import java.io.File; 7 | import java.util.Collections; 8 | 9 | public class Save10xBarcodesIntegrationTest extends BaseIntegrationTest { 10 | @Test 11 | public void basicTest() throws Exception{ 12 | IntegrationTestSpec spec = new IntegrationTestSpec( 13 | " --input " + normalizePath(getInput()) + 14 | " --output %s" + 15 | " --tmp-dir " + getTmpDir(), 16 | Collections.singletonList( 17 | getTestFile("output.txt").getPath() 18 | )); 19 | 20 | spec.executeTest("basicTest", this); 21 | } 22 | 23 | private File getInput(){ 24 | return new File(testBaseDir, "Population_iv.overlapping.bam"); 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /src/test/java/com/github/discvrseq/walkers/Summarize10xAlignmentsIntegrationTest.java: -------------------------------------------------------------------------------- 1 | package com.github.discvrseq.walkers; 2 | 3 | import org.broadinstitute.hellbender.testutils.IntegrationTestSpec; 4 | import org.testng.annotations.Test; 5 | 6 | import java.io.File; 7 | import java.util.Arrays; 8 | 9 | public class Summarize10xAlignmentsIntegrationTest extends BaseIntegrationTest { 10 | 11 | @Test 12 | public void doBasicTest() throws Exception { 13 | File bam = new File(testBaseDir, "10xTestData.sam"); 14 | 15 | IntegrationTestSpec spec = new IntegrationTestSpec( 16 | " -I " + normalizePath(bam) + 17 | " -O " + "%s" + 18 | " --tmp-dir " + getTmpDir(), 19 | Arrays.asList(normalizePath(getTestFile( "basicTest.txt")))); 20 | 21 | spec.executeTest("doBasicTest", this); 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /src/test/java/com/github/discvrseq/walkers/SummarizeGenotypeQualityIntegrationTest.java: -------------------------------------------------------------------------------- 1 | package com.github.discvrseq.walkers; 2 | 3 | import org.broadinstitute.hellbender.testutils.ArgumentsBuilder; 4 | import org.broadinstitute.hellbender.testutils.IntegrationTestSpec; 5 | import org.testng.annotations.Test; 6 | 7 | import java.io.File; 8 | import java.util.Arrays; 9 | 10 | public class SummarizeGenotypeQualityIntegrationTest extends BaseIntegrationTest { 11 | @Test 12 | public void basicTest() throws Exception { 13 | ArgumentsBuilder args = new ArgumentsBuilder(); 14 | 15 | File input = new File(testBaseDir, "mergeVcf3.vcf"); 16 | args.add("V", normalizePath(input)); 17 | 18 | args.addRaw("-O"); 19 | args.addRaw("%s"); 20 | args.addRaw("--tmp-dir"); 21 | args.addRaw(getTmpDir()); 22 | 23 | IntegrationTestSpec spec = new IntegrationTestSpec( 24 | args.getString(), 25 | Arrays.asList(normalizePath(getTestFile("/basicTest.txt")))); 26 | 27 | spec.executeTest("basicTest", this); 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /src/test/java/com/github/discvrseq/walkers/VariantConcordanceScoreIntegrationTest.java: -------------------------------------------------------------------------------- 1 | package com.github.discvrseq.walkers; 2 | 3 | import org.broadinstitute.hellbender.testutils.ArgumentsBuilder; 4 | import org.broadinstitute.hellbender.testutils.IntegrationTestSpec; 5 | import org.testng.annotations.Test; 6 | 7 | import java.io.File; 8 | import java.util.Arrays; 9 | 10 | public class VariantConcordanceScoreIntegrationTest extends BaseIntegrationTest { 11 | @Test 12 | public void testBasicOperation() throws Exception { 13 | ArgumentsBuilder args = new ArgumentsBuilder(); 14 | args.addRaw("--variant"); 15 | File input = new File(testBaseDir, "basicVcf.vcf"); 16 | args.addRaw(normalizePath(input)); 17 | 18 | args.add("R", normalizePath(getHg19Micro())); 19 | 20 | args.addRaw("--ref-sites:REF1"); 21 | File rs1 = new File(testBaseDir, "variantConcordanceRef1.vcf"); 22 | ensureVcfIndex(rs1); 23 | args.addRaw(normalizePath(rs1)); 24 | 25 | args.addRaw("-rs:REF2"); 26 | File rs2 = new File(testBaseDir, "variantConcordanceRef2.vcf"); 27 | ensureVcfIndex(rs2); 28 | args.addRaw(normalizePath(rs2)); 29 | 30 | args.addRaw("-O"); 31 | args.addRaw("%s"); 32 | args.addRaw("--tmp-dir"); 33 | args.addRaw(getTmpDir()); 34 | 35 | File expected = getTestFile("variantConcordanceOutput.txt"); 36 | IntegrationTestSpec spec = new IntegrationTestSpec( 37 | args.getString(), Arrays.asList(expected.getPath())); 38 | 39 | spec.executeTest("testBasicOperation", this); 40 | } 41 | } 42 | -------------------------------------------------------------------------------- /src/test/java/com/github/discvrseq/walkers/VcfFilterComparisonIntegrationTest.java: -------------------------------------------------------------------------------- 1 | package com.github.discvrseq.walkers; 2 | 3 | import org.broadinstitute.hellbender.testutils.IntegrationTestSpec; 4 | import org.testng.annotations.Test; 5 | 6 | import java.io.File; 7 | import java.util.Arrays; 8 | 9 | public class VcfFilterComparisonIntegrationTest extends BaseIntegrationTest { 10 | @Test 11 | public void doBasicTest() throws Exception { 12 | File fasta = getHg19Micro(); 13 | ensureVcfIndex(getInputVcf()); 14 | 15 | IntegrationTestSpec spec = new IntegrationTestSpec( 16 | " -R " + normalizePath(fasta) + 17 | " -V:vcf1 " + normalizePath(getInputVcf()) + 18 | " -V:vcf2 " + normalizePath(getInputVcf()) + 19 | " -O " + "%s" + 20 | " --tmp-dir " + getTmpDir(), 21 | Arrays.asList(normalizePath(getTestFile( "vcfFilterComparison.txt")))); 22 | 23 | spec.executeTest("doBasicTest", this); 24 | } 25 | 26 | private File getInputVcf(){ 27 | return new File(testBaseDir, "basicVcfFiltered.vcf"); 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/TestData/155_pRR_Reporter_U24.dict: -------------------------------------------------------------------------------- 1 | @HD VN:1.5 2 | @SQ SN:080_pRR_Reporter_U24 LN:11678 M5:3d45e6cf38247b071b90babad9ceb8c4 UR:file:/home/groups/BimberLab/primeseq/@files/.referenceLibraries/155/155_pRR_Reporter_U24.fasta 3 | -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/TestData/155_pRR_Reporter_U24.fasta.fai: -------------------------------------------------------------------------------- 1 | 080_pRR_Reporter_U24 11678 22 60 61 2 | -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/TestData/AnnotateNovelSitesRef.vcf.idx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BimberLab/DISCVRSeq/88e5574ba4918a17414b2973d3500f23ad9717ff/src/test/resources/com/github/discvrseq/TestData/AnnotateNovelSitesRef.vcf.idx -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/TestData/ClinvarAnnotator.vcf.idx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BimberLab/DISCVRSeq/88e5574ba4918a17414b2973d3500f23ad9717ff/src/test/resources/com/github/discvrseq/TestData/ClinvarAnnotator.vcf.idx -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/TestData/GenotypeFilterBySampleBlacklist.bed: -------------------------------------------------------------------------------- 1 | 1 11 12 sample1 2 | 1 11 12 sample2 3 | 1 3210 3211 sample2 4 | -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/TestData/GenotypeFilterBySampleBlacklist.bed.idx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BimberLab/DISCVRSeq/88e5574ba4918a17414b2973d3500f23ad9717ff/src/test/resources/com/github/discvrseq/TestData/GenotypeFilterBySampleBlacklist.bed.idx -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/TestData/ImmunoGenotyper.qsort.bam: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BimberLab/DISCVRSeq/88e5574ba4918a17414b2973d3500f23ad9717ff/src/test/resources/com/github/discvrseq/TestData/ImmunoGenotyper.qsort.bam -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/TestData/MendelianViolationEval.ped: -------------------------------------------------------------------------------- 1 | TRIO TRIO_MOTHER 0 0 2 -9 2 | TRIO TRIO_FATHER 0 0 1 -9 3 | TRIO TRIO_CHILD TRIO_MOTHER TRIO_FATHER 0 -9 4 | PAIR PAIR_PARENT 0 0 0 -9 5 | PAIR PAIR_CHILD PAIR_PARENT 0 1 -9 6 | UNRELATED UNRELATED_INDIVIDUAL_CONTROL 0 0 0 -9 7 | -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/TestData/MendelianViolationEval.vcf: -------------------------------------------------------------------------------- 1 | ##fileformat=VCFv4.0 2 | ##MendelianViolationEvaluator="This file contains genotypes with mendelian violations in the input data. Please note that this file is entirely synthetic and does not represent true SNPs or genotypes observed." 3 | ##FORMAT= 4 | ##FORMAT= 5 | ##FORMAT= 6 | #CHROM POS ID REF ALT QUAL FILTER INFO FORMAT TRIO_MOTHER TRIO_FATHER TRIO_CHILD PAIR_PARENT PAIR_CHILD UNRELATED_INDIVIDUAL_CONTROL 7 | 1 10109 . A T 99 PASS . GT:GQ:PL 0/0:50:0,50,200 0/0:40:0,40,200 0/1:30:30,0,200 0/0:50:0,50,200 0/1:30:30,0,200 0/0:50:0,50,200 8 | 1 10147 . C A 99 PASS . GT:GQ:PL 0/0:30:0,30,200 0/0:50:0,50,200 1/1:40:200,40,0 0/0:30:0,30,200 1/1:40:200,40,0 0/0:30:0,30,200 9 | 1 10150 . C T 99 PASS . GT:GQ:PL 0/0:40:0,40,200 0/1:30:30,0,200 1/1:50:200,50,0 0/0:40:0,40,200 1/1:50:200,50,0 0/0:40:0,40,200 10 | 1 10177 . A C 99 PASS . GT:GQ:PL 0/0:50:0,50,200 1/1:40:200,40,0 0/0:30:0,30,200 0/0:50:0,50,200 0/0:30:0,30,200 0/0:50:0,50,200 11 | 1 10180 . T C 99 PASS . GT:GQ:PL 0/0:30:0,30,200 1/1:50:200,50,0 1/1:40:200,40,0 0/0:30:0,30,200 1/1:40:200,40,0 0/0:30:0,30,200 12 | 1 10234 . C T 99 PASS . GT:GQ:PL 0/1:40:40,0,200 0/0:30:0,30,200 1/1:50:200,50,0 0/1:40:40,0,200 1/1:50:200,50,0 0/1:40:40,0,200 13 | 1 10235 . T A 99 PASS . GT:GQ:PL 0/1:50:50,0,200 1/1:40:200,40,0 0/0:30:0,30,200 0/1:50:50,0,200 0/0:30:0,30,200 0/1:50:50,0,200 14 | 1 10236 . A G 99 PASS . GT:GQ:PL 1/1:30:200,30,0 0/0:50:0,50,200 0/0:40:0,40,200 1/1:30:200,30,0 0/0:50:0,50,200 1/1:30:200,30,0 15 | 1 10250 . A C 99 PASS . GT:GQ:PL 1/1:40:200,40,0 0/0:30:0,30,200 1/1:50:200,50,0 1/1:40:200,40,0 1/1:50:200,50,0 1/1:40:200,40,0 16 | 1 10257 . A C 99 PASS . GT:GQ:PL 1/1:50:200,50,0 0/1:40:40,0,200 0/0:30:0,30,200 1/1:50:200,50,0 0/0:30:0,30,200 1/1:50:200,50,0 17 | 1 10285 . T C 99 PASS . GT:GQ:PL 1/1:30:200,30,0 1/1:50:200,50,0 0/1:40:40,0,200 1/1:30:200,30,0 0/1:40:40,0,200 1/1:30:200,30,0 18 | 1 10297 . C T 99 PASS . GT:GQ:PL 1/1:40:200,40,0 1/1:30:200,30,0 0/0:50:0,50,200 1/1:40:200,40,0 0/0:50:0,50,200 1/1:40:200,40,0 19 | 1 10304 . A C 99 PASS . GT:GQ:PL 1/1:50:200,50,0 0/1:50:50,0,200 0/1:0:0,0,0 1/1:50:200,50,0 0/1:0:0,0,0 1/1:50:200,50,0 20 | 1 10304 . A C 99 PASS . GT:GQ:PL 1/1:50:200,50,0 0/1:50:50,0,200 0/1:50:50,0,200 1/1:50:200,50,0 0/1:50:200,0,50 1/1:50:200,50,0 21 | 1 10310 . A C 99 PASS . GT:GQ:PL 1/1:50:200,50,0 0/1:50:50,0,200 1/1:50:200,50,0 1/1:50:200,50,0 1/1:50:200,50,0 1/1:50:200,50,0 22 | 1 10315 . C T 99 PASS . GT:GQ:PL 1/1:50:200,50,0 1/1:50:200,50,0 1/1:50:200,50,0 1/1:50:200,50,0 1/1:50:200,50,0 1/1:50:200,50,0 23 | -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/TestData/MendelianViolationEval.vcf.idx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BimberLab/DISCVRSeq/88e5574ba4918a17414b2973d3500f23ad9717ff/src/test/resources/com/github/discvrseq/TestData/MendelianViolationEval.vcf.idx -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/TestData/MendelianViolationRefGT.vcf: -------------------------------------------------------------------------------- 1 | ##fileformat=VCFv4.0 2 | ##MendelianViolationEvaluator="This file contains genotypes with mendelian violations in the input data. Please note that this file is entirely synthetic and does not represent true SNPs or genotypes observed." 3 | ##FORMAT= 4 | ##FORMAT= 5 | ##FORMAT= 6 | #CHROM POS ID REF ALT QUAL FILTER INFO FORMAT TRIO_MOTHER TRIO_FATHER TRIO_CHILD PAIR_PARENT PAIR_CHILD UNRELATED_INDIVIDUAL_CONTROL 7 | 1 10109 . A T 99 PASS . GT:GQ:PL 0/1:50:0,50,200 0/0:40:0,40,200 0/1:30:30,0,200 0/0:50:0,50,200 0/1:30:30,0,200 0/0:50:0,50,200 8 | 1 10147 . C A 99 PASS . GT:GQ:PL 0/0:30:0,30,200 0/0:50:0,50,200 1/1:40:200,40,0 0/0:30:0,30,200 1/1:40:200,40,0 0/0:30:0,30,200 9 | 1 10150 . C T 99 PASS . GT:GQ:PL 0/0:40:0,40,200 0/1:30:30,0,200 1/1:50:200,50,0 0/0:40:0,40,200 1/1:50:200,50,0 0/0:40:0,40,200 10 | 1 10177 . A C 99 PASS . GT:GQ:PL 0/0:50:0,50,200 1/1:40:200,40,0 0/0:30:0,30,200 0/0:50:0,50,200 0/0:30:0,30,200 0/0:50:0,50,200 11 | 1 10180 . T C 99 PASS . GT:GQ:PL 1/0:30:0,30,200 1/1:50:200,50,0 0/1:40:200,40,0 0/0:30:0,30,200 1/1:40:200,40,0 0/0:30:0,30,200 12 | 1 10234 . C T 99 PASS . GT:GQ:PL 0/1:40:40,0,200 0/0:30:0,30,200 1/1:50:200,50,0 0/1:40:40,0,200 1/1:50:200,50,0 0/1:40:40,0,200 13 | 1 10235 . T A 99 PASS . GT:GQ:PL 0/1:50:50,0,200 1/1:40:200,40,0 0/0:30:0,30,200 0/1:50:50,0,200 0/0:30:0,30,200 0/1:50:50,0,200 14 | 1 10236 . A G 99 PASS . GT:GQ:PL 1/1:30:200,30,0 0/0:50:0,50,200 0/0:40:0,40,200 1/1:30:200,30,0 0/0:50:0,50,200 1/1:30:200,30,0 15 | 1 10250 . A C 99 PASS . GT:GQ:PL 1/1:40:200,40,0 0/0:30:0,30,200 1/1:50:200,50,0 1/1:40:200,40,0 1/1:50:200,50,0 1/1:40:200,40,0 16 | 1 10257 . A C 99 PASS . GT:GQ:PL 1/1:50:200,50,0 0/1:40:40,0,200 0/0:30:0,30,200 1/1:50:200,50,0 0/0:30:0,30,200 1/1:50:200,50,0 17 | 1 10285 . T C 99 PASS . GT:GQ:PL 1/1:30:200,30,0 1/1:50:200,50,0 0/1:40:40,0,200 1/1:30:200,30,0 0/1:40:40,0,200 1/1:30:200,30,0 18 | 1 10297 . C T 99 PASS . GT:GQ:PL 1/1:40:200,40,0 1/1:30:200,30,0 0/0:50:0,50,200 1/1:40:200,40,0 0/0:50:0,50,200 1/1:40:200,40,0 19 | 1 10304 . A C 99 PASS . GT:GQ:PL 1/1:50:200,50,0 0/1:50:50,0,200 0/1:50:50,0,200 1/1:50:200,50,0 0/1:50:200,0,50 1/1:50:200,50,0 20 | 1 10310 . A C 99 PASS . GT:GQ:PL 1/1:50:200,50,0 0/1:50:50,0,200 1/1:50:200,50,0 1/1:50:200,50,0 1/1:50:200,50,0 1/1:50:200,50,0 21 | 1 10315 . C T 99 PASS . GT:GQ:PL 1/1:50:200,50,0 1/1:50:200,50,0 1/1:50:200,50,0 1/1:50:200,50,0 1/1:50:200,50,0 1/1:50:200,50,0 22 | -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/TestData/MendelianViolationRefGT.vcf.idx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BimberLab/DISCVRSeq/88e5574ba4918a17414b2973d3500f23ad9717ff/src/test/resources/com/github/discvrseq/TestData/MendelianViolationRefGT.vcf.idx -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/TestData/Population_iv.overlapping.bam: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BimberLab/DISCVRSeq/88e5574ba4918a17414b2973d3500f23ad9717ff/src/test/resources/com/github/discvrseq/TestData/Population_iv.overlapping.bam -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/TestData/Population_iv.overlapping.bam.bai: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BimberLab/DISCVRSeq/88e5574ba4918a17414b2973d3500f23ad9717ff/src/test/resources/com/github/discvrseq/TestData/Population_iv.overlapping.bam.bai -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/TestData/SVType.vcf.idx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BimberLab/DISCVRSeq/88e5574ba4918a17414b2973d3500f23ad9717ff/src/test/resources/com/github/discvrseq/TestData/SVType.vcf.idx -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/TestData/SimpleExample.vcf.gz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BimberLab/DISCVRSeq/88e5574ba4918a17414b2973d3500f23ad9717ff/src/test/resources/com/github/discvrseq/TestData/SimpleExample.vcf.gz -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/TestData/SimpleExample.vcf.gz.tbi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BimberLab/DISCVRSeq/88e5574ba4918a17414b2973d3500f23ad9717ff/src/test/resources/com/github/discvrseq/TestData/SimpleExample.vcf.gz.tbi -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/TestData/basicVcf.vcf: -------------------------------------------------------------------------------- 1 | ##fileformat=VCFv4.2 2 | ##FORMAT= 3 | ##contig= 4 | ##contig= 5 | #CHROM POS ID REF ALT QUAL FILTER INFO FORMAT Sample1 6 | 1 61 . GT G 724.43 PASS . GT 0/1 7 | 1 72 . T A 100 PASS . GT 0/1 8 | -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/TestData/basicVcf.vcf.idx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BimberLab/DISCVRSeq/88e5574ba4918a17414b2973d3500f23ad9717ff/src/test/resources/com/github/discvrseq/TestData/basicVcf.vcf.idx -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/TestData/basicVcfFiltered.vcf: -------------------------------------------------------------------------------- 1 | ##fileformat=VCFv4.2 2 | ##FORMAT= 3 | ##contig= 4 | ##contig= 5 | #CHROM POS ID REF ALT QUAL FILTER INFO FORMAT Sample1 6 | 1 61 . GT G 724.43 PASS . GT 0/1 7 | 1 72 . T A 100 Filter1,Filter2 . GT 0/1 8 | -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/TestData/basicVcfFiltered.vcf.idx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BimberLab/DISCVRSeq/88e5574ba4918a17414b2973d3500f23ad9717ff/src/test/resources/com/github/discvrseq/TestData/basicVcfFiltered.vcf.idx -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/TestData/clinvarV2.vcf.idx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BimberLab/DISCVRSeq/88e5574ba4918a17414b2973d3500f23ad9717ff/src/test/resources/com/github/discvrseq/TestData/clinvarV2.vcf.idx -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/TestData/funcotator/funcotatorFields.txt: -------------------------------------------------------------------------------- 1 | DataSource SourceField ID Number Type Description 2 | testSource OtherField f1 UNBOUNDED String This is field1 3 | testSource ExpectedResult f2 UNBOUNDED String This is field2 4 | vcfTestSource AA f3 A Float This is field3 5 | vcfTestSource BB f4 UNBOUNDED String This is field4 -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/TestData/funcotator/gencode/hg19/gencode.config: -------------------------------------------------------------------------------- 1 | name = Gencode 2 | version = 34 3 | src_file = hg19.gtf 4 | origin_location = 5 | preprocessing_script = 6 | 7 | # Supported types: 8 | # simpleXSV -- Arbitrary separated value table (e.g. CSV), keyed off Gene Name OR Transcript ID 9 | # locatableXSV -- Arbitrary separated value table (e.g. CSV), keyed off a genome location 10 | # gencode -- Custom datasource class for GENCODE 11 | # cosmic -- Custom datasource class for COSMIC 12 | # vcf -- Custom datasource class for Variant Call Format (VCF) files 13 | type = gencode 14 | 15 | # Required field for GENCODE files. 16 | # Path to the FASTA file from which to load the sequences for GENCODE transcripts: 17 | gencode_fasta_path = hg19_transcript.fa 18 | 19 | # Required field for GENCODE files. 20 | # NCBI build version (either hg19 or hg38): 21 | ncbi_build_version = hg38 22 | 23 | # Required field for simpleXSV files. 24 | # Valid values: 25 | # GENE_NAME 26 | # TRANSCRIPT_ID 27 | xsv_key = 28 | 29 | # Required field for simpleXSV files. 30 | # The 0-based index of the column containing the key on which to match 31 | xsv_key_column = 32 | 33 | # Required field for simpleXSV AND locatableXSV files. 34 | # The delimiter by which to split the XSV file into columns. 35 | xsv_delimiter = 36 | 37 | # Required field for simpleXSV files. 38 | # Whether to permissively match the number of columns in the header and data rows 39 | # Valid values: 40 | # true 41 | # false 42 | xsv_permissive_cols = 43 | 44 | # Required field for locatableXSV files. 45 | # The 0-based index of the column containing the contig for each row 46 | contig_column = 47 | 48 | # Required field for locatableXSV files. 49 | # The 0-based index of the column containing the start position for each row 50 | start_column = 51 | 52 | # Required field for locatableXSV files. 53 | # The 0-based index of the column containing the end position for each row 54 | end_column = 55 | 56 | -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/TestData/funcotator/gencode/hg19/hg19.gtf: -------------------------------------------------------------------------------- 1 | 1 HAVANA gene 1 10 . + . gene_id "Gene1"; transcript_id "Transcript1"; gene_type "protein_coding"; gene_name "Gene1"; 2 | 1 HAVANA transcript 1 10 . + . gene_id "Gene1"; transcript_id "Transcript1"; gene_type "protein_coding"; gene_name "Gene1"; 3 | 1 HAVANA exon 1 10 . + . gene_id "Gene1"; transcript_id "Transcript1"; gene_type "protein_coding"; gene_name "Gene1"; exon_number 1; exon_id "Gene1.1"; 4 | 1 HAVANA gene 9800 11000 . + . gene_id "Gene2"; transcript_id "Transcript2"; gene_type "protein_coding"; gene_name "Gene2"; 5 | 1 HAVANA transcript 9800 11000 . + . gene_id "Gene2"; transcript_id "Transcript2"; gene_type "protein_coding"; gene_name "Gene2"; 6 | 1 HAVANA exon 9800 11000 . + . gene_id "Gene2"; transcript_id "Transcript2"; gene_type "protein_coding"; gene_name "Gene2"; exon_number 1; exon_id "Gene2.1"; 7 | 1 HAVANA gene 9900 11001 . + . gene_id "Gene3"; transcript_id "Transcript3"; gene_type "protein_coding"; gene_name "Gene3"; 8 | 1 HAVANA transcript 9900 11001 . + . gene_id "Gene3"; transcript_id "Transcript3"; gene_type "protein_coding"; gene_name "Gene3"; 9 | 1 HAVANA exon 9900 11001 . + . gene_id "Gene3"; transcript_id "Transcript3"; gene_type "protein_coding"; gene_name "Gene3"; exon_number 1; exon_id "Gene3.1"; 10 | -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/TestData/funcotator/gencode/hg19/hg19.gtf.idx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BimberLab/DISCVRSeq/88e5574ba4918a17414b2973d3500f23ad9717ff/src/test/resources/com/github/discvrseq/TestData/funcotator/gencode/hg19/hg19.gtf.idx -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/TestData/funcotator/gencode/hg19/hg19_transcript.dict: -------------------------------------------------------------------------------- 1 | @HD VN:1.0 SO:unsorted 2 | @SQ SN:Gene1|Gene1|CDS:1-10 LN:10 M5:16c52c6e8326c071da771e66dc6e9e57 UR:file:/hg19_transcript.fa 3 | -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/TestData/funcotator/gencode/hg19/hg19_transcript.fa: -------------------------------------------------------------------------------- 1 | >Gene1|Gene1|CDS:1-10 2 | TAACCCTAAA 3 | -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/TestData/funcotator/gencode/hg19/hg19_transcript.fa.fai: -------------------------------------------------------------------------------- 1 | Gene1|Gene1|CDS:1-10 10 22 10 11 2 | -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/TestData/funcotator/testSource/hg19/testSource.config: -------------------------------------------------------------------------------- 1 | name = testSource 2 | version = 20180612 3 | src_file = testSource.table 4 | origin_location = 5 | preprocessing_script = 6 | 7 | # Required and defaults to false. 8 | # isB37DataSource = {IsB37DataSource} 9 | 10 | # Supported types: 11 | # simpleXSV -- Arbitrary separated value table (e.g. CSV), keyed off Gene Name OR Transcript ID 12 | # locatableXSV -- Arbitrary separated value table (e.g. CSV), keyed off a genome location 13 | # gencode -- Custom datasource class for GENCODE 14 | # cosmic -- Custom datasource class for COSMIC 15 | # vcf -- Custom datasource class for Variant Call Format (VCF) files 16 | type = locatableXSV 17 | 18 | # Required field for GENCODE files. 19 | # Path to the FASTA file from which to load the sequences for GENCODE transcripts: 20 | gencode_fasta_path = 21 | 22 | # Required field for GENCODE files. 23 | # NCBI build version (either hg19 or hg38): 24 | ncbi_build_version = 25 | 26 | # Required field for simpleXSV files. 27 | # Valid values: 28 | # GENE_NAME 29 | # TRANSCRIPT_ID 30 | xsv_key = GENE_NAME 31 | 32 | # Required field for simpleXSV files. 33 | # The 0-based index of the column containing the key on which to match 34 | xsv_key_column = 0 35 | 36 | # Required field for simpleXSV AND locatableXSV files. 37 | # The delimiter by which to split the XSV file into columns. 38 | xsv_delimiter = \t 39 | 40 | # Required field for simpleXSV files. 41 | # Whether to permissively match the number of columns in the header and data rows 42 | # Valid values: 43 | # true 44 | # false 45 | xsv_permissive_cols = true 46 | 47 | # Required field for locatableXSV files. 48 | # The 0-based index of the column containing the contig for each row 49 | contig_column = 1 50 | 51 | # Required field for locatableXSV files. 52 | # The 0-based index of the column containing the start position for each row 53 | start_column = 2 54 | 55 | # Required field for locatableXSV files. 56 | # The 0-based index of the column containing the end position for each row 57 | end_column = 3 58 | 59 | -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/TestData/funcotator/testSource/hg19/testSource.table: -------------------------------------------------------------------------------- 1 | HEADER CHROM START END OtherField ExpectedResult 2 | 1:10000-10000 1 10000 10000 A Overlap10000 3 | 1:10001-10001 1 10001 10001 B DoesNotOverlap10001 4 | 1:10023-10100 1 10023 10100 C Overlap10023 5 | 1:10108-10207 1 10108 10207 D DoesNotOverlap10108 6 | 1:13414-13418 1 13414 13418 E Overlap13414 7 | 1:895963-901099 1 895963 901099 F DoesNotOverlap895963 8 | -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/TestData/funcotator/testSource/hg19/testSource.table.idx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BimberLab/DISCVRSeq/88e5574ba4918a17414b2973d3500f23ad9717ff/src/test/resources/com/github/discvrseq/TestData/funcotator/testSource/hg19/testSource.table.idx -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/TestData/funcotator/vcfTestSource/hg19/vcfTestSource.config: -------------------------------------------------------------------------------- 1 | name = vcfTestSource 2 | version = 20180612 3 | src_file = vcfTestSource.vcf 4 | origin_location = 5 | preprocessing_script = 6 | 7 | # Required and defaults to false. 8 | # isB37DataSource = {IsB37DataSource} 9 | 10 | # Supported types: 11 | # simpleXSV -- Arbitrary separated value table (e.g. CSV), keyed off Gene Name OR Transcript ID 12 | # locatableXSV -- Arbitrary separated value table (e.g. CSV), keyed off a genome location 13 | # gencode -- Custom datasource class for GENCODE 14 | # cosmic -- Custom datasource class for COSMIC 15 | # vcf -- Custom datasource class for Variant Call Format (VCF) files 16 | type = vcf 17 | 18 | # Required field for GENCODE files. 19 | # Path to the FASTA file from which to load the sequences for GENCODE transcripts: 20 | gencode_fasta_path = 21 | 22 | # Required field for GENCODE files. 23 | # NCBI build version (either hg19 or hg38): 24 | ncbi_build_version = 25 | 26 | # Required field for simpleXSV files. 27 | # Valid values: 28 | # GENE_NAME 29 | # TRANSCRIPT_ID 30 | xsv_key = GENE_NAME 31 | 32 | # Required field for simpleXSV files. 33 | # The 0-based index of the column containing the key on which to match 34 | xsv_key_column = 0 35 | 36 | # Required field for simpleXSV AND locatableXSV files. 37 | # The delimiter by which to split the XSV file into columns. 38 | xsv_delimiter = \t 39 | 40 | # Required field for simpleXSV files. 41 | # Whether to permissively match the number of columns in the header and data rows 42 | # Valid values: 43 | # true 44 | # false 45 | xsv_permissive_cols = true 46 | 47 | # Required field for locatableXSV files. 48 | # The 0-based index of the column containing the contig for each row 49 | contig_column = 1 50 | 51 | # Required field for locatableXSV files. 52 | # The 0-based index of the column containing the start position for each row 53 | start_column = 2 54 | 55 | # Required field for locatableXSV files. 56 | # The 0-based index of the column containing the end position for each row 57 | end_column = 3 58 | 59 | -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/TestData/funcotator/vcfTestSource/hg19/vcfTestSource.vcf: -------------------------------------------------------------------------------- 1 | ##fileformat=VCFv4.2 2 | ##INFO= 3 | ##INFO= 4 | #CHROM POS ID REF ALT QUAL FILTER INFO 5 | 1 10000 . C G 1 PASS AA=0.2;BB=1 6 | 1 10008 . A G,C 1 PASS AA=0.1,0.3 7 | 1 10019 . TA T,C 1 PASS AA=0.4,0.1;BB=2,3,4 8 | -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/TestData/funcotator/vcfTestSource/hg19/vcfTestSource.vcf.idx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BimberLab/DISCVRSeq/88e5574ba4918a17414b2973d3500f23ad9717ff/src/test/resources/com/github/discvrseq/TestData/funcotator/vcfTestSource/hg19/vcfTestSource.vcf.idx -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/TestData/genotypeAppend1.vcf: -------------------------------------------------------------------------------- 1 | ##fileformat=VCFv4.2 2 | ##FORMAT= 3 | ##contig= 4 | ##contig= 5 | #CHROM POS ID REF ALT QUAL FILTER INFO FORMAT Sample2 6 | 1 61 . GT G 724.43 PASS . GT 0/1 7 | 1 72 . T A 100 PASS . GT 0/1 8 | -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/TestData/genotypeAppend1.vcf.idx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BimberLab/DISCVRSeq/88e5574ba4918a17414b2973d3500f23ad9717ff/src/test/resources/com/github/discvrseq/TestData/genotypeAppend1.vcf.idx -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/TestData/genotypeAppend2.vcf: -------------------------------------------------------------------------------- 1 | ##fileformat=VCFv4.2 2 | ##FORMAT= 3 | ##contig= 4 | ##contig= 5 | #CHROM POS ID REF ALT QUAL FILTER INFO FORMAT Sample3 6 | 1 61 . GT G 724.43 PASS . GT 0/1 7 | 1 72 . T G 100 PASS . GT 0/1 8 | -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/TestData/genotypeAppend2.vcf.idx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BimberLab/DISCVRSeq/88e5574ba4918a17414b2973d3500f23ad9717ff/src/test/resources/com/github/discvrseq/TestData/genotypeAppend2.vcf.idx -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/TestData/genotypeFilterTest.vcf: -------------------------------------------------------------------------------- 1 | ##fileformat=VCFv4.2 2 | ##INFO= 3 | ##FORMAT= 4 | ##FORMAT= 5 | ##FORMAT= 6 | ##FORMAT= 7 | ##FORMAT= 8 | ##FORMAT= 9 | ##FORMAT= 10 | ##FORMAT= 11 | ##FORMAT= 12 | ##FORMAT= 13 | ##contig= 14 | ##contig= 15 | #CHROM POS ID REF ALT QUAL FILTER INFO FORMAT sample1 sample2 16 | 1 2 . G A 2328.69 PASS MAC=1 GT:AD:DP:GQ:MV:PL 0/0:13,0:13:39:0:0,39,418 0/1:11,9:20:21:0:241,0,379 17 | 1 2 . G A 2328.69 PASS MAC=1 GT:AD:DP:GQ:MV:PL 0/0:13,0:13:39:0:0,39,418 0/1:11,9:20:19:0:241,0,379 18 | 1 2 . G A 2328.69 PASS MAC=1 GT:AD:DP:GQ:MV:PL:RGQ 0/0:13,0:13:39:0:0,39,418:19 0/1:11,9:20:19:0:241,0,379:21 19 | 1 2 . G A 2328.69 PASS MAC=1 GT:AD:DP:GQ:MV:PL:RGQ 0/0:13,0:13:39:0:0,39,418:19 0/1:11,9:20:19:0:241,0,379:19 20 | 1 4 . G T 2328.69 PASS MAC=1 GT:AD:DP:FT:MV:PGT:PID:RGQ 0/0:14,0:14:PASS:0:.:.:30 0/0:19,0:19:PASS:0:.:.:21 21 | 1 4 . G T 2328.69 PASS MAC=1 GT:AD:DP:FT:MV:PGT:PID:RGQ 0/0:14,0:14:PASS:0:.:.:30 0/0:19,0:19:PASS:0:.:.:19 22 | 1 11 . G A 12328.69 PASS MAC=0 GT:AD:DP:FT:GQ:MV:PL 0/0:17,0:17:PASS:51:0:0,51,614 0/0:29,0:29:PASS:69:0:0,69,1035 23 | -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/TestData/genotypeFilterTest.vcf.idx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BimberLab/DISCVRSeq/88e5574ba4918a17414b2973d3500f23ad9717ff/src/test/resources/com/github/discvrseq/TestData/genotypeFilterTest.vcf.idx -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/TestData/hg19micro.dict: -------------------------------------------------------------------------------- 1 | @HD VN:1.4 SO:unsorted 2 | @SQ SN:1 LN:16000 M5:8c0c38e352d8f3309eabe4845456f274 UR:file:/Users/louisb/Workspace/hellbender/hg19mini.fasta 3 | @SQ SN:2 LN:16000 M5:5f8388fe3fb34aa38375ae6cf5e45b89 UR:file:/Users/louisb/Workspace/hellbender/hg19mini.fasta 4 | -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/TestData/hg19micro.fasta.fai: -------------------------------------------------------------------------------- 1 | 1 16000 48 80 81 2 | 2 16000 16296 80 81 3 | -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/TestData/indexInput.vcf: -------------------------------------------------------------------------------- 1 | ##fileformat=VCFv4.2 2 | ##INFO= 3 | ##INFO= 4 | ##INFO= 5 | ##INFO= 6 | ##INFO= 7 | ##FORMAT= 8 | ##contig= 9 | ##contig= 10 | #CHROM POS ID REF ALT QUAL FILTER INFO FORMAT Sample1 Sample2 Sample3 11 | 1 61 . GT G 724.43 PASS AF=0.1;HaplotypeScore=9.1318|0.12;REFFIELD=GT,G;UB=1.0,2.1 GT 0/1 1/1 0/1 12 | 1 72 . T A,C 100 PASS AF=0.5,0.05;HaplotypeScore=2;REFFIELD=T,A,C GT 0/0 1/1 0/0 13 | 1 73 . TT AG,CC,GG 100 PASS AF=0.1,0.12,0.15;HaplotypeScore=12;REFFIELD=TT,AG,CC,GG;FLAG GT 0/1 0/0 1/1 -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/TestData/indexInput.vcf.idx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BimberLab/DISCVRSeq/88e5574ba4918a17414b2973d3500f23ad9717ff/src/test/resources/com/github/discvrseq/TestData/indexInput.vcf.idx -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/TestData/mergeVcf1.vcf: -------------------------------------------------------------------------------- 1 | ##fileformat=VCFv4.2 2 | ##FORMAT= 3 | ##contig= 4 | ##contig= 5 | #CHROM POS ID REF ALT QUAL FILTER INFO FORMAT Sample1 6 | 1 61 . GT G 724.43 PASS . GT 0/1 7 | 1 72 . T A 100 PASS . GT 0/1 8 | 1 72 . TT AG 100 PASS . GT 0/1 9 | -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/TestData/mergeVcf1.vcf.idx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BimberLab/DISCVRSeq/88e5574ba4918a17414b2973d3500f23ad9717ff/src/test/resources/com/github/discvrseq/TestData/mergeVcf1.vcf.idx -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/TestData/mergeVcf2.vcf: -------------------------------------------------------------------------------- 1 | ##fileformat=VCFv4.2 2 | ##FORMAT= 3 | ##contig= 4 | ##contig= 5 | #CHROM POS ID REF ALT QUAL FILTER INFO FORMAT Sample2 6 | 1 61 . GT G 724.43 PASS . GT 0/1 7 | 1 72 . T A 100 PASS . GT 0/0 8 | 1 100 . T G 100 PASS . GT 0/1 9 | -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/TestData/mergeVcf2.vcf.idx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BimberLab/DISCVRSeq/88e5574ba4918a17414b2973d3500f23ad9717ff/src/test/resources/com/github/discvrseq/TestData/mergeVcf2.vcf.idx -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/TestData/mergeVcf3.vcf: -------------------------------------------------------------------------------- 1 | ##fileformat=VCFv4.2 2 | ##FORMAT= 3 | ##contig= 4 | ##contig= 5 | #CHROM POS ID REF ALT QUAL FILTER INFO FORMAT Sample1 Sample3 6 | 1 61 . GT G 724.43 PASS . GT 0/1 0/1 7 | 1 72 . T A 100 PASS . GT 0/1 1/1 8 | 1 73 . TT AG 100 PASS . GT 0/1 0/0 9 | -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/TestData/mergeVcf3.vcf.idx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BimberLab/DISCVRSeq/88e5574ba4918a17414b2973d3500f23ad9717ff/src/test/resources/com/github/discvrseq/TestData/mergeVcf3.vcf.idx -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/TestData/mergeVcfWithAlts.vcf: -------------------------------------------------------------------------------- 1 | ##fileformat=VCFv4.2 2 | ##INFO= 3 | ##INFO= 4 | ##FORMAT= 5 | ##contig= 6 | ##contig= 7 | #CHROM POS ID REF ALT QUAL FILTER INFO FORMAT Sample1 Sample3 8 | 1 61 . GT G 724.43 PASS RR=GT,G;RA=G GT 0/1 0/1 9 | 1 72 . T A,C 100 PASS RR=T,A,C;RA=A,C GT 0/1 1/1 10 | 1 73 . TT AG 100 PASS RR=TT,AG;RA=AG GT 0/1 0/0 -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/TestData/mergeVcfWithAlts.vcf.idx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BimberLab/DISCVRSeq/88e5574ba4918a17414b2973d3500f23ad9717ff/src/test/resources/com/github/discvrseq/TestData/mergeVcfWithAlts.vcf.idx -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/TestData/sample-map.txt: -------------------------------------------------------------------------------- 1 | sample1 Set1 2 | sample2 Set2 -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/TestData/simpleTest.vcf: -------------------------------------------------------------------------------- 1 | ##fileformat=VCFv4.2 2 | ##INFO= 3 | ##INFO= 4 | #CHROM POS ID REF ALT QUAL FILTER INFO 5 | 1 10000 . C G 1 PASS . 6 | 1 10002 . C G 1 PASS . 7 | 1 10003 . C G 1 PASS . 8 | 1 10008 . A C,T 1 PASS . 9 | 1 10019 . TA T 1 PASS . 10 | 1 10069 . C A 1 PASS VAL=0.2 11 | 1 10106 . C T 1 PASS . 12 | 1 10107 . T G 1 PASS . 13 | 1 10107 . C A 1 PASS VAL=0.01 14 | 1 10107 . C G 1 PASS . 15 | 1 13416 . C A 1 PASS . 16 | 1 13416 . C A 1 PASS . 17 | 1 13416 . C A 1 PASS . 18 | -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/TestData/simpleTest.vcf.idx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BimberLab/DISCVRSeq/88e5574ba4918a17414b2973d3500f23ad9717ff/src/test/resources/com/github/discvrseq/TestData/simpleTest.vcf.idx -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/TestData/softClipVariants.vcf.idx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BimberLab/DISCVRSeq/88e5574ba4918a17414b2973d3500f23ad9717ff/src/test/resources/com/github/discvrseq/TestData/softClipVariants.vcf.idx -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/TestData/variantConcordanceRef1.vcf: -------------------------------------------------------------------------------- 1 | ##fileformat=VCFv4.2 2 | ##INFO= 3 | ##INFO= 4 | ##INFO= 5 | ##FORMAT= 6 | ##contig= 7 | ##contig= 8 | #CHROM POS ID REF ALT QUAL FILTER INFO FORMAT Sample1 9 | 1 61 . GT G 724.43 PASS AC=2;AF=0.100;AN=4 GT 0/1 0/1 10 | 1 72 . T A 100 PASS AC=1;AF=0.250;AN=4 GT 0/1 0/0 11 | 1 100 . T G 100 PASS AC=1;AF=0.500;AN=2 GT ./. 0/1 12 | -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/TestData/variantConcordanceRef1.vcf.idx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BimberLab/DISCVRSeq/88e5574ba4918a17414b2973d3500f23ad9717ff/src/test/resources/com/github/discvrseq/TestData/variantConcordanceRef1.vcf.idx -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/TestData/variantConcordanceRef2.vcf: -------------------------------------------------------------------------------- 1 | ##fileformat=VCFv4.2 2 | ##INFO= 3 | ##INFO= 4 | ##INFO= 5 | ##FORMAT= 6 | ##contig= 7 | ##contig= 8 | #CHROM POS ID REF ALT QUAL FILTER INFO FORMAT Sample1 9 | 1 61 . GT G 724.43 PASS AC=2;AF=0.750;AN=4 GT 0/1 0/1 10 | 1 72 . T A 100 PASS AC=1;AF=0.250;AN=4 GT 0/1 0/0 11 | 1 100 . T G 100 PASS AC=1;AF=0.500;AN=2 GT ./. 0/1 12 | -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/TestData/variantConcordanceRef2.vcf.idx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BimberLab/DISCVRSeq/88e5574ba4918a17414b2973d3500f23ad9717ff/src/test/resources/com/github/discvrseq/TestData/variantConcordanceRef2.vcf.idx -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/TestData/vcfTwoContigs.vcf: -------------------------------------------------------------------------------- 1 | ##fileformat=VCFv4.2 2 | ##FORMAT= 3 | ##contig= 4 | ##contig= 5 | #CHROM POS ID REF ALT QUAL FILTER INFO FORMAT Sample1 6 | 1 61 . GT G 724.43 PASS . GT 0/1 7 | 1 72 . T A 100 PASS . GT 0/1 8 | 1 72 . TT AG 100 PASS . GT 0/1 9 | 2 461 . GT G 724.43 PASS . GT 0/1 10 | 2 572 . T A 100 PASS . GT 0/1 11 | 2 1272 . TT AG 100 PASS . GT 0/1 12 | -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/TestData/vcfTwoContigs.vcf.idx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BimberLab/DISCVRSeq/88e5574ba4918a17414b2973d3500f23ad9717ff/src/test/resources/com/github/discvrseq/TestData/vcfTwoContigs.vcf.idx -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/walkers/AnnotateNovelSites/missing.vcf: -------------------------------------------------------------------------------- 1 | ##fileformat=VCFv4.2 2 | ##FORMAT= 3 | ##FORMAT= 4 | ##FORMAT= 5 | ##FORMAT= 6 | ##FORMAT= 7 | ##FORMAT= 8 | ##FORMAT= 9 | ##FORMAT= 10 | ##FORMAT= 11 | ##INFO= 12 | ##INFO= 13 | ##INFO= 14 | ##INFO= 15 | ##contig= 16 | ##contig= 17 | #CHROM POS ID REF ALT QUAL FILTER INFO 18 | 1 4633 . C CTAT,GA,TACGTAC 38369.71 PASS MAC=3;PURPOSE=same_pos_same_ref_same_alt1_same_alt2_same_alt3;RN=12;mGAPV=1.0 19 | 1 4725 . G A,GC,TTTAAAA 38369.71 PASS MAC=0;PURPOSE=overlapping_position;RN=12;mGAPV=1.0 20 | -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/walkers/AnnotateNovelSites/novel.vcf: -------------------------------------------------------------------------------- 1 | ##fileformat=VCFv4.2 2 | ##FORMAT= 3 | ##FORMAT= 4 | ##FORMAT= 5 | ##FORMAT= 6 | ##FORMAT= 7 | ##FORMAT= 8 | ##FORMAT= 9 | ##FORMAT= 10 | ##FORMAT= 11 | ##INFO= 12 | ##INFO= 13 | ##INFO= 14 | ##INFO= 15 | ##contig= 16 | ##contig= 17 | #CHROM POS ID REF ALT QUAL FILTER INFO 18 | 1 2 . G A 2328.69 PASS MAC=1;PURPOSE=diff_pos_same_ref_same_alt;RN=12;mGAPV=2.0 19 | 1 4 . G T 2328.69 PASS MAC=1;PURPOSE=same_pos_diff_ref_same_alt;RN=12;mGAPV=2.0 20 | 1 11 . G A 12328.69 PASS MAC=0;PURPOSE=same_pos_same_ref_diff_alt;RN=12;mGAPV=2.0 21 | 1 12 . C CG 12328.69 PASS MAC=1;PURPOSE=same_pos_same_ref_same_alt;RN=12;mGAPV=2.0 22 | 1 221 . G A,T 2328.69 PASS MAC=1;PURPOSE=same_pos_same_ref_same_alt1_diff_alt2;RN=12;mGAPV=2.0 23 | 1 232 . G T,* 1008.03 PASS MAC=1;PURPOSE=same_pos_same_ref_diff_alt1_same_alt2;RN=12;mGAPV=2.0 24 | 1 244 . A AT,CCC 7.80 PASS MAC=2;PURPOSE=same_pos_same_ref_same_alt1_same_alt2;RN=12;mGAPV=2.0 25 | 1 3111 . TA AT,G,T 9683.63 PASS MAC=1;PURPOSE=same_pos_same_ref_diff_alt1_diff_alt2_diff_alt3;RN=12;mGAPV=2.0 26 | -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/walkers/AppendGenotypes/append1.vcf: -------------------------------------------------------------------------------- 1 | ##fileformat=VCFv4.2 2 | ##FORMAT= 3 | ##INFO= 4 | ##INFO= 5 | ##INFO= 6 | ##contig= 7 | ##contig= 8 | #CHROM POS ID REF ALT QUAL FILTER INFO FORMAT Sample3 Sample2 Sample1 9 | 1 61 . GT G 724.43 PASS AC=2;AF=0.500;AN=4 GT 0/1 0/1 ./. 10 | 1 72 . T A,G 100 PASS AC=2,1;AF=0.333,0.167;AN=6 GT 0/2 0/1 0/1 11 | -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/walkers/BackportLiftedVcf/backportLifted.vcf: -------------------------------------------------------------------------------- 1 | ##fileformat=VCFv4.2 2 | ##FORMAT= 3 | ##INFO= 4 | ##INFO= 5 | ##INFO= 6 | ##contig= 7 | ##contig= 8 | #CHROM POS ID REF ALT QUAL FILTER INFO FORMAT Sample1 9 | 1 61 . GT G 724.43 PASS OriginalContig=1;OriginalStart=1;OriginalAlleles=GT,G GT 0/1 10 | 1 72 . T A 100 PASS OriginalContig=1;OriginalStart=469;OriginalAlleles=A,T GT 0/1 11 | -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/walkers/BackportLiftedVcf/backportLiftedOutput.vcf: -------------------------------------------------------------------------------- 1 | ##fileformat=VCFv4.2 2 | ##FORMAT= 3 | ##INFO= 4 | ##INFO= 5 | ##INFO= 6 | ##contig= 7 | ##contig= 8 | #CHROM POS ID REF ALT QUAL FILTER INFO FORMAT Sample1 9 | 1 1 . GT G 724.43 PASS LiftedContig=1;LiftedStart=61;LiftedStop=62 GT 0/1 10 | 1 469 . A T 100 PASS LiftedContig=1;LiftedStart=72;LiftedStop=72 GT 0/1 11 | -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/walkers/ClipOverlappingAlignments/SIVmac239-overlap.bed: -------------------------------------------------------------------------------- 1 | SIVmac239 200 275 2 | SIVmac239 350 400 -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/walkers/ClipOverlappingAlignments/SIVmac239-overlap.bed.idx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BimberLab/DISCVRSeq/88e5574ba4918a17414b2973d3500f23ad9717ff/src/test/resources/com/github/discvrseq/walkers/ClipOverlappingAlignments/SIVmac239-overlap.bed.idx -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/walkers/ClipOverlappingAlignments/SIVmac239.dict: -------------------------------------------------------------------------------- 1 | @HD VN:1.5 2 | @SQ SN:SIVmac239 LN:10535 M5:d1ec8bcf91bcb784a5882397f166e25a UR:file:/home/groups/prime-seq/production/Shared/@files/.referenceLibraries/23/23_SIVmac239.fasta 3 | -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/walkers/ClipOverlappingAlignments/SIVmac239.fasta.fai: -------------------------------------------------------------------------------- 1 | SIVmac239 10535 11 60 61 2 | -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/walkers/ClipOverlappingAlignments/expectedOutput.txt: -------------------------------------------------------------------------------- 1 | FeatureContig FeatureStart FeatureEnd TotalAlignmentsClippedAt5Prime Total5PrimeBasesClipped TotalAlignmentsClippedAt3Prime Total3PrimeBasesClipped 2 | SIVmac239 201 275 190 5768 0 0 3 | -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/walkers/ClipOverlappingAlignments/expectedOutput2.sam: -------------------------------------------------------------------------------- 1 | @HD VN:1.6 SO:coordinate 2 | @SQ SN:chr1 LN:249250621 3 | @RG ID:26126 LB:24554 PL:ILLUMINA PU:27769-PID88_S15_L001 SM:27769-PID88 4 | read_1 99 chr1 100 60 150M = 250 300 ACTTTATCGACTAGTCAGCTAGCTAGTCAGCTAGCTAGCTACGATGCTAGCTACGTAGCTAGCTAGCTAGCTAGCTAGCTAGCTAGCTAGCTAGTACGATCGATGCTAGCTAGCTCTGATCGATGCTAGTCGATGCTAGCTGCTGGGGTT JJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJ RG:Z:26126 AS:i:0 XS:i:0 5 | read_2 99 chr1 101 60 149M1S = 250 300 CTTTATCGACTAGTCAGCTAGCTAGTCAGCTAGCTAGCTACGATGCTAGCTACGTAGCTAGCTAGCTAGCTAGCTAGCTAGCTAGCTAGCTAGTACGATCGATGCTAGCTAGCTCTGATCGATGCTAGTCGATGCTAGCTGCTGGGGTTT JJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJ RG:Z:26126 AS:i:0 XS:i:0 Xc:Z:150M 6 | -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/walkers/ClipOverlappingAlignments/expectedOutput2.txt: -------------------------------------------------------------------------------- 1 | FeatureContig FeatureStart FeatureEnd TotalAlignmentsClippedAt5Prime Total5PrimeBasesClipped TotalAlignmentsClippedAt3Prime Total3PrimeBasesClipped 2 | chr1 250 1000 0 0 1 1 3 | -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/walkers/ClipOverlappingAlignments/intervals.bed: -------------------------------------------------------------------------------- 1 | chr1 249 1000 2 | -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/walkers/ClipOverlappingAlignments/intervals.bed.idx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BimberLab/DISCVRSeq/88e5574ba4918a17414b2973d3500f23ad9717ff/src/test/resources/com/github/discvrseq/walkers/ClipOverlappingAlignments/intervals.bed.idx -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/walkers/ClipOverlappingAlignments/testSAM.sam: -------------------------------------------------------------------------------- 1 | @HD VN:1.6 SO:coordinate 2 | @SQ SN:chr1 LN:249250621 3 | @RG ID:26126 LB:24554 PL:ILLUMINA PU:27769-PID88_S15_L001 SM:27769-PID88 4 | read_1 99 chr1 100 60 150M = 250 300 ACTTTATCGACTAGTCAGCTAGCTAGTCAGCTAGCTAGCTACGATGCTAGCTACGTAGCTAGCTAGCTAGCTAGCTAGCTAGCTAGCTAGCTAGTACGATCGATGCTAGCTAGCTCTGATCGATGCTAGTCGATGCTAGCTGCTGGGGTT JJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJ RG:Z:26126 AS:i:0 XS:i:0 5 | read_2 99 chr1 101 60 150M = 250 300 CTTTATCGACTAGTCAGCTAGCTAGTCAGCTAGCTAGCTACGATGCTAGCTACGTAGCTAGCTAGCTAGCTAGCTAGCTAGCTAGCTAGCTAGTACGATCGATGCTAGCTAGCTCTGATCGATGCTAGTCGATGCTAGCTGCTGGGGTTT JJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJ RG:Z:26126 AS:i:0 XS:i:0 6 | -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/walkers/CrossSampleGenotypeComparison/crossSampleGenotypeComparison.txt: -------------------------------------------------------------------------------- 1 | SampleName RefSampleName TotalCalledGenotypes TotalComparedToRef TotalDiscordant FractionDiscordant 2 | PAIR_CHILD PAIR_CHILD 18 18 0 0.0 3 | PAIR_CHILD PAIR_PARENT 18 18 14 0.7777777777777778 4 | PAIR_CHILD TRIO_CHILD 18 18 0 0.0 5 | PAIR_CHILD TRIO_FATHER 18 18 11 0.6111111111111112 6 | PAIR_CHILD TRIO_MOTHER 18 18 14 0.7777777777777778 7 | PAIR_CHILD UNRELATED_INDIVIDUAL_CONTROL 18 18 14 0.7777777777777778 8 | PAIR_PARENT PAIR_CHILD 18 18 14 0.7777777777777778 9 | PAIR_PARENT PAIR_PARENT 18 18 0 0.0 10 | PAIR_PARENT TRIO_CHILD 18 18 14 0.7777777777777778 11 | PAIR_PARENT TRIO_FATHER 18 18 13 0.7222222222222222 12 | PAIR_PARENT TRIO_MOTHER 18 18 0 0.0 13 | PAIR_PARENT UNRELATED_INDIVIDUAL_CONTROL 18 18 0 0.0 14 | TRIO_CHILD PAIR_CHILD 18 18 0 0.0 15 | TRIO_CHILD PAIR_PARENT 18 18 14 0.7777777777777778 16 | TRIO_CHILD TRIO_CHILD 18 18 0 0.0 17 | TRIO_CHILD TRIO_FATHER 18 18 11 0.6111111111111112 18 | TRIO_CHILD TRIO_MOTHER 18 18 14 0.7777777777777778 19 | TRIO_CHILD UNRELATED_INDIVIDUAL_CONTROL 18 18 14 0.7777777777777778 20 | TRIO_FATHER PAIR_CHILD 18 18 11 0.6111111111111112 21 | TRIO_FATHER PAIR_PARENT 18 18 13 0.7222222222222222 22 | TRIO_FATHER TRIO_CHILD 18 18 11 0.6111111111111112 23 | TRIO_FATHER TRIO_FATHER 18 18 0 0.0 24 | TRIO_FATHER TRIO_MOTHER 18 18 13 0.7222222222222222 25 | TRIO_FATHER UNRELATED_INDIVIDUAL_CONTROL 18 18 13 0.7222222222222222 26 | TRIO_MOTHER PAIR_CHILD 18 18 14 0.7777777777777778 27 | TRIO_MOTHER PAIR_PARENT 18 18 0 0.0 28 | TRIO_MOTHER TRIO_CHILD 18 18 14 0.7777777777777778 29 | TRIO_MOTHER TRIO_FATHER 18 18 13 0.7222222222222222 30 | TRIO_MOTHER TRIO_MOTHER 18 18 0 0.0 31 | TRIO_MOTHER UNRELATED_INDIVIDUAL_CONTROL 18 18 0 0.0 32 | UNRELATED_INDIVIDUAL_CONTROL PAIR_CHILD 18 18 14 0.7777777777777778 33 | UNRELATED_INDIVIDUAL_CONTROL PAIR_PARENT 18 18 0 0.0 34 | UNRELATED_INDIVIDUAL_CONTROL TRIO_CHILD 18 18 14 0.7777777777777778 35 | UNRELATED_INDIVIDUAL_CONTROL TRIO_FATHER 18 18 13 0.7222222222222222 36 | UNRELATED_INDIVIDUAL_CONTROL TRIO_MOTHER 18 18 0 0.0 37 | UNRELATED_INDIVIDUAL_CONTROL UNRELATED_INDIVIDUAL_CONTROL 18 18 0 0.0 38 | -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/walkers/CrossSampleGenotypeComparison/crossSampleGenotypeComparisonSummary.txt: -------------------------------------------------------------------------------- 1 | PAIR_CHILD PAIR_PARENT TRIO_CHILD TRIO_FATHER TRIO_MOTHER UNRELATED_INDIVIDUAL_CONTROL 2 | PAIR_CHILD 0.0 0.7777777777777778 0.0 0.6111111111111112 0.7777777777777778 0.7777777777777778 3 | PAIR_PARENT 0.7777777777777778 0.0 0.7777777777777778 0.7222222222222222 0.0 0.0 4 | TRIO_CHILD 0.0 0.7777777777777778 0.0 0.6111111111111112 0.7777777777777778 0.7777777777777778 5 | TRIO_FATHER 0.6111111111111112 0.7222222222222222 0.6111111111111112 0.0 0.7222222222222222 0.7222222222222222 6 | TRIO_MOTHER 0.7777777777777778 0.0 0.7777777777777778 0.7222222222222222 0.0 0.0 7 | UNRELATED_INDIVIDUAL_CONTROL 0.7777777777777778 0.0 0.7777777777777778 0.7222222222222222 0.0 0.0 8 | -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/walkers/ExtendedFuncotator/funcotator1.vcf: -------------------------------------------------------------------------------- 1 | ##fileformat=VCFv4.2 2 | ##Funcotator Version=Unavailable | Gencode 34 CANONICAL | testSource 20180612 | vcfTestSource 20180612 3 | ##INFO= 4 | ##INFO= 5 | ##INFO= 6 | ##INFO= 7 | ##INFO= 8 | ##INFO= 9 | ##INFO= 10 | #CHROM POS ID REF ALT QUAL FILTER INFO 11 | 1 10000 . C G 1 PASS f1=A;f2=Overlap10000;f3=0.2;f4=1 12 | 1 10002 . C G 1 PASS . 13 | 1 10003 . C G 1 PASS . 14 | 1 10008 . A C,T 1 PASS f3=0.3, 15 | 1 10019 . TA T 1 PASS f3=0.4;f4=2,3,4 16 | 1 10069 . C A 1 PASS VAL=0.2;f1=C;f2=Overlap10023 17 | 1 10106 . C T 1 PASS . 18 | 1 10107 . T G 1 PASS . 19 | 1 10107 . C A 1 PASS VAL=0.01 20 | 1 10107 . C G 1 PASS . 21 | 1 13416 . C A 1 PASS f1=E;f2=Overlap13414 22 | 1 13416 . C A 1 PASS f1=E;f2=Overlap13414 23 | 1 13416 . C A 1 PASS f1=E;f2=Overlap13414 24 | -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/walkers/GroupCompare/groupCompareInput1.vcf: -------------------------------------------------------------------------------- 1 | ##fileformat=VCFv4.2 2 | ##INFO= 3 | ##INFO= 4 | ##INFO= 5 | ##INFO= 6 | ##INFO= 7 | ##FORMAT= 8 | ##contig= 9 | ##contig= 10 | #CHROM POS ID REF ALT QUAL FILTER INFO FORMAT Sample1 Sample2 Sample3 Sample4 Sample5 11 | 1 61 . GT G 724.43 PASS AF=0.1;HaplotypeScore=9.1318;REFFIELD=GT,G;UB=1.0,2.1 GT 0/1 1/1 0/1 0/0 1/1 12 | 1 72 . T A,C 100 PASS AF=0.5,0.05;HaplotypeScore=2;REFFIELD=T,A,C GT 0/0 1/1 0/0 1/1 0/0 13 | 1 73 . TT AG,CC,GG 100 PASS AF=0.1,0.12,0.15;HaplotypeScore=12;REFFIELD=TT,AG,CC,GG;FLAG GT 0/1 0/0 1/1 0/0 0/0 14 | -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/walkers/GroupCompare/groupCompareInput1.vcf.idx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BimberLab/DISCVRSeq/88e5574ba4918a17414b2973d3500f23ad9717ff/src/test/resources/com/github/discvrseq/walkers/GroupCompare/groupCompareInput1.vcf.idx -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/walkers/GroupCompare/groupCompareOutput.vcf: -------------------------------------------------------------------------------- 1 | ##fileformat=VCFv4.2 2 | ##FORMAT= 3 | ##INFO= 4 | ##INFO= 5 | ##INFO= 6 | ##INFO= 7 | ##INFO= 8 | ##INFO= 9 | ##INFO= 10 | ##INFO= 11 | ##INFO= 12 | ##contig= 13 | ##contig= 14 | #CHROM POS ID REF ALT QUAL FILTER INFO FORMAT Sample1 Sample2 15 | 1 61 . GT G 724.43 PASS AF=0.1;G1_AF=0.750;G1_HET=1;G1_HOMREF=0;G1_HOMVAR=1;HaplotypeScore=9.1318;REFFIELD=GT,G;UB=1.0,2.1 GT 0/1 1/1 16 | 1 72 . T A 100 PASS AF=0.5;G1_AF=0.500;G1_HET=0;G1_HOMREF=1;G1_HOMVAR=1;HaplotypeScore=2;REFFIELD=T,A GT 0/0 1/1 17 | 1 73 . TT AG 100 PASS AF=0.1;FLAG;G1_AF=0.250;G1_HET=1;G1_HOMREF=1;G1_HOMVAR=0;HaplotypeScore=12;REFFIELD=TT,AG GT 0/1 0/0 18 | -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/walkers/GroupCompare/groupCompareOutputWithRef.txt: -------------------------------------------------------------------------------- 1 | CHROM POS REF ALT G1_AF G1_HOMREF G1_HET G1_HOMVAR REF_AF REF_HOMREF REF_HET REF_HOMVAR REFFIELD 2 | 1 61 GT G 0.75 0 1 1 0.5 1 2 1 G 3 | 1 72 T A 0.5 1 0 1 0.25 3 0 1 A 4 | -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/walkers/GroupCompare/groupCompareOutputWithRef.vcf: -------------------------------------------------------------------------------- 1 | ##fileformat=VCFv4.2 2 | ##FORMAT= 3 | ##INFO= 4 | ##INFO= 5 | ##INFO= 6 | ##INFO= 7 | ##INFO= 8 | ##INFO= 9 | ##INFO= 10 | ##INFO= 11 | ##INFO= 12 | ##INFO= 13 | ##INFO= 14 | ##INFO= 15 | ##INFO= 16 | ##contig= 17 | ##contig= 18 | #CHROM POS ID REF ALT QUAL FILTER INFO FORMAT Sample1 Sample2 19 | 1 61 . GT G 724.43 PASS AF=0.1;G1_AF=0.750;G1_HET=1;G1_HOMREF=0;G1_HOMVAR=1;HaplotypeScore=9.1318;REFFIELD=GT,G;REF_AF=0.500;REF_HET=2;REF_HOMREF=1;REF_HOMVAR=1;UB=1.0,2.1 GT 0/1 1/1 20 | 1 72 . T A 100 PASS AF=0.5;G1_AF=0.500;G1_HET=0;G1_HOMREF=1;G1_HOMVAR=1;HaplotypeScore=2;REFFIELD=T,A;REF_AF=0.250;REF_HET=0;REF_HOMREF=3;REF_HOMVAR=1 GT 0/0 1/1 21 | 1 73 . TT AG 100 PASS AF=0.1;FLAG;G1_AF=0.250;G1_HET=1;G1_HOMREF=1;G1_HOMVAR=0;HaplotypeScore=12;REFFIELD=TT,AG;REF_AF=0.375;REF_HET=1;REF_HOMREF=2;REF_HOMVAR=1 GT 0/1 0/0 22 | -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/walkers/GroupCompare/groupCompareRef.vcf: -------------------------------------------------------------------------------- 1 | ##fileformat=VCFv4.2 2 | ##INFO= 3 | ##INFO= 4 | ##INFO= 5 | ##INFO= 6 | ##INFO= 7 | ##FORMAT= 8 | ##contig= 9 | ##contig= 10 | #CHROM POS ID REF ALT QUAL FILTER INFO FORMAT Ref1 Sample1 Ref2 Ref3 Ref4 11 | 1 61 . GT G 724.43 PASS AF=0.2;HaplotypeScore=9.1318;SHOULDNOTAPPEAR=GT,G;UB=1.0,2.1 GT 0/1 1/1 0/1 0/0 1/1 12 | 1 72 . T A,C 100 PASS AF=0.55,0.05;HaplotypeScore=2;SHOULDNOTAPPEAR=T,A,C GT 0/0 1/1 0/0 1/1 0/0 13 | 1 73 . TT AG,CC,GG 100 PASS AF=0.13,0.17,0.18;HaplotypeScore=12;SHOULDNOTAPPEAR=TT,AG,CC,GG;FLAG GT 0/1 0/0 1/1 0/0 0/0 14 | -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/walkers/GroupCompare/groupCompareRef.vcf.idx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BimberLab/DISCVRSeq/88e5574ba4918a17414b2973d3500f23ad9717ff/src/test/resources/com/github/discvrseq/walkers/GroupCompare/groupCompareRef.vcf.idx -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/walkers/IdentifySoftClippedLoci/IdentifySoftClippedLoci.bed: -------------------------------------------------------------------------------- 1 | Mamu-KIR3DS01*00101 1806 1807 AfterSoftClip + 22642_RL8_Tetramer_Clone16 0.636364 11 7 2 | Mamu-KIR3DS01*00101 1806 1807 AfterSoftClip + 22642_RL8_Tetramer_Clone16 0.600000 10 6 3 | Mamu-KIR3DS01*00101 1806 1807 AfterSoftClip + 22642_RL8_Tetramer_Clone16 0.500000 10 5 4 | Mamu-KIR3DS01*00101 1806 1807 AfterSoftClip + 22642_RL8_Tetramer_Clone16 0.545455 11 6 5 | Mamu-KIR3DS01*00101 1806 1807 AfterSoftClip + 22642_RL8_Tetramer_Clone16 0.583333 12 7 6 | Mamu-KIR3DS01*00101 1851 1852 BeforeSoftClip + 22642_RL8_Tetramer_Clone16 1.000000 10 10 7 | Mamu-KIR3DS01*00101 1806 1807 AfterSoftClip + 22642_RL8_Tetramer_Clone16 0.600000 10 6 8 | Mamu-KIR3DS01*00101 1806 1807 AfterSoftClip + 22642_RL8_Tetramer_Clone16 0.545455 11 6 9 | Mamu-KIR3DS01*00101 1806 1807 AfterSoftClip + 22642_RL8_Tetramer_Clone16 0.200000 10 2 10 | Mamu-KIR3DS01*00101 1806 1807 AfterSoftClip + 22642_RL8_Tetramer_Clone16 0.800000 10 8 11 | Mamu-KIR3DS01*00101 1806 1807 AfterSoftClip + 22642_RL8_Tetramer_Clone16 0.500000 10 5 12 | Mamu-KIR3DS01*00101 1806 1807 AfterSoftClip + 22642_RL8_Tetramer_Clone16 0.636364 11 7 13 | Mamu-KIR3DS01*00101 1851 1852 BeforeSoftClip + 22642_RL8_Tetramer_Clone16 1.000000 11 11 14 | Mamu-KIR3DS01*00101 1806 1807 AfterSoftClip + 22642_RL8_Tetramer_Clone16 0.818182 11 9 15 | Mamu-KIR3DS01*00101 1851 1852 BeforeSoftClip + 22642_RL8_Tetramer_Clone16 1.000000 10 10 16 | Mamu-KIR3DS01*00101 1806 1807 AfterSoftClip + 22642_RL8_Tetramer_Clone16 0.600000 10 6 17 | Mamu-KIR3DS01*00101 1849 1850 BeforeSoftClip + 22642_RL8_Tetramer_Clone16 0.200000 10 2 18 | Mamu-KIR3DS01*00101 1806 1807 AfterSoftClip + 22642_RL8_Tetramer_Clone16 0.636364 11 7 19 | Mamu-KIR3DS01*00101 1806 1807 AfterSoftClip + 22642_RL8_Tetramer_Clone16 0.700000 10 7 20 | Mamu-KIR3DS01*00101 1806 1807 AfterSoftClip + 22642_RL8_Tetramer_Clone16 0.400000 10 4 21 | -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/walkers/IdentifySoftClippedLoci/IdentifySoftClippedLociFiltered.bed: -------------------------------------------------------------------------------- 1 | Mamu-KIR3DS01*00101 1806 1807 AfterSoftClip + 22642_RL8_Tetramer_Clone16 0.636364 11 7 2 | Mamu-KIR3DS01*00101 1806 1807 AfterSoftClip + 22642_RL8_Tetramer_Clone16 0.600000 10 6 3 | Mamu-KIR3DS01*00101 1806 1807 AfterSoftClip + 22642_RL8_Tetramer_Clone16 0.500000 10 5 4 | Mamu-KIR3DS01*00101 1806 1807 AfterSoftClip + 22642_RL8_Tetramer_Clone16 0.545455 11 6 5 | Mamu-KIR3DS01*00101 1806 1807 AfterSoftClip + 22642_RL8_Tetramer_Clone16 0.583333 12 7 6 | Mamu-KIR3DS01*00101 1851 1852 BeforeSoftClip + 22642_RL8_Tetramer_Clone16 1.000000 10 10 7 | Mamu-KIR3DS01*00101 1806 1807 AfterSoftClip + 22642_RL8_Tetramer_Clone16 0.600000 10 6 8 | Mamu-KIR3DS01*00101 1806 1807 AfterSoftClip + 22642_RL8_Tetramer_Clone16 0.545455 11 6 9 | Mamu-KIR3DS01*00101 1806 1807 AfterSoftClip + 22642_RL8_Tetramer_Clone16 0.800000 10 8 10 | Mamu-KIR3DS01*00101 1806 1807 AfterSoftClip + 22642_RL8_Tetramer_Clone16 0.500000 10 5 11 | Mamu-KIR3DS01*00101 1806 1807 AfterSoftClip + 22642_RL8_Tetramer_Clone16 0.636364 11 7 12 | Mamu-KIR3DS01*00101 1851 1852 BeforeSoftClip + 22642_RL8_Tetramer_Clone16 1.000000 11 11 13 | Mamu-KIR3DS01*00101 1806 1807 AfterSoftClip + 22642_RL8_Tetramer_Clone16 0.818182 11 9 14 | Mamu-KIR3DS01*00101 1851 1852 BeforeSoftClip + 22642_RL8_Tetramer_Clone16 1.000000 10 10 15 | Mamu-KIR3DS01*00101 1806 1807 AfterSoftClip + 22642_RL8_Tetramer_Clone16 0.600000 10 6 16 | Mamu-KIR3DS01*00101 1806 1807 AfterSoftClip + 22642_RL8_Tetramer_Clone16 0.636364 11 7 17 | Mamu-KIR3DS01*00101 1806 1807 AfterSoftClip + 22642_RL8_Tetramer_Clone16 0.700000 10 7 18 | Mamu-KIR3DS01*00101 1806 1807 AfterSoftClip + 22642_RL8_Tetramer_Clone16 0.400000 10 4 19 | -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/walkers/IdentifySoftClippedLoci/IdentifySoftClippedLociWithVcf.bed: -------------------------------------------------------------------------------- 1 | 2 132579273 132579274 BeforeSoftClip + LP63 0.136364 22 3 2 | 2 132579677 132579678 AfterSoftClip + LP63 0.153846 13 2 3 | 2 132580501 132580502 AfterSoftClip + LP63 0.125000 16 2 4 | 2 132580513 132580514 BeforeSoftClip + LP63 0.235294 17 4 5 | 2 132589350 132589351 BeforeSoftClip + LP63 1.000000 20 20 2-DEL-pbsv.DEL.10391.clr|2|132589349|INDEL 6 | 2 132638952 132638953 AfterSoftClip + LP63 0.300000 10 3 7 | 2 132638953 132638954 AfterSoftClip + LP63 0.111111 18 2 8 | 2 132638984 132638985 BeforeSoftClip + LP63 0.400000 30 12 9 | 2 132638985 132638986 BeforeSoftClip + LP63 0.117647 17 2 10 | 2 132638986 132638987 BeforeSoftClip + LP63 0.933333 15 14 11 | -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/walkers/ImmunoGenotyper/ImmunoGenotyperOutput.genotypes.txt: -------------------------------------------------------------------------------- 1 | RefNames Lineage/Allotypes TotalReads PercentOfTotal PercentOfTotalIncludingUnmapped 2 | Mamu-KIR3DL07*002 KIR3DL07g 186 0.038 0.016 3 | Mamu-B*030:01 Mamu-B*030g 76 0.016 0.007 4 | Mamu-A3*13:03 Mamu-A3*13g 403 0.083 0.035 5 | Mamu-DPB1*10 Mamu-DPB1*10 66 0.014 0.006 6 | Mamu-KIR2DL04*00101 KIR2DL04g 154 0.032 0.013 7 | Mamu-KIR3DS01*00101 KIR3DS01g 3835 0.791 0.329 8 | -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/walkers/ImmunoGenotyper/ImmunoGenotyperOutput.mismatches.txt: -------------------------------------------------------------------------------- 1 | RefName TotalReads ReasonForFailure 2 | Mamu-A2*05:04:01 1 Mismatches 3 | Mamu-B*074:02 16 Mismatches,NoValidPair 4 | Mamu-DPB1*01 5 Mismatches,NoValidPair 5 | Mamu-B*051:01 2 Mismatches,NoValidPair 6 | Mamu-B*045:06 1 NoValidPair 7 | Mamu-B*074:01 16 Mismatches,NoValidPair 8 | Mamu-F*01:02 9 Mismatches,NoValidPair 9 | Mamu-F*01:03 14 Mismatches,NoValidPair 10 | Mamu-B*013:01 1 Mismatches 11 | Mamu-B*029:02 1 NoValidPair 12 | Mamu-KIR2DL04*00101 123 Mismatches,NoValidPair 13 | Mamu-F*01:01 5 Mismatches,NoValidPair 14 | Mamu-F*01:06 7 Mismatches,NoValidPair 15 | Mamu-B*017:04 1 Mismatches 16 | Mamu-B*017:03 1 Mismatches 17 | Mamu-F*01:04 10 Mismatches,NoValidPair 18 | Mamu-B*069:01_exon2-3 1 Mismatches 19 | Mamu-F*01:05 11 Mismatches,NoValidPair 20 | Mamu-E*01:12:01 2 Mismatches,NoValidPair 21 | Mamu-DPB1*10 68 Mismatches,NoValidPair 22 | Mamu-B*004:01 11 Mismatches,NoValidPair 23 | Mamu-B*077:01 1 Mismatches 24 | Mamu-B*030:03:02 10 Mismatches,NoValidPair 25 | Mamu-I*01:06:03 2 Mismatches,NoValidPair 26 | Mamu-B*030:03:01 3 Mismatches,NoValidPair 27 | Mamu-AG*03:01:01 1 Mismatches 28 | Mamu-B*030:03:03 2 Mismatches,NoValidPair 29 | Mamu-DPB1*04 7 Mismatches,NoValidPair 30 | Mamu-AG*01:01 1 Mismatches 31 | Mamu-DPB1*03 2 NoValidPair 32 | Mamu-DPB1*02 2 NoValidPair 33 | Mamu-B*066:01 2 Mismatches,NoValidPair 34 | Mamu-B*074:02-V1 34 Mismatches,NoValidPair 35 | Mamu-DPB1*06 2 NoValidPair 36 | Mamu-B*047:02 1 NoValidPair 37 | Mamu-DPB1*23 1 NoValidPair 38 | Mamu-E*01:17 1 Mismatches 39 | Mamu-E*01:19 2 Mismatches,NoValidPair 40 | Mamu-E*01:14 1 NoValidPair 41 | Mamu-E*01:11 1 NoValidPair 42 | Mamu-B*011:01 24 Mismatches,NoValidPair 43 | Mamu-B*030:01 110 Mismatches,NoValidPair 44 | Mamu-B*030:04 6 Mismatches,NoValidPair 45 | Mamu-DPB1*19:01:02 3 Mismatches,NoValidPair 46 | Mamu-B*030:05 8 Mismatches,NoValidPair 47 | Mamu-E*01:01:01_exon2-3 2 Mismatches 48 | Mamu-B*030:02 14 Mismatches,NoValidPair 49 | Mamu-DPB1*13 1 Mismatches 50 | Mamu-B*015:05 1 NoValidPair 51 | Mamu-DPB1*18 11 Mismatches,NoValidPair 52 | Mamu-B*030:06 3 NoValidPair 53 | Mamu-DPB1*17 2 Mismatches,NoValidPair 54 | Mamu-B*101:01 1 Mismatches 55 | Mamu-KIR3DL07*002 51 Mismatches,NoValidPair 56 | Mamu-B*071:01 1 NoValidPair 57 | Mamu-B*048:03 4 Mismatches 58 | Mamu-B*048:02 3 Mismatches 59 | Mamu-E*01:05 34 Mismatches,NoValidPair 60 | Mamu-A3*13:03 800 Mismatches,NoValidPair 61 | Mamu-B*019:02 1 Mismatches 62 | Mamu-B*002:01 5 Mismatches,NoValidPair 63 | Mamu-AG*02:01:02 1 Mismatches 64 | Mamu-KIR3DS01*00101 9080 Mismatches,NoValidPair 65 | Mamu-B*060:04 5 Mismatches,NoValidPair 66 | Mamu-B*085:02 1 NoValidPair 67 | Mamu-B*037:02 1 Mismatches 68 | Mamu-B*005:01 12 Mismatches 69 | Mamu-AG*03:02 2 Mismatches 70 | -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/walkers/ImmunoGenotyper/ImmunoGenotyperOutputMM.genotypes.txt: -------------------------------------------------------------------------------- 1 | RefNames Lineage/Allotypes TotalReads PercentOfTotal PercentOfTotalIncludingUnmapped 2 | Mamu-KIR3DL07*002 KIR3DL07g 201 0.017 0.017 3 | Mamu-B*030:01 Mamu-B*030g 146 0.013 0.013 4 | Mamu-A3*13:03 Mamu-A3*13g 966 0.083 0.083 5 | Mamu-A3*13:03,Mamu-KIR3DS01*00101 KIR3DS01g,Mamu-A3*13g 90 0.008 0.008 6 | Mamu-KIR2DL04*00101 KIR2DL04g 245 0.021 0.021 7 | Mamu-KIR3DS01*00101 KIR3DS01g 9542 0.818 0.818 8 | -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/walkers/ImmunoGenotyper/ImmunoGenotyperOutputMM.mismatches.txt: -------------------------------------------------------------------------------- 1 | RefName TotalReads ReasonForFailure 2 | Mamu-B*030:01 1 Mismatches 3 | -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/walkers/ImmunoGenotyper/ImmunoGenotyperOutputNVP.genotypes.txt: -------------------------------------------------------------------------------- 1 | RefNames Lineage/Allotypes TotalReads PercentOfTotal PercentOfTotalIncludingUnmapped 2 | Mamu-KIR3DL07*002 KIR3DL07g 201 0.020 0.017 3 | Mamu-B*074:02 Mamu-B*074g 17 0.002 0.001 4 | Mamu-A3*13:03 Mamu-A3*13g 892 0.087 0.076 5 | Mamu-DPB1*10 Mamu-DPB1*10 106 0.010 0.009 6 | Mamu-A3*13:03,Mamu-KIR3DS01*00101 KIR3DS01g,Mamu-A3*13g 83 0.008 0.007 7 | Mamu-B*074:01 Mamu-B*074g 18 0.002 0.002 8 | Mamu-KIR3DS01*00101 KIR3DS01g 8337 0.812 0.714 9 | Mamu-F*01:03 Mamu-F*01g 20 0.002 0.002 10 | Mamu-B*030:01 Mamu-B*030g 124 0.012 0.011 11 | Mamu-KIR2DL04*00101 KIR2DL04g 244 0.024 0.021 12 | Mamu-F*01:04 Mamu-F*01g 13 0.001 0.001 13 | Mamu-KIR3DL07*002,Mamu-KIR3DS01*00101 KIR3DL07g,KIR3DS01g 28 0.003 0.002 14 | Mamu-F*01:05 Mamu-F*01g 13 0.001 0.001 15 | Mamu-B*074:02-V1 Mamu-B*074g 35 0.003 0.003 16 | -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/walkers/ImmunoGenotyper/ImmunoGenotyperOutputNVP.mismatches.txt: -------------------------------------------------------------------------------- 1 | RefName TotalReads ReasonForFailure 2 | Mamu-A2*05:04:01 1 Mismatches 3 | Mamu-E*01:17 1 Mismatches 4 | Mamu-E*01:19 1 Mismatches 5 | Mamu-B*074:01 1 Mismatches 6 | Mamu-B*011:01 14 Mismatches 7 | Mamu-F*01:02 1 Mismatches 8 | Mamu-B*030:01 24 Mismatches 9 | Mamu-B*013:01 1 Mismatches 10 | Mamu-F*01:03 1 Mismatches 11 | Mamu-KIR2DL04*00101 1 Mismatches 12 | Mamu-B*017:04 1 Mismatches 13 | Mamu-B*030:04 1 Mismatches 14 | Mamu-F*01:04 1 Mismatches 15 | Mamu-B*069:01_exon2-3 1 Mismatches 16 | Mamu-B*030:02 2 Mismatches 17 | Mamu-F*01:05 1 Mismatches 18 | Mamu-DPB1*18 3 Mismatches 19 | Mamu-B*048:03 2 Mismatches 20 | Mamu-B*048:02 3 Mismatches 21 | Mamu-E*01:05 27 Mismatches 22 | Mamu-A3*13:03 81 Mismatches 23 | Mamu-DPB1*10 4 Mismatches 24 | Mamu-B*019:02 1 Mismatches 25 | Mamu-B*004:01 4 Mismatches 26 | Mamu-B*002:01 3 Mismatches 27 | Mamu-AG*02:01:02 1 Mismatches 28 | Mamu-KIR3DS01*00101 1212 Mismatches 29 | Mamu-AG*03:01:01 1 Mismatches 30 | Mamu-B*037:02 1 Mismatches 31 | Mamu-B*005:01 9 Mismatches 32 | Mamu-DPB1*04 1 Mismatches 33 | Mamu-AG*01:01 1 Mismatches 34 | Mamu-AG*03:02 1 Mismatches 35 | Mamu-B*074:02-V1 3 Mismatches 36 | -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/walkers/MendelianViolationReport/expectedOutput.txt: -------------------------------------------------------------------------------- 1 | SampleName TotalCalled TotalViolations MotherInconsistent FatherInconsistent InconsistentCombined Mother MotherHasData MotherMVs Father FatherHasData FatherMVs 2 | PAIR_CHILD 16 6 0 6 0 Unknown false PAIR_PARENT true 0 3 | TRIO_CHILD 16 12 6 6 12 TRIO_FATHER true 0 TRIO_MOTHER true 0 4 | PAIR_PARENT 16 0 0 0 0 Unknown false Unknown false 5 | TRIO_FATHER 16 0 0 0 0 Unknown false Unknown false 6 | TRIO_MOTHER 16 0 0 0 0 Unknown false Unknown false 7 | -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/walkers/MergeFastqReads/mergeTestWithMinLength.fastq: -------------------------------------------------------------------------------- 1 | @M00370:382:000000000-G3228:1:1101:13693:2188 1:N:0:2 2 | CTTCAACCTCTGCCTCTTTGGTTCAAGCGATTCTCCTGCCTCAGCCTCTGGAGTGGCTGGGATTACAGGCTCCTGCCACCACGCCCGGCTAATTTTTGTATTTTTAGTAGAGACAGGGTTTCACCA 3 | + 4 | GF"CC@BGFFFCCFFFGFEGFGAGHGGHGHGHFFFGGHGHHHGECFHHHFEFHHEHGEEFBFGFGFHEECFGEFCGGGGHHH?CCFEGHHHHGHHGHFFGHHHGHFGGHHHHHHHHGGFGGEHFFH 5 | @M00370:382:000000000-G3228:1:1101:15069:2252 1:N:0:2 6 | TGACAGGATTGGAGGTATGGTGGGCCAAAAGGCAACTTTTTGGGTGCGAAAACAGAAATGTCTGTGCTGACTTAGCTCTGTGGGTCTTCAGGCTTGAGGGTGGGGCCCTTACTGGGGAACCACCCTCTTCTACCCAGTGCTTCCCTGTCTTCTGTCTGTATCAATACCACACAACTGTGT 7 | + 8 | 333>3C3>CFF44F?AGGFCFBDCAG2C22AHGGFGHHHHHGGCGEFHFFDFHHHHFFHHGGHFHHFHHHHHHHHHHHHHHHFHHFHFEHGHHEHHHHHGGGGGGFEHHGHGGHHFBFGFGGFGHHHHHHHHHHHHHHHGHHHHHHHHHGHHHGHHFHGGGGFFGFFGFBFFFFFAAA>3 9 | @M00370:382:000000000-G3228:1:1101:18088:2276 1:N:0:2 10 | GCGACGGATTCGCGCTATTTCACAGGAGAAAACTGAGGCACACAGAGTTTAAGTCAGATTTCAAAGAGGCAATGCTAATAAGGTCAGGAGCTAGGATTAATA 11 | + 12 | GG8FGEGGGGEEEEHFFHHFGHHHHHHFHGFHHHHHHGHGCFHHGHHGHHHHHHHHHHHHDF5FGHEHHGGHHHHHHFGHGGGGGGGCGGFFFFFFDAFAFD 13 | @M00370:382:000000000-G3228:1:1101:13016:2292 1:N:0:2 14 | CACTGGACGCCCCTAGACAGTCCAGGATATGCTCCTCATCTCCAAAATCAGCTTAACAAATGGAAACCCTCCTGTAACCCTAAGCCCTCTGTTTCATGTATAGTGACATAGCCACAAGATGTGGTTGTTAGGCTCTAGGTATCTTTGGAGG 15 | + 16 | E8GGFB1B>1?>FEFHGGHGEGGFHGAHHHFFHGFHFFHHHHHHGHHHHHFFHHHHHHGHHHHDHFGHAGHFHHHHHHHHHGFHBFHEHGHGHGHHHHHHHHHHHHHHHHHGHHHHHHHHHGHHHHFFHGDGGHHGGFGFGHHFFHFEGF3 17 | @M00370:382:000000000-G3228:1:1101:17477:2318 1:N:0:2 18 | ACTGACCTCAATAAAAACCCTGGATGCTAAGGCTTGGGTGAGCTTCCCTGGTTGGTAACACCTTGCATAAGTCATCATACATTGTTGCTGGAAGAATTAGTGTGTTCCCAGGTGAATCCACTAGGAAGGGACACCTGTAAGCATGCACCTGATATCCCCGCGACTTTGTTTT 19 | + 20 | 1>11>BB1CFFFFFBGGGCEAGHCHHFHGFGGGHH?@AEAAGGGGGGHGHHHHFGGGFHHGGGHHHHHGHHGFFGGEHGHGCFHHHHHHGBGFFFHHHFGHHHGHHGFHGHGFGHHHHGEHFHFFGHGFGHGEHFHHGGHHHGHHHHHFFG2FA/EE0AA1B3B11AAAA>1 21 | @M00370:382:000000000-G3228:1:1101:11125:2326 1:N:0:2 22 | CCCTCTGGGAGTTCACCTGTGTGGTGGGTGGAACAGCCCTGCACCTGTGTTCCAAACTCCTAGCTCCAGCCTCACCCTGCAGTGCTCTTCTGAGCCTCTCTCTACTGAACATCATAAGAAGGAACAAATGAAGAAGAGGTGTTCTGATCGTGTAACTGGTTAACTTTGTGGTATGGTCAAGAGGATAGAAGG 23 | + 24 | 11>A?FC1BCAAGGGFF1FFGGGCBFE?EEGHDFGC0/AGHHFHHHGHHHHGHHHHHCGHFFFHHCGFGFHG0F?8HHHGFHGCGCFBGHGFBGGCGGHHFHGEGHHGFBGDFGGHHFHHBFHHHHFHFFFHEGHGEEGGHGEFFHHGEHFFF1B0A11BDF3HHGF1FGFGFBABB11GD@1D3FBAAA11 25 | @M00370:382:000000000-G3228:1:1101:10921:2327 1:N:0:2 26 | GCTTACGCCTGTAATCCCAGCACTTTGGGGGGCCGAGGTGGGTGGATCACCTGAGGTTGGGAGTTCAAGACCAGCCTGACCATCACGGGAAACCCCGTCTCTACTAAAAATACAAAACTAGCAGGACATTGTGGTGCATGCCCTGACTCTT 27 | + 28 | 3C>>3GFGDGGGFGGGHFGGBBHHGEEBEEAEE?EC!ECG1CFFDCF@@GBFCFFCHFB@ 3 | ##contig= 4 | ##contig= 5 | #CHROM POS ID REF ALT QUAL FILTER INFO 6 | 1 61 . GT G . . . 7 | 1 72 . TT AT,AG . . . 8 | 1 100 . T G . . . 9 | -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/walkers/MergeVcfsAndGenotypes/basicTest2Output.vcf: -------------------------------------------------------------------------------- 1 | ##fileformat=VCFv4.2 2 | ##FORMAT= 3 | ##INFO= 4 | ##INFO= 5 | ##INFO= 6 | ##INFO= 7 | ##contig= 8 | ##contig= 9 | #CHROM POS ID REF ALT QUAL FILTER INFO FORMAT Sample1 Sample2 10 | 1 61 . GT G 724.43 PASS AC=2;AF=0.500;AN=4;set=a GT 0/1 0/1 11 | 1 72 . T A 100 PASS AC=1;AF=0.250;AN=4;set=a GT 0/1 0/0 12 | 1 72 . TT AG 100 PASS AC=1;AF=0.500;AN=2;set=a GT 0/1 ./. 13 | 1 100 . T G 100 PASS AC=1;AF=0.500;AN=2;set=b GT ./. 0/1 14 | -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/walkers/MergeVcfsAndGenotypes/basicTest3Output.vcf: -------------------------------------------------------------------------------- 1 | ##fileformat=VCFv4.2 2 | ##FORMAT= 3 | ##INFO= 4 | ##INFO= 5 | ##INFO= 6 | ##INFO= 7 | ##contig= 8 | ##contig= 9 | #CHROM POS ID REF ALT QUAL FILTER INFO FORMAT Sample1 10 | 1 61 . GT G 724.43 PASS AC=1;AF=0.500;AN=2;set=a GT 0/1 11 | 1 72 . T A 100 PASS AC=1;AF=0.500;AN=2;set=a GT 0/1 12 | 1 72 . TT AG 100 PASS AC=1;AF=0.500;AN=2;set=a GT 0/1 13 | -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/walkers/MergeVcfsAndGenotypes/basicTestOutput.vcf: -------------------------------------------------------------------------------- 1 | ##fileformat=VCFv4.2 2 | ##FORMAT= 3 | ##INFO= 4 | ##INFO= 5 | ##INFO= 6 | ##INFO= 7 | ##contig= 8 | ##contig= 9 | #CHROM POS ID REF ALT QUAL FILTER INFO FORMAT Sample1 Sample2 10 | 1 61 . GT G 724.43 PASS AC=2;AF=0.500;AN=4;set=a GT 0/1 0/1 11 | 1 72 . T A 100 PASS AC=1;AF=0.250;AN=4;set=a GT 0/1 0/0 12 | 1 72 . TT AG 100 PASS AC=1;AF=0.500;AN=2;set=a GT 0/1 ./. 13 | 1 100 . T G 100 PASS AC=1;AF=0.500;AN=2;set=b GT ./. 0/1 14 | -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/walkers/MultiSourceAnnotator/cassandra.vcf.idx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BimberLab/DISCVRSeq/88e5574ba4918a17414b2973d3500f23ad9717ff/src/test/resources/com/github/discvrseq/walkers/MultiSourceAnnotator/cassandra.vcf.idx -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/walkers/MultiSourceAnnotator/clinvar.vcf.idx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BimberLab/DISCVRSeq/88e5574ba4918a17414b2973d3500f23ad9717ff/src/test/resources/com/github/discvrseq/walkers/MultiSourceAnnotator/clinvar.vcf.idx -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/walkers/MultiSourceAnnotator/liftoverRejects.vcf: -------------------------------------------------------------------------------- 1 | ##fileformat=VCFv4.2 2 | ##FILTER= 3 | ##FORMAT= 4 | ##FORMAT= 5 | ##FORMAT= 6 | ##FORMAT= 7 | ##FORMAT= 8 | ##FORMAT= 9 | ##FORMAT= 10 | ##FORMAT= 11 | ##FORMAT= 12 | ##FORMAT= 13 | ##FORMAT= 14 | ##FORMAT= 15 | ##contig= 16 | ##contig= 17 | ##contig= 18 | ##contig= 19 | ##contig= 20 | ##contig= 21 | ##contig= 22 | ##contig= 23 | ##contig= 24 | ##contig= 25 | ##contig= 26 | ##contig= 27 | ##contig= 28 | ##contig= 29 | ##contig= 30 | ##contig= 31 | ##contig= 32 | ##contig= 33 | ##contig= 34 | ##contig= 35 | ##contig= 36 | ##contig= 37 | ##contig= 38 | ##contig= 39 | ##contig= 40 | #CHROM POS ID REF ALT QUAL FILTER INFO FORMAT Sample1 41 | 1 2710386 . T TAC,TACAC 29409.61 NoTarget . GT:AD:DP:FT:GQ:MV:PGT:PID:PL ./.:11,0,0:11:GQ-LT30:18:0:.:.:0,18,270,18,270,270 42 | 1 2710388 . A G 435.04 NoTarget . GT:AD:DP:FT:GQ:MV:PL ./.:5,0:5:DP-LT10;GQ-LT30:12:0:0,12,180 43 | -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/walkers/MultiSourceAnnotator/liftoverRejects.vcf.idx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BimberLab/DISCVRSeq/88e5574ba4918a17414b2973d3500f23ad9717ff/src/test/resources/com/github/discvrseq/walkers/MultiSourceAnnotator/liftoverRejects.vcf.idx -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/walkers/MultiSourceAnnotator/multiSourceInput.vcf.idx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BimberLab/DISCVRSeq/88e5574ba4918a17414b2973d3500f23ad9717ff/src/test/resources/com/github/discvrseq/walkers/MultiSourceAnnotator/multiSourceInput.vcf.idx -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/walkers/MultipleAllelesAtLoci/MultipleAllelesAtLoci.bed: -------------------------------------------------------------------------------- 1 | Mamu-KIR3DS01*00101 1805 1806 MultiAllelicSite 1 + 22642_RL8_Tetramer_Clone16: [A/0.250000/1/4] 2 | Mamu-KIR3DS01*00101 1805 1806 MultiAllelicSite 1 + 22642_RL8_Tetramer_Clone16: [A/0.200000/1/5] 3 | Mamu-KIR3DS01*00101 1822 1823 MultiAllelicSite 1 + 22642_RL8_Tetramer_Clone16: [C/0.166667/1/6] 4 | Mamu-KIR3DS01*00101 1823 1824 MultiAllelicSite 1 + 22642_RL8_Tetramer_Clone16: [C/0.250000/1/4] 5 | Mamu-KIR3DS01*00101 1805 1806 MultiAllelicSite 1 + 22642_RL8_Tetramer_Clone16: [C/0.250000/1/4] 6 | Mamu-KIR3DS01*00101 1811 1812 MultiAllelicSite 1 + 22642_RL8_Tetramer_Clone16: [C/0.111111/1/9] 7 | Mamu-KIR3DS01*00101 1817 1818 MultiAllelicSite 1 + 22642_RL8_Tetramer_Clone16: [A/0.250000/1/4] 8 | Mamu-KIR3DS01*00101 1840 1841 MultiAllelicSite 1 + 22642_RL8_Tetramer_Clone16: [C/0.250000/1/4] 9 | Mamu-KIR3DS01*00101 1821 1822 MultiAllelicSite 1 + 22642_RL8_Tetramer_Clone16: [C/0.142857/1/7] 10 | Mamu-KIR3DS01*00101 1812 1813 MultiAllelicSite 1 + 22642_RL8_Tetramer_Clone16: [G/0.200000/1/5] 11 | Mamu-KIR3DS01*00101 1832 1833 MultiAllelicSite 1 + 22642_RL8_Tetramer_Clone16: [C/0.125000/1/8] 12 | Mamu-KIR3DS01*00101 1811 1812 MultiAllelicSite 1 + 22642_RL8_Tetramer_Clone16: [C/0.250000/1/4] 13 | Mamu-KIR3DS01*00101 1812 1813 MultiAllelicSite 1 + 22642_RL8_Tetramer_Clone16: [G/0.200000/1/5] 14 | -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/walkers/MultipleAllelesAtLoci/MultipleAllelesAtLociFiltered.bed: -------------------------------------------------------------------------------- 1 | Mamu-KIR3DS01*00101 1805 1806 MultiAllelicSite 1 + 22642_RL8_Tetramer_Clone16: [A/0.250000/1/4] 2 | Mamu-KIR3DS01*00101 1805 1806 MultiAllelicSite 1 + 22642_RL8_Tetramer_Clone16: [A/0.200000/1/5] 3 | Mamu-KIR3DS01*00101 1823 1824 MultiAllelicSite 1 + 22642_RL8_Tetramer_Clone16: [C/0.250000/1/4] 4 | Mamu-KIR3DS01*00101 1805 1806 MultiAllelicSite 1 + 22642_RL8_Tetramer_Clone16: [C/0.250000/1/4] 5 | Mamu-KIR3DS01*00101 1817 1818 MultiAllelicSite 1 + 22642_RL8_Tetramer_Clone16: [A/0.250000/1/4] 6 | Mamu-KIR3DS01*00101 1840 1841 MultiAllelicSite 1 + 22642_RL8_Tetramer_Clone16: [C/0.250000/1/4] 7 | Mamu-KIR3DS01*00101 1812 1813 MultiAllelicSite 1 + 22642_RL8_Tetramer_Clone16: [G/0.200000/1/5] 8 | Mamu-KIR3DS01*00101 1811 1812 MultiAllelicSite 1 + 22642_RL8_Tetramer_Clone16: [C/0.250000/1/4] 9 | Mamu-KIR3DS01*00101 1812 1813 MultiAllelicSite 1 + 22642_RL8_Tetramer_Clone16: [G/0.200000/1/5] 10 | -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/walkers/OutputVariantsStartingInIntervals/basicOutput.vcf: -------------------------------------------------------------------------------- 1 | ##fileformat=VCFv4.2 2 | ##FORMAT= 3 | ##contig= 4 | ##contig= 5 | #CHROM POS ID REF ALT QUAL FILTER INFO FORMAT Sample1 6 | 1 72 . T A 100 PASS . GT 0/1 -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/walkers/PrintReadBackedHaplotypes/filteredTest2.txt: -------------------------------------------------------------------------------- 1 | ******************************************* 2 | Interval: 080_pRR_Reporter_U24:3610-3650 3 | 4 | GGAACAGTACGAACGCG-C-CGAGGGCCGCCACTCCACCGGCG 5 | .................-.-....................... 1471 52.88 6 | .................C.-....................... 399 14.34 7 | .................-.A....................... 309 11.11 8 | .................-.G....................... 230 8.27 9 | .................-.T....................... 147 5.28 10 | .................----------................ 124 4.46 11 | .................-.------.................. 102 3.67 12 | 13 | ******************************************* 14 | Interval: 080_pRR_Reporter_U24:3864-3983 15 | 16 | CCCTCAAGTTCATCAGCACCACCGGCAAGCTGCCCGTGCCCTGGCCCACTTTGGTCACCACCCTCACAAAGCGGCACGACTTCTTCAAGAGTGCCATGCCGGAAGGCTACGTCCAGGAGC 17 | ........................................................................................................................ 1277 86.28 18 | ::...................................................................................................................... 143 9.66 19 | ....................................................................................................................:::: 60 4.05 20 | 21 | -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/walkers/PrintReadsContaining/ED1_R1.fastq: -------------------------------------------------------------------------------- 1 | @M00370:382:000000000-G3228:1:1101:13693:2188 1:N:0:2 2 | CTTCAACCTCTGCCTCTTTGGTTCAAGCGATTCTCCTGCCTCAGCCTCTGGAGTGGCTGGGATTACAGGCTCCTGCCACCACGCCCGGCTAATTTTTGTATTTTTAGTAGAGACAGGGTTTCACCA 3 | + 4 | >11>1@BBFFF1A11FGFEFFAAFE331A00FFFFFFHBGHHBBCFHHFFBBABC/FEEC?FFF111E0CFGEFCGGGGHHH?CCEEGGCECGHHGHCFGHHHGHEGGHHHHHHHHGGCGGEHFFH 5 | -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/walkers/PrintReadsContaining/ED1_R2.fastq: -------------------------------------------------------------------------------- 1 | @M00370:382:000000000-G3228:1:1101:13693:2188 2:N:0:2 2 | TGGTGAAACCCTGTCTCTACTAAAAATACAAAAATTAGCCGGGCGTGGTGGCAGGAGCCTGTAATCCCAGCCACTCCAGAGGCTGAGGCAGGAGAATCGCTTGAACCAAAGAGGCAGAGGTTGCAG 3 | + 4 | 1>>>1DDFFF?FBGBGGGGGFGFFHHCFFHFGFEHHHHCCFC??E/E/FC/0AE?CAEEHFGBGFBFBEGHEHHFEFHBF/CEGGGHGGGG/EFHGHGHGGHGAGFGCCG0FFCCC?EG?11>1@BBFFF1A11FGFEFFAAFE331A00FFFFFFHBGHHBBCFHHFFBBABC/FEEC?FFF111E0CFGEFCGGGGHHH?CCEEGGCECGHHGHCFGHHHGHEGGHHHHHHHHGGCGGEHFFH 5 | @M00370:382:000000000-G3228:1:1101:15779:2264 1:N:0:2 6 | CTTTTCTACTGGGCCTGCAACAGTTCAGCCAAAAAGCAGCACTTTCCAATAACCTTCAAATCAGACTTCCTGCTCCTTCTTCCTCCACATC 7 | + 8 | >11>1DD3BD11A1AFEGG1B1FGHFFCBGAFBAFEF1EBEGFHHHG2FGFGFHHHHHHHHHHGFHHGH1BFGGFHHGHHHHHHGHHHHHH 9 | -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/walkers/PrintReadsContaining/ED2_R2.fastq: -------------------------------------------------------------------------------- 1 | @M00370:382:000000000-G3228:1:1101:13693:2188 2:N:0:2 2 | TGGTGAAACCCTGTCTCTACTAAAAATACAAAAATTAGCCGGGCGTGGTGGCAGGAGCCTGTAATCCCAGCCACTCCAGAGGCTGAGGCAGGAGAATCGCTTGAACCAAAGAGGCAGAGGTTGCAG 3 | + 4 | 1>>>1DDFFF?FBGBGGGGGFGFFHHCFFHFGFEHHHHCCFC??E/E/FC/0AE?CAEEHFGBGFBFBEGHEHHFEFHBF/CEGGGHGGGG/EFHGHGHGGHGAGFGCCG0FFCCC?EG?AAFFFBBAFCGGGCFGGGGGFFHHHGHFHCFFFHCHABGFGGFHHHGHGHHGHFHFHGGCFHGHHFHHFHGFGHEFFGGHHGDFHHFF 9 | -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/walkers/RemoveAnnotations/testBasicOperation.vcf: -------------------------------------------------------------------------------- 1 | ##fileformat=VCFv4.2 2 | ##FORMAT= 3 | ##FORMAT= 4 | ##FORMAT= 5 | ##FORMAT= 6 | ##FORMAT= 7 | ##INFO= 8 | ##contig= 9 | ##contig= 10 | #CHROM POS ID REF ALT QUAL FILTER INFO FORMAT sample1 sample2 11 | 1 2 . G A 2328.69 PASS MAC=1 GT:AD:DP:GQ:PL 0/0:13,0:13:39:0,39,418 0/1:11,9:20:99:241,0,379 12 | 1 4 . G T 2328.69 PASS MAC=1 GT:AD:DP:GQ:PL 0/0:14,0:14:42:0,42,473 0/0:19,0:19:51:0,51,765 13 | 1 11 . G A 12328.69 PASS MAC=0 GT:AD:DP:GQ:PL 0/0:17,0:17:51:0,51,614 0/0:29,0:29:69:0,69,1035 14 | 1 12 . C CG 12328.69 PASS MAC=1 GT:AD:DP:GQ:PL 0/0:20,0:20:60:0,60,804 0/0:34,0:34:90:0,90,1350 15 | 1 221 . G A,T 2328.69 PASS MAC=1 GT:AD:DP:GQ:PL 0/0:27,0:27:72:0,72,1007 0/0:15,0:15:45:0,45,597 16 | 1 232 . G T,* 1008.03 PASS MAC=1 GT:AD:DP:GQ:PL 0/1:9,15:24:99:396,0,225 0/0:16,0:16:36:0,36,540 17 | 1 244 . A AT,CCC 7.80 PASS MAC=2 GT:AD:DP:GQ:PL 0/0:20,0:20:51:0,51,765 0/1:9,5:14:99:183,0,363 18 | 1 3111 . TA AT,G,T 9683.63 PASS MAC=1 GT ./. ./. 19 | 1 3211 . C A,G,T 9683.63 PASS MAC=1 GT:AD:DP:GQ:PL 0/0:12,0:12:36:0,36,434 0/0:12,0:12:36:0,36,411 20 | 1 3323 . G A,C,T 6630.50 PASS MAC=1 GT:AD:DP:GQ:PL ./. 0/1:5,8:13:99:247,0,179 21 | 1 3332 . C CG,G,TTT 37495.79 PASS MAC=1 GT:AD:DP:GQ:PL ./. 0/0:16,0:16:48:0,48,649 22 | 1 3441 . ATT A,C,G 110541.03 PASS MAC=2 GT ./. ./. 23 | 1 3452 . GT CG,GGG,TATA 38369.71 PASS MAC=2 GT:AD:DP:GQ:PL ./. 0/0:13,0:13:36:0,36,540 24 | 1 3522 . C A,GC,TTTAAAA 38369.71 PASS MAC=2 GT ./. ./. 25 | 1 3633 . C CTAT,GA,TACGTAC 38369.71 PASS MAC=3 GT ./. ./. 26 | 1 3725 . G A,GC,TTTAAAA 38369.71 PASS MAC=0 GT:AD:DP:GQ:PL 0/0:13,0:13:33:0,33,495 ./. 27 | -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/walkers/RemoveAnnotations/testBasicOperationSitesOnly.vcf: -------------------------------------------------------------------------------- 1 | ##fileformat=VCFv4.2 2 | ##FORMAT= 3 | ##FORMAT= 4 | ##FORMAT= 5 | ##FORMAT= 6 | ##FORMAT= 7 | ##INFO= 8 | ##contig= 9 | ##contig= 10 | #CHROM POS ID REF ALT QUAL FILTER INFO 11 | 1 2 . G A 2328.69 PASS MAC=1 12 | 1 4 . G T 2328.69 PASS MAC=1 13 | 1 11 . G A 12328.69 PASS MAC=0 14 | 1 12 . C CG 12328.69 PASS MAC=1 15 | 1 221 . G A,T 2328.69 PASS MAC=1 16 | 1 232 . G T,* 1008.03 PASS MAC=1 17 | 1 244 . A AT,CCC 7.80 PASS MAC=2 18 | 1 3111 . TA AT,G,T 9683.63 PASS MAC=1 19 | 1 3211 . C A,G,T 9683.63 PASS MAC=1 20 | 1 3323 . G A,C,T 6630.50 PASS MAC=1 21 | 1 3332 . C CG,G,TTT 37495.79 PASS MAC=1 22 | 1 3441 . ATT A,C,G 110541.03 PASS MAC=2 23 | 1 3452 . GT CG,GGG,TATA 38369.71 PASS MAC=2 24 | 1 3522 . C A,GC,TTTAAAA 38369.71 PASS MAC=2 25 | 1 3633 . C CTAT,GA,TACGTAC 38369.71 PASS MAC=3 26 | 1 3725 . G A,GC,TTTAAAA 38369.71 PASS MAC=0 27 | -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/walkers/SampleSpecificGenotypeFiltration/rgqTestOut.vcf: -------------------------------------------------------------------------------- 1 | ##fileformat=VCFv4.2 2 | ##FILTER= 3 | ##FILTER= 4 | ##FILTER= 5 | ##FILTER= 6 | ##FORMAT= 7 | ##FORMAT= 8 | ##FORMAT= 9 | ##FORMAT= 10 | ##FORMAT= 11 | ##FORMAT= 12 | ##FORMAT= 13 | ##FORMAT= 14 | ##FORMAT= 15 | ##FORMAT= 16 | ##INFO= 17 | ##INFO= 18 | ##INFO= 19 | ##INFO= 20 | ##contig= 21 | ##contig= 22 | #CHROM POS ID REF ALT QUAL FILTER INFO FORMAT sample1 sample2 23 | 1 2 . G A 2328.69 PASS MAC=1 GT:AD:DP:GQ:MV:PL 0/0:13,0:13:39:0:0,39,418 0/1:11,9:20:21:0:241,0,379 24 | 1 2 . G A 2328.69 PASS AC=0;AF=0.00;AN=2;MAC=1 GT:AD:DP:FT:GQ:MV:PL 0/0:13,0:13:PASS:39:0:0,39,418 ./.:11,9:20:GQ-LT20-1:19:0:241,0,379 25 | 1 2 . G A 2328.69 PASS MAC=1 GT:AD:DP:GQ:MV:PL:RGQ 0/0:13,0:13:39:0:0,39,418:19 0/1:11,9:20:19:0:241,0,379:21 26 | 1 2 . G A 2328.69 PASS AC=0;AF=0.00;AN=2;MAC=1 GT:AD:DP:FT:GQ:MV:PL:RGQ 0/0:13,0:13:PASS:39:0:0,39,418:19 ./.:11,9:20:GQ-LT20-3:19:0:241,0,379:19 27 | 1 4 . G T 2328.69 PASS MAC=1 GT:AD:DP:MV:RGQ 0/0:14,0:14:0:30 0/0:19,0:19:0:21 28 | 1 4 . G T 2328.69 PASS AC=0;AF=0.00;AN=2;MAC=1 GT:AD:DP:FT:MV:RGQ 0/0:14,0:14:PASS:0:30 ./.:19,0:19:GQ-LT20-2:0:19 29 | 1 11 . G A 12328.69 PASS MAC=0 GT:AD:DP:GQ:MV:PL 0/0:17,0:17:51:0:0,51,614 0/0:29,0:29:69:0:0,69,1035 30 | -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/walkers/Save10xBarcodes/output.txt: -------------------------------------------------------------------------------- 1 | RawCellBarcode CorrectedCellBarcode RawUMI CorrectedUMI 2 | -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/walkers/SplitVcfBySamples/mergeVcf3.1of2.vcf: -------------------------------------------------------------------------------- 1 | ##fileformat=VCFv4.2 2 | ##FORMAT= 3 | ##contig= 4 | ##contig= 5 | #CHROM POS ID REF ALT QUAL FILTER INFO FORMAT Sample1 6 | 1 61 . GT G 724.43 PASS . GT 0/1 7 | 1 72 . T A 100 PASS . GT 0/1 8 | 1 73 . TT AG 100 PASS . GT 0/1 9 | -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/walkers/SplitVcfBySamples/mergeVcf3.1of2Discard.vcf: -------------------------------------------------------------------------------- 1 | ##fileformat=VCFv4.2 2 | ##FORMAT= 3 | ##contig= 4 | ##contig= 5 | #CHROM POS ID REF ALT QUAL FILTER INFO FORMAT Sample1 6 | 1 61 . GT G 724.43 PASS . GT 0/1 7 | 1 72 . T A 100 PASS . GT 0/1 8 | 1 73 . TT AG 100 PASS . GT 0/1 9 | -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/walkers/SplitVcfBySamples/mergeVcf3.2of2.vcf: -------------------------------------------------------------------------------- 1 | ##fileformat=VCFv4.2 2 | ##FORMAT= 3 | ##contig= 4 | ##contig= 5 | #CHROM POS ID REF ALT QUAL FILTER INFO FORMAT Sample3 6 | 1 61 . GT G 724.43 PASS . GT 0/1 7 | 1 72 . T A 100 PASS . GT 1/1 8 | 1 73 . TT AG 100 PASS . GT 0/0 9 | -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/walkers/SplitVcfBySamples/mergeVcf3.2of2Discard.vcf: -------------------------------------------------------------------------------- 1 | ##fileformat=VCFv4.2 2 | ##FORMAT= 3 | ##contig= 4 | ##contig= 5 | #CHROM POS ID REF ALT QUAL FILTER INFO FORMAT Sample3 6 | 1 61 . GT G 724.43 PASS . GT 0/1 7 | 1 72 . T A 100 PASS . GT 1/1 8 | -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/walkers/SplitVcfBySamples/mergeVcfWithAlts.1of2.vcf: -------------------------------------------------------------------------------- 1 | ##fileformat=VCFv4.2 2 | ##FORMAT= 3 | ##INFO= 4 | ##INFO= 5 | ##INFO= 6 | ##INFO= 7 | ##INFO= 8 | ##INFO= 9 | ##INFO= 10 | ##INFO= 11 | ##INFO= 12 | ##contig= 13 | ##contig= 14 | #CHROM POS ID REF ALT QUAL FILTER INFO FORMAT Sample1 15 | 1 61 . GT G 724.43 PASS AC=1;AF=0.500;AN=2;RA=G;RR=GT,G GT 0/1 16 | 1 72 . T A,C 100 PASS AC=1,0;AF=0.500,0.00;AN=2;RA=A,C;RR=T,A,C GT 0/1 17 | 1 73 . TT AG 100 PASS AC=1;AF=0.500;AN=2;RA=AG;RR=TT,AG GT 0/1 18 | -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/walkers/SplitVcfBySamples/mergeVcfWithAlts.2of2.vcf: -------------------------------------------------------------------------------- 1 | ##fileformat=VCFv4.2 2 | ##FORMAT= 3 | ##INFO= 4 | ##INFO= 5 | ##INFO= 6 | ##INFO= 7 | ##INFO= 8 | ##INFO= 9 | ##INFO= 10 | ##INFO= 11 | ##INFO= 12 | ##contig= 13 | ##contig= 14 | #CHROM POS ID REF ALT QUAL FILTER INFO FORMAT Sample3 15 | 1 61 . GT G 724.43 PASS AC=1;AF=0.500;AN=2;RA=G;RR=GT,G GT 0/1 16 | 1 72 . T A,C 100 PASS AC=2,0;AF=1.00,0.00;AN=2;RA=A,C;RR=T,A,C GT 1/1 17 | 1 73 . TT AG 100 PASS AC=0;AF=0.00;AN=2;RA=AG;RR=TT,AG GT 0/0 18 | -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/walkers/SplitVcfBySamples/mergeVcfWithAltsRemoveAlts.1of2.vcf: -------------------------------------------------------------------------------- 1 | ##fileformat=VCFv4.2 2 | ##FORMAT= 3 | ##INFO= 4 | ##INFO= 5 | ##INFO= 6 | ##INFO= 7 | ##INFO= 8 | ##INFO= 9 | ##INFO= 10 | ##INFO= 11 | ##INFO= 12 | ##contig= 13 | ##contig= 14 | #CHROM POS ID REF ALT QUAL FILTER INFO FORMAT Sample1 15 | 1 61 . GT G 724.43 PASS AC=1;AF=0.500;AN=2;RA=G;RR=GT,G GT 0/1 16 | 1 72 . T A 100 PASS AC=1;AF=0.500;AN=2;RA=A;RR=T,A GT 0/1 17 | 1 73 . TT AG 100 PASS AC=1;AF=0.500;AN=2;RA=AG;RR=TT,AG GT 0/1 18 | -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/walkers/SplitVcfBySamples/mergeVcfWithAltsRemoveAlts.2of2.vcf: -------------------------------------------------------------------------------- 1 | ##fileformat=VCFv4.2 2 | ##FORMAT= 3 | ##INFO= 4 | ##INFO= 5 | ##INFO= 6 | ##INFO= 7 | ##INFO= 8 | ##INFO= 9 | ##INFO= 10 | ##INFO= 11 | ##INFO= 12 | ##contig= 13 | ##contig= 14 | #CHROM POS ID REF ALT QUAL FILTER INFO FORMAT Sample3 15 | 1 61 . GT G 724.43 PASS AC=1;AF=0.500;AN=2;RA=G;RR=GT,G GT 0/1 16 | 1 72 . T A 100 PASS AC=2;AF=1.00;AN=2;RA=A;RR=T,A GT 1/1 17 | -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/walkers/SplitVcfBySamples/outputVcf1.vcf: -------------------------------------------------------------------------------- 1 | ##fileformat=VCFv4.2 2 | ##FORMAT= 3 | ##contig= 4 | ##contig= 5 | #CHROM POS ID REF ALT QUAL FILTER INFO FORMAT Sample1 6 | 1 61 . GT G 724.43 PASS . GT 0/1 7 | 1 72 . T A 100 PASS . GT 0/1 8 | 1 73 . TT AG 100 PASS . GT 0/1 9 | -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/walkers/SplitVcfBySamples/outputVcf2.vcf: -------------------------------------------------------------------------------- 1 | ##fileformat=VCFv4.2 2 | ##FORMAT= 3 | ##contig= 4 | ##contig= 5 | #CHROM POS ID REF ALT QUAL FILTER INFO FORMAT Sample1 Sample3 6 | 1 61 . GT G 724.43 PASS . GT 0/1 0/1 7 | 1 72 . T A 100 PASS . GT 0/1 1/1 8 | 1 73 . TT AG 100 PASS . GT 0/1 0/0 9 | -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/walkers/SplitVcfBySamples/outputVcf3.vcf: -------------------------------------------------------------------------------- 1 | ##fileformat=VCFv4.2 2 | ##FORMAT= 3 | ##contig= 4 | ##contig= 5 | #CHROM POS ID REF ALT QUAL FILTER INFO FORMAT Sample3 6 | 1 61 . GT G 724.43 PASS . GT 0/1 7 | 1 72 . T A 100 PASS . GT 1/1 8 | -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/walkers/Summarize10xAlignments/basicTest.txt: -------------------------------------------------------------------------------- 1 | Type Gene TotalReads MultiMappedReads FractionMultiMapped OverlappingGenes 2 | GeneName AC253572.1 0 328 1 NOTCH2,NOTCH2NLA,NOTCH2NLC,NOTCH2NLB 3 | GeneName AL589765.4 34 232 0.87 MRPL9 4 | GeneName AL603962.1 0 4 1 NMNAT1 5 | GeneName CHML 83 122 0.6 OPN3 6 | GeneName MRPL9 0 232 1 AL589765.4 7 | GeneName NDUFB1P2 6 0 0 8 | GeneName NMNAT1 168 10 0.06 AL603962.1,RN7SKP269 9 | GeneName NOTCH2 1017 959 0.49 AC253572.1,NOTCH2NLA,NOTCH2NLC,NOTCH2NLB 10 | GeneName NOTCH2NLA 0 875 1 NOTCH2,AC253572.1,NOTCH2NLC,NOTCH2NLB 11 | GeneName NOTCH2NLB 0 959 1 NOTCH2,AC253572.1,NOTCH2NLA,NOTCH2NLC 12 | GeneName NOTCH2NLC 0 959 1 NOTCH2,AC253572.1,NOTCH2NLA,NOTCH2NLB 13 | GeneName OPN3 0 122 1 CHML 14 | GeneName RN7SKP269 0 6 1 NMNAT1 15 | GeneName RPL7AP15 3 0 0 16 | GeneId Rhesus_G0000221 0 122 1 17 | GeneId Rhesus_G0000223 80 125 0.61 18 | GeneId Rhesus_G0000224 0 19 1 19 | GeneId Rhesus_G0000225 0 16 1 20 | GeneId Rhesus_G0001739 6 0 0 21 | GeneId Rhesus_G0002501 4 262 0.98 22 | GeneId Rhesus_G0002504 0 262 1 23 | GeneId Rhesus_G0002505 0 232 1 24 | GeneId Rhesus_G0002708 3 0 0 25 | GeneId Rhesus_G0002805 799 1177 0.6 26 | GeneId Rhesus_G0002807 0 959 1 27 | GeneId Rhesus_G0002808 0 959 1 28 | GeneId Rhesus_G0002809 0 875 1 29 | GeneId Rhesus_G0002810 0 328 1 30 | GeneId Rhesus_G0002811 0 278 1 31 | GeneId Rhesus_G0002812 0 44 1 32 | GeneId Rhesus_G0005601 168 10 0.06 33 | GeneId Rhesus_G0005602 0 4 1 34 | GeneId Rhesus_G0005606 0 6 1 35 | -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/walkers/SummarizeGenotypeQuality/basicTest.txt: -------------------------------------------------------------------------------- 1 | Type Qual Total 2 | HOM_REF -1 1 3 | HET -1 4 4 | HOM_VAR -1 1 5 | -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/walkers/VariantConcordanceScore/variantConcordanceOutput.txt: -------------------------------------------------------------------------------- 1 | SampleName ReferenceName MarkersWithData MarkersNoData FractionWithData UniqueContigs CumulativeAF MinPossible MaxPossible Score 2 | Sample1 REF1 2 0 1 1 2.0 0.7 3.3 0.5 3 | Sample1 REF2 2 0 1 1 2.0 1.0 3.0 0.5 4 | -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/walkers/VcfComparison/missingSites2.vcf: -------------------------------------------------------------------------------- 1 | ##fileformat=VCFv4.2 2 | ##FORMAT= 3 | ##INFO= 4 | ##contig= 5 | ##contig= 6 | #CHROM POS ID REF ALT QUAL FILTER INFO FORMAT Sample1 Sample3 7 | 1 73 . TT AG 100 PASS IR=SiteMissingRelativeToRef GT 0/1 0/0 8 | -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/walkers/VcfComparison/novelSites.vcf: -------------------------------------------------------------------------------- 1 | ##fileformat=VCFv4.2 2 | ##FORMAT= 3 | ##FORMAT= 4 | ##FORMAT= 5 | ##FORMAT= 6 | ##FORMAT= 7 | ##FORMAT= 8 | ##FORMAT= 9 | ##FORMAT= 10 | ##FORMAT= 11 | ##INFO= 12 | ##INFO= 13 | ##INFO= 14 | ##INFO= 15 | ##contig= 16 | ##contig= 17 | #CHROM POS ID REF ALT QUAL FILTER INFO FORMAT sample1 sample2 18 | 1 2 . G A 2328.69 PASS IR=NovelSitesRelativeToRef;MAC=1;PURPOSE=diff_pos_same_ref_same_alt;RN=12 GT:AD:DP:GQ:MV:PL 0/0:13,0:13:39:0:0,39,418 0/1:11,9:20:99:0:241,0,379 19 | 1 3725 . G A,GC,TTTAAAA 38369.71 PASS IR=NovelSitesRelativeToRef;MAC=0;PURPOSE=overlapping_position;RN=12 GT:AD:DP:FT:GQ:MV:PL 0/0:13,0:13:PASS:33:0:0,33,495 ./.:10,0:10:GQ-LT30:27:0:0,27,405 20 | -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/walkers/VcfComparison/novelSites2.vcf: -------------------------------------------------------------------------------- 1 | ##fileformat=VCFv4.2 2 | ##FORMAT= 3 | ##INFO= 4 | ##contig= 5 | ##contig= 6 | #CHROM POS ID REF ALT QUAL FILTER INFO FORMAT Sample1 7 | -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/walkers/VcfComparison/vcfComparison.txt: -------------------------------------------------------------------------------- 1 | Metric Value 2 | NovelSitesRelativeToRef 2 3 | SitesMissingRelativeToRef 6 4 | RefFilteredNotSample 0 5 | SampleFilteredNotRef 0 6 | DiscordantGenotypes 0 7 | -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/walkers/VcfComparison/vcfComparison2.txt: -------------------------------------------------------------------------------- 1 | Metric Value 2 | NovelSitesRelativeToRef 0 3 | SitesMissingRelativeToRef 1 4 | RefFilteredNotSample 0 5 | SampleFilteredNotRef 0 6 | DiscordantGenotypes 1 7 | -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/walkers/VcfComparison/vcfComparisonSites.txt: -------------------------------------------------------------------------------- 1 | 1 2 NovelSitesRelativeToRef 2 | 1 3 SiteMissingRelativeToRef 3 | 1 3111 SiteMissingRelativeToRef 4 | 1 3441 SiteMissingRelativeToRef 5 | 1 3522 SiteMissingRelativeToRef 6 | 1 3633 SiteMissingRelativeToRef 7 | 1 3724 SiteMissingRelativeToRef 8 | 1 3725 NovelSitesRelativeToRef 9 | -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/walkers/VcfComparison/vcfComparisonSites2.txt: -------------------------------------------------------------------------------- 1 | 1 72 Discordant Genotypes: 1 2 | 1 73 SiteMissingRelativeToRef 3 | -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/walkers/VcfComparison/vcfComparisonWithNoCall.txt: -------------------------------------------------------------------------------- 1 | Metric Value 2 | NovelSitesRelativeToRef 2 3 | SitesMissingRelativeToRef 2 4 | RefFilteredNotSample 0 5 | SampleFilteredNotRef 0 6 | DiscordantGenotypes 0 7 | -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/walkers/VcfFilterComparison/vcfFilterComparison.txt: -------------------------------------------------------------------------------- 1 | vcf1 vcf1-Called vcf2 vcf2-Called 2 | Filter1,Filter2 Y Filter1,Filter2 Y 1 3 | PASS Y PASS Y 1 4 | -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/walkers/VcfToLuceneIndexer/luceneOutDir.stats.txt: -------------------------------------------------------------------------------- 1 | Key Type TotalIndexed ContainedMultiValuedRow MinVal MaxVal DistinctValues 2 | AF Numeric 6 false 0.05 0.5 3 | HaplotypeScore Numeric 5 false 2.0 12.0 4 | REFFIELD String 6 false CC, GG, A, C, AG, G 5 | FLAG String 3 false true 6 | UB Numeric 2 true 1.0 2.1 7 | -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/walkers/annotator/DiscvrVariantAnnotator/basicTestOutput.vcf: -------------------------------------------------------------------------------- 1 | ##fileformat=VCFv4.2 2 | ##FORMAT= 3 | ##FORMAT= 4 | ##FORMAT= 5 | ##MendelianViolationEvaluator="This file contains genotypes with mendelian violations in the input data. Please note that this file is entirely synthetic and does not represent true SNPs or genotypes observed." 6 | ##contig= 7 | #CHROM POS ID REF ALT QUAL FILTER INFO FORMAT TRIO_MOTHER TRIO_FATHER TRIO_CHILD PAIR_PARENT PAIR_CHILD UNRELATED_INDIVIDUAL_CONTROL 8 | 1 10109 . A T 99 PASS . GT:GQ:PL 0/0:50:0,50,200 0/0:40:0,40,200 0/1:30:30,0,200 0/0:50:0,50,200 0/1:30:30,0,200 0/0:50:0,50,200 9 | 1 10147 . C A 99 PASS . GT:GQ:PL 0/0:30:0,30,200 0/0:50:0,50,200 1/1:40:200,40,0 0/0:30:0,30,200 1/1:40:200,40,0 0/0:30:0,30,200 10 | 1 10150 . C T 99 PASS . GT:GQ:PL 0/0:40:0,40,200 0/1:30:30,0,200 1/1:50:200,50,0 0/0:40:0,40,200 1/1:50:200,50,0 0/0:40:0,40,200 11 | 1 10177 . A C 99 PASS . GT:GQ:PL 0/0:50:0,50,200 1/1:40:200,40,0 0/0:30:0,30,200 0/0:50:0,50,200 0/0:30:0,30,200 0/0:50:0,50,200 12 | 1 10180 . T C 99 PASS . GT:GQ:PL 0/0:30:0,30,200 1/1:50:200,50,0 1/1:40:200,40,0 0/0:30:0,30,200 1/1:40:200,40,0 0/0:30:0,30,200 13 | 1 10234 . C T 99 PASS . GT:GQ:PL 0/1:40:40,0,200 0/0:30:0,30,200 1/1:50:200,50,0 0/1:40:40,0,200 1/1:50:200,50,0 0/1:40:40,0,200 14 | 1 10235 . T A 99 PASS . GT:GQ:PL 0/1:50:50,0,200 1/1:40:200,40,0 0/0:30:0,30,200 0/1:50:50,0,200 0/0:30:0,30,200 0/1:50:50,0,200 15 | 1 10236 . A G 99 PASS . GT:GQ:PL 1/1:30:200,30,0 0/0:50:0,50,200 0/0:40:0,40,200 1/1:30:200,30,0 0/0:50:0,50,200 1/1:30:200,30,0 16 | 1 10250 . A C 99 PASS . GT:GQ:PL 1/1:40:200,40,0 0/0:30:0,30,200 1/1:50:200,50,0 1/1:40:200,40,0 1/1:50:200,50,0 1/1:40:200,40,0 17 | 1 10257 . A C 99 PASS . GT:GQ:PL 1/1:50:200,50,0 0/1:40:40,0,200 0/0:30:0,30,200 1/1:50:200,50,0 0/0:30:0,30,200 1/1:50:200,50,0 18 | 1 10285 . T C 99 PASS . GT:GQ:PL 1/1:30:200,30,0 1/1:50:200,50,0 0/1:40:40,0,200 1/1:30:200,30,0 0/1:40:40,0,200 1/1:30:200,30,0 19 | 1 10297 . C T 99 PASS . GT:GQ:PL 1/1:40:200,40,0 1/1:30:200,30,0 0/0:50:0,50,200 1/1:40:200,40,0 0/0:50:0,50,200 1/1:40:200,40,0 20 | 1 10304 . A C 99 PASS . GT:GQ:PL 1/1:50:200,50,0 0/1:50:50,0,200 0/1:0:0,0,0 1/1:50:200,50,0 0/1:0:0,0,0 1/1:50:200,50,0 21 | 1 10304 . A C 99 PASS . GT:GQ:PL 1/1:50:200,50,0 0/1:50:50,0,200 0/1:50:50,0,200 1/1:50:200,50,0 0/1:50:200,0,50 1/1:50:200,50,0 22 | 1 10310 . A C 99 PASS . GT:GQ:PL 1/1:50:200,50,0 0/1:50:50,0,200 1/1:50:200,50,0 1/1:50:200,50,0 1/1:50:200,50,0 1/1:50:200,50,0 23 | 1 10315 . C T 99 PASS . GT:GQ:PL 1/1:50:200,50,0 1/1:50:200,50,0 1/1:50:200,50,0 1/1:50:200,50,0 1/1:50:200,50,0 1/1:50:200,50,0 24 | -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/walkers/annotator/DiscvrVariantAnnotator/basicTestWithRefAlleleFrequency.vcf: -------------------------------------------------------------------------------- 1 | ##fileformat=VCFv4.2 2 | ##FORMAT= 3 | ##INFO= 4 | ##INFO= 5 | ##INFO= 6 | ##INFO= 7 | ##contig= 8 | ##contig= 9 | #CHROM POS ID REF ALT QUAL FILTER INFO FORMAT Sample1 10 | 1 61 . GT G 724.43 PASS AC=2;AF=0.100;AF.2=0.750;AN=4 GT 0/1 11 | 1 72 . T A 100 PASS AC=1;AF=0.250;AF.2=0.250;AN=4 GT 0/1 12 | 1 100 . T G 100 PASS AC=1;AF=0.500;AF.2=0.500;AN=2 GT ./. -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/walkers/tagpcr/IntegrationSiteMapper/BasicTest-1.metrics.txt: -------------------------------------------------------------------------------- 1 | MetricName MetricValue 2 | NumReadsSpanningJunction 11 3 | ReverseReadsSkipped 0 4 | TotalSecondaryAlignmentsMatchingInsertBackbone 0 5 | TotalUnmappedReadsMatchingInsertBackbone 0 6 | IntegrationSitesOutputPlusStrand 11 7 | SkippedMapq0 15 8 | TotalAlignments 26 9 | DistinctReads 11 10 | TotalPassingAlignments 11 11 | IntegrationSitesOutputMinusStrand 0 12 | PctReadsSpanningJunction 1.0 13 | FractionPrimaryAlignmentsMatchingInsertBackbone 0.00 14 | TotalMapq0 15 15 | TotalIntegrationSitesOutput 11 16 | TotalMatchingInsertBackbone 0 17 | SplitAlignments 0 18 | TotalPrimaryAlignmentsMatchingInsertBackbone 0 19 | LowMapq 0 20 | -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/walkers/tagpcr/IntegrationSiteMapper/BasicTest-1.outputTable.txt: -------------------------------------------------------------------------------- 1 | SiteName JunctionName Orientation Chr Position Strand Total Fraction 2 | Site1 PB-5TR Plus 1 200 + 1 0.090909 3 | Site2 PB-5TR Plus 1 1921 + 1 0.090909 4 | Site3 PB-5TR Plus 1 2139 + 1 0.090909 5 | Site4 PB-5TR Plus 1 4411 + 1 0.090909 6 | Site5 PB-5TR Plus 1 8825 + 1 0.090909 7 | Site6 PB-5TR Plus 1 9581 + 1 0.090909 8 | Site7 PB-5TR Plus 1 10394 + 1 0.090909 9 | Site8 PB-5TR Plus 1 11920 + 1 0.090909 10 | Site9 PB-5TR Plus 1 12484 + 1 0.090909 11 | Site10 PB-5TR Plus 1 13591 + 1 0.090909 12 | Site11 PB-5TR Plus 2 3372 + 1 0.090909 13 | -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/walkers/tagpcr/IntegrationSiteMapper/BasicTest-3.backbone.metrics.txt: -------------------------------------------------------------------------------- 1 | MetricName MetricValue 2 | NumReadsSpanningJunction 11 3 | ReverseReadsSkipped 0 4 | TotalSecondaryAlignmentsMatchingInsertBackbone 0 5 | TotalUnmappedReadsMatchingInsertBackbone 0 6 | IntegrationSitesOutputPlusStrand 0 7 | SkippedMapq0 15 8 | TotalAlignments 26 9 | DistinctReads 11 10 | TotalPassingAlignments 11 11 | IntegrationSitesOutputMinusStrand 0 12 | PctReadsSpanningJunction 1.0 13 | FractionPrimaryAlignmentsMatchingInsertBackbone 0.55 14 | TotalMapq0 15 15 | TotalIntegrationSitesOutput 0 16 | TotalMatchingInsertBackbone 6 17 | SplitAlignments 0 18 | TotalPrimaryAlignmentsMatchingInsertBackbone 6 19 | LowMapq 0 20 | -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/walkers/tagpcr/IntegrationSiteMapper/BasicTest-3.metrics.txt: -------------------------------------------------------------------------------- 1 | MetricName MetricValue 2 | NumReadsSpanningJunction 11 3 | ReverseReadsSkipped 0 4 | TotalSecondaryAlignmentsMatchingInsertBackbone 0 5 | TotalUnmappedReadsMatchingInsertBackbone 0 6 | IntegrationSitesOutputPlusStrand 0 7 | SkippedMapq0 15 8 | TotalAlignments 26 9 | DistinctReads 11 10 | TotalPassingAlignments 11 11 | IntegrationSitesOutputMinusStrand 0 12 | PctReadsSpanningJunction 1.0 13 | FractionPrimaryAlignmentsMatchingInsertBackbone 0.00 14 | TotalMapq0 15 15 | TotalIntegrationSitesOutput 0 16 | TotalMatchingInsertBackbone 0 17 | SplitAlignments 0 18 | TotalPrimaryAlignmentsMatchingInsertBackbone 0 19 | LowMapq 0 20 | -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/walkers/tagpcr/IntegrationSiteMapper/BasicTest-3.outputTable.txt: -------------------------------------------------------------------------------- 1 | SiteName JunctionName Orientation Chr Position Strand Total Fraction 2 | -------------------------------------------------------------------------------- /src/test/resources/com/github/discvrseq/walkers/variantqc/VariantQC/extendedReports.txt: -------------------------------------------------------------------------------- 1 | By Sample Purpose Report Sample MAC 2 | By Contig Purpose Report2 Sample,Contig MAC --------------------------------------------------------------------------------