TestImportErrors   A
last analyzed

Complexity

Total Complexity 4

Size/Duplication

Total Lines 25
Duplicated Lines 0 %

Importance

Changes 0
Metric Value
dl 0
loc 25
rs 10
c 0
b 0
f 0
wmc 4

3 Methods

Rating   Name   Duplication   Size   Complexity  
A test_10_ac_compat() 0 7 1
A test_20_ac_backends() 0 7 2
A test_30_ac_schema() 0 7 1
1
#
2
# Copyright (C) 2016 Satoru SATOH <ssato @ redhat.com>
3
# License: MIT
4
#
5
# pylint: disable=missing-docstring
6
from __future__ import absolute_import
7
8
import unittest
9
import sys
10
11
12
class TestImportErrors(unittest.TestCase):
13
14
    def test_10_ac_compat(self):
15
        fun = "NullHandler"
16
        sys.modules["logging"] = None
17
        import anyconfig.compat
18
19
        self.assertFalse(fun in globals())
20
        self.assertFalse(getattr(anyconfig.compat, fun) is None)
21
22
    def test_20_ac_backends(self):
23
        for mod in ("yaml", "configobj", "msgpack", "toml", "bson"):
24
            sys.modules[mod] = None
25
            import anyconfig.backends
26
27
            self.assertTrue(sys.modules[mod] is None)
28
            self.assertFalse(anyconfig.backends is None)
29
30
    def test_30_ac_schema(self):
31
        mod = "jsonschema"
32
        sys.modules[mod] = None
33
        import anyconfig.schema
34
35
        self.assertTrue(sys.modules[mod] is None)
36
        self.assertFalse(anyconfig.schema is None)
37
38
# vim:sw=4:ts=4:et:
39