Example #1
0
def test_template_occurence_scorer_tree_one_node():
    rt = ReactionTree()
    rt.root = Molecule(smiles="CCCCOc1ccc(CC(=O)N(C)O)cc1")
    rt.graph.add_node(rt.root)
    scorer = AverageTemplateOccurenceScorer()

    assert scorer(rt) == 0.0
Example #2
0
def test_scorers_tree_one_node_route(default_config):
    tree = ReactionTree()
    tree.root = Molecule(smiles="CCCCOc1ccc(CC(=O)N(C)O)cc1")
    tree.graph.add_node(tree.root)

    assert pytest.approx(StateScorer(default_config)(tree), abs=1e-3) == 0.0497
    assert NumberOfReactionsScorer(default_config)(tree) == 0
    assert NumberOfPrecursorsScorer(default_config)(tree) == 1
    assert NumberOfPrecursorsInStockScorer(default_config)(tree) == 0
    assert PriceSumScorer(default_config)(tree) == 10
    assert RouteCostScorer(default_config)(tree) == 10
def test_create_wrapper_no_reaction():
    tree = ReactionTree()
    mol = Molecule(smiles="CCC")
    tree.graph.add_node(mol)
    tree.root = mol

    wrapper = ReactionTreeWrapper(tree)
    assert wrapper.info["tree count"] == 1
    assert wrapper.info["root"] is mol
    assert len(wrapper.trees) == 1

    wrapper = ReactionTreeWrapper(tree, TreeContent.REACTIONS)
    assert wrapper.info["tree count"] == 0
    assert wrapper.info["root"] is None
    assert len(wrapper.trees) == 0

    wrapper = ReactionTreeWrapper(tree, TreeContent.BOTH)
    assert wrapper.info["tree count"] == 1
    assert wrapper.info["root"] is mol
    assert len(wrapper.trees) == 1