{"nodes": [{"id": "backend_tests_test_ingredient_api_py", "label": "test_ingredient_api.py", "file_type": "code", "source_file": "backend/tests/test_ingredient_api.py", "source_location": "L1"}, {"id": "test_ingredient_api_admin_headers", "label": "_admin_headers()", "file_type": "code", "source_file": "backend/tests/test_ingredient_api.py", "source_location": "L6"}, {"id": "test_ingredient_api_test_create_ingredient_returns_201_with_id", "label": "test_create_ingredient_returns_201_with_id()", "file_type": "code", "source_file": "backend/tests/test_ingredient_api.py", "source_location": "L10"}, {"id": "test_ingredient_api_test_create_ingredient_rejects_duplicate_name", "label": "test_create_ingredient_rejects_duplicate_name()", "file_type": "code", "source_file": "backend/tests/test_ingredient_api.py", "source_location": "L24"}, {"id": "test_ingredient_api_test_list_ingredients_supports_search", "label": "test_list_ingredients_supports_search()", "file_type": "code", "source_file": "backend/tests/test_ingredient_api.py", "source_location": "L32"}, {"id": "test_ingredient_api_test_create_ingredient_requires_admin_token", "label": "test_create_ingredient_requires_admin_token()", "file_type": "code", "source_file": "backend/tests/test_ingredient_api.py", "source_location": "L44"}, {"id": "test_ingredient_api_test_update_ingredient_replaces_aliases", "label": "test_update_ingredient_replaces_aliases()", "file_type": "code", "source_file": "backend/tests/test_ingredient_api.py", "source_location": "L50"}, {"id": "test_ingredient_api_seed_grocery", "label": "_seed_grocery()", "file_type": "code", "source_file": "backend/tests/test_ingredient_api.py", "source_location": "L66"}, {"id": "test_ingredient_api_test_pin_manual_match", "label": "test_pin_manual_match()", "file_type": "code", "source_file": "backend/tests/test_ingredient_api.py", "source_location": "L90"}, {"id": "test_ingredient_api_test_unpin_manual_match", "label": "test_unpin_manual_match()", "file_type": "code", "source_file": "backend/tests/test_ingredient_api.py", "source_location": "L110"}, {"id": "test_ingredient_api_test_delete_ingredient_removes_row", "label": "test_delete_ingredient_removes_row()", "file_type": "code", "source_file": "backend/tests/test_ingredient_api.py", "source_location": "L128"}], "edges": [{"source": "backend_tests_test_ingredient_api_py", "target": "pytest", "relation": "imports", "confidence": "EXTRACTED", "source_file": "backend/tests/test_ingredient_api.py", "source_location": "L1", "weight": 1.0}, {"source": "backend_tests_test_ingredient_api_py", "target": "test_ingredient_api_admin_headers", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/tests/test_ingredient_api.py", "source_location": "L6", "weight": 1.0}, {"source": "backend_tests_test_ingredient_api_py", "target": "test_ingredient_api_test_create_ingredient_returns_201_with_id", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/tests/test_ingredient_api.py", "source_location": "L10", "weight": 1.0}, {"source": "backend_tests_test_ingredient_api_py", "target": "test_ingredient_api_test_create_ingredient_rejects_duplicate_name", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/tests/test_ingredient_api.py", "source_location": "L24", "weight": 1.0}, {"source": "backend_tests_test_ingredient_api_py", "target": "test_ingredient_api_test_list_ingredients_supports_search", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/tests/test_ingredient_api.py", "source_location": "L32", "weight": 1.0}, {"source": "backend_tests_test_ingredient_api_py", "target": "test_ingredient_api_test_create_ingredient_requires_admin_token", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/tests/test_ingredient_api.py", "source_location": "L44", "weight": 1.0}, {"source": "backend_tests_test_ingredient_api_py", "target": "test_ingredient_api_test_update_ingredient_replaces_aliases", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/tests/test_ingredient_api.py", "source_location": "L50", "weight": 1.0}, {"source": "backend_tests_test_ingredient_api_py", "target": "test_ingredient_api_seed_grocery", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/tests/test_ingredient_api.py", "source_location": "L66", "weight": 1.0}, {"source": "backend_tests_test_ingredient_api_py", "target": "test_ingredient_api_test_pin_manual_match", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/tests/test_ingredient_api.py", "source_location": "L90", "weight": 1.0}, {"source": "backend_tests_test_ingredient_api_py", "target": "test_ingredient_api_test_unpin_manual_match", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/tests/test_ingredient_api.py", "source_location": "L110", "weight": 1.0}, {"source": "backend_tests_test_ingredient_api_py", "target": "test_ingredient_api_test_delete_ingredient_removes_row", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/tests/test_ingredient_api.py", "source_location": "L128", "weight": 1.0}, {"source": "test_ingredient_api_test_create_ingredient_returns_201_with_id", "target": "test_ingredient_api_admin_headers", "relation": "calls", "confidence": "EXTRACTED", "source_file": "backend/tests/test_ingredient_api.py", "source_location": "L17", "weight": 1.0}, {"source": "test_ingredient_api_test_create_ingredient_rejects_duplicate_name", "target": "test_ingredient_api_admin_headers", "relation": "calls", "confidence": "EXTRACTED", "source_file": "backend/tests/test_ingredient_api.py", "source_location": "L26", "weight": 1.0}, {"source": "test_ingredient_api_test_list_ingredients_supports_search", "target": "test_ingredient_api_admin_headers", "relation": "calls", "confidence": "EXTRACTED", "source_file": "backend/tests/test_ingredient_api.py", "source_location": "L36", "weight": 1.0}, {"source": "test_ingredient_api_test_update_ingredient_replaces_aliases", "target": "test_ingredient_api_admin_headers", "relation": "calls", "confidence": "EXTRACTED", "source_file": "backend/tests/test_ingredient_api.py", "source_location": "L54", "weight": 1.0}, {"source": "test_ingredient_api_test_pin_manual_match", "target": "test_ingredient_api_admin_headers", "relation": "calls", "confidence": "EXTRACTED", "source_file": "backend/tests/test_ingredient_api.py", "source_location": "L94", "weight": 1.0}, {"source": "test_ingredient_api_test_pin_manual_match", "target": "test_ingredient_api_seed_grocery", "relation": "calls", "confidence": "EXTRACTED", "source_file": "backend/tests/test_ingredient_api.py", "source_location": "L97", "weight": 1.0}, {"source": "test_ingredient_api_test_unpin_manual_match", "target": "test_ingredient_api_admin_headers", "relation": "calls", "confidence": "EXTRACTED", "source_file": "backend/tests/test_ingredient_api.py", "source_location": "L114", "weight": 1.0}, {"source": "test_ingredient_api_test_unpin_manual_match", "target": "test_ingredient_api_seed_grocery", "relation": "calls", "confidence": "EXTRACTED", "source_file": "backend/tests/test_ingredient_api.py", "source_location": "L117", "weight": 1.0}, {"source": "test_ingredient_api_test_delete_ingredient_removes_row", "target": "test_ingredient_api_admin_headers", "relation": "calls", "confidence": "EXTRACTED", "source_file": "backend/tests/test_ingredient_api.py", "source_location": "L132", "weight": 1.0}], "raw_calls": [{"caller_nid": "test_ingredient_api_test_create_ingredient_returns_201_with_id", "callee": "post", "source_file": "backend/tests/test_ingredient_api.py", "source_location": "L17"}, {"caller_nid": "test_ingredient_api_test_create_ingredient_returns_201_with_id", "callee": "json", "source_file": "backend/tests/test_ingredient_api.py", "source_location": "L19"}, {"caller_nid": "test_ingredient_api_test_create_ingredient_rejects_duplicate_name", "callee": "post", "source_file": "backend/tests/test_ingredient_api.py", "source_location": "L26"}, {"caller_nid": "test_ingredient_api_test_create_ingredient_rejects_duplicate_name", "callee": "post", "source_file": "backend/tests/test_ingredient_api.py", "source_location": "L28"}, {"caller_nid": "test_ingredient_api_test_list_ingredients_supports_search", "callee": "post", "source_file": "backend/tests/test_ingredient_api.py", "source_location": "L33"}, {"caller_nid": "test_ingredient_api_test_list_ingredients_supports_search", "callee": "get", "source_file": "backend/tests/test_ingredient_api.py", "source_location": "L38"}, {"caller_nid": "test_ingredient_api_test_list_ingredients_supports_search", "callee": "json", "source_file": "backend/tests/test_ingredient_api.py", "source_location": "L40"}, {"caller_nid": "test_ingredient_api_test_create_ingredient_requires_admin_token", "callee": "post", "source_file": "backend/tests/test_ingredient_api.py", "source_location": "L46"}, {"caller_nid": "test_ingredient_api_test_update_ingredient_replaces_aliases", "callee": "post", "source_file": "backend/tests/test_ingredient_api.py", "source_location": "L51"}, {"caller_nid": "test_ingredient_api_test_update_ingredient_replaces_aliases", "callee": "json", "source_file": "backend/tests/test_ingredient_api.py", "source_location": "L56"}, {"caller_nid": "test_ingredient_api_test_update_ingredient_replaces_aliases", "callee": "patch", "source_file": "backend/tests/test_ingredient_api.py", "source_location": "L57"}, {"caller_nid": "test_ingredient_api_test_update_ingredient_replaces_aliases", "callee": "json", "source_file": "backend/tests/test_ingredient_api.py", "source_location": "L63"}, {"caller_nid": "test_ingredient_api_seed_grocery", "callee": "uuid4", "source_file": "backend/tests/test_ingredient_api.py", "source_location": "L73"}, {"caller_nid": "test_ingredient_api_seed_grocery", "callee": "add", "source_file": "backend/tests/test_ingredient_api.py", "source_location": "L74"}, {"caller_nid": "test_ingredient_api_seed_grocery", "callee": "GroceryItem", "source_file": "backend/tests/test_ingredient_api.py", "source_location": "L75"}, {"caller_nid": "test_ingredient_api_seed_grocery", "callee": "Decimal", "source_file": "backend/tests/test_ingredient_api.py", "source_location": "L80"}, {"caller_nid": "test_ingredient_api_seed_grocery", "callee": "Decimal", "source_file": "backend/tests/test_ingredient_api.py", "source_location": "L81"}, {"caller_nid": "test_ingredient_api_seed_grocery", "callee": "now", "source_file": "backend/tests/test_ingredient_api.py", "source_location": "L83"}, {"caller_nid": "test_ingredient_api_seed_grocery", "callee": "commit", "source_file": "backend/tests/test_ingredient_api.py", "source_location": "L86"}, {"caller_nid": "test_ingredient_api_seed_grocery", "callee": "str", "source_file": "backend/tests/test_ingredient_api.py", "source_location": "L87"}, {"caller_nid": "test_ingredient_api_test_pin_manual_match", "callee": "post", "source_file": "backend/tests/test_ingredient_api.py", "source_location": "L91"}, {"caller_nid": "test_ingredient_api_test_pin_manual_match", "callee": "json", "source_file": "backend/tests/test_ingredient_api.py", "source_location": "L96"}, {"caller_nid": "test_ingredient_api_test_pin_manual_match", "callee": "post", "source_file": "backend/tests/test_ingredient_api.py", "source_location": "L99"}, {"caller_nid": "test_ingredient_api_test_pin_manual_match", "callee": "json", "source_file": "backend/tests/test_ingredient_api.py", "source_location": "L105"}, {"caller_nid": "test_ingredient_api_test_unpin_manual_match", "callee": "post", "source_file": "backend/tests/test_ingredient_api.py", "source_location": "L111"}, {"caller_nid": "test_ingredient_api_test_unpin_manual_match", "callee": "json", "source_file": "backend/tests/test_ingredient_api.py", "source_location": "L116"}, {"caller_nid": "test_ingredient_api_test_unpin_manual_match", "callee": "post", "source_file": "backend/tests/test_ingredient_api.py", "source_location": "L118"}, {"caller_nid": "test_ingredient_api_test_unpin_manual_match", "callee": "json", "source_file": "backend/tests/test_ingredient_api.py", "source_location": "L123"}, {"caller_nid": "test_ingredient_api_test_unpin_manual_match", "callee": "delete", "source_file": "backend/tests/test_ingredient_api.py", "source_location": "L124"}, {"caller_nid": "test_ingredient_api_test_delete_ingredient_removes_row", "callee": "post", "source_file": "backend/tests/test_ingredient_api.py", "source_location": "L129"}, {"caller_nid": "test_ingredient_api_test_delete_ingredient_removes_row", "callee": "json", "source_file": "backend/tests/test_ingredient_api.py", "source_location": "L134"}, {"caller_nid": "test_ingredient_api_test_delete_ingredient_removes_row", "callee": "delete", "source_file": "backend/tests/test_ingredient_api.py", "source_location": "L135"}, {"caller_nid": "test_ingredient_api_test_delete_ingredient_removes_row", "callee": "get", "source_file": "backend/tests/test_ingredient_api.py", "source_location": "L137"}]}