Skip to content
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

#2412 - User can't correctly save (or make a layout) to RDF/RXN reaction several products or with separate positioned molecules #2717

Open
wants to merge 83 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
83 commits
Select commit Hold shift + click to select a range
36a43a5
step 1
even1024 Dec 30, 2024
0250bf9
step 1
even1024 Dec 30, 2024
fae6434
step 1
even1024 Dec 30, 2024
5119605
step 1
even1024 Dec 30, 2024
abdef6a
step 1
even1024 Dec 30, 2024
65cdf25
step 1
even1024 Dec 31, 2024
3677290
step 1
even1024 Dec 31, 2024
72912cd
step 1
even1024 Dec 31, 2024
4ee56c0
step 2
even1024 Jan 6, 2025
c7fd02f
step 3
even1024 Jan 8, 2025
0cc03e8
step 3
even1024 Jan 8, 2025
8ffa3be
step 3
even1024 Jan 8, 2025
792403a
step 3
even1024 Jan 8, 2025
87b661e
step 3
even1024 Jan 8, 2025
2d0f08e
step 3
even1024 Jan 9, 2025
c02ddbc
step 3
even1024 Jan 9, 2025
008d2cc
step 3
even1024 Jan 9, 2025
60af8c6
step 3
even1024 Jan 9, 2025
496cf10
step 3
even1024 Jan 9, 2025
c0a2308
step 3
even1024 Jan 9, 2025
0654e27
step 3
even1024 Jan 9, 2025
55983b7
step 3
even1024 Jan 9, 2025
2fe842c
step 3
even1024 Jan 9, 2025
cf38192
step 3
even1024 Jan 13, 2025
2f50790
step 3
even1024 Jan 13, 2025
e34c99f
step 3
even1024 Jan 13, 2025
5437b37
step 3
even1024 Jan 13, 2025
be0090c
simple reaction
even1024 Jan 17, 2025
c8d7bf6
simple reaction
even1024 Jan 17, 2025
729a3f8
tests
even1024 Jan 17, 2025
7817c01
tests
even1024 Jan 17, 2025
951eaca
tests
even1024 Jan 17, 2025
68a4bce
tests
even1024 Jan 17, 2025
fdfd7ec
tests
even1024 Jan 19, 2025
1d7adea
tests
even1024 Jan 19, 2025
95cff12
tests
even1024 Jan 20, 2025
4099878
tests
even1024 Jan 20, 2025
a0d2576
tests
even1024 Jan 20, 2025
5685a5c
tests
even1024 Jan 20, 2025
c70713f
tests
even1024 Jan 20, 2025
84360d7
tests
even1024 Jan 20, 2025
b992b90
tests
even1024 Jan 21, 2025
94f043b
tests
even1024 Jan 23, 2025
d6ec3ca
tests
even1024 Jan 23, 2025
b68a6d3
tests
even1024 Jan 23, 2025
43f7f37
Merge branch 'master' of github.com:epam/Indigo into 2412-reaction-me…
even1024 Jan 23, 2025
9bb518d
tests
even1024 Jan 24, 2025
deedf03
tests
even1024 Jan 24, 2025
1edc9c1
tests
even1024 Jan 24, 2025
bc8b287
tests
even1024 Jan 24, 2025
99d0629
tests
even1024 Jan 24, 2025
083d9a3
tests
even1024 Jan 26, 2025
274a2f4
tests
even1024 Jan 26, 2025
7b87d4a
ci
even1024 Jan 26, 2025
8d873d5
unordered
even1024 Jan 26, 2025
62c311e
clang
even1024 Jan 26, 2025
94b5cf3
test fix
even1024 Jan 27, 2025
160d727
sort fix
even1024 Jan 27, 2025
81f706d
undefined merge - disable
even1024 Jan 27, 2025
438faaf
sort fix
even1024 Jan 27, 2025
e7abe34
sort fix
even1024 Jan 27, 2025
99f86cb
sort fix
even1024 Jan 27, 2025
580d0e6
sort fix
even1024 Jan 27, 2025
f8e8fb8
sort fix
even1024 Jan 29, 2025
585c542
sort fix
even1024 Jan 29, 2025
2eadb4b
sort fix
even1024 Jan 29, 2025
d8770cf
sort fix
even1024 Jan 29, 2025
f81249b
sort fix
even1024 Jan 29, 2025
90cdb88
sort fix
even1024 Jan 29, 2025
724fcf2
sort fix
even1024 Jan 29, 2025
73eb93f
sort fix
even1024 Jan 29, 2025
0e4a7b9
sort fix
even1024 Jan 29, 2025
d68a0cb
sort fix
even1024 Jan 29, 2025
f5313b6
sort fix
even1024 Jan 29, 2025
c5c728b
sort fix
even1024 Jan 29, 2025
dd18a66
sort fix
even1024 Jan 29, 2025
7cc0cb6
sort fix
even1024 Jan 29, 2025
81f637b
sort fix
even1024 Jan 29, 2025
0187fbd
sort fix
even1024 Jan 29, 2025
d60aeda
sort fix
even1024 Jan 30, 2025
26a9961
sort fix
even1024 Jan 30, 2025
4336396
sort fix
even1024 Jan 30, 2025
f6c2d63
sort fix
even1024 Jan 30, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
230 changes: 125 additions & 105 deletions .github/workflows/indigo-ci.yaml

