In Readers, the WriteResults methods calls CanRead to validate a file path.
CanRead checks the intended output path for a given file extension from SupportedFileType. However, these types contain specific text that helps to identify which software generated the file.
If you're trying to write to a file that's named differently from the input file, it will be modified. (e.g., for MsFraggerPeptide, a file path of "FraggerPeptideCopy.tsv" would be modified to "FraggerPeptideCopy.tsvpeptide.tsv")
I don't think this is the intended behaviour. CanRead should probably check the extension by call GetExtension, and modify by stripping the existing extension and replacing it.
This is a great point and should be addressed. The original implementation did not account for us expanding to a dozen or more different files that all end with 'tsv'
In Readers, the WriteResults methods calls CanRead to validate a file path.
CanRead checks the intended output path for a given file extension from SupportedFileType. However, these types contain specific text that helps to identify which software generated the file.
If you're trying to write to a file that's named differently from the input file, it will be modified. (e.g., for MsFraggerPeptide, a file path of "FraggerPeptideCopy.tsv" would be modified to "FraggerPeptideCopy.tsvpeptide.tsv")
I don't think this is the intended behaviour. CanRead should probably check the extension by call GetExtension, and modify by stripping the existing extension and replacing it.