-
Notifications
You must be signed in to change notification settings - Fork 22
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Python API 1.0 acceptance tests are in place and can be executed easily. #185
Comments
These are all "acceptance" tests, in fact. Even if not run in an automated fashion, it would seem good to have them all scripted so they can be run on an arbitrarily-sized EC2 instance as a single step. |
Agree. These are not stress tests. For an example issue found by a stress test, see: single-cell-data/TileDB-SOMA#1169 Our census builder/validator is a pretty good stress test all by itself. @atolopko-czi - if we do automate the above, do you have any recommendations about how we record performance/behavior so that regressions/changes can be tracked? |
I'd be fine with committing a log file to the repo. It would contain the relevant context info (instance type, OS, s/w versions for Cell Census, TileDB-SOMA, Python, etc.) and the test results (pass/fail, applicable result size counts, timings). We could potentially wrap this all up in a notebook that gets run at the same time as the pedagogical notebooks, but honestly I'm not sure that's a great fit. |
It is left to the discretion of the engineer working on this to assess which ones should also be converted to unit tests. Please reach out to me if you'd like to discuss
Initial candidate of tests:
obs
,var
andX
can be iterated e.g.for chunk in ["obs"].read(): ...
obs
andvar
can be loaded in a pandas.DataFrame e.g.["obs"].read().concat().to_pandas
.ms["RNA"].axis_query(tiledbsoma.AxisQuery(value_filter = "tissue == 'brain')
then perform to completion the mainExperimentQuery
operations:for chunk in obs(): ...
for chunk in var(): ...
for chunk in X().tables(): ...
r6id.32xlarge
get_anndata(census = census, organism = "Homo sapiens",)
get_anndata(census = census, organism = "Homo sapiens", obs_value_filter = "cell_type == 'neuron'")
get_anndata(census = census, organism = "Homo sapiens", obs_value_filter = "cell_type == 'brain'")
The text was updated successfully, but these errors were encountered: