TestIndicationSearch.test_cocaine_hcl()   A
last analyzed

Complexity

Conditions 1

Size

Total Lines 9
Code Lines 9

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
cc 1
eloc 9
nop 1
dl 0
loc 9
rs 9.95
c 0
b 0
f 0
1
import pytest
0 ignored issues
show
introduced by
Missing module docstring
Loading history...
introduced by
Unable to import 'pytest'
Loading history...
2
3
from mandos.cli import Commands, What
4
5
from . import get_test_resource
6
7
8
class TestIndicationSearch:
0 ignored issues
show
introduced by
Missing class docstring
Loading history...
9
    def test_find(self):
0 ignored issues
show
introduced by
Missing function or method docstring
Loading history...
Coding Style introduced by
This method could be written as a function/class method.

If a method does not access any attributes of the class, it could also be implemented as a function or static method. This can help improve readability. For example

class Foo:
    def some_method(self, x, y):
        return x + y;

could be written as

class Foo:
    @classmethod
    def some_method(cls, x, y):
        return x + y;
Loading history...
10
        df, triples = Commands.search_for(What.trial, get_test_resource("inchis.txt"), None)
0 ignored issues
show
Coding Style Naming introduced by
Variable name "df" doesn't conform to snake_case naming style ('([^\\W\\dA-Z][^\\WA-Z]2,|_[^\\WA-Z]*|__[^\\WA-Z\\d_][^\\WA-Z]+__)$' pattern)

This check looks for invalid names for a range of different identifiers.

You can set regular expressions to which the identifiers must conform if the defaults do not match your requirements.

If your project includes a Pylint configuration file, the settings contained in that file take precedence.

To find out more about Pylint, please refer to their site.

Loading history...
11
        assert len(df) == 6
12
        assert len(triples) == 6
13
        assert {t.compound_name.lower() for t in triples} == {"alprazolam"}
14
        assert {t.object_id for t in triples} == {
15
            "D012559",
16
            "D016584",
17
            "D003704",
18
            "D001008",
19
            "D001007",
20
            "D003866",
21
        }
22
        assert {t.object_name.lower() for t in triples} == {
23
            "schizophrenia",
24
            "panic disorder",
25
            "dementia",
26
            "anxiety",
27
            "depressive disorder",
28
            "anxiety disorders",
29
        }
30
        assert {t.predicate for t in triples} == {"phase-4 indication", "phase-3 indication"}
31
32
    def test_cocaine_hcl(self):
0 ignored issues
show
introduced by
Missing function or method docstring
Loading history...
Coding Style introduced by
This method could be written as a function/class method.

If a method does not access any attributes of the class, it could also be implemented as a function or static method. This can help improve readability. For example

class Foo:
    def some_method(self, x, y):
        return x + y;

could be written as

class Foo:
    @classmethod
    def some_method(cls, x, y):
        return x + y;
Loading history...
33
        df, triples = Commands.search_for(What.trial, ["CHEMBL529437"], None)
0 ignored issues
show
Coding Style Naming introduced by
Variable name "df" doesn't conform to snake_case naming style ('([^\\W\\dA-Z][^\\WA-Z]2,|_[^\\WA-Z]*|__[^\\WA-Z\\d_][^\\WA-Z]+__)$' pattern)

This check looks for invalid names for a range of different identifiers.

You can set regular expressions to which the identifiers must conform if the defaults do not match your requirements.

If your project includes a Pylint configuration file, the settings contained in that file take precedence.

To find out more about Pylint, please refer to their site.

Loading history...
34
        assert len(df) == 1
35
        assert len(triples) == 1
36
        assert triples[0].compound_name.lower() == "cocaine"
37
        assert triples[0].compound_id == "CHEMBL370805"
38
        assert triples[0].object_id == "D000758"
39
        assert triples[0].object_name == "Anesthesia"
40
        assert triples[0].predicate == "phase-4 indication"
41
42
43
if __name__ == "__main__":
44
    pytest.main()
45