Age | Commit message (Collapse) | Author |
|
Bug/fix broken correlations
|
|
* wqflask/base/data_set.py (MrnaAssayDataSet.retrieve_sample_data):
Fix indentation.
|
|
* wqflask/base/trait.py: Import utility.hmac
|
|
|
|
|
|
|
|
|
|
Remove mutation of state, and handle the edge case where the
sub-sequence could be an empty sequence.
|
|
Call the `database_connection()` function to get a connection to the
database.
|
|
|
|
Pickling was failing with
"TypeError: cannot pickle 'Connection' object"
This commit avoids the error by temporarily commenting out the line to
prevent the pickling to actually test the working of the system on
the CI/CD server.
|
|
|
|
Use the `urllib.parse.urljoin` function to join urls rather than
string concatenation for uniformity.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
From now on, GN_SERVER_URL will be the genenetwork3 API endpoint. For
example, GN_SERVER_URL=https://gn3.genenetwork.org/api
* wqflask/wqflask/collect.py (view_collection),
wqflask/wqflask/partial_correlations_views.py (partial_correlations,
poll_partial_correlation_results),
wqflask/wqflask/static/new/javascript/dataset_select_menu_orig.js (defaultStatusCodeFunctions):
Do not append api to GN_SERVER_URL.
* etc/default_settings.py (GN_SERVER_URL): Append /api.
|
|
* wqflask/wqflask/api/correlation.py (do_correlation): Raise a
ValueError if variables are not in the start_vars.
|
|
* wqflask/wqflask/external_tools/send_to_geneweaver.py: Delete unused
imports.
* wqflask/wqflask/external_tools/send_to_webgestalt.py: Ditto.
|
|
* wqflask/base/species.py: Import "Any" and "Union".
(TheSpecies): Add type hints. Get rid of redundant "if ... else"
statement.
(IndChromosome.mb_length): Add type hints.
(Chromosomes): Inject conn and add type hints.
|
|
* wqflask/wqflask/database.py: Import Protocol, Any and Iterator.
(Connection): New protocol class for type-hints.
(read_from_pyfile): Add type-hints.
(sql_uri): Ditto.
(database_connection): Ditto.
|
|
* wqflask/tests/unit/base/test_species.py (TestTheSpecies): Delete.
(TestIndChromosome): Move to pytest and parametrize.
(TestChromosomes): Ditto.
(test_species): Ditto.
(test_create_ind_chromosome): Ditto.
(test_create_chromosomes): Ditto.
|
|
* wqflask/wqflask/show_trait/SampleList.py
(SampleList.get_attributes): Remove object notation.
(SampleList.get_extra_attribute_values): Ditto.
|
|
* wqflask/base/data_set.py (DataSet.retrieve_other_names): Call
cursor.fetchone() only once.
|
|
* wqflask/base/mrna_assay_tissue_data.py: Delete db_tools.
(MrnaAssayTissueData.get_symbol_values_pairs): Re-format query.
* wqflask/tests/unit/base/test_mrna_assay_tissue_data.py:
(test_get_trait_symbol_and_tissue_values): Add test for above.
|
|
* wqflask/tests/unit/base/test_mrna_assay_tissue_data.py
* wqflask/tests/unit/wqflask/correlation/test_correlation_functions.py
(TestCorrelationFunctions.test_tissue_corr_computation): Delete.
(TestCorrelationFunctions): Move this ...
(test_mrna_assay_tissue_data_initialisation): ... here
|
|
* wqflask/base/mrna_assay_tissue_data.py: Imports: Delete
database_connection, escape, and database_connector.
(MrnaAssayTissueData): Inject conn. Re-format queries. Rework 'if
... else' logic. Re-work how results are assigned to
'self.data[symbol]' - remove dot-notation.
(MrnaAssayTissueData.get_symbol_values_pairs): Move box-comments to
doc-string. Rework how results are assigned to 'symbol_values_dict' -
remove dot-notation.
* wqflask/tests/unit/base/test_mrna_assay_tissue_data.py
(test_mrna_assay_tissue_data_initialisation): New test.
* wqflask/wqflask/correlation/correlation_functions.py: Import
database_connection.
(get_trait_symbol_and_tissue_values): Inject conn object.
|
|
* wqflask/tests/unit/wqflask/correlation/test_correlation_functions.py
(TestCorrelationFunctions): Convert this unittest class to ...
(test_tissue_corr_computation): ... a pytest function.
|
|
* wqflask/wqflask/interval_analyst/GeneUtil.py (loadGenes): Use "%s".
|
|
"%s" should only be used outside table names and column names
otherwise a string literal will be inserted thereby leading to errors
in the sql statements.
* wqflask/base/data_set.py (geno_mrna_confidentiality): Use f-strings
for table/columns/clause.
* wqflask/base/trait.py (retrieve_trait_info): Ditto.
* wqflask/wqflask/gsearch.py (GSearch.__init__): Ditto.
* wqflask/wqflask/interval_analyst/GeneUtil.py (loadGenes): Ditto.
* wqflask/wqflask/snp_browser/snp_browser.py
(SnpBrowser.get_browser_results): Ditto.
|
|
* wqflask/utility/logger.py: Delete.
|
|
* wqflask/base/data_set.py (DatasetGroup.get_mapping_methods): Fix
failing query by adding a missing ",".
|
|
* wqflask/wqflask/search_results.py: Remove unused imports.
|
|
* wqflask/base/data_set.py (DatasetGroup.__init__): Remove "query"
variable.
(DataSet.chunk_dataset): Fix indentation.
* wqflask/wqflask/search_results.py (get_GO_symbols): Remove
"this_term" variable.
* wqflask/wqflask/views.py (search_page): Remove "the_search"
variable.
|
|
Having "--import-mode=importlib" enables pytest to find the imports in
our tests; otherwise we get import errors.
* pyproject.toml: New pytest conf file.
|
|
* wqflask/tests/unit/base/test_trait.py: Delete "wqflask.app" import.
(TestRetrieveTraitInfo.setUp): Delete it.
(TestRetrieveTraitInfo.tearDown): Ditto.
(TestRetrieveTraitInfo.test_retrieve_trait_info_with_empty_dataset):
Replace "g" mock with "database_connection" mock.
(test_retrieve_trait_info_with_empty_trait_info): Ditto.
(test_retrieve_trait_info_with_non_empty_trait_info): Ditto.
(test_retrieve_trait_info_utf8_parsing): Ditto.
* wqflask/tests/wqflask/show_trait/test_show_trait.py (TestTraits):
(test_get_nearest_marker): Ditto.
(test_get_nearest_marker_empty_db): Ditto.
|
|
* wqflask/tests/wqflask/show_trait/test_show_trait.py
(TestTraits.test_get_table_widths): Use new values for the table width
to make the tests pass.
|
|
* wqflask/tests/wqflask/show_trait/test_show_trait.py:
(TestTraits.test_get_ncbi_summary_request_success): Condense this ...
(TestTraits.test_get_ncbi_summary_request): ... and this ...
(test_get_ncbi_summary_request): ... here.
|
|
* wqflask/tests/wqflask/show_trait/test_show_trait.py: Import pytest.
(TestTraits.test_check_if_attr_exists_truthy): Delete it.
(TestTraits.test_check_if_attr_exists_empty_attr): Ditto.
(TestTraits.test_check_if_attr_exists_falsey): Ditto.
(TestTraits.test_check_if_attr_exists_falsey): Ditto.
test_check_if_attr_exists: Add new parametrized test case to test
"check_if_attr_exists".
|
|
* wqflask/tests/wqflask/show_trait/test_show_trait.py (TraitObject):
Add self.id and self.distinct_values.
|
|
* wqflask/tests/wqflask/show_trait/test_show_trait.py: Delete
"wqflask.app" import.
(TestTraits.setUp): Delete it.
(TestTraits.tearDown): Ditto.
|
|
* README.md (Testing): Using pytests instead of unittests.
|
|
This is done to avoid relative imports.
wqflask/tests/unit/base/data.py: Delete it.
* wqflask/tests/unit/base/test_data_set.py: Add new variable
GEN_MENU_JSON.
(TestDataSetTypes.test_data_set_type_with_empty_redis): Upper-case
"gen_menu_json" variable.
|
|
|
|
"g.db" is now replaced with "database_connections".
* wqflask/wqflask/views.py: Remove "sqlalchemy" and "SQL_URI" imports.
(connect_db): Delete it.
(shutdown_session): Ditto.
|
|
* wqflask/scripts/profile_corrs.py: Remove sqlalchemy, connect_db and
shutdown_session.
(__main__): Remove "g.db".
|
|
* wqflask/base/data_set.py: Remove un-used imports.
* wqflask/base/trait.py: Ditto.
wqflask/tests/wqflask/show_trait/test_show_trait.py: Ditto.
* wqflask/wqflask/show_trait/show_trait.py: Ditto.
* wqflask/wqflask/views: Ditto.
|