From 03c5c69eb26cbe1b7072cf74057e5c5d71400ba4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20G=C3=B3mez-S=C3=A1nchez?= Date: Mon, 9 Jan 2017 18:22:18 +0100 Subject: [PATCH 1/2] using HTSJDK equivalents --- src/main/java/picard/sam/CreateSequenceDictionary.java | 13 +------------ .../java/picard/sam/CreateSequenceDictionaryTest.java | 17 ----------------- 2 files changed, 1 insertion(+), 29 deletions(-) diff --git a/src/main/java/picard/sam/CreateSequenceDictionary.java b/src/main/java/picard/sam/CreateSequenceDictionary.java index b215c3c2b..0e2494b51 100644 --- a/src/main/java/picard/sam/CreateSequenceDictionary.java +++ b/src/main/java/picard/sam/CreateSequenceDictionary.java @@ -151,23 +151,12 @@ public SAMSequenceDictionary makeSequenceDictionary(final File referenceFile) { URI = "file:" + REFERENCE.getAbsolutePath(); } if (OUTPUT == null) { - // TODO: use the htsjdk method implemented in https://github.com/samtools/htsjdk/pull/774 - OUTPUT = getDefaultDictionaryForReferenceSequence(REFERENCE); + OUTPUT = ReferenceSequenceFileFactory.getDefaultDictionaryForReferenceSequence(REFERENCE); logger.info("Output dictionary will be written in ", OUTPUT); } return null; } - // TODO: this method will be in htsjdk (https://github.com/samtools/htsjdk/pull/774) - @VisibleForTesting - static File getDefaultDictionaryForReferenceSequence(final File fastaFile) { - final String name = fastaFile.getName(); - final String extension = ReferenceSequenceFileFactory.FASTA_EXTENSIONS.stream().filter(name::endsWith).findFirst() - .orElseGet(() -> {throw new IllegalArgumentException("File is not a supported reference file type: " + fastaFile.getAbsolutePath());}); - final int extensionIndex = name.length() - extension.length(); - return new File(fastaFile.getParentFile(), name.substring(0, extensionIndex) + IOUtil.DICT_FILE_EXTENSION); - } - /** * Do the work after command line has been parsed. * RuntimeException may be thrown by this method, and are reported appropriately. diff --git a/src/test/java/picard/sam/CreateSequenceDictionaryTest.java b/src/test/java/picard/sam/CreateSequenceDictionaryTest.java index 802714528..12d61d564 100644 --- a/src/test/java/picard/sam/CreateSequenceDictionaryTest.java +++ b/src/test/java/picard/sam/CreateSequenceDictionaryTest.java @@ -48,23 +48,6 @@ public String getCommandLineProgramName() { return CreateSequenceDictionary.class.getSimpleName(); } - @DataProvider - public Object[][] fastaNames() { - return new Object[][] { - {"break.fa", "break.dict"}, - {"break.txt.txt", "break.txt.dict"}, - {"break.fasta.fasta", "break.fasta.dict"}, - {"break.fa.gz", "break.dict"}, - {"break.txt.gz.txt.gz", "break.txt.gz.dict"}, - {"break.fasta.gz.fasta.gz", "break.fasta.gz.dict"} - }; - } - - @Test(dataProvider = "fastaNames") - public void testGetDefaultDictionaryForReferenceSequence(final String fastaFile, final String expectedDict) throws Exception { - Assert.assertEquals(CreateSequenceDictionary.getDefaultDictionaryForReferenceSequence(new File(fastaFile)), new File(expectedDict)); - } - @Test public void testBasic() throws Exception { final File outputDict = File.createTempFile("CreateSequenceDictionaryTest.", ".dict"); From 1a4f9649a473c6f27c1be2e3fe98adf70ca8b3e9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20G=C3=B3mez-S=C3=A1nchez?= Date: Mon, 9 Jan 2017 18:24:04 +0100 Subject: [PATCH 2/2] removed unused import --- src/main/java/picard/sam/CreateSequenceDictionary.java | 1 - src/test/java/picard/sam/CreateSequenceDictionaryTest.java | 1 - 2 files changed, 2 deletions(-) diff --git a/src/main/java/picard/sam/CreateSequenceDictionary.java b/src/main/java/picard/sam/CreateSequenceDictionary.java index 0e2494b51..99b4cfd33 100644 --- a/src/main/java/picard/sam/CreateSequenceDictionary.java +++ b/src/main/java/picard/sam/CreateSequenceDictionary.java @@ -23,7 +23,6 @@ */ package picard.sam; -import com.google.common.annotations.VisibleForTesting; import htsjdk.samtools.SAMSequenceDictionary; import htsjdk.samtools.SAMSequenceDictionaryCodec; import htsjdk.samtools.SAMSequenceRecord; diff --git a/src/test/java/picard/sam/CreateSequenceDictionaryTest.java b/src/test/java/picard/sam/CreateSequenceDictionaryTest.java index 12d61d564..e371434f4 100644 --- a/src/test/java/picard/sam/CreateSequenceDictionaryTest.java +++ b/src/test/java/picard/sam/CreateSequenceDictionaryTest.java @@ -24,7 +24,6 @@ package picard.sam; import org.testng.Assert; -import org.testng.annotations.DataProvider; import org.testng.annotations.Test; import picard.cmdline.CommandLineProgramTest; import picard.PicardException;