Completed
Push — master ( 0e2af0...ec5bb6 )
by
unknown
9s
created

MappersTests.test_map_locatie()   A

Complexity

Conditions 1

Size

Total Lines 5

Duplication

Lines 0
Ratio 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
cc 1
c 1
b 0
f 0
dl 0
loc 5
rs 9.4285
1
import os
2
import unittest
3
import json
4
5
from pyramid.compat import text_
6
from pyramid.testing import DummyModel
7
8
from oe_geoutils.data.mappers import (
9
    _map_locatie,
10
    _map_locatie_elementen,
11
)
12
13
TEST_DIR = os.path.dirname(__file__)
14
15
with open(os.path.join(TEST_DIR, 'fixtures/locaties.json'), 'rb') as f:
16
    locaties_json = json.loads(text_(f.read()))
17
18
19
class MappersTests(unittest.TestCase):
20
21
    def setUp(self):
22
        self.model = DummyModel()
23
24
    def test_map_locatie(self):
25
        self.model = _map_locatie(locaties_json['locatie'], self.model)
26
        self.assertIsNotNone(self.model.contour)
27
        self.assertIsInstance(self.model.locatie_elementen, list)
28
        self.assertEqual(len(self.model.locatie_elementen), 4)
29
30
    def test_map_locatie_elementen(self):
31
        locatie_elementen = _map_locatie_elementen(locaties_json['locatie']['elementen'])
32
        self.assertIsInstance(locatie_elementen, list)
33
        self.assertEqual(len(locatie_elementen), 4)
34
        # Perceel
35
        obj = [el for el in locatie_elementen
36
               if el.type == 'https://id.erfgoed.net/vocab/ontology#LocatieElementPerceel'][0]
37
        self.assertEqual(obj.type, 'https://id.erfgoed.net/vocab/ontology#LocatieElementPerceel')
38
        self.assertEqual(obj.provincie_niscode, 20001)
39
        self.assertEqual(obj.provincie_naam, 'Vlaams-Brabant')
40
        self.assertEqual(obj.gemeente_niscode, 24062)
41
        self.assertEqual(obj.gemeente_naam, 'Leuven')
42
        self.assertEqual(obj.gemeente_crab_id, 143)
43
        self.assertEqual(obj.afdeling, 'LEUVEN  5 AFD')
44
        self.assertEqual(obj.sectie, 'F')
45
        self.assertEqual(obj.perceel, '0415/00F000')
46
        self.assertEqual(obj.capakey, '24505F0415/00F000')
47
        # Openbaar Domein
48
        obj = [el for el in locatie_elementen
49
               if el.type == 'https://id.erfgoed.net/vocab/ontology#LocatieElementOpenbaarDomein'][0]
50
        self.assertEqual(obj.type, 'https://id.erfgoed.net/vocab/ontology#LocatieElementOpenbaarDomein')
51
        self.assertEqual(obj.provincie_niscode, 20001)
52
        self.assertEqual(obj.provincie_naam, 'Vlaams-Brabant')
53
        self.assertEqual(obj.gemeente_niscode, 24062)
54
        self.assertEqual(obj.gemeente_naam, 'Leuven')
55
        self.assertEqual(obj.gemeente_crab_id, 143)
56
        self.assertEqual(obj.omschrijving, 'Universiteitsbibliotheek Leuven')
57
        # LocatieAdres
58
        obj = [el for el in locatie_elementen
59
               if el.type == 'https://id.erfgoed.net/vocab/ontology#LocatieElementAdres'][0]
60
        self.assertEqual(obj.type, 'https://id.erfgoed.net/vocab/ontology#LocatieElementAdres')
61
        self.assertEqual(obj.provincie_niscode, 20001)
62
        self.assertEqual(obj.provincie_naam, 'Vlaams-Brabant')
63
        self.assertEqual(obj.gemeente_niscode, 24062)
64
        self.assertEqual(obj.gemeente_naam, 'Leuven')
65
        self.assertEqual(obj.gemeente_crab_id, 143)
66
        self.assertEqual(obj.straat_id, 34819)
67
        self.assertEqual(obj.straat, 'Fonteinstraat')
68
        self.assertEqual(obj.huisnummer_id, 201984)
69
        self.assertEqual(obj.huisnummer, '75')
70
        self.assertEqual(obj.subadres_id, 2)
71
        self.assertEqual(obj.subadres, 'test2')
72
        self.assertEqual(obj.postcode, '3000')
73
        self.assertEqual(obj.land, 'BE')
74
        # LocatieElement
75
        obj = [el for el in locatie_elementen
76
               if el.type == 'https://id.erfgoed.net/vocab/ontology#LocatieElement'][0]
77
        self.assertEqual(obj.type, 'https://id.erfgoed.net/vocab/ontology#LocatieElement')
78
        self.assertEqual(obj.provincie_niscode, 20001)
79
        self.assertEqual(obj.provincie_naam, 'Vlaams-Brabant')
80
        self.assertEqual(obj.gemeente_niscode, 24062)
81
        self.assertEqual(obj.gemeente_naam, 'Leuven')
82
        self.assertEqual(obj.gemeente_crab_id, 143)
83