aboutsummaryrefslogtreecommitdiff
path: root/quality_control/parsing.py
AgeCommit message (Collapse)Author
2022-05-18Remove obsoleted code. Fix linting errors.Frederick Muriuki Muriithi
Remove the old code that relied on exceptions to parse errors in the uploaded files.
2022-05-18Parse files with new non-exception functionsFrederick Muriuki Muriithi
Parse the files with the new functions that return error objects instead of raising exceptions
2022-05-02Optimise strain names parsingFrederick Muriuki Muriithi
- Use a way faster way of parsing the strains file
2022-04-27Implement command-line interface for QC of filesFrederick Muriuki Muriithi
2022-04-26Queue file parsing jobsFrederick Muriuki Muriithi
Enable the queuing of file parsing jobs, since the files could be really large and take a long time to parse and present results. * etc/default_config.py: Add default config for redis server * manifest.scm: Add redis, and rq as dependencies * qc_app/__init__.py * qc_app/jobs.py: module to hold utilities for management of the jobs * qc_app/parse.py: Enqueue the job - extract file-parsing code to callable function * qc_app/templates/base.html: Enable addition of extra meta tags * qc_app/templates/job_progress.html: template to display job progress * qc_app/templates/no_such_job.html: template to indicate when a job id is invalid * quality_control/parsing.py: Add the total size parsed so far
2022-04-25Advance seek_position on errorFrederick Muriuki Muriithi
Advance the seek position, once we have yielded up an error to causing an infinite loop in certain conditions, where the `parse_errors` function ends up resuming the gile in the same position once it experiences an error.
2022-04-25`take`: function to select a few items from an iterableFrederick Muriuki Muriithi
To avoid processing all the items in an iterable, the `take` function is added in this commit. It realised a limited number (specified at call time) of items from the iterable given.
2022-04-21Collect all the errorsFrederick Muriuki Muriithi
Build a function to collect all the parsing errors into a "sequence" of dict objects containing the issues found.
2022-04-20Update parameters for testsFrederick Muriuki Muriithi
Derive a "correct" sample file from an existing sample file with errors for testing with large files. Fix issue caught by test.
2022-04-20Fix linting issuesFrederick Muriuki Muriithi
2022-04-13Implement remaining file parsing testsFrederick Muriuki Muriithi
* Implement remaining file parsing tests and some helpers functions needed for ensuring the tests work.
2022-04-13Check for `DuplicateHeader` errors in `parse_file` functionFrederick Muriuki Muriithi
2022-04-13Implement test for parsing that failsFrederick Muriuki Muriithi
* Improve tests that ensure parsing fails in case the file has errors * Add strains.csv file * Implement minimum viable functionality that passes the implemented tests
2022-04-13Add tests outline for file parsingFrederick Muriuki Muriithi
Add dummy failing tests and a stub for the parsing of the files