Skip to content

Commit

Permalink
Merge pull request #18 from MRCIEU/migration-v1
Browse files Browse the repository at this point in the history
Changes related to v1.0 updates
  • Loading branch information
elswob authored Mar 11, 2021
2 parents 2d6f9cb + bb5b148 commit 27edc44
Show file tree
Hide file tree
Showing 3 changed files with 24 additions and 14 deletions.
9 changes: 7 additions & 2 deletions config/db_schema.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -995,7 +995,12 @@ meta_rels:
type: float
selection:
doc: >-
TODO Ben
Instrument selection.
- DF: directionality filtering
- HF: heterogeneity filtering
- Tophits: no filtering
- DF + HF: both types of filtering
type: string
required:
- source
Expand Down Expand Up @@ -1065,7 +1070,7 @@ meta_rels:
- action_type
PATHWAY_CHILD_OF:
doc: >-
Parent/child relationship of pathways.
Parent/child relationship of pathways.
properties:
source:
doc: ''
Expand Down
27 changes: 16 additions & 11 deletions tests/graph_database/test_db_schema.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@

from workflow.scripts.utils.general import neo4j_connect

from tests.utils.load_schema import meta_node_names, meta_rel_names
from tests.utils.load_schema import meta_node_names, meta_rel_names, meta_node_dict


def test_connect():
Expand All @@ -24,8 +24,8 @@ def test_meta_node_exist():
CALL db.labels() YIELD label RETURN label
"""
driver = neo4j_connect()
session = driver.session()
data = session.run(query).data()
with driver.session() as session:
data = session.run(query).data()
db_meta_node_names = set([_["label"] for _ in data])
if {"Meta"}.issubset(db_meta_node_names):
db_meta_node_names.remove({"Meta"})
Expand All @@ -41,17 +41,22 @@ def test_meta_rel_exist():
RETURN relationshipType AS label
"""
driver = neo4j_connect()
session = driver.session()
data = session.run(query).data()
with driver.session() as session:
data = session.run(query).data()
db_meta_rel_names = set([_["label"] for _ in data])
logger.info(f"meta_rel_names: {meta_rel_names}")
logger.info(f"db_meta_rel_names: {db_meta_rel_names}")
assert set(meta_rel_names) == db_meta_rel_names


def main():
pass


if __name__ == "__main__":
main()
def test_meta_node_index():
query = "CALL db.indexes()"
driver = neo4j_connect()
with driver.session() as session:
data = session.run(query).data()
actual_node_indexes = {(_["labelsOrTypes"][0], _["properties"][0]) for _ in data}
expected_node_indexes = {
(key, value["index"]) for key, value in meta_node_dict.items()
}
# We would expect expected_indexes to be a subset of current_indexes
assert len(expected_node_indexes.difference(actual_node_indexes)) == 0

0 comments on commit 27edc44

Please sign in to comment.