Age | Commit message (Collapse) | Author |
|
|
|
- Ensure errors respond with status code 400
- Ensure error messages are displayed for any invalid zip file that is
uploaded.
|
|
* Ensure error messages are displayed if a request is made to the
'/parse/parse' endpoint with invalid, or missing data.
|
|
- Test upload with missing or invalid data
- Test triggering the parsing of the file
|
|
|
|
|
|
Remove the old code that relied on exceptions to parse errors in the
uploaded files.
|
|
Parse the files with the new functions that return error objects
instead of raising exceptions
|
|
This commit adds a number of functions that return the error object
when an error is found, or `None` otherwise. It avoids the use of
exceptions as control flow constructs.
|
|
- Use a way faster way of parsing the strains file
|
|
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.
|
|
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.
|
|
Build a function to collect all the parsing errors into a "sequence"
of dict objects containing the issues found.
|
|
Derive a "correct" sample file from an existing sample file with
errors for testing with large files.
Fix issue caught by test.
|
|
|
|
* Implement remaining file parsing tests and some helpers functions
needed for ensuring the tests work.
|
|
|
|
* 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
|
|
Add dummy failing tests and a stub for the parsing of the files
|
|
Change the exception name to be more descriptive.
|
|
Add some sample files to be used for testing that the parsing works as
expected.
|
|
Without the `tests/__init__.py` file, the tests directory was not
considered a package and therefore, running:
$ pytest
would fail with import error notifications. This fixes that.
|
|
* Add tests to check for validity of the headers
* Add stubs for the tests
|
|
|
|
|