Skip to content

Add tsv mimeType support and raise clear error for xlsx in WQP#232

Draft
thodson-usgs wants to merge 1 commit intoDOI-USGS:mainfrom
thodson-usgs:fix-wqp-tsv-mimetype
Draft

Add tsv mimeType support and raise clear error for xlsx in WQP#232
thodson-usgs wants to merge 1 commit intoDOI-USGS:mainfrom
thodson-usgs:fix-wqp-tsv-mimetype

Conversation

@thodson-usgs
Copy link
Copy Markdown
Collaborator

Closes #162

Summary

  • _check_kwargs now accepts mimeType='tsv' alongside 'csv' for legacy WQP calls
  • mimeType='xlsx' raises NotImplementedError with a clear message (xlsx support is not yet implemented)
  • Any other invalid mimeType raises ValueError: Invalid mimeType. Supported options: 'csv', 'tsv'.
  • Extracted _read_wqp_response(text, kwargs) helper that replaces 9 identical pd.read_csv(..., delimiter=",") calls — uses \t delimiter when mimeType='tsv', , otherwise

Note: tsv support applies to legacy WQP calls only. WQX3.0 endpoints only support csv at this time, as noted in the original issue.

Test plan

  • test_check_kwargs updated to cover tsv (passes), xlsx (NotImplementedError), and unchanged cases
  • test_get_results_tsv added: mocks a tab-delimited response and verifies it is parsed correctly
  • All 94 unit tests pass

🤖 Generated with Claude Code

_check_kwargs now accepts 'tsv' as a valid mimeType alongside 'csv',
raises NotImplementedError for 'xlsx' (not yet supported), and gives a
clearer ValueError message for any other invalid value.

A new _read_wqp_response helper replaces the nine hardcoded pd.read_csv
calls, using a tab delimiter when mimeType='tsv' and a comma otherwise.
Closes DOI-USGS#162.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Accommodate tsv, xlsx mimeTypes in wqp.py

1 participant