Large diffs are not rendered by default.

1 change: 1 addition & 0 deletions api/tests/integration/ref/formats/ket_to_ket.py.out
Original file line number Diff line number Diff line change
Expand Up @@ -6,3 +6,4 @@ ambiguous_monomer.ket mol loadQueryMolecule: SUCCEED
monomer_shape.ket doc loadKetDocument: SUCCEED
monomer_shape.ket mol loadMolecule: SUCCEED
monomer_shape.ket mol loadQueryMolecule: SUCCEED
multi_merge4.ket:SUCCEED
8 changes: 8 additions & 0 deletions api/tests/integration/ref/formats/ket_to_rdf.py.out
Original file line number Diff line number Diff line change
@@ -1,6 +1,12 @@
*** KET to RDF ***
2404-metadata_detect.rdf:SUCCEED
multi.rdf:SUCCEED
multi_merge1.rdf:SUCCEED
multi_merge2.rdf:SUCCEED
multi_merge3.rdf:SUCCEED
multi_merge4.rdf:SUCCEED
multi_merge5.rdf:SUCCEED
multi_merge6.rdf:SUCCEED
pathway1.rdf:SUCCEED
pathway10.rdf:SUCCEED
pathway11.rdf:SUCCEED
Expand All @@ -13,3 +19,5 @@ pathway6.rdf:SUCCEED
pathway7.rdf:SUCCEED
pathway8.rdf:SUCCEED
pathway9.rdf:SUCCEED
pathway_merge1.rdf:SUCCEED
pathway_merge2.rdf:SUCCEED
11 changes: 11 additions & 0 deletions api/tests/integration/ref/formats/ket_to_rxn.py.out
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
*** KET to RXN ***
merge_test1.rxn:SUCCEED
merge_test1a.rxn:SUCCEED
merge_test2.rxn:SUCCEED
merge_test2a.rxn:SUCCEED
merge_test3.rxn:SUCCEED
merge_test3a.rxn:SUCCEED
merge_test4.rxn:SUCCEED
merge_test5.rxn:SUCCEED
merge_test6.rxn:SUCCEED
merge_test7.rxn:SUCCEED
4 changes: 2 additions & 2 deletions api/tests/integration/tests/formats/ket_cdxml.py
Original file line number Diff line number Diff line change
Expand Up @@ -98,8 +98,8 @@ def find_diff(a, b):
print(getIndigoExceptionText(e))
raise SystemExit
cdxml_text = ket.cdxml()
with open(os.path.join(ref_path, filename) + ".cdxml", "w") as file:
file.write(cdxml_text)
# with open(os.path.join(ref_path, filename) + ".cdxml", "w") as file:
# file.write(cdxml_text)

