Passed
Push — main ( 81ca09...979ada )
by Douglas
01:38
created

TestDotDict.test_bytes()   A

Complexity

Conditions 1

Size

Total Lines 5
Code Lines 5

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
cc 1
eloc 5
nop 1
dl 0
loc 5
rs 10
c 0
b 0
f 0
1
from datetime import date, datetime, timezone
0 ignored issues
show
introduced by
Missing module docstring
Loading history...
2
3
import pytest
0 ignored issues
show
introduced by
Unable to import 'pytest'
Loading history...
4
5
from pocketutils.core.dot_dict import *
0 ignored issues
show
Coding Style introduced by
The usage of wildcard imports like pocketutils.core.dot_dict should generally be avoided.
Loading history...
Unused Code introduced by
pickle was imported with wildcard, but is not used.
Loading history...
Unused Code introduced by
orjson was imported with wildcard, but is not used.
Loading history...
Unused Code introduced by
PICKLE_PROTOCOL was imported with wildcard, but is not used.
Loading history...
Unused Code introduced by
T was imported with wildcard, but is not used.
Loading history...
Unused Code introduced by
copy was imported with wildcard, but is not used.
Loading history...
Unused Code introduced by
Path was imported with wildcard, but is not used.
Loading history...
Unused Code introduced by
PurePath was imported with wildcard, but is not used.
Loading history...
Unused Code introduced by
Any was imported with wildcard, but is not used.
Loading history...
Unused Code introduced by
ByteString was imported with wildcard, but is not used.
Loading history...
Unused Code introduced by
Callable was imported with wildcard, but is not used.
Loading history...
Unused Code introduced by
Mapping was imported with wildcard, but is not used.
Loading history...
Unused Code introduced by
Optional was imported with wildcard, but is not used.
Loading history...
Unused Code introduced by
Sequence was imported with wildcard, but is not used.
Loading history...
Unused Code introduced by
Tup was imported with wildcard, but is not used.
Loading history...
Unused Code introduced by
Type was imported with wildcard, but is not used.
Loading history...
Unused Code introduced by
TypeVar was imported with wildcard, but is not used.
Loading history...
Unused Code introduced by
Union was imported with wildcard, but is not used.
Loading history...
Unused Code introduced by
toml was imported with wildcard, but is not used.
Loading history...
Bug introduced by
The name core does not seem to exist in module pocketutils.
Loading history...
Unused Code introduced by
read_txt_or_gz was imported with wildcard, but is not used.
Loading history...
Unused Code introduced by
write_txt_or_gz was imported with wildcard, but is not used.
Loading history...
Unused Code introduced by
XKeyError was imported with wildcard, but is not used.
Loading history...
Unused Code introduced by
XTypeError was imported with wildcard, but is not used.
Loading history...
Unused Code introduced by
XValueError was imported with wildcard, but is not used.
Loading history...
Unused Code introduced by
PathLike was imported with wildcard, but is not used.
Loading history...
Unused Code introduced by
Iterable was imported with wildcard, but is not used.
Loading history...
Unused Code introduced by
sys was imported with wildcard, but is not used.
Loading history...
Unused Code introduced by
Collection was imported with wildcard, but is not used.
Loading history...
6
7
8
class TestDotDict:
0 ignored issues
show
introduced by
Missing class docstring
Loading history...
9
    def test_keys(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
        t = NestedDotDict({"a": "0", "b": 1, "c": {"c1": 8, "c2": ["abc", "xyz"]}})
0 ignored issues
show
Coding Style Naming introduced by
Variable name "t" 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 list(t.keys()) == ["a", "b", "c"]
12
13
    def test_bad(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...
14
        with pytest.raises(ValueError):
15
            NestedDotDict({"a.b": "c"})
16
        with pytest.raises(ValueError):
17
            NestedDotDict({"a": {"b.c": "d"}})
18
        with pytest.raises(ValueError):
19
            # noinspection PyTypeChecker
20
            NestedDotDict({1: 2})
21
        with pytest.raises(ValueError):
22
            NestedDotDict({"a.b": {5: 2}})
23
24
    def test_iter(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...
25
        t = NestedDotDict(dict(a=dict(b=555)))
0 ignored issues
show
Coding Style Naming introduced by
Variable name "t" 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...
26
        assert len(t) == 1
27
        assert list(iter(t)) == ["a"]
28
        assert t.items() == [("a", {"b": 555})]
29
30
    def test_get(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...
31
        t = NestedDotDict(dict(a=dict(b=dict(c="hello"))))
0 ignored issues
show
Coding Style Naming introduced by
Variable name "t" 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...
32
        assert t.get("a") == dict(b=dict(c="hello"))
33
        assert t.get("a.b") == dict(c="hello")
34
        assert t.get("a.b.c") == "hello"
35
        assert t["a"] == dict(b=dict(c="hello"))
36
        assert t["a.b"] == dict(c="hello")
37
        assert t["a.b.c"] == "hello"
38
        assert t.get("b") is None
39
        assert t.get("a.x") is None
40
        assert t.get("a.b.x") is None
41
        assert t.get("a.b.c.x") is None
42
        assert t.get("b", default="Q") == "Q"
43
        with pytest.raises(LookupError):
44
            # noinspection PyStatementEffect
45
            t["b"]
0 ignored issues
show
Unused Code introduced by
This statement seems to have no effect and could be removed.

This issue is typically triggered when a function that does not have side-effects is called and the return value is discarded:

class SomeClass:
    def __init__(self):
        self._x = 5

    def squared(self):
        return self._x * self._x

some_class = SomeClass()
some_class.squared()        # Flagged, as the return value is not used
print(some_class.squared()) # Ok
Loading history...
46
        with pytest.raises(LookupError):
47
            # noinspection PyStatementEffect
48
            t["a.x"]
0 ignored issues
show
Unused Code introduced by
This statement seems to have no effect and could be removed.

This issue is typically triggered when a function that does not have side-effects is called and the return value is discarded:

class SomeClass:
    def __init__(self):
        self._x = 5

    def squared(self):
        return self._x * self._x

some_class = SomeClass()
some_class.squared()        # Flagged, as the return value is not used
print(some_class.squared()) # Ok
Loading history...
49
        with pytest.raises(LookupError):
50
            # noinspection PyStatementEffect
51
            t["a.b.c.x"]
0 ignored issues
show
Unused Code introduced by
This statement seems to have no effect and could be removed.

This issue is typically triggered when a function that does not have side-effects is called and the return value is discarded:

class SomeClass:
    def __init__(self):
        self._x = 5

    def squared(self):
        return self._x * self._x

some_class = SomeClass()
some_class.squared()        # Flagged, as the return value is not used
print(some_class.squared()) # Ok
Loading history...
52
        t = NestedDotDict({"a": {"1": "hello", "2": "ell", "3": "elle"}})
0 ignored issues
show
Coding Style Naming introduced by
Variable name "t" 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...
53
        assert t["a.1"] == "hello"
54
        assert t["a.2"] == "ell"
55
        assert t["a.3"] == "elle"
56
57
    def test_get_as(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...
58
        t = NestedDotDict(
0 ignored issues
show
Coding Style Naming introduced by
Variable name "t" 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...
59
            {
60
                "animal": "kitten",
61
                "size": 4.3,
62
                "number": 8,
63
                "birthday": "2020-01-17",
64
                "birthdayzulu": "2020-01-17Z",
65
                "birthdatetime": "2020-01-17T15:22:11",
66
                "birthdatetimezulu": "2020-01-17T15:22:11Z",
67
            }
68
        )
69
        assert t.get_as("animal", str) == "kitten"
70
        assert t.get_as("size", float) == 4.3
71
        assert t.get_as("size", str) == "4.3"
72
        assert t.get_as("number", int) == 8
73
        assert t.get_as("birthday", date) == date(2020, 1, 17)
74
        assert t.get_as("birthdatetime", datetime) == datetime(2020, 1, 17, 15, 22, 11)
75
        assert t.get_as("birthdatetimezulu", datetime) == datetime(
76
            2020, 1, 17, 15, 22, 11, tzinfo=timezone.utc
77
        )
78
        # parsing a date string as datetime is dangerous because it fills in 00:00:00
79
        with pytest.raises(ValueError):
80
            assert t.get_as("birthdayzulu", datetime)
81
        with pytest.raises(ValueError):
82
            assert t.get_as("birthday", datetime)
83
        with pytest.raises(ValueError):
84
            assert t.get_as("birthdayzulu", date)
85
        with pytest.raises(ValueError):
86
            t.get_as("birthdatetime", date)
87
        with pytest.raises(ValueError):
88
            t.get_as("animal", int)
89
90
    def test_get_list_as(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...
91
        t = NestedDotDict({"kittens": ["dory", "johnson", "robin", "jack"], "ages": [3, 5, 7, 11]})
0 ignored issues
show
Coding Style Naming introduced by
Variable name "t" 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...
92
        assert t.get_list_as("kittens", str) == ["dory", "johnson", "robin", "jack"]
93
        assert t.get_list_as("ages", int) == [3, 5, 7, 11]
94
        assert t.get_list_as("ages", str) == ["3", "5", "7", "11"]
95
        assert t.get_list_as("hobbies", str) is None
96
        with pytest.raises(ValueError):
97
            t.get_list_as("kittens", float)
98
99
    def test_req(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...
100
        t = NestedDotDict(
0 ignored issues
show
Coding Style Naming introduced by
Variable name "t" 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...
101
            {
102
                "kittens": ["dory", "johnson", "robin", "jack"],
103
                "ages": [3, 5, 7, 11],
104
                "carrots": "yes",
105
            }
106
        )
107
        assert t.req_as("carrots", str) == "yes"
108
        assert t.req_list_as("ages", int) == [3, 5, 7, 11]
109
        with pytest.raises(LookupError):
110
            t.req_list_as("hobbies", str)
111
112
    def test_nested(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...
113
        t = NestedDotDict(
0 ignored issues
show
Coding Style Naming introduced by
Variable name "t" 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...
114
            {"kittens": {"names": ["dory", "johnson", "robin", "jack"], "ages": [3, 5, 7, 11]}}
115
        )
116
        assert isinstance(t.get("kittens"), NestedDotDict)
117
        assert t.get_list_as("kittens.ages", int) == [3, 5, 7, 11]
118
119
    def test_leaves(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...
120
        t = NestedDotDict(dict(a=dict(b=1), b=2, c=dict(a=dict(a=3))))
0 ignored issues
show
Coding Style Naming introduced by
Variable name "t" 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...
121
        assert t.leaves() == {"a.b": 1, "b": 2, "c.a.a": 3}
122
123
    def test_string(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...
124
        t = NestedDotDict(dict(a=dict(b=1), b=2, c=dict(a=dict(a=3))))
0 ignored issues
show
Coding Style Naming introduced by
Variable name "t" 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...
125
        assert str(t) == str(t._x)
0 ignored issues
show
Coding Style Best Practice introduced by
It seems like _x was declared protected and should not be accessed from this context.

Prefixing a member variable _ is usually regarded as the equivalent of declaring it with protected visibility that exists in other languages. Consequentially, such a member should only be accessed from the same class or a child class:

class MyParent:
    def __init__(self):
        self._x = 1;
        self.y = 2;

class MyChild(MyParent):
    def some_method(self):
        return self._x    # Ok, since accessed from a child class

class AnotherClass:
    def some_method(self, instance_of_my_child):
        return instance_of_my_child._x   # Would be flagged as AnotherClass is not
                                         # a child class of MyParent
Loading history...
126
        lines = t.pretty_str().splitlines()
127
        assert len(lines) == 5
128
        assert lines[0] == "{"
129
        assert lines[-1] == "}"
130
        assert lines[1] == '  "a.b": 1,'
131
132
    def test_size(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...
133
        t = NestedDotDict(dict(a=dict(b=1), b=2, c=dict(a=dict(a=3))))
0 ignored issues
show
Coding Style Naming introduced by
Variable name "t" 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...
134
        assert t.n_elements_total() == 3
135
        t = NestedDotDict(dict(a=dict(b=1), b=[1, 2, 3], c=dict(a=dict(a=3))))
0 ignored issues
show
Coding Style Naming introduced by
Variable name "t" 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...
136
        assert t.n_elements_total() == 5
137
138
    def test_bytes(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...
139
        t = NestedDotDict(dict(a=dict(b=1), b=2, c=dict(a=dict(a=3))))
0 ignored issues
show
Coding Style Naming introduced by
Variable name "t" 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...
140
        assert t.n_bytes_total() == 84
141
        t = NestedDotDict(dict(a=dict(b=1), b=[1, 2, 3], c=dict(a=dict(a=3))))
0 ignored issues
show
Coding Style Naming introduced by
Variable name "t" 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...
142
        assert t.n_bytes_total() == 140
143
144
    def test_as_exactly(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...
145
        t = NestedDotDict({"zoo": {"animals": "jackets"}, "what": 0.1})
0 ignored issues
show
Coding Style Naming introduced by
Variable name "t" 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...
146
        assert t.exactly("zoo.animals", str) == "jackets"
147
        assert t.exactly("what", float) == 0.1
148
        with pytest.raises(TypeError):
149
            t.exactly("what", str)
150
151
152
if __name__ == "__main__":
153
    pytest.main()
154