feat: Add 49 new unit tests for BED/GTF parsers, error types, and config#7
Merged
TianYuan-Liu merged 2 commits intomasterfrom Jan 30, 2026
Merged
Conversation
Add comprehensive test coverage for parser modules and expand config testing: - parser/bed.rs (14 tests): Header generation, multi-chromosome parsing, 12-column BED support, malformed line handling, empty files, varying metadata columns, scientific notation rejection, negative/large coordinates, and chunked reading behavior - parser/gtf.rs (14 tests): Comment handling, multi-chromosome annotations, custom ID tags, exon-only GTF files, full GTF format with gene/transcript entries, multiple isoforms per gene, invalid strand filtering, negative strand exon numbering, max gene length tracking, and empty/comment-only files - Error type display tests (9 tests): Verify Display, Debug, and std::error::Error trait implementations for ParseStrandError, ParseAreaError, and ParseReportLevelError - Config extended tests (12 tests): Default/custom ID tags, all ReportLevel variants, large distance values, max_lookback calculations with various TSS/promoter/TTS values, rule parsing with duplicates, order preservation, Debug output, Clone independence, and boundary values Update SHARED_TASK_NOTES.md with current test counts (168 unit tests, 223 total) and revised next steps for continued coverage improvements.
Fix cargo fmt check failure by reformatting the parse_rules function call in test_config_parse_rules_preserves_order test. Co-Authored-By: Claude (claude-opus-4-5) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
parser/bed.rs (14 tests): Header generation, multi-chromosome parsing,
12-column BED support, malformed line handling, empty files, varying
metadata columns, scientific notation rejection, negative/large coordinates,
and chunked reading behavior
parser/gtf.rs (14 tests): Comment handling, multi-chromosome annotations,
custom ID tags, exon-only GTF files, full GTF format with gene/transcript
entries, multiple isoforms per gene, invalid strand filtering, negative
strand exon numbering, max gene length tracking, and empty/comment-only files
Error type display tests (9 tests): Verify Display, Debug, and std::error::Error
trait implementations for ParseStrandError, ParseAreaError, and
ParseReportLevelError
Config extended tests (12 tests): Default/custom ID tags, all ReportLevel
variants, large distance values, max_lookback calculations with various
TSS/promoter/TTS values, rule parsing with duplicates, order preservation,
Debug output, Clone independence, and boundary values
Update SHARED_TASK_NOTES.md with current test counts (168 unit tests, 223 total)
and revised next steps for continued coverage improvements.