indigo.loadMolecule(
cdxml_text
Expand Down
23 changes: 23 additions & 0 deletions api/tests/integration/tests/formats/ket_to_ket.py
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,7 @@ def find_diff(a, b):

root = joinPathPy("molecules/", __file__)
ref_path = joinPathPy("ref/", __file__)
root_rea = joinPathPy("reactions/", __file__)

files = [
"images",
Expand Down Expand Up @@ -73,3 +74,25 @@ def check_res(filename, format, ket_ref, ket):
# file.write(mol.json())
ket = mol.json()
check_res(filename, format + " " + loader.__name__, ket_ref, ket)

files = [
"multi_merge4",
]

files.sort()
for filename in files:
rea = indigo.loadReactionFromFile(
os.path.join(root_rea, filename + ".ket")
)

# with open(os.path.join(ref_path, filename) + ".ket", "w") as file:
# file.write(rea.json())
with open(os.path.join(ref_path, filename) + ".ket", "r") as file:
ket_ref = file.read()
ket = rea.json()
diff = find_diff(ket_ref, ket)
if not diff:
print(filename + ".ket:SUCCEED")
else:
print(filename + ".ket:FAILED")
print(diff)
10 changes: 9 additions & 1 deletion api/tests/integration/tests/formats/ket_to_rdf.py
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,14 @@ def find_diff(a, b):
"pathway10",
"pathway11",
"pathway12",
"pathway_merge1",
"pathway_merge2",
"multi_merge1",
"multi_merge2",
"multi_merge3",
"multi_merge4",
"multi_merge5",
"multi_merge6",
]

files.sort()
Expand All @@ -64,7 +72,7 @@ def find_diff(a, b):
rdf = buffer.toString()

# with open(os.path.join(ref_path, filename) + ".rdf", "w") as file:
# file.write(rdf)
# file.write(rdf)

with open(os.path.join(ref_path, filename) + ".rdf", "r") as file:
rdf_ref = file.read()
Expand Down
54 changes: 54 additions & 0 deletions api/tests/integration/tests/formats/ket_to_rxn.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
import difflib
import os
import sys


def find_diff(a, b):
return "\n".join(difflib.unified_diff(a.splitlines(), b.splitlines()))


sys.path.append(
os.path.normpath(
os.path.join(os.path.abspath(__file__), "..", "..", "..", "common")
)
)
from env_indigo import Indigo, joinPathPy # noqa

indigo = Indigo()
indigo.setOption("json-saving-pretty", True)
indigo.setOption("ignore-stereochemistry-errors", True)
indigo.setOption("molfile-saving-skip-date", True)

print("*** KET to RXN ***")

root = joinPathPy("reactions/", __file__)
ref_path = joinPathPy("ref/", __file__)

files = [
"merge_test1",
"merge_test1a",
"merge_test2",
"merge_test2a",
"merge_test3",
"merge_test3a",
"merge_test4",
"merge_test5",
"merge_test6",
"merge_test7",
]

files.sort()
for filename in files:
rea = indigo.loadReactionFromFile(os.path.join(root, filename + ".ket"))

# with open(os.path.join(ref_path, filename) + ".rxn", "w") as file:
# file.write(rea.rxnfile())
with open(os.path.join(ref_path, filename) + ".rxn", "r") as file:
rxn_ref = file.read()
rxn = rea.rxnfile()
diff = find_diff(rxn_ref, rxn)
if not diff:
print(filename + ".rxn:SUCCEED")
else:
print(filename + ".rxn:FAILED")
print(diff)
182 changes: 182 additions & 0 deletions api/tests/integration/tests/formats/reactions/merge_test1.ket
Original file line number Diff line number Diff line change
@@ -0,0 +1,182 @@
{
"root": {
"nodes": [
{
"$ref": "mol0"
},
{
"$ref": "mol1"
},
{
"type": "arrow",
"data": {
"mode": "open-angle",
"pos": [
{
"x": 13.975000000000001,
"y": -9.850000000000001,
"z": 0
},
{
"x": 16.62511792190461,
"y": -9.850000000000001,
"z": 0
}
]
}
}
],
"connections": [],
"templates": []
},
"mol0": {
"type": "molecule",
"atoms": [
{
"label": "N",
"location": [
9.9,
-10,
0
],
"charge": 1
},
{
"label": "C",
"location": [
9.9,
-9,
0
]
},
{
"label": "C",
"location": [
10.76602540378444,
-8.5,
0
]
},
{
"label": "C",
"location": [
8.9,
-10,
0
]
},
{
"label": "C",
"location": [
8.033974596215561,
-9.5,
0
]
},
{
"label": "C",
"location": [
9.9,
-11,
0
]
},
{
"label": "C",
"location": [
9.033974596215561,
-11.5,
0
]
},
{
"label": "C",
"location": [
10.9,
-10,
0
]
},
{
"label": "C",
"location": [
11.607106781186548,
-10.707106781186548,
0
]
}
],
"bonds": [
{
"type": 1,
"atoms": [
0,
1
]
},
{
"type": 1,
"atoms": [
1,
2
]
},
{
"type": 1,
"atoms": [
0,
3
]
},
{
"type": 1,
"atoms": [
3,
4
]
},
{
"type": 1,
"atoms": [
0,
5
]
},
{
"type": 1,
"atoms": [
5,
6
]
},
{
"type": 1,
"atoms": [
0,
7
]
},
{
"type": 1,
"atoms": [
7,
8
]
}
]
},
"mol1": {
"type": "molecule",
"atoms": [
{
"label": "Cl",
"location": [
12.525,
-9.9,
0
],
"charge": -1
}
]
}
}
Loading
Loading