issues: 1332231863
This data as json
id | node_id | number | title | user | state | locked | assignee | milestone | comments | created_at | updated_at | closed_at | author_association | active_lock_reason | draft | pull_request | body | reactions | performed_via_github_app | state_reason | repo | type |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
1332231863 | I_kwDOAMm_X85PaD63 | 6894 | Public testing framework for duck array integration | 35968931 | open | 0 | 8 | 2022-08-08T18:23:49Z | 2024-01-25T04:04:11Z | MEMBER | What is your issue?In #4972 @keewis started writing a public framework for testing the integration of any duck array class in xarray, inspired by the testing framework pandas has for (Feel free to edit / add to this) What behaviour should we test?We have a lot of xarray methods to test with any type of duck array. Each of these bullets should correspond to one or more testing base classes which the duck array library author would inherit from. In rough order of increasing complexity:
We don't need to test that the array class obeys everything else in the Array API Standard. (For instance How extensible does our testing framework need to be?To be able to test any type of wrapped array our testing framework needs to itself be quite flexible.
What documentation / examples do we need?All of this content should really go on a dedicated page in the docs, perhaps grouped alongside other ways of extending xarray.
Where should duck array compatibility testing eventually live?Right now the tests for sparse & pint are going into the xarray repo, but presumably we don't want tests for every duck array type living in this repository. I suggest that we want to work towards eventually having no array library-specific tests in this repository at all. (Except numpy I guess.) Thanks @crusaderky for the original suggestion. Instead all tests involving pint could live in pint-xarray, all involving sparse could live in the sparse repository (or a new sparse-xarray repo), etc. etc. We would set those test jobs to re-run when xarray is released, and then xref any issues revealed here if needs be. We should probably also move some of our existing tests https://github.com/pydata/xarray/pull/7023#pullrequestreview-1104932752 |
{ "url": "https://api.github.com/repos/pydata/xarray/issues/6894/reactions", "total_count": 1, "+1": 1, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
13221727 | issue |