3
3
Copyright (C) 2015, marazt. All rights reserved.
4
4
"""
5
5
import unittest
6
-
7
6
from datetime import datetime
7
+
8
8
from mapper .object_mapper import ObjectMapper
9
9
from mapper .object_mapper_exception import ObjectMapperException
10
10
11
+ NO_MAPPING_FOUND_EXCEPTION_MESSAGE = "No mapping defined for {0}.{1} -> {2}.{3}"
12
+ MAPPING_ALREADY_EXISTS_EXCEPTION_MESSAGE = "Mapping for {0}.{1} -> {2}.{3} already exists"
13
+
11
14
12
15
class ToTestClass (object ):
13
16
""" To Test Class """
17
+
14
18
def __init__ (self ):
15
19
self .name = ""
16
20
self .date = ""
@@ -19,19 +23,22 @@ def __init__(self):
19
23
20
24
class ToTestClassTwo (object ):
21
25
""" To Test Class Two """
26
+
22
27
def __init__ (self ):
23
28
self .all = ""
24
29
pass
25
30
26
31
27
32
class ToTestClassEmpty (object ):
28
33
""" To Test Class Empty """
34
+
29
35
def __init__ (self ):
30
36
pass
31
37
32
38
33
39
class FromTestClass (object ):
34
40
""" From Test Class """
41
+
35
42
def __init__ (self ):
36
43
self .name = "Igor"
37
44
self .surname = "Hnizdo"
@@ -102,7 +109,8 @@ def test_mapping_creation_duplicate_mapping(self):
102
109
103
110
# Arrange
104
111
exc = False
105
- msg = "Mapping for FromTestClass -> ToTestClass already exists"
112
+ msg = MAPPING_ALREADY_EXISTS_EXCEPTION_MESSAGE .format (FromTestClass .__module__ , FromTestClass .__name__ ,
113
+ ToTestClass .__module__ , ToTestClass .__name__ )
106
114
mapper = ObjectMapper ()
107
115
108
116
mapper .create_map (FromTestClass , ToTestClass )
@@ -186,9 +194,9 @@ def test_mapping_creation_no_mapping_defined(self):
186
194
187
195
# Arrange
188
196
exc = False
189
- msg = "No mapping defined for FromTestClass -> ToTestClass"
190
197
from_class = FromTestClass ()
191
-
198
+ msg = NO_MAPPING_FOUND_EXCEPTION_MESSAGE .format (from_class .__module__ , from_class .__class__ .__name__ ,
199
+ ToTestClass .__module__ , ToTestClass .__name__ )
192
200
mapper = ObjectMapper ()
193
201
194
202
# Act
@@ -225,11 +233,13 @@ def test_mapping_with_case_insensitivity(self):
225
233
# Arrange
226
234
class ToTestClass2 (object ):
227
235
""" To Test Class 2 """
236
+
228
237
def __init__ (self ):
229
238
self .name = ""
230
239
231
240
class FromTestClass2 (object ):
232
241
""" From Test Class 2 """
242
+
233
243
def __init__ (self ):
234
244
self .Name = "Name"
235
245
@@ -267,6 +277,7 @@ def test_mapping_creation_with_custom_dir(self):
267
277
268
278
# Arrange
269
279
_propNames = ['name' , 'date' ]
280
+
270
281
class ToCustomDirClass (object ):
271
282
def __dir__ (self ):
272
283
props = list (self .__dict__ .keys ())
@@ -304,16 +315,16 @@ def __setattr__(self, name, value):
304
315
305
316
def test_mapping_excluded_field (self ):
306
317
"""Test mapping with excluded fields"""
307
- #Arrange
318
+ # Arrange
308
319
from_class = FromTestClass ()
309
320
mapper = ObjectMapper ()
310
321
mapper .create_map (FromTestClass , ToTestClass )
311
322
312
- #Act
323
+ # Act
313
324
result = mapper .map (FromTestClass (), ToTestClass , excluded = ['date' ])
314
325
315
- #Assert
316
- print (result )
326
+ # Assert
327
+ print (result )
317
328
self .assertTrue (isinstance (result , ToTestClass ), "Type must be ToTestClass" )
318
329
self .assertEqual (result .name , from_class .name , "Name mapping must be equal" )
319
330
self .assertEqual (result .date , '' , "Date mapping must be equal" )
0 commit comments