def test_SmilesToLigandFeaturizer_rdkit(): ligand = SmilesLigand.from_smiles("CCCCC") system = System([ligand]) featurizer = SmilesToLigandFeaturizer(ligand_type="openforcefield") featurizer.featurize([system]) molecule = system.featurizations[featurizer.name] assert type(molecule) == OpenForceFieldLigand
def test_SmilesToLigandFeaturizer_rdkit(): ligand = SmilesLigand.from_smiles("CCCCC") system = System([ligand]) featurizer = SmilesToLigandFeaturizer(ligand_type="rdkit") featurizer.featurize([system]) molecule = system.featurizations[featurizer.name] assert type(molecule) == RDKitLigand
def test_BaseFeaturizer(): ligand = SmilesLigand.from_smiles("CCCC") systems = System(components=[ligand]), System(components=[ligand]), System(components=[ligand]) featurizer = BaseFeaturizer() with pytest.raises(NotImplementedError): featurizer(systems) with pytest.raises(NotImplementedError): featurizer.featurize(systems)
def test_Pipeline(): ligand = SmilesLigand.from_smiles("CCCC") systems = [ System(components=[ligand]), System(components=[ligand]), System(components=[ligand]), ] featurizers = (NullFeaturizer(), NullFeaturizer()) pipeline = Pipeline(featurizers) pipeline.featurize(systems) assert [s.featurizations["last"] for s in systems] == systems
def test_NullFeaturizer(): system = LigandSystem([SmilesLigand.from_smiles("CCC")]) NullFeaturizer().featurize([system]) assert system == system.featurizations["last"]
def test_HashFeaturizer(): system = LigandSystem([SmilesLigand.from_smiles("CCC")]) HashFeaturizer(getter=lambda s: s.ligand.to_smiles(), normalize=True).featurize([system]) assert system.featurizations["last"] == pytest.approx(0.54818723)