|
1 | 1 | """Comparing models, reactions, metabolites, genes and groups."""
|
2 | 2 |
|
3 |
| -from typing import Dict, Optional, Tuple, TypeVar |
| 3 | +from typing import TYPE_CHECKING, Dict, Optional, Tuple, TypeVar |
4 | 4 |
|
5 |
| -from cobra import Model, Object, Reaction |
6 |
| -from cobra.core import Group |
7 | 5 |
|
| 6 | +if TYPE_CHECKING: |
| 7 | + from cobra import Group, Model, Object, Reaction |
8 | 8 |
|
9 |
| -TObject = TypeVar("TObject", bound=Object) |
| 9 | + TObject = TypeVar("TObject", bound=Object) |
10 | 10 |
|
11 | 11 |
|
12 | 12 | def dict_compare(d1: Dict, d2: Dict, _dont_compare: Optional[set] = None):
|
@@ -38,7 +38,7 @@ def dict_compare(d1: Dict, d2: Dict, _dont_compare: Optional[set] = None):
|
38 | 38 |
|
39 | 39 |
|
40 | 40 | def compare_state(
|
41 |
| - obj1: TObject, obj2: TObject, ignore_keys: Optional[set] = None |
| 41 | + obj1: "TObject", obj2: "TObject", ignore_keys: Optional[set] = None |
42 | 42 | ) -> Tuple[bool, Dict]:
|
43 | 43 | """Will compare two cobra Objects (and what is derived from them).
|
44 | 44 |
|
@@ -71,7 +71,7 @@ def compare_state(
|
71 | 71 |
|
72 | 72 |
|
73 | 73 | def compare_reaction_state(
|
74 |
| - rxn1: Reaction, rxn2: Reaction, ignore_keys: Optional[set] = None |
| 74 | + rxn1: "Reaction", rxn2: "Reaction", ignore_keys: Optional[set] = None |
75 | 75 | ) -> Tuple[bool, Dict]:
|
76 | 76 | """Will compare two cobra Reactions.
|
77 | 77 |
|
@@ -106,7 +106,7 @@ def compare_reaction_state(
|
106 | 106 |
|
107 | 107 |
|
108 | 108 | def compare_group_state(
|
109 |
| - group1: Group, group2: Group, ignore_keys: Optional[set] = None |
| 109 | + group1: "Group", group2: "Group", ignore_keys: Optional[set] = None |
110 | 110 | ) -> Tuple[bool, Dict]:
|
111 | 111 | """Will compare two cobra Groups.
|
112 | 112 |
|
@@ -138,8 +138,8 @@ def compare_group_state(
|
138 | 138 |
|
139 | 139 |
|
140 | 140 | def compare_model_state(
|
141 |
| - model1: Model, |
142 |
| - model2: Model, |
| 141 | + model1: "Model", |
| 142 | + model2: "Model", |
143 | 143 | ignore_notes: bool = True,
|
144 | 144 | ignore_keys: Optional[set] = None,
|
145 | 145 | ):
|
|
0 commit comments