From 226c87f9185c4362b9482b0ebf2cc4d021508000 Mon Sep 17 00:00:00 2001 From: Dirk Alders Date: Thu, 14 Jan 2021 01:00:00 +0100 Subject: [PATCH] Unittest update --- _testresults_/coverage.xml | 2 +- _testresults_/unittest.json | 4931 +++++++---------------------------- _testresults_/unittest.pdf | Bin 245205 -> 238108 bytes 3 files changed, 941 insertions(+), 3992 deletions(-) diff --git a/_testresults_/coverage.xml b/_testresults_/coverage.xml index 4b8105d..b9bbdae 100644 --- a/_testresults_/coverage.xml +++ b/_testresults_/coverage.xml @@ -1,5 +1,5 @@ - + diff --git a/_testresults_/unittest.json b/_testresults_/unittest.json index 82ebd6e..b71f5a4 100644 --- a/_testresults_/unittest.json +++ b/_testresults_/unittest.json @@ -985,9 +985,9 @@ }, "system_information": { "Architecture": "64bit", - "Distribution": "Linux Mint 20 ulyana", + "Distribution": "Linux Mint 20.1 ulyssa", "Hostname": "ahorn", - "Kernel": "5.4.0-42-generic (#46-Ubuntu SMP Fri Jul 10 00:24:02 UTC 2020)", + "Kernel": "5.4.0-60-generic (#67-Ubuntu SMP Tue Jan 5 18:31:36 UTC 2021)", "Machine": "x86_64", "Path": "/user_data/data/dirk/prj/unittest/media/unittest", "System": "Linux", @@ -1014,7 +1014,7 @@ "_wvLDcEYCEequ74M7usLaPw": "Image data", "_zQ29EEYCEequ74M7usLaPw": "Resize" }, - "interpreter": "python 3.8.2 (final)", + "interpreter": "python 3.8.5 (final)", "name": "Default Testsession name", "number_of_failed_tests": 0, "number_of_possibly_failed_tests": 0, @@ -1030,8 +1030,8 @@ "testcases": { "_AdR7EEYDEequ74M7usLaPw": { "args": null, - "asctime": "2020-08-29 20:16:25,320", - "created": 1598724985.320815, + "asctime": "2021-01-14 00:59:09,126", + "created": 1610582349.1260378, "exc_info": null, "exc_text": null, "filename": "__init__.py", @@ -1042,13 +1042,13 @@ "message": "_AdR7EEYDEequ74M7usLaPw", "module": "__init__", "moduleLogger": [], - "msecs": 320.8150863647461, + "msecs": 126.0378360748291, "msg": "_AdR7EEYDEequ74M7usLaPw", "name": "__tLogger__", "pathname": "/user_data/data/dirk/prj/unittest/media/unittest/src/tests/__init__.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 1646.056890487671, + "relativeCreated": 1975.4455089569092, "stack_info": null, "testcaseLogger": [ { @@ -1056,50 +1056,26 @@ "False", "" ], - "asctime": "2020-08-29 20:16:25,321", - "created": 1598724985.3210082, + "asctime": "2021-01-14 00:59:09,126", + "created": 1610582349.1261973, "exc_info": null, "exc_text": null, "filename": "test.py", "funcName": "equivalency_chk", "levelname": "INFO", "levelno": 20, - "lineno": 142, + "lineno": 144, "message": "Returnvalue of rotate method without loading an image is correct (Content False and Type is ).", "module": "test", "moduleLogger": [ - { - "args": [], - "asctime": "2020-08-29 20:16:25,320", - "created": 1598724985.3208919, - "exc_info": null, - "exc_text": null, - "filename": "__init__.py", - "funcName": "rotate_by_orientation", - "levelname": "WARNING", - "levelno": 30, - "lineno": 149, - "message": "No image available, rotation not possible", - "module": "__init__", - "msecs": 320.8918571472168, - "msg": "No image available, rotation not possible", - "name": "MEDIA", - "pathname": "src/media/__init__.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 1646.1336612701416, - "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, { "args": [ "Returnvalue of rotate method without loading an image", "False", "" ], - "asctime": "2020-08-29 20:16:25,320", - "created": 1598724985.3209338, + "asctime": "2021-01-14 00:59:09,126", + "created": 1610582349.1261213, "exc_info": null, "exc_text": null, "filename": "test.py", @@ -1109,15 +1085,15 @@ "lineno": 22, "message": "Result (Returnvalue of rotate method without loading an image): False ()", "module": "test", - "msecs": 320.9338188171387, + "msecs": 126.12128257751465, "msg": "Result (%s): %s (%s)", "name": "__unittest__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 1646.1756229400635, + "relativeCreated": 1975.5289554595947, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread" }, { @@ -1126,8 +1102,8 @@ "False", "" ], - "asctime": "2020-08-29 20:16:25,320", - "created": 1598724985.320971, + "asctime": "2021-01-14 00:59:09,126", + "created": 1610582349.126161, "exc_info": null, "exc_text": null, "filename": "test.py", @@ -1137,107 +1113,55 @@ "lineno": 26, "message": "Expectation (Returnvalue of rotate method without loading an image): result = False ()", "module": "test", - "msecs": 320.9710121154785, + "msecs": 126.16109848022461, "msg": "Expectation (%s): result = %s (%s)", "name": "__unittest__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 1646.2128162384033, + "relativeCreated": 1975.5687713623047, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread" } ], - "msecs": 321.00820541381836, + "msecs": 126.19733810424805, "msg": "Returnvalue of rotate method without loading an image is correct (Content %s and Type is %s).", "name": "__tLogger__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 1646.2500095367432, + "relativeCreated": 1975.6050109863281, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread", - "time_consumption": 3.719329833984375e-05 + "time_consumption": 3.62396240234375e-05 }, { "args": [ "False", "" ], - "asctime": "2020-08-29 20:16:25,442", - "created": 1598724985.442934, + "asctime": "2021-01-14 00:59:09,249", + "created": 1610582349.2498689, "exc_info": null, "exc_text": null, "filename": "test.py", "funcName": "equivalency_chk", "levelname": "INFO", "levelno": 20, - "lineno": 142, + "lineno": 144, "message": "Returnvalue of rotate method with invalid orientation is correct (Content False and Type is ).", "module": "test", "moduleLogger": [ - { - "args": [ - "'/user_data/data/dirk/prj/unittest/media/unittest/input_data/image_exif_gps.jpg'" - ], - "asctime": "2020-08-29 20:16:25,442", - "created": 1598724985.4426198, - "exc_info": null, - "exc_text": null, - "filename": "__init__.py", - "funcName": "load_from_file", - "levelname": "DEBUG", - "levelno": 10, - "lineno": 116, - "message": "loading image from '/user_data/data/dirk/prj/unittest/media/unittest/input_data/image_exif_gps.jpg'", - "module": "__init__", - "msecs": 442.61980056762695, - "msg": "loading image from %s", - "name": "MEDIA", - "pathname": "src/media/__init__.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 1767.8616046905518, - "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, - { - "args": [ - "17" - ], - "asctime": "2020-08-29 20:16:25,442", - "created": 1598724985.4427528, - "exc_info": null, - "exc_text": null, - "filename": "__init__.py", - "funcName": "rotate_by_orientation", - "levelname": "WARNING", - "levelno": 30, - "lineno": 168, - "message": "Orientation 17 unknown for rotation", - "module": "__init__", - "msecs": 442.7528381347656, - "msg": "Orientation %s unknown for rotation", - "name": "MEDIA", - "pathname": "src/media/__init__.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 1767.9946422576904, - "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, { "args": [ "Returnvalue of rotate method with invalid orientation", "False", "" ], - "asctime": "2020-08-29 20:16:25,442", - "created": 1598724985.4428287, + "asctime": "2021-01-14 00:59:09,249", + "created": 1610582349.249714, "exc_info": null, "exc_text": null, "filename": "test.py", @@ -1247,15 +1171,15 @@ "lineno": 22, "message": "Result (Returnvalue of rotate method with invalid orientation): False ()", "module": "test", - "msecs": 442.8286552429199, + "msecs": 249.71389770507812, "msg": "Result (%s): %s (%s)", "name": "__unittest__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 1768.0704593658447, + "relativeCreated": 2099.121570587158, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread" }, { @@ -1264,8 +1188,8 @@ "False", "" ], - "asctime": "2020-08-29 20:16:25,442", - "created": 1598724985.4428835, + "asctime": "2021-01-14 00:59:09,249", + "created": 1610582349.2498217, "exc_info": null, "exc_text": null, "filename": "test.py", @@ -1275,81 +1199,55 @@ "lineno": 26, "message": "Expectation (Returnvalue of rotate method with invalid orientation): result = False ()", "module": "test", - "msecs": 442.8834915161133, + "msecs": 249.82166290283203, "msg": "Expectation (%s): result = %s (%s)", "name": "__unittest__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 1768.125295639038, + "relativeCreated": 2099.229335784912, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread" } ], - "msecs": 442.9340362548828, + "msecs": 249.86886978149414, "msg": "Returnvalue of rotate method with invalid orientation is correct (Content %s and Type is %s).", "name": "__tLogger__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 1768.1758403778076, + "relativeCreated": 2099.276542663574, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread", - "time_consumption": 5.054473876953125e-05 + "time_consumption": 4.7206878662109375e-05 }, { "args": [ "False", "" ], - "asctime": "2020-08-29 20:16:25,540", - "created": 1598724985.5404568, + "asctime": "2021-01-14 00:59:09,368", + "created": 1610582349.368857, "exc_info": null, "exc_text": null, "filename": "test.py", "funcName": "equivalency_chk", "levelname": "INFO", "levelno": 20, - "lineno": 142, + "lineno": 144, "message": "Returnvalue of rotate method with no orientation in method call and exif is correct (Content False and Type is ).", "module": "test", "moduleLogger": [ - { - "args": [ - "'/user_data/data/dirk/prj/unittest/media/unittest/input_data/image_non_exif.jpg'" - ], - "asctime": "2020-08-29 20:16:25,536", - "created": 1598724985.5366435, - "exc_info": null, - "exc_text": null, - "filename": "__init__.py", - "funcName": "load_from_file", - "levelname": "DEBUG", - "levelno": 10, - "lineno": 116, - "message": "loading image from '/user_data/data/dirk/prj/unittest/media/unittest/input_data/image_non_exif.jpg'", - "module": "__init__", - "msecs": 536.6435050964355, - "msg": "loading image from %s", - "name": "MEDIA", - "pathname": "src/media/__init__.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 1861.8853092193604, - "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, { "args": [ "Returnvalue of rotate method with no orientation in method call and exif", "False", "" ], - "asctime": "2020-08-29 20:16:25,540", - "created": 1598724985.5403244, + "asctime": "2021-01-14 00:59:09,368", + "created": 1610582349.3685825, "exc_info": null, "exc_text": null, "filename": "test.py", @@ -1359,15 +1257,15 @@ "lineno": 22, "message": "Result (Returnvalue of rotate method with no orientation in method call and exif): False ()", "module": "test", - "msecs": 540.3244495391846, + "msecs": 368.58248710632324, "msg": "Result (%s): %s (%s)", "name": "__unittest__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 1865.5662536621094, + "relativeCreated": 2217.9901599884033, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread" }, { @@ -1376,8 +1274,8 @@ "False", "" ], - "asctime": "2020-08-29 20:16:25,540", - "created": 1598724985.54041, + "asctime": "2021-01-14 00:59:09,368", + "created": 1610582349.3687541, "exc_info": null, "exc_text": null, "filename": "test.py", @@ -1387,44 +1285,44 @@ "lineno": 26, "message": "Expectation (Returnvalue of rotate method with no orientation in method call and exif): result = False ()", "module": "test", - "msecs": 540.410041809082, + "msecs": 368.75414848327637, "msg": "Expectation (%s): result = %s (%s)", "name": "__unittest__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 1865.6518459320068, + "relativeCreated": 2218.1618213653564, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread" } ], - "msecs": 540.4567718505859, + "msecs": 368.85690689086914, "msg": "Returnvalue of rotate method with no orientation in method call and exif is correct (Content %s and Type is %s).", "name": "__tLogger__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 1865.6985759735107, + "relativeCreated": 2218.264579772949, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread", - "time_consumption": 4.673004150390625e-05 + "time_consumption": 0.00010275840759277344 }, { "args": [ "True", "" ], - "asctime": "2020-08-29 20:16:25,767", - "created": 1598724985.7673264, + "asctime": "2021-01-14 00:59:09,606", + "created": 1610582349.6060865, "exc_info": null, "exc_text": null, "filename": "test.py", "funcName": "equivalency_chk", "levelname": "INFO", "levelno": 20, - "lineno": 142, + "lineno": 144, "message": "Filecompare for rotated_image_none.jpg is correct (Content True and Type is ).", "module": "test", "moduleLogger": [ @@ -1432,8 +1330,8 @@ "args": [ "None" ], - "asctime": "2020-08-29 20:16:25,540", - "created": 1598724985.5405388, + "asctime": "2021-01-14 00:59:09,369", + "created": 1610582349.369007, "exc_info": null, "exc_text": null, "filename": "test_image.py", @@ -1443,119 +1341,15 @@ "lineno": 78, "message": "Rotate with orientation None", "module": "test_image", - "msecs": 540.5387878417969, + "msecs": 369.0071105957031, "msg": "Rotate with orientation %s", "name": "__unittest__", "pathname": "src/tests/test_image.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 1865.7805919647217, + "relativeCreated": 2218.414783477783, "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, - { - "args": [ - "'/user_data/data/dirk/prj/unittest/media/unittest/input_data/image_exif_gps.jpg'" - ], - "asctime": "2020-08-29 20:16:25,650", - "created": 1598724985.6503398, - "exc_info": null, - "exc_text": null, - "filename": "__init__.py", - "funcName": "load_from_file", - "levelname": "DEBUG", - "levelno": 10, - "lineno": 116, - "message": "loading image from '/user_data/data/dirk/prj/unittest/media/unittest/input_data/image_exif_gps.jpg'", - "module": "__init__", - "msecs": 650.3398418426514, - "msg": "loading image from %s", - "name": "MEDIA", - "pathname": "src/media/__init__.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 1975.5816459655762, - "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, - { - "args": [ - "6" - ], - "asctime": "2020-08-29 20:16:25,650", - "created": 1598724985.6505988, - "exc_info": null, - "exc_text": null, - "filename": "__init__.py", - "funcName": "rotate_by_orientation", - "levelname": "DEBUG", - "levelno": 10, - "lineno": 156, - "message": "No orientation given, orientation 6 extract from exif data", - "module": "__init__", - "msecs": 650.5987644195557, - "msg": "No orientation given, orientation %s extract from exif data", - "name": "MEDIA", - "pathname": "src/media/__init__.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 1975.8405685424805, - "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, - { - "args": [ - 270 - ], - "asctime": "2020-08-29 20:16:25,650", - "created": 1598724985.6506739, - "exc_info": null, - "exc_text": null, - "filename": "__init__.py", - "funcName": "rotate_by_orientation", - "levelname": "DEBUG", - "levelno": 10, - "lineno": 170, - "message": "Rotating picture by 270 (deg)", - "module": "__init__", - "msecs": 650.6738662719727, - "msg": "Rotating picture by %d (deg)", - "name": "MEDIA", - "pathname": "src/media/__init__.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 1975.9156703948975, - "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, - { - "args": [ - "'/user_data/data/dirk/prj/unittest/media/unittest/output_data/rotated_image_none.jpg'" - ], - "asctime": "2020-08-29 20:16:25,675", - "created": 1598724985.6754732, - "exc_info": null, - "exc_text": null, - "filename": "__init__.py", - "funcName": "save", - "levelname": "DEBUG", - "levelno": 10, - "lineno": 124, - "message": "Saving image to '/user_data/data/dirk/prj/unittest/media/unittest/output_data/rotated_image_none.jpg'", - "module": "__init__", - "msecs": 675.4732131958008, - "msg": "Saving image to %s", - "name": "MEDIA", - "pathname": "src/media/__init__.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 2000.7150173187256, - "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread" }, { @@ -1564,8 +1358,8 @@ "True", "" ], - "asctime": "2020-08-29 20:16:25,767", - "created": 1598724985.7671769, + "asctime": "2021-01-14 00:59:09,605", + "created": 1610582349.605915, "exc_info": null, "exc_text": null, "filename": "test.py", @@ -1575,15 +1369,15 @@ "lineno": 22, "message": "Result (Filecompare for rotated_image_none.jpg): True ()", "module": "test", - "msecs": 767.1768665313721, + "msecs": 605.9150695800781, "msg": "Result (%s): %s (%s)", "name": "__unittest__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 2092.418670654297, + "relativeCreated": 2455.322742462158, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread" }, { @@ -1592,8 +1386,8 @@ "True", "" ], - "asctime": "2020-08-29 20:16:25,767", - "created": 1598724985.767269, + "asctime": "2021-01-14 00:59:09,606", + "created": 1610582349.6060295, "exc_info": null, "exc_text": null, "filename": "test.py", @@ -1603,44 +1397,44 @@ "lineno": 26, "message": "Expectation (Filecompare for rotated_image_none.jpg): result = True ()", "module": "test", - "msecs": 767.2688961029053, + "msecs": 606.0295104980469, "msg": "Expectation (%s): result = %s (%s)", "name": "__unittest__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 2092.51070022583, + "relativeCreated": 2455.437183380127, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread" } ], - "msecs": 767.3263549804688, + "msecs": 606.0864925384521, "msg": "Filecompare for rotated_image_none.jpg is correct (Content %s and Type is %s).", "name": "__tLogger__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 2092.5681591033936, + "relativeCreated": 2455.494165420532, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread", - "time_consumption": 5.745887756347656e-05 + "time_consumption": 5.698204040527344e-05 }, { "args": [ "True", "" ], - "asctime": "2020-08-29 20:16:26,017", - "created": 1598724986.0178902, + "asctime": "2021-01-14 00:59:09,848", + "created": 1610582349.8489134, "exc_info": null, "exc_text": null, "filename": "test.py", "funcName": "equivalency_chk", "levelname": "INFO", "levelno": 20, - "lineno": 142, + "lineno": 144, "message": "Filecompare for rotated_image_6.jpg is correct (Content True and Type is ).", "module": "test", "moduleLogger": [ @@ -1648,8 +1442,8 @@ "args": [ "6" ], - "asctime": "2020-08-29 20:16:25,767", - "created": 1598724985.7674189, + "asctime": "2021-01-14 00:59:09,606", + "created": 1610582349.6061897, "exc_info": null, "exc_text": null, "filename": "test_image.py", @@ -1659,93 +1453,15 @@ "lineno": 78, "message": "Rotate with orientation 6", "module": "test_image", - "msecs": 767.4188613891602, + "msecs": 606.1897277832031, "msg": "Rotate with orientation %s", "name": "__unittest__", "pathname": "src/tests/test_image.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 2092.660665512085, + "relativeCreated": 2455.597400665283, "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, - { - "args": [ - "'/user_data/data/dirk/prj/unittest/media/unittest/input_data/image_exif_gps.jpg'" - ], - "asctime": "2020-08-29 20:16:25,897", - "created": 1598724985.897585, - "exc_info": null, - "exc_text": null, - "filename": "__init__.py", - "funcName": "load_from_file", - "levelname": "DEBUG", - "levelno": 10, - "lineno": 116, - "message": "loading image from '/user_data/data/dirk/prj/unittest/media/unittest/input_data/image_exif_gps.jpg'", - "module": "__init__", - "msecs": 897.5849151611328, - "msg": "loading image from %s", - "name": "MEDIA", - "pathname": "src/media/__init__.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 2222.8267192840576, - "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, - { - "args": [ - 270 - ], - "asctime": "2020-08-29 20:16:25,897", - "created": 1598724985.8977325, - "exc_info": null, - "exc_text": null, - "filename": "__init__.py", - "funcName": "rotate_by_orientation", - "levelname": "DEBUG", - "levelno": 10, - "lineno": 170, - "message": "Rotating picture by 270 (deg)", - "module": "__init__", - "msecs": 897.7324962615967, - "msg": "Rotating picture by %d (deg)", - "name": "MEDIA", - "pathname": "src/media/__init__.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 2222.9743003845215, - "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, - { - "args": [ - "'/user_data/data/dirk/prj/unittest/media/unittest/output_data/rotated_image_6.jpg'" - ], - "asctime": "2020-08-29 20:16:25,924", - "created": 1598724985.9245589, - "exc_info": null, - "exc_text": null, - "filename": "__init__.py", - "funcName": "save", - "levelname": "DEBUG", - "levelno": 10, - "lineno": 124, - "message": "Saving image to '/user_data/data/dirk/prj/unittest/media/unittest/output_data/rotated_image_6.jpg'", - "module": "__init__", - "msecs": 924.5588779449463, - "msg": "Saving image to %s", - "name": "MEDIA", - "pathname": "src/media/__init__.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 2249.800682067871, - "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread" }, { @@ -1754,8 +1470,8 @@ "True", "" ], - "asctime": "2020-08-29 20:16:26,017", - "created": 1598724986.017713, + "asctime": "2021-01-14 00:59:09,848", + "created": 1610582349.848767, "exc_info": null, "exc_text": null, "filename": "test.py", @@ -1765,15 +1481,15 @@ "lineno": 22, "message": "Result (Filecompare for rotated_image_6.jpg): True ()", "module": "test", - "msecs": 17.713069915771484, + "msecs": 848.7670421600342, "msg": "Result (%s): %s (%s)", "name": "__unittest__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 2342.9548740386963, + "relativeCreated": 2698.1747150421143, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread" }, { @@ -1782,8 +1498,8 @@ "True", "" ], - "asctime": "2020-08-29 20:16:26,017", - "created": 1598724986.017816, + "asctime": "2021-01-14 00:59:09,848", + "created": 1610582349.848868, "exc_info": null, "exc_text": null, "filename": "test.py", @@ -1793,44 +1509,44 @@ "lineno": 26, "message": "Expectation (Filecompare for rotated_image_6.jpg): result = True ()", "module": "test", - "msecs": 17.81606674194336, + "msecs": 848.8678932189941, "msg": "Expectation (%s): result = %s (%s)", "name": "__unittest__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 2343.057870864868, + "relativeCreated": 2698.275566101074, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread" } ], - "msecs": 17.890214920043945, + "msecs": 848.9134311676025, "msg": "Filecompare for rotated_image_6.jpg is correct (Content %s and Type is %s).", "name": "__tLogger__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 2343.1320190429688, + "relativeCreated": 2698.3211040496826, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread", - "time_consumption": 7.414817810058594e-05 + "time_consumption": 4.553794860839844e-05 }, { "args": [ "True", "" ], - "asctime": "2020-08-29 20:16:26,253", - "created": 1598724986.2535079, + "asctime": "2021-01-14 00:59:10,107", + "created": 1610582350.1071022, "exc_info": null, "exc_text": null, "filename": "test.py", "funcName": "equivalency_chk", "levelname": "INFO", "levelno": 20, - "lineno": 142, + "lineno": 144, "message": "Filecompare for rotated_image_8.jpg is correct (Content True and Type is ).", "module": "test", "moduleLogger": [ @@ -1838,8 +1554,8 @@ "args": [ "8" ], - "asctime": "2020-08-29 20:16:26,017", - "created": 1598724986.01799, + "asctime": "2021-01-14 00:59:09,849", + "created": 1610582349.8490083, "exc_info": null, "exc_text": null, "filename": "test_image.py", @@ -1849,93 +1565,15 @@ "lineno": 78, "message": "Rotate with orientation 8", "module": "test_image", - "msecs": 17.9901123046875, + "msecs": 849.008321762085, "msg": "Rotate with orientation %s", "name": "__unittest__", "pathname": "src/tests/test_image.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 2343.2319164276123, + "relativeCreated": 2698.415994644165, "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, - { - "args": [ - "'/user_data/data/dirk/prj/unittest/media/unittest/input_data/image_exif_gps.jpg'" - ], - "asctime": "2020-08-29 20:16:26,136", - "created": 1598724986.1362352, - "exc_info": null, - "exc_text": null, - "filename": "__init__.py", - "funcName": "load_from_file", - "levelname": "DEBUG", - "levelno": 10, - "lineno": 116, - "message": "loading image from '/user_data/data/dirk/prj/unittest/media/unittest/input_data/image_exif_gps.jpg'", - "module": "__init__", - "msecs": 136.23523712158203, - "msg": "loading image from %s", - "name": "MEDIA", - "pathname": "src/media/__init__.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 2461.477041244507, - "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, - { - "args": [ - 90 - ], - "asctime": "2020-08-29 20:16:26,136", - "created": 1598724986.136369, - "exc_info": null, - "exc_text": null, - "filename": "__init__.py", - "funcName": "rotate_by_orientation", - "levelname": "DEBUG", - "levelno": 10, - "lineno": 170, - "message": "Rotating picture by 90 (deg)", - "module": "__init__", - "msecs": 136.368989944458, - "msg": "Rotating picture by %d (deg)", - "name": "MEDIA", - "pathname": "src/media/__init__.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 2461.610794067383, - "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, - { - "args": [ - "'/user_data/data/dirk/prj/unittest/media/unittest/output_data/rotated_image_8.jpg'" - ], - "asctime": "2020-08-29 20:16:26,161", - "created": 1598724986.1614232, - "exc_info": null, - "exc_text": null, - "filename": "__init__.py", - "funcName": "save", - "levelname": "DEBUG", - "levelno": 10, - "lineno": 124, - "message": "Saving image to '/user_data/data/dirk/prj/unittest/media/unittest/output_data/rotated_image_8.jpg'", - "module": "__init__", - "msecs": 161.4232063293457, - "msg": "Saving image to %s", - "name": "MEDIA", - "pathname": "src/media/__init__.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 2486.6650104522705, - "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread" }, { @@ -1944,8 +1582,8 @@ "True", "" ], - "asctime": "2020-08-29 20:16:26,253", - "created": 1598724986.253373, + "asctime": "2021-01-14 00:59:10,106", + "created": 1610582350.1069353, "exc_info": null, "exc_text": null, "filename": "test.py", @@ -1955,15 +1593,15 @@ "lineno": 22, "message": "Result (Filecompare for rotated_image_8.jpg): True ()", "module": "test", - "msecs": 253.3729076385498, + "msecs": 106.93526268005371, "msg": "Result (%s): %s (%s)", "name": "__unittest__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 2578.6147117614746, + "relativeCreated": 2956.342935562134, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread" }, { @@ -1972,8 +1610,8 @@ "True", "" ], - "asctime": "2020-08-29 20:16:26,253", - "created": 1598724986.253462, + "asctime": "2021-01-14 00:59:10,107", + "created": 1610582350.1070468, "exc_info": null, "exc_text": null, "filename": "test.py", @@ -1983,44 +1621,44 @@ "lineno": 26, "message": "Expectation (Filecompare for rotated_image_8.jpg): result = True ()", "module": "test", - "msecs": 253.4620761871338, + "msecs": 107.04684257507324, "msg": "Expectation (%s): result = %s (%s)", "name": "__unittest__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 2578.7038803100586, + "relativeCreated": 2956.4545154571533, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread" } ], - "msecs": 253.5078525543213, + "msecs": 107.1021556854248, "msg": "Filecompare for rotated_image_8.jpg is correct (Content %s and Type is %s).", "name": "__tLogger__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 2578.749656677246, + "relativeCreated": 2956.509828567505, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread", - "time_consumption": 4.57763671875e-05 + "time_consumption": 5.53131103515625e-05 }, { "args": [ "True", "" ], - "asctime": "2020-08-29 20:16:26,494", - "created": 1598724986.4940457, + "asctime": "2021-01-14 00:59:10,342", + "created": 1610582350.3423116, "exc_info": null, "exc_text": null, "filename": "test.py", "funcName": "equivalency_chk", "levelname": "INFO", "levelno": 20, - "lineno": 142, + "lineno": 144, "message": "Filecompare for rotated_image_3.jpg is correct (Content True and Type is ).", "module": "test", "moduleLogger": [ @@ -2028,8 +1666,8 @@ "args": [ "3" ], - "asctime": "2020-08-29 20:16:26,253", - "created": 1598724986.2535877, + "asctime": "2021-01-14 00:59:10,107", + "created": 1610582350.1072028, "exc_info": null, "exc_text": null, "filename": "test_image.py", @@ -2039,93 +1677,15 @@ "lineno": 78, "message": "Rotate with orientation 3", "module": "test_image", - "msecs": 253.5877227783203, + "msecs": 107.20276832580566, "msg": "Rotate with orientation %s", "name": "__unittest__", "pathname": "src/tests/test_image.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 2578.829526901245, + "relativeCreated": 2956.6104412078857, "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, - { - "args": [ - "'/user_data/data/dirk/prj/unittest/media/unittest/input_data/image_exif_gps.jpg'" - ], - "asctime": "2020-08-29 20:16:26,375", - "created": 1598724986.3753185, - "exc_info": null, - "exc_text": null, - "filename": "__init__.py", - "funcName": "load_from_file", - "levelname": "DEBUG", - "levelno": 10, - "lineno": 116, - "message": "loading image from '/user_data/data/dirk/prj/unittest/media/unittest/input_data/image_exif_gps.jpg'", - "module": "__init__", - "msecs": 375.3185272216797, - "msg": "loading image from %s", - "name": "MEDIA", - "pathname": "src/media/__init__.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 2700.5603313446045, - "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, - { - "args": [ - 180 - ], - "asctime": "2020-08-29 20:16:26,375", - "created": 1598724986.3754554, - "exc_info": null, - "exc_text": null, - "filename": "__init__.py", - "funcName": "rotate_by_orientation", - "levelname": "DEBUG", - "levelno": 10, - "lineno": 170, - "message": "Rotating picture by 180 (deg)", - "module": "__init__", - "msecs": 375.455379486084, - "msg": "Rotating picture by %d (deg)", - "name": "MEDIA", - "pathname": "src/media/__init__.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 2700.697183609009, - "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, - { - "args": [ - "'/user_data/data/dirk/prj/unittest/media/unittest/output_data/rotated_image_3.jpg'" - ], - "asctime": "2020-08-29 20:16:26,395", - "created": 1598724986.3958564, - "exc_info": null, - "exc_text": null, - "filename": "__init__.py", - "funcName": "save", - "levelname": "DEBUG", - "levelno": 10, - "lineno": 124, - "message": "Saving image to '/user_data/data/dirk/prj/unittest/media/unittest/output_data/rotated_image_3.jpg'", - "module": "__init__", - "msecs": 395.8563804626465, - "msg": "Saving image to %s", - "name": "MEDIA", - "pathname": "src/media/__init__.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 2721.0981845855713, - "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread" }, { @@ -2134,8 +1694,8 @@ "True", "" ], - "asctime": "2020-08-29 20:16:26,493", - "created": 1598724986.493905, + "asctime": "2021-01-14 00:59:10,342", + "created": 1610582350.3420997, "exc_info": null, "exc_text": null, "filename": "test.py", @@ -2145,15 +1705,15 @@ "lineno": 22, "message": "Result (Filecompare for rotated_image_3.jpg): True ()", "module": "test", - "msecs": 493.90506744384766, + "msecs": 342.099666595459, "msg": "Result (%s): %s (%s)", "name": "__unittest__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 2819.1468715667725, + "relativeCreated": 3191.507339477539, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread" }, { @@ -2162,8 +1722,8 @@ "True", "" ], - "asctime": "2020-08-29 20:16:26,493", - "created": 1598724986.4939976, + "asctime": "2021-01-14 00:59:10,342", + "created": 1610582350.3422296, "exc_info": null, "exc_text": null, "filename": "test.py", @@ -2173,41 +1733,41 @@ "lineno": 26, "message": "Expectation (Filecompare for rotated_image_3.jpg): result = True ()", "module": "test", - "msecs": 493.99757385253906, + "msecs": 342.22960472106934, "msg": "Expectation (%s): result = %s (%s)", "name": "__unittest__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 2819.239377975464, + "relativeCreated": 3191.6372776031494, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread" } ], - "msecs": 494.0457344055176, + "msecs": 342.3116207122803, "msg": "Filecompare for rotated_image_3.jpg is correct (Content %s and Type is %s).", "name": "__tLogger__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 2819.2875385284424, + "relativeCreated": 3191.7192935943604, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread", - "time_consumption": 4.8160552978515625e-05 + "time_consumption": 8.20159912109375e-05 } ], - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread", - "time_consumption": 1.1732306480407715, - "time_finished": "2020-08-29 20:16:26,494", - "time_start": "2020-08-29 20:16:25,320" + "time_consumption": 1.2162737846374512, + "time_finished": "2021-01-14 00:59:10,342", + "time_start": "2021-01-14 00:59:09,126" }, "_CBaAQEYDEequ74M7usLaPw": { "args": null, - "asctime": "2020-08-29 20:16:26,496", - "created": 1598724986.4964466, + "asctime": "2021-01-14 00:59:10,344", + "created": 1610582350.3444724, "exc_info": null, "exc_text": null, "filename": "__init__.py", @@ -2218,13 +1778,13 @@ "message": "_CBaAQEYDEequ74M7usLaPw", "module": "__init__", "moduleLogger": [], - "msecs": 496.4466094970703, + "msecs": 344.47240829467773, "msg": "_CBaAQEYDEequ74M7usLaPw", "name": "__tLogger__", "pathname": "/user_data/data/dirk/prj/unittest/media/unittest/src/tests/__init__.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 2821.688413619995, + "relativeCreated": 3193.880081176758, "stack_info": null, "testcaseLogger": [ { @@ -2232,50 +1792,26 @@ "False", "" ], - "asctime": "2020-08-29 20:16:26,496", - "created": 1598724986.4967034, + "asctime": "2021-01-14 00:59:10,344", + "created": 1610582350.3447115, "exc_info": null, "exc_text": null, "filename": "test.py", "funcName": "equivalency_chk", "levelname": "INFO", "levelno": 20, - "lineno": 142, + "lineno": 144, "message": "Returnvalue of join method without loading an image is correct (Content False and Type is ).", "module": "test", "moduleLogger": [ - { - "args": [], - "asctime": "2020-08-29 20:16:26,496", - "created": 1598724986.4965696, - "exc_info": null, - "exc_text": null, - "filename": "__init__.py", - "funcName": "join", - "levelname": "WARNING", - "levelno": 30, - "lineno": 184, - "message": "No image available, joining not possible", - "module": "__init__", - "msecs": 496.5696334838867, - "msg": "No image available, joining not possible", - "name": "MEDIA", - "pathname": "src/media/__init__.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 2821.8114376068115, - "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, { "args": [ "Returnvalue of join method without loading an image", "False", "" ], - "asctime": "2020-08-29 20:16:26,496", - "created": 1598724986.4966226, + "asctime": "2021-01-14 00:59:10,344", + "created": 1610582350.3446014, "exc_info": null, "exc_text": null, "filename": "test.py", @@ -2285,15 +1821,15 @@ "lineno": 22, "message": "Result (Returnvalue of join method without loading an image): False ()", "module": "test", - "msecs": 496.62256240844727, + "msecs": 344.6013927459717, "msg": "Result (%s): %s (%s)", "name": "__unittest__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 2821.864366531372, + "relativeCreated": 3194.0090656280518, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread" }, { @@ -2302,8 +1838,8 @@ "False", "" ], - "asctime": "2020-08-29 20:16:26,496", - "created": 1598724986.4966648, + "asctime": "2021-01-14 00:59:10,344", + "created": 1610582350.3446612, "exc_info": null, "exc_text": null, "filename": "test.py", @@ -2313,107 +1849,55 @@ "lineno": 26, "message": "Expectation (Returnvalue of join method without loading an image): result = False ()", "module": "test", - "msecs": 496.66476249694824, + "msecs": 344.6612358093262, "msg": "Expectation (%s): result = %s (%s)", "name": "__unittest__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 2821.906566619873, + "relativeCreated": 3194.0689086914062, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread" } ], - "msecs": 496.7033863067627, + "msecs": 344.7115421295166, "msg": "Returnvalue of join method without loading an image is correct (Content %s and Type is %s).", "name": "__tLogger__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 2821.9451904296875, + "relativeCreated": 3194.1192150115967, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread", - "time_consumption": 3.8623809814453125e-05 + "time_consumption": 5.030632019042969e-05 }, { "args": [ "False", "" ], - "asctime": "2020-08-29 20:16:26,807", - "created": 1598724986.807811, + "asctime": "2021-01-14 00:59:10,679", + "created": 1610582350.6790338, "exc_info": null, "exc_text": null, "filename": "test.py", "funcName": "equivalency_chk", "levelname": "INFO", "levelno": 20, - "lineno": 142, + "lineno": 144, "message": "Returnvalue of join method with invalid join position is correct (Content False and Type is ).", "module": "test", "moduleLogger": [ - { - "args": [ - "'/user_data/data/dirk/prj/unittest/media/unittest/input_data/image_exif_gps.jpg'" - ], - "asctime": "2020-08-29 20:16:26,615", - "created": 1598724986.6151996, - "exc_info": null, - "exc_text": null, - "filename": "__init__.py", - "funcName": "load_from_file", - "levelname": "DEBUG", - "levelno": 10, - "lineno": 116, - "message": "loading image from '/user_data/data/dirk/prj/unittest/media/unittest/input_data/image_exif_gps.jpg'", - "module": "__init__", - "msecs": 615.1995658874512, - "msg": "loading image from %s", - "name": "MEDIA", - "pathname": "src/media/__init__.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 2940.441370010376, - "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, - { - "args": [ - 17 - ], - "asctime": "2020-08-29 20:16:26,807", - "created": 1598724986.8075213, - "exc_info": null, - "exc_text": null, - "filename": "__init__.py", - "funcName": "join", - "levelname": "WARNING", - "levelno": 30, - "lineno": 215, - "message": "Join position value 17 is not supported", - "module": "__init__", - "msecs": 807.5213432312012, - "msg": "Join position value %s is not supported", - "name": "MEDIA", - "pathname": "src/media/__init__.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 3132.763147354126, - "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, { "args": [ "Returnvalue of join method with invalid join position", "False", "" ], - "asctime": "2020-08-29 20:16:26,807", - "created": 1598724986.8076832, + "asctime": "2021-01-14 00:59:10,678", + "created": 1610582350.6788177, "exc_info": null, "exc_text": null, "filename": "test.py", @@ -2423,15 +1907,15 @@ "lineno": 22, "message": "Result (Returnvalue of join method with invalid join position): False ()", "module": "test", - "msecs": 807.6832294464111, + "msecs": 678.8177490234375, "msg": "Result (%s): %s (%s)", "name": "__unittest__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 3132.925033569336, + "relativeCreated": 3528.2254219055176, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread" }, { @@ -2440,8 +1924,8 @@ "False", "" ], - "asctime": "2020-08-29 20:16:26,807", - "created": 1598724986.8077536, + "asctime": "2021-01-14 00:59:10,678", + "created": 1610582350.6789567, "exc_info": null, "exc_text": null, "filename": "test.py", @@ -2451,131 +1935,55 @@ "lineno": 26, "message": "Expectation (Returnvalue of join method with invalid join position): result = False ()", "module": "test", - "msecs": 807.7535629272461, + "msecs": 678.9567470550537, "msg": "Expectation (%s): result = %s (%s)", "name": "__unittest__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 3132.995367050171, + "relativeCreated": 3528.364419937134, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread" } ], - "msecs": 807.8110218048096, + "msecs": 679.0337562561035, "msg": "Returnvalue of join method with invalid join position is correct (Content %s and Type is %s).", "name": "__tLogger__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 3133.0528259277344, + "relativeCreated": 3528.4414291381836, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread", - "time_consumption": 5.745887756347656e-05 + "time_consumption": 7.700920104980469e-05 }, { "args": [ "False", "" ], - "asctime": "2020-08-29 20:16:26,903", - "created": 1598724986.9033542, + "asctime": "2021-01-14 00:59:10,782", + "created": 1610582350.782479, "exc_info": null, "exc_text": null, "filename": "test.py", "funcName": "equivalency_chk", "levelname": "INFO", "levelno": 20, - "lineno": 142, + "lineno": 144, "message": "Returnvalue of join method with unknown join file is correct (Content False and Type is ).", "module": "test", "moduleLogger": [ - { - "args": [ - "'/user_data/data/dirk/prj/unittest/media/unittest/input_data/image_exif_gps.jpg'" - ], - "asctime": "2020-08-29 20:16:26,897", - "created": 1598724986.8977997, - "exc_info": null, - "exc_text": null, - "filename": "__init__.py", - "funcName": "load_from_file", - "levelname": "DEBUG", - "levelno": 10, - "lineno": 116, - "message": "loading image from '/user_data/data/dirk/prj/unittest/media/unittest/input_data/image_exif_gps.jpg'", - "module": "__init__", - "msecs": 897.7997303009033, - "msg": "loading image from %s", - "name": "MEDIA", - "pathname": "src/media/__init__.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 3223.041534423828, - "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, - { - "args": [], - "asctime": "2020-08-29 20:16:26,903", - "created": 1598724986.9030898, - "exc_info": null, - "exc_text": null, - "filename": "convert.py", - "funcName": "get_pil_image", - "levelname": "WARNING", - "levelno": 30, - "lineno": 35, - "message": "Instance type is not supported: ", - "module": "convert", - "msecs": 903.0897617340088, - "msg": "Instance type is not supported: ", - "name": "MEDIA", - "pathname": "src/media/convert.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 3228.3315658569336, - "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, - { - "args": [ - "None" - ], - "asctime": "2020-08-29 20:16:26,903", - "created": 1598724986.9031827, - "exc_info": null, - "exc_text": null, - "filename": "__init__.py", - "funcName": "join", - "levelname": "WARNING", - "levelno": 30, - "lineno": 190, - "message": "Image to be joined is not supported None", - "module": "__init__", - "msecs": 903.1827449798584, - "msg": "Image to be joined is not supported %s", - "name": "MEDIA", - "pathname": "src/media/__init__.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 3228.424549102783, - "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, { "args": [ "Returnvalue of join method with unknown join file", "False", "" ], - "asctime": "2020-08-29 20:16:26,903", - "created": 1598724986.9032598, + "asctime": "2021-01-14 00:59:10,782", + "created": 1610582350.7822797, "exc_info": null, "exc_text": null, "filename": "test.py", @@ -2585,15 +1993,15 @@ "lineno": 22, "message": "Result (Returnvalue of join method with unknown join file): False ()", "module": "test", - "msecs": 903.2597541809082, + "msecs": 782.2797298431396, "msg": "Result (%s): %s (%s)", "name": "__unittest__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 3228.501558303833, + "relativeCreated": 3631.6874027252197, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread" }, { @@ -2602,8 +2010,8 @@ "False", "" ], - "asctime": "2020-08-29 20:16:26,903", - "created": 1598724986.9033132, + "asctime": "2021-01-14 00:59:10,782", + "created": 1610582350.7824047, "exc_info": null, "exc_text": null, "filename": "test.py", @@ -2613,44 +2021,44 @@ "lineno": 26, "message": "Expectation (Returnvalue of join method with unknown join file): result = False ()", "module": "test", - "msecs": 903.313159942627, + "msecs": 782.4046611785889, "msg": "Expectation (%s): result = %s (%s)", "name": "__unittest__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 3228.5549640655518, + "relativeCreated": 3631.812334060669, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread" } ], - "msecs": 903.3541679382324, + "msecs": 782.4790477752686, "msg": "Returnvalue of join method with unknown join file is correct (Content %s and Type is %s).", "name": "__tLogger__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 3228.595972061157, + "relativeCreated": 3631.8867206573486, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread", - "time_consumption": 4.100799560546875e-05 + "time_consumption": 7.43865966796875e-05 }, { "args": [ "True", "" ], - "asctime": "2020-08-29 20:16:27,299", - "created": 1598724987.2997453, + "asctime": "2021-01-14 00:59:11,181", + "created": 1610582351.1814868, "exc_info": null, "exc_text": null, "filename": "test.py", "funcName": "equivalency_chk", "levelname": "INFO", "levelno": 20, - "lineno": 142, + "lineno": 144, "message": "Filecompare for joined_image_3.jpg is correct (Content True and Type is ).", "module": "test", "moduleLogger": [ @@ -2658,8 +2066,8 @@ "args": [ 3 ], - "asctime": "2020-08-29 20:16:26,903", - "created": 1598724986.9034326, + "asctime": "2021-01-14 00:59:10,782", + "created": 1610582350.7825966, "exc_info": null, "exc_text": null, "filename": "test_image.py", @@ -2669,143 +2077,15 @@ "lineno": 108, "message": "Join with position 3", "module": "test_image", - "msecs": 903.4326076507568, + "msecs": 782.5965881347656, "msg": "Join with position %d", "name": "__unittest__", "pathname": "src/tests/test_image.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 3228.6744117736816, + "relativeCreated": 3632.0042610168457, "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, - { - "args": [ - "'/user_data/data/dirk/prj/unittest/media/unittest/input_data/image_exif_gps.jpg'" - ], - "asctime": "2020-08-29 20:16:27,006", - "created": 1598724987.0061128, - "exc_info": null, - "exc_text": null, - "filename": "__init__.py", - "funcName": "load_from_file", - "levelname": "DEBUG", - "levelno": 10, - "lineno": 116, - "message": "loading image from '/user_data/data/dirk/prj/unittest/media/unittest/input_data/image_exif_gps.jpg'", - "module": "__init__", - "msecs": 6.112813949584961, - "msg": "loading image from %s", - "name": "MEDIA", - "pathname": "src/media/__init__.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 3331.3546180725098, - "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, - { - "args": [ - "'/user_data/data/dirk/prj/unittest/media/unittest/input_data/image_exif_no_gps.jpg'" - ], - "asctime": "2020-08-29 20:16:27,082", - "created": 1598724987.0829034, - "exc_info": null, - "exc_text": null, - "filename": "__init__.py", - "funcName": "load_from_file", - "levelname": "DEBUG", - "levelno": 10, - "lineno": 116, - "message": "loading image from '/user_data/data/dirk/prj/unittest/media/unittest/input_data/image_exif_no_gps.jpg'", - "module": "__init__", - "msecs": 82.90338516235352, - "msg": "loading image from %s", - "name": "MEDIA", - "pathname": "src/media/__init__.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 3408.1451892852783, - "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, - { - "args": [ - 300 - ], - "asctime": "2020-08-29 20:16:27,083", - "created": 1598724987.083052, - "exc_info": null, - "exc_text": null, - "filename": "__init__.py", - "funcName": "resize", - "levelname": "DEBUG", - "levelno": 10, - "lineno": 141, - "message": "Resizing picture to max 300 pixel in whatever direction", - "module": "__init__", - "msecs": 83.05191993713379, - "msg": "Resizing picture to max %d pixel in whatever direction", - "name": "MEDIA", - "pathname": "src/media/__init__.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 3408.2937240600586, - "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, - { - "args": [], - "asctime": "2020-08-29 20:16:27,140", - "created": 1598724987.1407158, - "exc_info": null, - "exc_text": null, - "filename": "__init__.py", - "funcName": "join", - "levelname": "DEBUG", - "levelno": 10, - "lineno": 218, - "message": "Joining two images", - "module": "__init__", - "msecs": 140.7158374786377, - "msg": "Joining two images", - "name": "MEDIA", - "pathname": "src/media/__init__.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 3465.9576416015625, - "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, - { - "args": [ - "'/user_data/data/dirk/prj/unittest/media/unittest/output_data/joined_image_3.jpg'" - ], - "asctime": "2020-08-29 20:16:27,216", - "created": 1598724987.216452, - "exc_info": null, - "exc_text": null, - "filename": "__init__.py", - "funcName": "save", - "levelname": "DEBUG", - "levelno": 10, - "lineno": 124, - "message": "Saving image to '/user_data/data/dirk/prj/unittest/media/unittest/output_data/joined_image_3.jpg'", - "module": "__init__", - "msecs": 216.45188331604004, - "msg": "Saving image to %s", - "name": "MEDIA", - "pathname": "src/media/__init__.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 3541.693687438965, - "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread" }, { @@ -2814,8 +2094,8 @@ "True", "" ], - "asctime": "2020-08-29 20:16:27,299", - "created": 1598724987.2995386, + "asctime": "2021-01-14 00:59:11,181", + "created": 1610582351.1812804, "exc_info": null, "exc_text": null, "filename": "test.py", @@ -2825,15 +2105,15 @@ "lineno": 22, "message": "Result (Filecompare for joined_image_3.jpg): True ()", "module": "test", - "msecs": 299.53861236572266, + "msecs": 181.28037452697754, "msg": "Result (%s): %s (%s)", "name": "__unittest__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 3624.7804164886475, + "relativeCreated": 4030.6880474090576, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread" }, { @@ -2842,8 +2122,8 @@ "True", "" ], - "asctime": "2020-08-29 20:16:27,299", - "created": 1598724987.299669, + "asctime": "2021-01-14 00:59:11,181", + "created": 1610582351.1814065, "exc_info": null, "exc_text": null, "filename": "test.py", @@ -2853,44 +2133,44 @@ "lineno": 26, "message": "Expectation (Filecompare for joined_image_3.jpg): result = True ()", "module": "test", - "msecs": 299.6690273284912, + "msecs": 181.40649795532227, "msg": "Expectation (%s): result = %s (%s)", "name": "__unittest__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 3624.910831451416, + "relativeCreated": 4030.8141708374023, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread" } ], - "msecs": 299.7453212738037, + "msecs": 181.4868450164795, "msg": "Filecompare for joined_image_3.jpg is correct (Content %s and Type is %s).", "name": "__tLogger__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 3624.9871253967285, + "relativeCreated": 4030.8945178985596, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread", - "time_consumption": 7.62939453125e-05 + "time_consumption": 8.034706115722656e-05 }, { "args": [ "True", "" ], - "asctime": "2020-08-29 20:16:27,674", - "created": 1598724987.6744325, + "asctime": "2021-01-14 00:59:11,579", + "created": 1610582351.5792327, "exc_info": null, "exc_text": null, "filename": "test.py", "funcName": "equivalency_chk", "levelname": "INFO", "levelno": 20, - "lineno": 142, + "lineno": 144, "message": "Filecompare for joined_image_4.jpg is correct (Content True and Type is ).", "module": "test", "moduleLogger": [ @@ -2898,8 +2178,8 @@ "args": [ 4 ], - "asctime": "2020-08-29 20:16:27,299", - "created": 1598724987.299868, + "asctime": "2021-01-14 00:59:11,181", + "created": 1610582351.1816049, "exc_info": null, "exc_text": null, "filename": "test_image.py", @@ -2909,143 +2189,15 @@ "lineno": 108, "message": "Join with position 4", "module": "test_image", - "msecs": 299.868106842041, + "msecs": 181.60486221313477, "msg": "Join with position %d", "name": "__unittest__", "pathname": "src/tests/test_image.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 3625.109910964966, + "relativeCreated": 4031.012535095215, "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, - { - "args": [ - "'/user_data/data/dirk/prj/unittest/media/unittest/input_data/image_exif_gps.jpg'" - ], - "asctime": "2020-08-29 20:16:27,390", - "created": 1598724987.3901384, - "exc_info": null, - "exc_text": null, - "filename": "__init__.py", - "funcName": "load_from_file", - "levelname": "DEBUG", - "levelno": 10, - "lineno": 116, - "message": "loading image from '/user_data/data/dirk/prj/unittest/media/unittest/input_data/image_exif_gps.jpg'", - "module": "__init__", - "msecs": 390.1383876800537, - "msg": "loading image from %s", - "name": "MEDIA", - "pathname": "src/media/__init__.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 3715.3801918029785, - "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, - { - "args": [ - "'/user_data/data/dirk/prj/unittest/media/unittest/input_data/image_exif_no_gps.jpg'" - ], - "asctime": "2020-08-29 20:16:27,482", - "created": 1598724987.4822626, - "exc_info": null, - "exc_text": null, - "filename": "__init__.py", - "funcName": "load_from_file", - "levelname": "DEBUG", - "levelno": 10, - "lineno": 116, - "message": "loading image from '/user_data/data/dirk/prj/unittest/media/unittest/input_data/image_exif_no_gps.jpg'", - "module": "__init__", - "msecs": 482.26261138916016, - "msg": "loading image from %s", - "name": "MEDIA", - "pathname": "src/media/__init__.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 3807.504415512085, - "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, - { - "args": [ - 300 - ], - "asctime": "2020-08-29 20:16:27,482", - "created": 1598724987.4823756, - "exc_info": null, - "exc_text": null, - "filename": "__init__.py", - "funcName": "resize", - "levelname": "DEBUG", - "levelno": 10, - "lineno": 141, - "message": "Resizing picture to max 300 pixel in whatever direction", - "module": "__init__", - "msecs": 482.3756217956543, - "msg": "Resizing picture to max %d pixel in whatever direction", - "name": "MEDIA", - "pathname": "src/media/__init__.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 3807.617425918579, - "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, - { - "args": [], - "asctime": "2020-08-29 20:16:27,516", - "created": 1598724987.5160103, - "exc_info": null, - "exc_text": null, - "filename": "__init__.py", - "funcName": "join", - "levelname": "DEBUG", - "levelno": 10, - "lineno": 218, - "message": "Joining two images", - "module": "__init__", - "msecs": 516.0102844238281, - "msg": "Joining two images", - "name": "MEDIA", - "pathname": "src/media/__init__.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 3841.252088546753, - "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, - { - "args": [ - "'/user_data/data/dirk/prj/unittest/media/unittest/output_data/joined_image_4.jpg'" - ], - "asctime": "2020-08-29 20:16:27,591", - "created": 1598724987.5913615, - "exc_info": null, - "exc_text": null, - "filename": "__init__.py", - "funcName": "save", - "levelname": "DEBUG", - "levelno": 10, - "lineno": 124, - "message": "Saving image to '/user_data/data/dirk/prj/unittest/media/unittest/output_data/joined_image_4.jpg'", - "module": "__init__", - "msecs": 591.3615226745605, - "msg": "Saving image to %s", - "name": "MEDIA", - "pathname": "src/media/__init__.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 3916.6033267974854, - "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread" }, { @@ -3054,8 +2206,8 @@ "True", "" ], - "asctime": "2020-08-29 20:16:27,674", - "created": 1598724987.6742654, + "asctime": "2021-01-14 00:59:11,579", + "created": 1610582351.579027, "exc_info": null, "exc_text": null, "filename": "test.py", @@ -3065,15 +2217,15 @@ "lineno": 22, "message": "Result (Filecompare for joined_image_4.jpg): True ()", "module": "test", - "msecs": 674.2653846740723, + "msecs": 579.0269374847412, "msg": "Result (%s): %s (%s)", "name": "__unittest__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 3999.507188796997, + "relativeCreated": 4428.434610366821, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread" }, { @@ -3082,8 +2234,8 @@ "True", "" ], - "asctime": "2020-08-29 20:16:27,674", - "created": 1598724987.6743677, + "asctime": "2021-01-14 00:59:11,579", + "created": 1610582351.579152, "exc_info": null, "exc_text": null, "filename": "test.py", @@ -3093,44 +2245,44 @@ "lineno": 26, "message": "Expectation (Filecompare for joined_image_4.jpg): result = True ()", "module": "test", - "msecs": 674.3676662445068, + "msecs": 579.1521072387695, "msg": "Expectation (%s): result = %s (%s)", "name": "__unittest__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 3999.6094703674316, + "relativeCreated": 4428.55978012085, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread" } ], - "msecs": 674.4325160980225, + "msecs": 579.2326927185059, "msg": "Filecompare for joined_image_4.jpg is correct (Content %s and Type is %s).", "name": "__tLogger__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 3999.6743202209473, + "relativeCreated": 4428.640365600586, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread", - "time_consumption": 6.4849853515625e-05 + "time_consumption": 8.058547973632812e-05 }, { "args": [ "True", "" ], - "asctime": "2020-08-29 20:16:28,057", - "created": 1598724988.0578537, + "asctime": "2021-01-14 00:59:11,977", + "created": 1610582351.9778028, "exc_info": null, "exc_text": null, "filename": "test.py", "funcName": "equivalency_chk", "levelname": "INFO", "levelno": 20, - "lineno": 142, + "lineno": 144, "message": "Filecompare for joined_image_5.jpg is correct (Content True and Type is ).", "module": "test", "moduleLogger": [ @@ -3138,8 +2290,8 @@ "args": [ 5 ], - "asctime": "2020-08-29 20:16:27,674", - "created": 1598724987.6745703, + "asctime": "2021-01-14 00:59:11,579", + "created": 1610582351.5793498, "exc_info": null, "exc_text": null, "filename": "test_image.py", @@ -3149,143 +2301,15 @@ "lineno": 108, "message": "Join with position 5", "module": "test_image", - "msecs": 674.5703220367432, + "msecs": 579.3497562408447, "msg": "Join with position %d", "name": "__unittest__", "pathname": "src/tests/test_image.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 3999.812126159668, + "relativeCreated": 4428.757429122925, "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, - { - "args": [ - "'/user_data/data/dirk/prj/unittest/media/unittest/input_data/image_exif_gps.jpg'" - ], - "asctime": "2020-08-29 20:16:27,766", - "created": 1598724987.7668204, - "exc_info": null, - "exc_text": null, - "filename": "__init__.py", - "funcName": "load_from_file", - "levelname": "DEBUG", - "levelno": 10, - "lineno": 116, - "message": "loading image from '/user_data/data/dirk/prj/unittest/media/unittest/input_data/image_exif_gps.jpg'", - "module": "__init__", - "msecs": 766.8204307556152, - "msg": "loading image from %s", - "name": "MEDIA", - "pathname": "src/media/__init__.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 4092.06223487854, - "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, - { - "args": [ - "'/user_data/data/dirk/prj/unittest/media/unittest/input_data/image_exif_no_gps.jpg'" - ], - "asctime": "2020-08-29 20:16:27,853", - "created": 1598724987.8539672, - "exc_info": null, - "exc_text": null, - "filename": "__init__.py", - "funcName": "load_from_file", - "levelname": "DEBUG", - "levelno": 10, - "lineno": 116, - "message": "loading image from '/user_data/data/dirk/prj/unittest/media/unittest/input_data/image_exif_no_gps.jpg'", - "module": "__init__", - "msecs": 853.9671897888184, - "msg": "loading image from %s", - "name": "MEDIA", - "pathname": "src/media/__init__.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 4179.208993911743, - "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, - { - "args": [ - 300 - ], - "asctime": "2020-08-29 20:16:27,854", - "created": 1598724987.8540967, - "exc_info": null, - "exc_text": null, - "filename": "__init__.py", - "funcName": "resize", - "levelname": "DEBUG", - "levelno": 10, - "lineno": 141, - "message": "Resizing picture to max 300 pixel in whatever direction", - "module": "__init__", - "msecs": 854.0966510772705, - "msg": "Resizing picture to max %d pixel in whatever direction", - "name": "MEDIA", - "pathname": "src/media/__init__.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 4179.338455200195, - "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, - { - "args": [], - "asctime": "2020-08-29 20:16:27,899", - "created": 1598724987.8994653, - "exc_info": null, - "exc_text": null, - "filename": "__init__.py", - "funcName": "join", - "levelname": "DEBUG", - "levelno": 10, - "lineno": 218, - "message": "Joining two images", - "module": "__init__", - "msecs": 899.4653224945068, - "msg": "Joining two images", - "name": "MEDIA", - "pathname": "src/media/__init__.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 4224.707126617432, - "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, - { - "args": [ - "'/user_data/data/dirk/prj/unittest/media/unittest/output_data/joined_image_5.jpg'" - ], - "asctime": "2020-08-29 20:16:27,975", - "created": 1598724987.9752705, - "exc_info": null, - "exc_text": null, - "filename": "__init__.py", - "funcName": "save", - "levelname": "DEBUG", - "levelno": 10, - "lineno": 124, - "message": "Saving image to '/user_data/data/dirk/prj/unittest/media/unittest/output_data/joined_image_5.jpg'", - "module": "__init__", - "msecs": 975.2705097198486, - "msg": "Saving image to %s", - "name": "MEDIA", - "pathname": "src/media/__init__.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 4300.512313842773, - "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread" }, { @@ -3294,8 +2318,8 @@ "True", "" ], - "asctime": "2020-08-29 20:16:28,057", - "created": 1598724988.057687, + "asctime": "2021-01-14 00:59:11,977", + "created": 1610582351.9775925, "exc_info": null, "exc_text": null, "filename": "test.py", @@ -3305,15 +2329,15 @@ "lineno": 22, "message": "Result (Filecompare for joined_image_5.jpg): True ()", "module": "test", - "msecs": 57.68704414367676, + "msecs": 977.5924682617188, "msg": "Result (%s): %s (%s)", "name": "__unittest__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 4382.928848266602, + "relativeCreated": 4827.000141143799, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread" }, { @@ -3322,8 +2346,8 @@ "True", "" ], - "asctime": "2020-08-29 20:16:28,057", - "created": 1598724988.0577872, + "asctime": "2021-01-14 00:59:11,977", + "created": 1610582351.9777188, "exc_info": null, "exc_text": null, "filename": "test.py", @@ -3333,44 +2357,44 @@ "lineno": 26, "message": "Expectation (Filecompare for joined_image_5.jpg): result = True ()", "module": "test", - "msecs": 57.787179946899414, + "msecs": 977.7188301086426, "msg": "Expectation (%s): result = %s (%s)", "name": "__unittest__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 4383.028984069824, + "relativeCreated": 4827.126502990723, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread" } ], - "msecs": 57.85369873046875, + "msecs": 977.8027534484863, "msg": "Filecompare for joined_image_5.jpg is correct (Content %s and Type is %s).", "name": "__tLogger__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 4383.095502853394, + "relativeCreated": 4827.210426330566, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread", - "time_consumption": 6.651878356933594e-05 + "time_consumption": 8.392333984375e-05 }, { "args": [ "True", "" ], - "asctime": "2020-08-29 20:16:28,443", - "created": 1598724988.4436793, + "asctime": "2021-01-14 00:59:12,363", + "created": 1610582352.3639755, "exc_info": null, "exc_text": null, "filename": "test.py", "funcName": "equivalency_chk", "levelname": "INFO", "levelno": 20, - "lineno": 142, + "lineno": 144, "message": "Filecompare for joined_image_1.jpg is correct (Content True and Type is ).", "module": "test", "moduleLogger": [ @@ -3378,8 +2402,8 @@ "args": [ 1 ], - "asctime": "2020-08-29 20:16:28,057", - "created": 1598724988.0579515, + "asctime": "2021-01-14 00:59:11,977", + "created": 1610582351.977924, "exc_info": null, "exc_text": null, "filename": "test_image.py", @@ -3389,143 +2413,15 @@ "lineno": 108, "message": "Join with position 1", "module": "test_image", - "msecs": 57.95145034790039, + "msecs": 977.924108505249, "msg": "Join with position %d", "name": "__unittest__", "pathname": "src/tests/test_image.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 4383.193254470825, + "relativeCreated": 4827.331781387329, "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, - { - "args": [ - "'/user_data/data/dirk/prj/unittest/media/unittest/input_data/image_exif_gps.jpg'" - ], - "asctime": "2020-08-29 20:16:28,147", - "created": 1598724988.1474526, - "exc_info": null, - "exc_text": null, - "filename": "__init__.py", - "funcName": "load_from_file", - "levelname": "DEBUG", - "levelno": 10, - "lineno": 116, - "message": "loading image from '/user_data/data/dirk/prj/unittest/media/unittest/input_data/image_exif_gps.jpg'", - "module": "__init__", - "msecs": 147.45259284973145, - "msg": "loading image from %s", - "name": "MEDIA", - "pathname": "src/media/__init__.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 4472.694396972656, - "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, - { - "args": [ - "'/user_data/data/dirk/prj/unittest/media/unittest/input_data/image_exif_no_gps.jpg'" - ], - "asctime": "2020-08-29 20:16:28,239", - "created": 1598724988.2398481, - "exc_info": null, - "exc_text": null, - "filename": "__init__.py", - "funcName": "load_from_file", - "levelname": "DEBUG", - "levelno": 10, - "lineno": 116, - "message": "loading image from '/user_data/data/dirk/prj/unittest/media/unittest/input_data/image_exif_no_gps.jpg'", - "module": "__init__", - "msecs": 239.84813690185547, - "msg": "loading image from %s", - "name": "MEDIA", - "pathname": "src/media/__init__.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 4565.08994102478, - "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, - { - "args": [ - 300 - ], - "asctime": "2020-08-29 20:16:28,239", - "created": 1598724988.2399755, - "exc_info": null, - "exc_text": null, - "filename": "__init__.py", - "funcName": "resize", - "levelname": "DEBUG", - "levelno": 10, - "lineno": 141, - "message": "Resizing picture to max 300 pixel in whatever direction", - "module": "__init__", - "msecs": 239.9754524230957, - "msg": "Resizing picture to max %d pixel in whatever direction", - "name": "MEDIA", - "pathname": "src/media/__init__.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 4565.2172565460205, - "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, - { - "args": [], - "asctime": "2020-08-29 20:16:28,273", - "created": 1598724988.2737303, - "exc_info": null, - "exc_text": null, - "filename": "__init__.py", - "funcName": "join", - "levelname": "DEBUG", - "levelno": 10, - "lineno": 218, - "message": "Joining two images", - "module": "__init__", - "msecs": 273.7302780151367, - "msg": "Joining two images", - "name": "MEDIA", - "pathname": "src/media/__init__.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 4598.9720821380615, - "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, - { - "args": [ - "'/user_data/data/dirk/prj/unittest/media/unittest/output_data/joined_image_1.jpg'" - ], - "asctime": "2020-08-29 20:16:28,358", - "created": 1598724988.3588758, - "exc_info": null, - "exc_text": null, - "filename": "__init__.py", - "funcName": "save", - "levelname": "DEBUG", - "levelno": 10, - "lineno": 124, - "message": "Saving image to '/user_data/data/dirk/prj/unittest/media/unittest/output_data/joined_image_1.jpg'", - "module": "__init__", - "msecs": 358.8757514953613, - "msg": "Saving image to %s", - "name": "MEDIA", - "pathname": "src/media/__init__.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 4684.117555618286, - "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread" }, { @@ -3534,8 +2430,8 @@ "True", "" ], - "asctime": "2020-08-29 20:16:28,443", - "created": 1598724988.4435134, + "asctime": "2021-01-14 00:59:12,363", + "created": 1610582352.3632815, "exc_info": null, "exc_text": null, "filename": "test.py", @@ -3545,15 +2441,15 @@ "lineno": 22, "message": "Result (Filecompare for joined_image_1.jpg): True ()", "module": "test", - "msecs": 443.5133934020996, + "msecs": 363.2814884185791, "msg": "Result (%s): %s (%s)", "name": "__unittest__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 4768.755197525024, + "relativeCreated": 5212.689161300659, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread" }, { @@ -3562,8 +2458,8 @@ "True", "" ], - "asctime": "2020-08-29 20:16:28,443", - "created": 1598724988.4436097, + "asctime": "2021-01-14 00:59:12,363", + "created": 1610582352.3637047, "exc_info": null, "exc_text": null, "filename": "test.py", @@ -3573,44 +2469,44 @@ "lineno": 26, "message": "Expectation (Filecompare for joined_image_1.jpg): result = True ()", "module": "test", - "msecs": 443.60971450805664, + "msecs": 363.7046813964844, "msg": "Expectation (%s): result = %s (%s)", "name": "__unittest__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 4768.851518630981, + "relativeCreated": 5213.112354278564, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread" } ], - "msecs": 443.6793327331543, + "msecs": 363.97552490234375, "msg": "Filecompare for joined_image_1.jpg is correct (Content %s and Type is %s).", "name": "__tLogger__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 4768.921136856079, + "relativeCreated": 5213.383197784424, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread", - "time_consumption": 6.961822509765625e-05 + "time_consumption": 0.000270843505859375 }, { "args": [ "True", "" ], - "asctime": "2020-08-29 20:16:28,834", - "created": 1598724988.834673, + "asctime": "2021-01-14 00:59:12,767", + "created": 1610582352.7672386, "exc_info": null, "exc_text": null, "filename": "test.py", "funcName": "equivalency_chk", "levelname": "INFO", "levelno": 20, - "lineno": 142, + "lineno": 144, "message": "Filecompare for joined_image_2.jpg is correct (Content True and Type is ).", "module": "test", "moduleLogger": [ @@ -3618,8 +2514,8 @@ "args": [ 2 ], - "asctime": "2020-08-29 20:16:28,443", - "created": 1598724988.4437666, + "asctime": "2021-01-14 00:59:12,364", + "created": 1610582352.3643663, "exc_info": null, "exc_text": null, "filename": "test_image.py", @@ -3629,143 +2525,15 @@ "lineno": 108, "message": "Join with position 2", "module": "test_image", - "msecs": 443.76659393310547, + "msecs": 364.3662929534912, "msg": "Join with position %d", "name": "__unittest__", "pathname": "src/tests/test_image.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 4769.00839805603, + "relativeCreated": 5213.773965835571, "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, - { - "args": [ - "'/user_data/data/dirk/prj/unittest/media/unittest/input_data/image_exif_gps.jpg'" - ], - "asctime": "2020-08-29 20:16:28,537", - "created": 1598724988.5376134, - "exc_info": null, - "exc_text": null, - "filename": "__init__.py", - "funcName": "load_from_file", - "levelname": "DEBUG", - "levelno": 10, - "lineno": 116, - "message": "loading image from '/user_data/data/dirk/prj/unittest/media/unittest/input_data/image_exif_gps.jpg'", - "module": "__init__", - "msecs": 537.6133918762207, - "msg": "loading image from %s", - "name": "MEDIA", - "pathname": "src/media/__init__.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 4862.8551959991455, - "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, - { - "args": [ - "'/user_data/data/dirk/prj/unittest/media/unittest/input_data/image_exif_no_gps.jpg'" - ], - "asctime": "2020-08-29 20:16:28,631", - "created": 1598724988.631242, - "exc_info": null, - "exc_text": null, - "filename": "__init__.py", - "funcName": "load_from_file", - "levelname": "DEBUG", - "levelno": 10, - "lineno": 116, - "message": "loading image from '/user_data/data/dirk/prj/unittest/media/unittest/input_data/image_exif_no_gps.jpg'", - "module": "__init__", - "msecs": 631.242036819458, - "msg": "loading image from %s", - "name": "MEDIA", - "pathname": "src/media/__init__.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 4956.483840942383, - "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, - { - "args": [ - 300 - ], - "asctime": "2020-08-29 20:16:28,631", - "created": 1598724988.6313746, - "exc_info": null, - "exc_text": null, - "filename": "__init__.py", - "funcName": "resize", - "levelname": "DEBUG", - "levelno": 10, - "lineno": 141, - "message": "Resizing picture to max 300 pixel in whatever direction", - "module": "__init__", - "msecs": 631.3745975494385, - "msg": "Resizing picture to max %d pixel in whatever direction", - "name": "MEDIA", - "pathname": "src/media/__init__.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 4956.616401672363, - "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, - { - "args": [], - "asctime": "2020-08-29 20:16:28,676", - "created": 1598724988.6767, - "exc_info": null, - "exc_text": null, - "filename": "__init__.py", - "funcName": "join", - "levelname": "DEBUG", - "levelno": 10, - "lineno": 218, - "message": "Joining two images", - "module": "__init__", - "msecs": 676.7001152038574, - "msg": "Joining two images", - "name": "MEDIA", - "pathname": "src/media/__init__.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 5001.941919326782, - "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, - { - "args": [ - "'/user_data/data/dirk/prj/unittest/media/unittest/output_data/joined_image_2.jpg'" - ], - "asctime": "2020-08-29 20:16:28,752", - "created": 1598724988.752499, - "exc_info": null, - "exc_text": null, - "filename": "__init__.py", - "funcName": "save", - "levelname": "DEBUG", - "levelno": 10, - "lineno": 124, - "message": "Saving image to '/user_data/data/dirk/prj/unittest/media/unittest/output_data/joined_image_2.jpg'", - "module": "__init__", - "msecs": 752.4991035461426, - "msg": "Saving image to %s", - "name": "MEDIA", - "pathname": "src/media/__init__.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 5077.740907669067, - "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread" }, { @@ -3774,8 +2542,8 @@ "True", "" ], - "asctime": "2020-08-29 20:16:28,834", - "created": 1598724988.834509, + "asctime": "2021-01-14 00:59:12,767", + "created": 1610582352.767032, "exc_info": null, "exc_text": null, "filename": "test.py", @@ -3785,15 +2553,15 @@ "lineno": 22, "message": "Result (Filecompare for joined_image_2.jpg): True ()", "module": "test", - "msecs": 834.5088958740234, + "msecs": 767.0319080352783, "msg": "Result (%s): %s (%s)", "name": "__unittest__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 5159.750699996948, + "relativeCreated": 5616.439580917358, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread" }, { @@ -3802,8 +2570,8 @@ "True", "" ], - "asctime": "2020-08-29 20:16:28,834", - "created": 1598724988.8346083, + "asctime": "2021-01-14 00:59:12,767", + "created": 1610582352.7671578, "exc_info": null, "exc_text": null, "filename": "test.py", @@ -3813,41 +2581,41 @@ "lineno": 26, "message": "Expectation (Filecompare for joined_image_2.jpg): result = True ()", "module": "test", - "msecs": 834.6083164215088, + "msecs": 767.157793045044, "msg": "Expectation (%s): result = %s (%s)", "name": "__unittest__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 5159.850120544434, + "relativeCreated": 5616.565465927124, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread" } ], - "msecs": 834.6729278564453, + "msecs": 767.2386169433594, "msg": "Filecompare for joined_image_2.jpg is correct (Content %s and Type is %s).", "name": "__tLogger__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 5159.91473197937, + "relativeCreated": 5616.646289825439, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread", - "time_consumption": 6.461143493652344e-05 + "time_consumption": 8.082389831542969e-05 } ], - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread", - "time_consumption": 2.338226318359375, - "time_finished": "2020-08-29 20:16:28,834", - "time_start": "2020-08-29 20:16:26,496" + "time_consumption": 2.4227662086486816, + "time_finished": "2021-01-14 00:59:12,767", + "time_start": "2021-01-14 00:59:10,344" }, "_Fv7V4EYCEequ74M7usLaPw": { "args": null, - "asctime": "2020-08-29 20:16:24,270", - "created": 1598724984.270135, + "asctime": "2021-01-14 00:59:08,047", + "created": 1610582348.0477526, "exc_info": null, "exc_text": null, "filename": "__init__.py", @@ -3858,13 +2626,13 @@ "message": "_Fv7V4EYCEequ74M7usLaPw", "module": "__init__", "moduleLogger": [], - "msecs": 270.13492584228516, + "msecs": 47.75261878967285, "msg": "_Fv7V4EYCEequ74M7usLaPw", "name": "__tLogger__", "pathname": "/user_data/data/dirk/prj/unittest/media/unittest/src/tests/__init__.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 595.37672996521, + "relativeCreated": 897.1602916717529, "stack_info": null, "testcaseLogger": [ { @@ -3872,15 +2640,15 @@ "", "" ], - "asctime": "2020-08-29 20:16:24,270", - "created": 1598724984.2703419, + "asctime": "2021-01-14 00:59:08,047", + "created": 1610582348.0479505, "exc_info": null, "exc_text": null, "filename": "test.py", "funcName": "equivalency_chk", "levelname": "INFO", "levelno": 20, - "lineno": 142, + "lineno": 144, "message": "Type of image stored in instance, if no parameter is given is correct (Content and Type is ).", "module": "test", "moduleLogger": [ @@ -3890,8 +2658,8 @@ "", "" ], - "asctime": "2020-08-29 20:16:24,270", - "created": 1598724984.2702353, + "asctime": "2021-01-14 00:59:08,047", + "created": 1610582348.0478528, "exc_info": null, "exc_text": null, "filename": "test.py", @@ -3901,15 +2669,15 @@ "lineno": 22, "message": "Result (Type of image stored in instance, if no parameter is given): ()", "module": "test", - "msecs": 270.2353000640869, + "msecs": 47.85275459289551, "msg": "Result (%s): %s (%s)", "name": "__unittest__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 595.4771041870117, + "relativeCreated": 897.2604274749756, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread" }, { @@ -3918,8 +2686,8 @@ "", "" ], - "asctime": "2020-08-29 20:16:24,270", - "created": 1598724984.2702863, + "asctime": "2021-01-14 00:59:08,047", + "created": 1610582348.0479062, "exc_info": null, "exc_text": null, "filename": "test.py", @@ -3929,79 +2697,55 @@ "lineno": 26, "message": "Expectation (Type of image stored in instance, if no parameter is given): result = ()", "module": "test", - "msecs": 270.28632164001465, + "msecs": 47.90616035461426, "msg": "Expectation (%s): result = %s (%s)", "name": "__unittest__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 595.5281257629395, + "relativeCreated": 897.3138332366943, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread" } ], - "msecs": 270.3418731689453, + "msecs": 47.95050621032715, "msg": "Type of image stored in instance, if no parameter is given is correct (Content %s and Type is %s).", "name": "__tLogger__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 595.5836772918701, + "relativeCreated": 897.3581790924072, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread", - "time_consumption": 5.555152893066406e-05 + "time_consumption": 4.4345855712890625e-05 }, { "args": [ "", "" ], - "asctime": "2020-08-29 20:16:24,271", - "created": 1598724984.271136, + "asctime": "2021-01-14 00:59:08,049", + "created": 1610582348.0492098, "exc_info": null, "exc_text": null, "filename": "test.py", "funcName": "equivalency_chk", "levelname": "INFO", "levelno": 20, - "lineno": 142, + "lineno": 144, "message": "Type of image stored in instance, if a unsupported parameter is given is correct (Content and Type is ).", "module": "test", "moduleLogger": [ - { - "args": [], - "asctime": "2020-08-29 20:16:24,270", - "created": 1598724984.2709916, - "exc_info": null, - "exc_text": null, - "filename": "convert.py", - "funcName": "get_pil_image", - "levelname": "WARNING", - "levelno": 30, - "lineno": 35, - "message": "Instance type is not supported: ", - "module": "convert", - "msecs": 270.99156379699707, - "msg": "Instance type is not supported: ", - "name": "MEDIA", - "pathname": "src/media/convert.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 596.2333679199219, - "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, { "args": [ "Type of image stored in instance, if a unsupported parameter is given", "", "" ], - "asctime": "2020-08-29 20:16:24,271", - "created": 1598724984.2710512, + "asctime": "2021-01-14 00:59:08,049", + "created": 1610582348.0490592, "exc_info": null, "exc_text": null, "filename": "test.py", @@ -4011,15 +2755,15 @@ "lineno": 22, "message": "Result (Type of image stored in instance, if a unsupported parameter is given): ()", "module": "test", - "msecs": 271.05116844177246, + "msecs": 49.059152603149414, "msg": "Result (%s): %s (%s)", "name": "__unittest__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 596.2929725646973, + "relativeCreated": 898.4668254852295, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread" }, { @@ -4028,8 +2772,8 @@ "", "" ], - "asctime": "2020-08-29 20:16:24,271", - "created": 1598724984.2710943, + "asctime": "2021-01-14 00:59:08,049", + "created": 1610582348.04915, "exc_info": null, "exc_text": null, "filename": "test.py", @@ -4039,81 +2783,55 @@ "lineno": 26, "message": "Expectation (Type of image stored in instance, if a unsupported parameter is given): result = ()", "module": "test", - "msecs": 271.09432220458984, + "msecs": 49.14999008178711, "msg": "Expectation (%s): result = %s (%s)", "name": "__unittest__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 596.3361263275146, + "relativeCreated": 898.5576629638672, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread" } ], - "msecs": 271.1360454559326, + "msecs": 49.2098331451416, "msg": "Type of image stored in instance, if a unsupported parameter is given is correct (Content %s and Type is %s).", "name": "__tLogger__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 596.3778495788574, + "relativeCreated": 898.6175060272217, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread", - "time_consumption": 4.172325134277344e-05 + "time_consumption": 5.984306335449219e-05 }, { "args": [ "", "" ], - "asctime": "2020-08-29 20:16:24,271", - "created": 1598724984.271351, + "asctime": "2021-01-14 00:59:08,049", + "created": 1610582348.0494046, "exc_info": null, "exc_text": null, "filename": "test.py", "funcName": "equivalency_chk", "levelname": "INFO", "levelno": 20, - "lineno": 142, + "lineno": 144, "message": "Type of image stored in instance, if an unknown file is given is correct (Content and Type is ).", "module": "test", "moduleLogger": [ - { - "args": [ - "/user_data/data/dirk/prj/unittest/media/unittest/input_data/unknown.txt" - ], - "asctime": "2020-08-29 20:16:24,271", - "created": 1598724984.27122, - "exc_info": null, - "exc_text": null, - "filename": "convert.py", - "funcName": "get_pil_image", - "levelname": "WARNING", - "levelno": 30, - "lineno": 31, - "message": "Filetype is not supported (/user_data/data/dirk/prj/unittest/media/unittest/input_data/unknown.txt)", - "module": "convert", - "msecs": 271.21996879577637, - "msg": "Filetype is not supported (%s)", - "name": "MEDIA", - "pathname": "src/media/convert.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 596.4617729187012, - "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, { "args": [ "Type of image stored in instance, if an unknown file is given", "", "" ], - "asctime": "2020-08-29 20:16:24,271", - "created": 1598724984.271277, + "asctime": "2021-01-14 00:59:08,049", + "created": 1610582348.049317, "exc_info": null, "exc_text": null, "filename": "test.py", @@ -4123,15 +2841,15 @@ "lineno": 22, "message": "Result (Type of image stored in instance, if an unknown file is given): ()", "module": "test", - "msecs": 271.27695083618164, + "msecs": 49.3168830871582, "msg": "Result (%s): %s (%s)", "name": "__unittest__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 596.5187549591064, + "relativeCreated": 898.7245559692383, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread" }, { @@ -4140,8 +2858,8 @@ "", "" ], - "asctime": "2020-08-29 20:16:24,271", - "created": 1598724984.2713141, + "asctime": "2021-01-14 00:59:08,049", + "created": 1610582348.0493608, "exc_info": null, "exc_text": null, "filename": "test.py", @@ -4151,81 +2869,55 @@ "lineno": 26, "message": "Expectation (Type of image stored in instance, if an unknown file is given): result = ()", "module": "test", - "msecs": 271.3141441345215, + "msecs": 49.36075210571289, "msg": "Expectation (%s): result = %s (%s)", "name": "__unittest__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 596.5559482574463, + "relativeCreated": 898.768424987793, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread" } ], - "msecs": 271.3510990142822, + "msecs": 49.40462112426758, "msg": "Type of image stored in instance, if an unknown file is given is correct (Content %s and Type is %s).", "name": "__tLogger__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 596.592903137207, + "relativeCreated": 898.8122940063477, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread", - "time_consumption": 3.695487976074219e-05 + "time_consumption": 4.38690185546875e-05 }, { "args": [ "", "" ], - "asctime": "2020-08-29 20:16:24,398", - "created": 1598724984.3989742, + "asctime": "2021-01-14 00:59:08,183", + "created": 1610582348.1837945, "exc_info": null, "exc_text": null, "filename": "test.py", "funcName": "equivalency_chk", "levelname": "INFO", "levelno": 20, - "lineno": 142, + "lineno": 144, "message": "Type of image stored in instance, if a image file is given is correct (Content and Type is ).", "module": "test", "moduleLogger": [ - { - "args": [ - "'/user_data/data/dirk/prj/unittest/media/unittest/input_data/image_exif_gps.jpg'" - ], - "asctime": "2020-08-29 20:16:24,398", - "created": 1598724984.3987725, - "exc_info": null, - "exc_text": null, - "filename": "__init__.py", - "funcName": "load_from_file", - "levelname": "DEBUG", - "levelno": 10, - "lineno": 116, - "message": "loading image from '/user_data/data/dirk/prj/unittest/media/unittest/input_data/image_exif_gps.jpg'", - "module": "__init__", - "msecs": 398.7724781036377, - "msg": "loading image from %s", - "name": "MEDIA", - "pathname": "src/media/__init__.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 724.0142822265625, - "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, { "args": [ "Type of image stored in instance, if a image file is given", "", "" ], - "asctime": "2020-08-29 20:16:24,398", - "created": 1598724984.3988864, + "asctime": "2021-01-14 00:59:08,183", + "created": 1610582348.1835902, "exc_info": null, "exc_text": null, "filename": "test.py", @@ -4235,15 +2927,15 @@ "lineno": 22, "message": "Result (Type of image stored in instance, if a image file is given): ()", "module": "test", - "msecs": 398.88644218444824, + "msecs": 183.59017372131348, "msg": "Result (%s): %s (%s)", "name": "__unittest__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 724.128246307373, + "relativeCreated": 1032.9978466033936, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread" }, { @@ -4252,8 +2944,8 @@ "", "" ], - "asctime": "2020-08-29 20:16:24,398", - "created": 1598724984.398932, + "asctime": "2021-01-14 00:59:08,183", + "created": 1610582348.1837144, "exc_info": null, "exc_text": null, "filename": "test.py", @@ -4263,81 +2955,55 @@ "lineno": 26, "message": "Expectation (Type of image stored in instance, if a image file is given): result = ()", "module": "test", - "msecs": 398.93198013305664, + "msecs": 183.7143898010254, "msg": "Expectation (%s): result = %s (%s)", "name": "__unittest__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 724.1737842559814, + "relativeCreated": 1033.1220626831055, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread" } ], - "msecs": 398.9741802215576, + "msecs": 183.79449844360352, "msg": "Type of image stored in instance, if a image file is given is correct (Content %s and Type is %s).", "name": "__tLogger__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 724.2159843444824, + "relativeCreated": 1033.2021713256836, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread", - "time_consumption": 4.220008850097656e-05 + "time_consumption": 8.0108642578125e-05 }, { "args": [ "", "" ], - "asctime": "2020-08-29 20:16:24,688", - "created": 1598724984.6886597, + "asctime": "2021-01-14 00:59:08,490", + "created": 1610582348.4903991, "exc_info": null, "exc_text": null, "filename": "test.py", "funcName": "equivalency_chk", "levelname": "INFO", "levelno": 20, - "lineno": 142, + "lineno": 144, "message": "Type of image stored in instance, if a video file is given is correct (Content and Type is ).", "module": "test", "moduleLogger": [ - { - "args": [ - "'/user_data/data/dirk/prj/unittest/media/unittest/input_data/video.mp4'" - ], - "asctime": "2020-08-29 20:16:24,685", - "created": 1598724984.6859632, - "exc_info": null, - "exc_text": null, - "filename": "__init__.py", - "funcName": "load_from_file", - "levelname": "DEBUG", - "levelno": 10, - "lineno": 116, - "message": "loading image from '/user_data/data/dirk/prj/unittest/media/unittest/input_data/video.mp4'", - "module": "__init__", - "msecs": 685.9631538391113, - "msg": "loading image from %s", - "name": "MEDIA", - "pathname": "src/media/__init__.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 1011.2049579620361, - "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, { "args": [ "Type of image stored in instance, if a video file is given", "", "" ], - "asctime": "2020-08-29 20:16:24,688", - "created": 1598724984.6885176, + "asctime": "2021-01-14 00:59:08,490", + "created": 1610582348.4901507, "exc_info": null, "exc_text": null, "filename": "test.py", @@ -4347,15 +3013,15 @@ "lineno": 22, "message": "Result (Type of image stored in instance, if a video file is given): ()", "module": "test", - "msecs": 688.5175704956055, + "msecs": 490.15069007873535, "msg": "Result (%s): %s (%s)", "name": "__unittest__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 1013.7593746185303, + "relativeCreated": 1339.5583629608154, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread" }, { @@ -4364,8 +3030,8 @@ "", "" ], - "asctime": "2020-08-29 20:16:24,688", - "created": 1598724984.6886084, + "asctime": "2021-01-14 00:59:08,490", + "created": 1610582348.4903417, "exc_info": null, "exc_text": null, "filename": "test.py", @@ -4375,41 +3041,41 @@ "lineno": 26, "message": "Expectation (Type of image stored in instance, if a video file is given): result = ()", "module": "test", - "msecs": 688.6084079742432, + "msecs": 490.3416633605957, "msg": "Expectation (%s): result = %s (%s)", "name": "__unittest__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 1013.850212097168, + "relativeCreated": 1339.7493362426758, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread" } ], - "msecs": 688.65966796875, + "msecs": 490.3991222381592, "msg": "Type of image stored in instance, if a video file is given is correct (Content %s and Type is %s).", "name": "__tLogger__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 1013.9014720916748, + "relativeCreated": 1339.8067951202393, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread", - "time_consumption": 5.125999450683594e-05 + "time_consumption": 5.745887756347656e-05 } ], - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread", - "time_consumption": 0.41852474212646484, - "time_finished": "2020-08-29 20:16:24,688", - "time_start": "2020-08-29 20:16:24,270" + "time_consumption": 0.44264650344848633, + "time_finished": "2021-01-14 00:59:08,490", + "time_start": "2021-01-14 00:59:08,047" }, "_HGpRMEYCEequ74M7usLaPw": { "args": null, - "asctime": "2020-08-29 20:16:24,688", - "created": 1598724984.688876, + "asctime": "2021-01-14 00:59:08,490", + "created": 1610582348.4906275, "exc_info": null, "exc_text": null, "filename": "__init__.py", @@ -4420,13 +3086,13 @@ "message": "_HGpRMEYCEequ74M7usLaPw", "module": "__init__", "moduleLogger": [], - "msecs": 688.8759136199951, + "msecs": 490.6275272369385, "msg": "_HGpRMEYCEequ74M7usLaPw", "name": "__tLogger__", "pathname": "/user_data/data/dirk/prj/unittest/media/unittest/src/tests/__init__.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 1014.1177177429199, + "relativeCreated": 1340.0352001190186, "stack_info": null, "testcaseLogger": [ { @@ -4434,52 +3100,26 @@ "False", "" ], - "asctime": "2020-08-29 20:16:24,689", - "created": 1598724984.6890917, + "asctime": "2021-01-14 00:59:08,490", + "created": 1610582348.4908106, "exc_info": null, "exc_text": null, "filename": "test.py", "funcName": "equivalency_chk", "levelname": "INFO", "levelno": 20, - "lineno": 142, + "lineno": 144, "message": "Returnvalue of failed save method is correct (Content False and Type is ).", "module": "test", "moduleLogger": [ - { - "args": [ - "'/user_data/data/dirk/prj/unittest/media/unittest/output_data/saved_image.jpg'" - ], - "asctime": "2020-08-29 20:16:24,688", - "created": 1598724984.688961, - "exc_info": null, - "exc_text": null, - "filename": "__init__.py", - "funcName": "save", - "levelname": "WARNING", - "levelno": 30, - "lineno": 121, - "message": "No image available to be saved ('/user_data/data/dirk/prj/unittest/media/unittest/output_data/saved_image.jpg')", - "module": "__init__", - "msecs": 688.9610290527344, - "msg": "No image available to be saved (%s)", - "name": "MEDIA", - "pathname": "src/media/__init__.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 1014.2028331756592, - "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, { "args": [ "Returnvalue of failed save method", "False", "" ], - "asctime": "2020-08-29 20:16:24,689", - "created": 1598724984.6890109, + "asctime": "2021-01-14 00:59:08,490", + "created": 1610582348.4907305, "exc_info": null, "exc_text": null, "filename": "test.py", @@ -4489,15 +3129,15 @@ "lineno": 22, "message": "Result (Returnvalue of failed save method): False ()", "module": "test", - "msecs": 689.0108585357666, + "msecs": 490.73052406311035, "msg": "Result (%s): %s (%s)", "name": "__unittest__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 1014.2526626586914, + "relativeCreated": 1340.1381969451904, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread" }, { @@ -4506,8 +3146,8 @@ "False", "" ], - "asctime": "2020-08-29 20:16:24,689", - "created": 1598724984.6890538, + "asctime": "2021-01-14 00:59:08,490", + "created": 1610582348.4907727, "exc_info": null, "exc_text": null, "filename": "test.py", @@ -4517,27 +3157,27 @@ "lineno": 26, "message": "Expectation (Returnvalue of failed save method): result = False ()", "module": "test", - "msecs": 689.0537738800049, + "msecs": 490.7727241516113, "msg": "Expectation (%s): result = %s (%s)", "name": "__unittest__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 1014.2955780029297, + "relativeCreated": 1340.1803970336914, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread" } ], - "msecs": 689.091682434082, + "msecs": 490.8106327056885, "msg": "Returnvalue of failed save method is correct (Content %s and Type is %s).", "name": "__tLogger__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 1014.3334865570068, + "relativeCreated": 1340.2183055877686, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread", "time_consumption": 3.790855407714844e-05 }, @@ -4546,15 +3186,15 @@ "False", "" ], - "asctime": "2020-08-29 20:16:24,689", - "created": 1598724984.689255, + "asctime": "2021-01-14 00:59:08,490", + "created": 1610582348.490974, "exc_info": null, "exc_text": null, "filename": "test.py", "funcName": "equivalency_chk", "levelname": "INFO", "levelno": 20, - "lineno": 142, + "lineno": 144, "message": "Existance of saved file is correct (Content False and Type is ).", "module": "test", "moduleLogger": [ @@ -4564,8 +3204,8 @@ "False", "" ], - "asctime": "2020-08-29 20:16:24,689", - "created": 1598724984.6891768, + "asctime": "2021-01-14 00:59:08,490", + "created": 1610582348.4908984, "exc_info": null, "exc_text": null, "filename": "test.py", @@ -4575,15 +3215,15 @@ "lineno": 22, "message": "Result (Existance of saved file): False ()", "module": "test", - "msecs": 689.1767978668213, + "msecs": 490.89837074279785, "msg": "Result (%s): %s (%s)", "name": "__unittest__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 1014.4186019897461, + "relativeCreated": 1340.306043624878, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread" }, { @@ -4592,8 +3232,8 @@ "False", "" ], - "asctime": "2020-08-29 20:16:24,689", - "created": 1598724984.6892145, + "asctime": "2021-01-14 00:59:08,490", + "created": 1610582348.490939, "exc_info": null, "exc_text": null, "filename": "test.py", @@ -4603,107 +3243,55 @@ "lineno": 26, "message": "Expectation (Existance of saved file): result = False ()", "module": "test", - "msecs": 689.2144680023193, + "msecs": 490.9389019012451, "msg": "Expectation (%s): result = %s (%s)", "name": "__unittest__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 1014.4562721252441, + "relativeCreated": 1340.3465747833252, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread" } ], - "msecs": 689.2549991607666, + "msecs": 490.97394943237305, "msg": "Existance of saved file is correct (Content %s and Type is %s).", "name": "__tLogger__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 1014.4968032836914, + "relativeCreated": 1340.3816223144531, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread", - "time_consumption": 4.0531158447265625e-05 + "time_consumption": 3.504753112792969e-05 }, { "args": [ "True", "" ], - "asctime": "2020-08-29 20:16:24,990", - "created": 1598724984.9905941, + "asctime": "2021-01-14 00:59:08,797", + "created": 1610582348.7977319, "exc_info": null, "exc_text": null, "filename": "test.py", "funcName": "equivalency_chk", "levelname": "INFO", "levelno": 20, - "lineno": 142, + "lineno": 144, "message": "Returnvalue of successful save method is correct (Content True and Type is ).", "module": "test", "moduleLogger": [ - { - "args": [ - "'/user_data/data/dirk/prj/unittest/media/unittest/input_data/video.mp4'" - ], - "asctime": "2020-08-29 20:16:24,978", - "created": 1598724984.9781566, - "exc_info": null, - "exc_text": null, - "filename": "__init__.py", - "funcName": "load_from_file", - "levelname": "DEBUG", - "levelno": 10, - "lineno": 116, - "message": "loading image from '/user_data/data/dirk/prj/unittest/media/unittest/input_data/video.mp4'", - "module": "__init__", - "msecs": 978.156566619873, - "msg": "loading image from %s", - "name": "MEDIA", - "pathname": "src/media/__init__.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 1303.3983707427979, - "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, - { - "args": [ - "'/user_data/data/dirk/prj/unittest/media/unittest/output_data/saved_image.jpg'" - ], - "asctime": "2020-08-29 20:16:24,978", - "created": 1598724984.978379, - "exc_info": null, - "exc_text": null, - "filename": "__init__.py", - "funcName": "save", - "levelname": "DEBUG", - "levelno": 10, - "lineno": 124, - "message": "Saving image to '/user_data/data/dirk/prj/unittest/media/unittest/output_data/saved_image.jpg'", - "module": "__init__", - "msecs": 978.3790111541748, - "msg": "Saving image to %s", - "name": "MEDIA", - "pathname": "src/media/__init__.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 1303.6208152770996, - "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, { "args": [ "Returnvalue of successful save method", "True", "" ], - "asctime": "2020-08-29 20:16:24,990", - "created": 1598724984.9903424, + "asctime": "2021-01-14 00:59:08,797", + "created": 1610582348.7975059, "exc_info": null, "exc_text": null, "filename": "test.py", @@ -4713,15 +3301,15 @@ "lineno": 22, "message": "Result (Returnvalue of successful save method): True ()", "module": "test", - "msecs": 990.342378616333, + "msecs": 797.5058555603027, "msg": "Result (%s): %s (%s)", "name": "__unittest__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 1315.5841827392578, + "relativeCreated": 1646.9135284423828, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread" }, { @@ -4730,8 +3318,8 @@ "True", "" ], - "asctime": "2020-08-29 20:16:24,990", - "created": 1598724984.9904814, + "asctime": "2021-01-14 00:59:08,797", + "created": 1610582348.7976773, "exc_info": null, "exc_text": null, "filename": "test.py", @@ -4741,44 +3329,44 @@ "lineno": 26, "message": "Expectation (Returnvalue of successful save method): result = True ()", "module": "test", - "msecs": 990.4813766479492, + "msecs": 797.6772785186768, "msg": "Expectation (%s): result = %s (%s)", "name": "__unittest__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 1315.723180770874, + "relativeCreated": 1647.0849514007568, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread" } ], - "msecs": 990.5941486358643, + "msecs": 797.731876373291, "msg": "Returnvalue of successful save method is correct (Content %s and Type is %s).", "name": "__tLogger__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 1315.835952758789, + "relativeCreated": 1647.139549255371, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread", - "time_consumption": 0.00011277198791503906 + "time_consumption": 5.459785461425781e-05 }, { "args": [ "True", "" ], - "asctime": "2020-08-29 20:16:24,990", - "created": 1598724984.9908967, + "asctime": "2021-01-14 00:59:08,797", + "created": 1610582348.7979808, "exc_info": null, "exc_text": null, "filename": "test.py", "funcName": "equivalency_chk", "levelname": "INFO", "levelno": 20, - "lineno": 142, + "lineno": 144, "message": "Existance of saved file is correct (Content True and Type is ).", "module": "test", "moduleLogger": [ @@ -4788,8 +3376,8 @@ "True", "" ], - "asctime": "2020-08-29 20:16:24,990", - "created": 1598724984.990794, + "asctime": "2021-01-14 00:59:08,797", + "created": 1610582348.797903, "exc_info": null, "exc_text": null, "filename": "test.py", @@ -4799,15 +3387,15 @@ "lineno": 22, "message": "Result (Existance of saved file): True ()", "module": "test", - "msecs": 990.7939434051514, + "msecs": 797.9030609130859, "msg": "Result (%s): %s (%s)", "name": "__unittest__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 1316.0357475280762, + "relativeCreated": 1647.310733795166, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread" }, { @@ -4816,8 +3404,8 @@ "True", "" ], - "asctime": "2020-08-29 20:16:24,990", - "created": 1598724984.990849, + "asctime": "2021-01-14 00:59:08,797", + "created": 1610582348.797944, "exc_info": null, "exc_text": null, "filename": "test.py", @@ -4827,41 +3415,41 @@ "lineno": 26, "message": "Expectation (Existance of saved file): result = True ()", "module": "test", - "msecs": 990.8490180969238, + "msecs": 797.9440689086914, "msg": "Expectation (%s): result = %s (%s)", "name": "__unittest__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 1316.0908222198486, + "relativeCreated": 1647.3517417907715, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread" } ], - "msecs": 990.8967018127441, + "msecs": 797.980785369873, "msg": "Existance of saved file is correct (Content %s and Type is %s).", "name": "__tLogger__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 1316.138505935669, + "relativeCreated": 1647.3884582519531, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread", - "time_consumption": 4.76837158203125e-05 + "time_consumption": 3.6716461181640625e-05 } ], - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread", - "time_consumption": 0.302020788192749, - "time_finished": "2020-08-29 20:16:24,990", - "time_start": "2020-08-29 20:16:24,688" + "time_consumption": 0.30735325813293457, + "time_finished": "2021-01-14 00:59:08,797", + "time_start": "2021-01-14 00:59:08,490" }, "_XzMFcHYZEem_kd-7nxt1sg": { "args": null, - "asctime": "2020-08-29 20:16:23,740", - "created": 1598724983.7407093, + "asctime": "2021-01-14 00:59:07,299", + "created": 1610582347.2996862, "exc_info": null, "exc_text": null, "filename": "__init__.py", @@ -4872,13 +3460,13 @@ "message": "_XzMFcHYZEem_kd-7nxt1sg", "module": "__init__", "moduleLogger": [], - "msecs": 740.7093048095703, + "msecs": 299.6861934661865, "msg": "_XzMFcHYZEem_kd-7nxt1sg", "name": "__tLogger__", "pathname": "/user_data/data/dirk/prj/unittest/media/unittest/src/tests/__init__.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 65.95110893249512, + "relativeCreated": 149.0938663482666, "stack_info": null, "testcaseLogger": [ { @@ -4886,52 +3474,26 @@ "None", "" ], - "asctime": "2020-08-29 20:16:23,741", - "created": 1598724983.7417858, + "asctime": "2021-01-14 00:59:07,303", + "created": 1610582347.3030055, "exc_info": null, "exc_text": null, "filename": "test.py", "funcName": "equivalency_chk", "levelname": "INFO", "levelno": 20, - "lineno": 142, + "lineno": 144, "message": "Media data for unknown.txt is correct (Content None and Type is ).", "module": "test", "moduleLogger": [ - { - "args": [ - "/user_data/data/dirk/prj/unittest/media/unittest/input_data/unknown.txt" - ], - "asctime": "2020-08-29 20:16:23,741", - "created": 1598724983.7415698, - "exc_info": null, - "exc_text": null, - "filename": "__init__.py", - "funcName": "get_media_data", - "levelname": "WARNING", - "levelno": 30, - "lineno": 80, - "message": "Filetype not known: /user_data/data/dirk/prj/unittest/media/unittest/input_data/unknown.txt", - "module": "__init__", - "msecs": 741.5697574615479, - "msg": "Filetype not known: %s", - "name": "MEDIA", - "pathname": "src/media/__init__.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 66.81156158447266, - "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, { "args": [ "Media data for unknown.txt", "None", "" ], - "asctime": "2020-08-29 20:16:23,741", - "created": 1598724983.7416942, + "asctime": "2021-01-14 00:59:07,302", + "created": 1610582347.302882, "exc_info": null, "exc_text": null, "filename": "test.py", @@ -4941,15 +3503,15 @@ "lineno": 22, "message": "Result (Media data for unknown.txt): None ()", "module": "test", - "msecs": 741.6942119598389, + "msecs": 302.88195610046387, "msg": "Result (%s): %s (%s)", "name": "__unittest__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 66.93601608276367, + "relativeCreated": 152.28962898254395, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread" }, { @@ -4958,8 +3520,8 @@ "None", "" ], - "asctime": "2020-08-29 20:16:23,741", - "created": 1598724983.7417388, + "asctime": "2021-01-14 00:59:07,302", + "created": 1610582347.302956, "exc_info": null, "exc_text": null, "filename": "test.py", @@ -4969,44 +3531,44 @@ "lineno": 26, "message": "Expectation (Media data for unknown.txt): result = None ()", "module": "test", - "msecs": 741.7387962341309, + "msecs": 302.95610427856445, "msg": "Expectation (%s): result = %s (%s)", "name": "__unittest__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 66.98060035705566, + "relativeCreated": 152.36377716064453, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread" } ], - "msecs": 741.7857646942139, + "msecs": 303.0054569244385, "msg": "Media data for unknown.txt is correct (Content %s and Type is %s).", "name": "__tLogger__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 67.02756881713867, + "relativeCreated": 152.41312980651855, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread", - "time_consumption": 4.696846008300781e-05 + "time_consumption": 4.935264587402344e-05 }, { "args": [ "{'duration': 236.094694, 'bitrate': 290743, 'artist': 'Kaleo', 'title': 'No Good', 'album': 'A/B', 'track': 1, 'genre': 'Rock', 'year': 2016, 'size': 8580366, 'time': 1451606398, 'tm_is_subst': True}", "" ], - "asctime": "2020-08-29 20:16:23,828", - "created": 1598724983.828124, + "asctime": "2021-01-14 00:59:07,559", + "created": 1610582347.559403, "exc_info": null, "exc_text": null, "filename": "test.py", "funcName": "equivalency_chk", "levelname": "INFO", "levelno": 20, - "lineno": 142, + "lineno": 144, "message": "Media data for audio.mp3 is correct (Content {'duration': 236.094694, 'bitrate': 290743, 'artist': 'Kaleo', 'title': 'No Good', 'album': 'A/B', 'track': 1, 'genre': 'Rock', 'year': 2016, 'size': 8580366, 'time': 1451606398, 'tm_is_subst': True} and Type is ).", "module": "test", "moduleLogger": [ @@ -5016,8 +3578,8 @@ "{ 'duration': 236.094694, 'bitrate': 290743, 'artist': 'Kaleo', 'title': 'No Good', 'album': 'A/B', 'track': 1, 'genre': 'Rock', 'year': 2016, 'size': 8580366, 'time': 1451606398, 'tm_is_subst': True }", "" ], - "asctime": "2020-08-29 20:16:23,827", - "created": 1598724983.8278549, + "asctime": "2021-01-14 00:59:07,558", + "created": 1610582347.5584264, "exc_info": null, "exc_text": null, "filename": "test.py", @@ -5027,15 +3589,15 @@ "lineno": 22, "message": "Result (Media data for audio.mp3): { 'duration': 236.094694, 'bitrate': 290743, 'artist': 'Kaleo', 'title': 'No Good', 'album': 'A/B', 'track': 1, 'genre': 'Rock', 'year': 2016, 'size': 8580366, 'time': 1451606398, 'tm_is_subst': True } ()", "module": "test", - "msecs": 827.8548717498779, + "msecs": 558.4263801574707, "msg": "Result (%s): %s (%s)", "name": "__unittest__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 153.09667587280273, + "relativeCreated": 407.8340530395508, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread" }, { @@ -5044,8 +3606,8 @@ "{ 'duration': 236.094694, 'bitrate': 290743, 'artist': 'Kaleo', 'title': 'No Good', 'album': 'A/B', 'track': 1, 'genre': 'Rock', 'year': 2016, 'time': 1451606398, 'tm_is_subst': True, 'size': 8580366 }", "" ], - "asctime": "2020-08-29 20:16:23,828", - "created": 1598724983.828032, + "asctime": "2021-01-14 00:59:07,559", + "created": 1610582347.5590284, "exc_info": null, "exc_text": null, "filename": "test.py", @@ -5055,44 +3617,44 @@ "lineno": 26, "message": "Expectation (Media data for audio.mp3): result = { 'duration': 236.094694, 'bitrate': 290743, 'artist': 'Kaleo', 'title': 'No Good', 'album': 'A/B', 'track': 1, 'genre': 'Rock', 'year': 2016, 'time': 1451606398, 'tm_is_subst': True, 'size': 8580366 } ()", "module": "test", - "msecs": 828.0320167541504, + "msecs": 559.0283870697021, "msg": "Expectation (%s): result = %s (%s)", "name": "__unittest__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 153.2738208770752, + "relativeCreated": 408.4360599517822, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread" } ], - "msecs": 828.1240463256836, + "msecs": 559.4029426574707, "msg": "Media data for audio.mp3 is correct (Content %s and Type is %s).", "name": "__tLogger__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 153.3658504486084, + "relativeCreated": 408.8106155395508, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread", - "time_consumption": 9.202957153320312e-05 + "time_consumption": 0.0003745555877685547 }, { "args": [ "{'duration': 281.991837, 'bitrate': 228298, 'title': 'Video Games (Album Version Remastered)', 'artist': 'Lana Del Rey', 'album': 'Born To Die', 'genre': 'Pop', 'track': 4, 'year': 2012, 'size': 8047290, 'time': 1325375995, 'tm_is_subst': True}", "" ], - "asctime": "2020-08-29 20:16:23,892", - "created": 1598724983.8925233, + "asctime": "2021-01-14 00:59:07,631", + "created": 1610582347.6315823, "exc_info": null, "exc_text": null, "filename": "test.py", "funcName": "equivalency_chk", "levelname": "INFO", "levelno": 20, - "lineno": 142, + "lineno": 144, "message": "Media data for audio_fail_conv.mp3 is correct (Content {'duration': 281.991837, 'bitrate': 228298, 'title': 'Video Games (Album Version Remastered)', 'artist': 'Lana Del Rey', 'album': 'Born To Die', 'genre': 'Pop', 'track': 4, 'year': 2012, 'size': 8047290, 'time': 1325375995, 'tm_is_subst': True} and Type is ).", "module": "test", "moduleLogger": [ @@ -5102,8 +3664,8 @@ "{ 'duration': 281.991837, 'bitrate': 228298, 'title': 'Video Games (Album Version Remastered)', 'artist': 'Lana Del Rey', 'album': 'Born To Die', 'genre': 'Pop', 'track': 4, 'year': 2012, 'size': 8047290, 'time': 1325375995, 'tm_is_subst': True }", "" ], - "asctime": "2020-08-29 20:16:23,892", - "created": 1598724983.8922608, + "asctime": "2021-01-14 00:59:07,631", + "created": 1610582347.6312685, "exc_info": null, "exc_text": null, "filename": "test.py", @@ -5113,15 +3675,15 @@ "lineno": 22, "message": "Result (Media data for audio_fail_conv.mp3): { 'duration': 281.991837, 'bitrate': 228298, 'title': 'Video Games (Album Version Remastered)', 'artist': 'Lana Del Rey', 'album': 'Born To Die', 'genre': 'Pop', 'track': 4, 'year': 2012, 'size': 8047290, 'time': 1325375995, 'tm_is_subst': True } ()", "module": "test", - "msecs": 892.2607898712158, + "msecs": 631.2685012817383, "msg": "Result (%s): %s (%s)", "name": "__unittest__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 217.50259399414062, + "relativeCreated": 480.67617416381836, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread" }, { @@ -5130,8 +3692,8 @@ "{ 'duration': 281.991837, 'bitrate': 228298, 'artist': 'Lana Del Rey', 'title': 'Video Games (Album Version Remastered)', 'album': 'Born To Die', 'track': 4, 'genre': 'Pop', 'year': 2012, 'time': 1325375995, 'tm_is_subst': True, 'size': 8047290 }", "" ], - "asctime": "2020-08-29 20:16:23,892", - "created": 1598724983.8924286, + "asctime": "2021-01-14 00:59:07,631", + "created": 1610582347.6314664, "exc_info": null, "exc_text": null, "filename": "test.py", @@ -5141,44 +3703,44 @@ "lineno": 26, "message": "Expectation (Media data for audio_fail_conv.mp3): result = { 'duration': 281.991837, 'bitrate': 228298, 'artist': 'Lana Del Rey', 'title': 'Video Games (Album Version Remastered)', 'album': 'Born To Die', 'track': 4, 'genre': 'Pop', 'year': 2012, 'time': 1325375995, 'tm_is_subst': True, 'size': 8047290 } ()", "module": "test", - "msecs": 892.4286365509033, + "msecs": 631.4663887023926, "msg": "Expectation (%s): result = %s (%s)", "name": "__unittest__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 217.67044067382812, + "relativeCreated": 480.87406158447266, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread" } ], - "msecs": 892.5232887268066, + "msecs": 631.5822601318359, "msg": "Media data for audio_fail_conv.mp3 is correct (Content %s and Type is %s).", "name": "__tLogger__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 217.76509284973145, + "relativeCreated": 480.989933013916, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread", - "time_consumption": 9.465217590332031e-05 + "time_consumption": 0.00011587142944335938 }, { "args": [ "{'duration': 120.476735, 'bitrate': 240202, 'title': 'Was bringt der Dezember', 'artist': 'Rolf und seine Freunde', 'album': 'Wir warten auf Weihnachten', 'year': 0, 'track': 9, 'genre': 'Other', 'size': 3617354}", "" ], - "asctime": "2020-08-29 20:16:23,942", - "created": 1598724983.9428732, + "asctime": "2021-01-14 00:59:07,684", + "created": 1610582347.6848571, "exc_info": null, "exc_text": null, "filename": "test.py", "funcName": "equivalency_chk", "levelname": "INFO", "levelno": 20, - "lineno": 142, + "lineno": 144, "message": "Media data for audio_year_0.mp3 is correct (Content {'duration': 120.476735, 'bitrate': 240202, 'title': 'Was bringt der Dezember', 'artist': 'Rolf und seine Freunde', 'album': 'Wir warten auf Weihnachten', 'year': 0, 'track': 9, 'genre': 'Other', 'size': 3617354} and Type is ).", "module": "test", "moduleLogger": [ @@ -5188,8 +3750,8 @@ "{ 'duration': 120.476735, 'bitrate': 240202, 'title': 'Was bringt der Dezember', 'artist': 'Rolf und seine Freunde', 'album': 'Wir warten auf Weihnachten', 'year': 0, 'track': 9, 'genre': 'Other', 'size': 3617354 }", "" ], - "asctime": "2020-08-29 20:16:23,942", - "created": 1598724983.9426157, + "asctime": "2021-01-14 00:59:07,684", + "created": 1610582347.6845403, "exc_info": null, "exc_text": null, "filename": "test.py", @@ -5199,15 +3761,15 @@ "lineno": 22, "message": "Result (Media data for audio_year_0.mp3): { 'duration': 120.476735, 'bitrate': 240202, 'title': 'Was bringt der Dezember', 'artist': 'Rolf und seine Freunde', 'album': 'Wir warten auf Weihnachten', 'year': 0, 'track': 9, 'genre': 'Other', 'size': 3617354 } ()", "module": "test", - "msecs": 942.6157474517822, + "msecs": 684.5402717590332, "msg": "Result (%s): %s (%s)", "name": "__unittest__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 267.85755157470703, + "relativeCreated": 533.9479446411133, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread" }, { @@ -5216,8 +3778,8 @@ "{ 'duration': 120.476735, 'bitrate': 240202, 'artist': 'Rolf und seine Freunde', 'title': 'Was bringt der Dezember', 'album': 'Wir warten auf Weihnachten', 'track': 9, 'genre': 'Other', 'year': 0, 'size': 3617354 }", "" ], - "asctime": "2020-08-29 20:16:23,942", - "created": 1598724983.9427845, + "asctime": "2021-01-14 00:59:07,684", + "created": 1610582347.684745, "exc_info": null, "exc_text": null, "filename": "test.py", @@ -5227,406 +3789,55 @@ "lineno": 26, "message": "Expectation (Media data for audio_year_0.mp3): result = { 'duration': 120.476735, 'bitrate': 240202, 'artist': 'Rolf und seine Freunde', 'title': 'Was bringt der Dezember', 'album': 'Wir warten auf Weihnachten', 'track': 9, 'genre': 'Other', 'year': 0, 'size': 3617354 } ()", "module": "test", - "msecs": 942.7845478057861, + "msecs": 684.7450733184814, "msg": "Expectation (%s): result = %s (%s)", "name": "__unittest__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 268.02635192871094, + "relativeCreated": 534.1527462005615, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread" } ], - "msecs": 942.8732395172119, + "msecs": 684.8571300506592, "msg": "Media data for audio_year_0.mp3 is correct (Content %s and Type is %s).", "name": "__tLogger__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 268.1150436401367, + "relativeCreated": 534.2648029327393, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread", - "time_consumption": 8.869171142578125e-05 + "time_consumption": 0.00011205673217773438 }, { "args": [ "{'time': 1560083621, 'exposure_program': 'Program Normal', 'exposure_time': 0.007633587786259542, 'flash': 'Off', 'aperture': 2.2, 'focal_length': 3.463, 'gps': {'lon': 11.574697, 'lat': 52.993599}, 'height': 3120, 'iso': 100, 'orientation': 6, 'width': 4160, 'size': 4524705, 'camera': 'motorola: motorola one'}", "" ], - "asctime": "2020-08-29 20:16:23,958", - "created": 1598724983.9588952, + "asctime": "2021-01-14 00:59:07,706", + "created": 1610582347.706319, "exc_info": null, "exc_text": null, "filename": "test.py", "funcName": "equivalency_chk", "levelname": "INFO", "levelno": 20, - "lineno": 142, + "lineno": 144, "message": "Media data for image_exif_gps.jpg is correct (Content {'time': 1560083621, 'exposure_program': 'Program Normal', 'exposure_time': 0.007633587786259542, 'flash': 'Off', 'aperture': 2.2, 'focal_length': 3.463, 'gps': {'lon': 11.574697, 'lat': 52.993599}, 'height': 3120, 'iso': 100, 'orientation': 6, 'width': 4160, 'size': 4524705, 'camera': 'motorola: motorola one'} and Type is ).", "module": "test", "moduleLogger": [ - { - "args": [ - "time", - "'2019:06:09 14:33:41'" - ], - "asctime": "2020-08-29 20:16:23,955", - "created": 1598724983.9557693, - "exc_info": null, - "exc_text": null, - "filename": "metadata.py", - "funcName": "__get_exif_data__", - "levelname": "DEBUG", - "levelno": 10, - "lineno": 134, - "message": "Converting time out of '2019:06:09 14:33:41'", - "module": "metadata", - "msecs": 955.7693004608154, - "msg": "Converting %s out of %s", - "name": "MEDIA", - "pathname": "src/media/metadata.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 281.01110458374023, - "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, - { - "args": [ - "exposure_program", - "2" - ], - "asctime": "2020-08-29 20:16:23,958", - "created": 1598724983.958106, - "exc_info": null, - "exc_text": null, - "filename": "metadata.py", - "funcName": "__get_exif_data__", - "levelname": "DEBUG", - "levelno": 10, - "lineno": 134, - "message": "Converting exposure_program out of 2", - "module": "metadata", - "msecs": 958.1060409545898, - "msg": "Converting %s out of %s", - "name": "MEDIA", - "pathname": "src/media/metadata.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 283.34784507751465, - "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, - { - "args": [ - "exposure_time", - "(1, 131)" - ], - "asctime": "2020-08-29 20:16:23,958", - "created": 1598724983.9581742, - "exc_info": null, - "exc_text": null, - "filename": "metadata.py", - "funcName": "__get_exif_data__", - "levelname": "DEBUG", - "levelno": 10, - "lineno": 134, - "message": "Converting exposure_time out of (1, 131)", - "module": "metadata", - "msecs": 958.1742286682129, - "msg": "Converting %s out of %s", - "name": "MEDIA", - "pathname": "src/media/metadata.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 283.4160327911377, - "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, - { - "args": [ - "flash", - "16" - ], - "asctime": "2020-08-29 20:16:23,958", - "created": 1598724983.958222, - "exc_info": null, - "exc_text": null, - "filename": "metadata.py", - "funcName": "__get_exif_data__", - "levelname": "DEBUG", - "levelno": 10, - "lineno": 134, - "message": "Converting flash out of 16", - "module": "metadata", - "msecs": 958.2219123840332, - "msg": "Converting %s out of %s", - "name": "MEDIA", - "pathname": "src/media/metadata.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 283.463716506958, - "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, - { - "args": [ - "aperture", - "(22, 10)" - ], - "asctime": "2020-08-29 20:16:23,958", - "created": 1598724983.9582655, - "exc_info": null, - "exc_text": null, - "filename": "metadata.py", - "funcName": "__get_exif_data__", - "levelname": "DEBUG", - "levelno": 10, - "lineno": 134, - "message": "Converting aperture out of (22, 10)", - "module": "metadata", - "msecs": 958.2655429840088, - "msg": "Converting %s out of %s", - "name": "MEDIA", - "pathname": "src/media/metadata.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 283.5073471069336, - "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, - { - "args": [ - "focal_length", - "(3463, 1000)" - ], - "asctime": "2020-08-29 20:16:23,958", - "created": 1598724983.9583097, - "exc_info": null, - "exc_text": null, - "filename": "metadata.py", - "funcName": "__get_exif_data__", - "levelname": "DEBUG", - "levelno": 10, - "lineno": 134, - "message": "Converting focal_length out of (3463, 1000)", - "module": "metadata", - "msecs": 958.3096504211426, - "msg": "Converting %s out of %s", - "name": "MEDIA", - "pathname": "src/media/metadata.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 283.5514545440674, - "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, - { - "args": [ - "gps", - "{0: b'\\x02\\x02\\x00\\x00', 1: 'N', 2: ((52, 1), (59, 1), (369564, 10000)), 3: 'E', 4: ((11, 1), (34, 1), (289092, 10000)), 5: b'\\x01', 6: (49610, 1000), 7: ((12, 1), (33, 1), (39, 1)), 18: 'WGS-84', 27: 'ASCII\\x00\\x00\\x00GPS', 29: '2019:06:09'}" - ], - "asctime": "2020-08-29 20:16:23,958", - "created": 1598724983.9583626, - "exc_info": null, - "exc_text": null, - "filename": "metadata.py", - "funcName": "__get_exif_data__", - "levelname": "DEBUG", - "levelno": 10, - "lineno": 134, - "message": "Converting gps out of {0: b'\\x02\\x02\\x00\\x00', 1: 'N', 2: ((52, 1), (59, 1), (369564, 10000)), 3: 'E', 4: ((11, 1), (34, 1), (289092, 10000)), 5: b'\\x01', 6: (49610, 1000), 7: ((12, 1), (33, 1), (39, 1)), 18: 'WGS-84', 27: 'ASCII\\x00\\x00\\x00GPS', 29: '2019:06:09'}", - "module": "metadata", - "msecs": 958.3625793457031, - "msg": "Converting %s out of %s", - "name": "MEDIA", - "pathname": "src/media/metadata.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 283.60438346862793, - "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, - { - "args": [ - "height", - "3120" - ], - "asctime": "2020-08-29 20:16:23,958", - "created": 1598724983.9584196, - "exc_info": null, - "exc_text": null, - "filename": "metadata.py", - "funcName": "__get_exif_data__", - "levelname": "DEBUG", - "levelno": 10, - "lineno": 134, - "message": "Converting height out of 3120", - "module": "metadata", - "msecs": 958.4195613861084, - "msg": "Converting %s out of %s", - "name": "MEDIA", - "pathname": "src/media/metadata.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 283.6613655090332, - "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, - { - "args": [ - "iso", - "100" - ], - "asctime": "2020-08-29 20:16:23,958", - "created": 1598724983.958482, - "exc_info": null, - "exc_text": null, - "filename": "metadata.py", - "funcName": "__get_exif_data__", - "levelname": "DEBUG", - "levelno": 10, - "lineno": 134, - "message": "Converting iso out of 100", - "module": "metadata", - "msecs": 958.482027053833, - "msg": "Converting %s out of %s", - "name": "MEDIA", - "pathname": "src/media/metadata.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 283.7238311767578, - "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, - { - "args": [ - "camera_vendor", - "'motorola'" - ], - "asctime": "2020-08-29 20:16:23,958", - "created": 1598724983.9585314, - "exc_info": null, - "exc_text": null, - "filename": "metadata.py", - "funcName": "__get_exif_data__", - "levelname": "DEBUG", - "levelno": 10, - "lineno": 134, - "message": "Converting camera_vendor out of 'motorola'", - "module": "metadata", - "msecs": 958.531379699707, - "msg": "Converting %s out of %s", - "name": "MEDIA", - "pathname": "src/media/metadata.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 283.77318382263184, - "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, - { - "args": [ - "camera_model", - "'motorola one'" - ], - "asctime": "2020-08-29 20:16:23,958", - "created": 1598724983.9585671, - "exc_info": null, - "exc_text": null, - "filename": "metadata.py", - "funcName": "__get_exif_data__", - "levelname": "DEBUG", - "levelno": 10, - "lineno": 134, - "message": "Converting camera_model out of 'motorola one'", - "module": "metadata", - "msecs": 958.5671424865723, - "msg": "Converting %s out of %s", - "name": "MEDIA", - "pathname": "src/media/metadata.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 283.80894660949707, - "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, - { - "args": [ - "orientation", - "6" - ], - "asctime": "2020-08-29 20:16:23,958", - "created": 1598724983.9586012, - "exc_info": null, - "exc_text": null, - "filename": "metadata.py", - "funcName": "__get_exif_data__", - "levelname": "DEBUG", - "levelno": 10, - "lineno": 134, - "message": "Converting orientation out of 6", - "module": "metadata", - "msecs": 958.6012363433838, - "msg": "Converting %s out of %s", - "name": "MEDIA", - "pathname": "src/media/metadata.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 283.8430404663086, - "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, - { - "args": [ - "width", - "4160" - ], - "asctime": "2020-08-29 20:16:23,958", - "created": 1598724983.9586358, - "exc_info": null, - "exc_text": null, - "filename": "metadata.py", - "funcName": "__get_exif_data__", - "levelname": "DEBUG", - "levelno": 10, - "lineno": 134, - "message": "Converting width out of 4160", - "module": "metadata", - "msecs": 958.6358070373535, - "msg": "Converting %s out of %s", - "name": "MEDIA", - "pathname": "src/media/metadata.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 283.8776111602783, - "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, { "args": [ "Media data for image_exif_gps.jpg", "{ 'time': 1560083621, 'exposure_program': 'Program Normal', 'exposure_time': 0.007633587786259542, 'flash': 'Off', 'aperture': 2.2, 'focal_length': 3.463, 'gps': { 'lon': 11.574697, 'lat': 52.993599 }, 'height': 3120, 'iso': 100, 'orientation': 6, 'width': 4160, 'size': 4524705, 'camera': 'motorola: motorola one' }", "" ], - "asctime": "2020-08-29 20:16:23,958", - "created": 1598724983.9587524, + "asctime": "2021-01-14 00:59:07,706", + "created": 1610582347.7061121, "exc_info": null, "exc_text": null, "filename": "test.py", @@ -5636,15 +3847,15 @@ "lineno": 22, "message": "Result (Media data for image_exif_gps.jpg): { 'time': 1560083621, 'exposure_program': 'Program Normal', 'exposure_time': 0.007633587786259542, 'flash': 'Off', 'aperture': 2.2, 'focal_length': 3.463, 'gps': { 'lon': 11.574697, 'lat': 52.993599 }, 'height': 3120, 'iso': 100, 'orientation': 6, 'width': 4160, 'size': 4524705, 'camera': 'motorola: motorola one' } ()", "module": "test", - "msecs": 958.7523937225342, + "msecs": 706.1121463775635, "msg": "Result (%s): %s (%s)", "name": "__unittest__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 283.994197845459, + "relativeCreated": 555.5198192596436, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread" }, { @@ -5653,8 +3864,8 @@ "{ 'time': 1560083621, 'exposure_program': 'Program Normal', 'exposure_time': 0.007633587786259542, 'flash': 'Off', 'aperture': 2.2, 'focal_length': 3.463, 'gps': { 'lon': 11.574697, 'lat': 52.993599 }, 'height': 3120, 'iso': 100, 'orientation': 6, 'width': 4160, 'camera': 'motorola: motorola one', 'size': 4524705 }", "" ], - "asctime": "2020-08-29 20:16:23,958", - "created": 1598724983.9588153, + "asctime": "2021-01-14 00:59:07,706", + "created": 1610582347.7062201, "exc_info": null, "exc_text": null, "filename": "test.py", @@ -5664,379 +3875,55 @@ "lineno": 26, "message": "Expectation (Media data for image_exif_gps.jpg): result = { 'time': 1560083621, 'exposure_program': 'Program Normal', 'exposure_time': 0.007633587786259542, 'flash': 'Off', 'aperture': 2.2, 'focal_length': 3.463, 'gps': { 'lon': 11.574697, 'lat': 52.993599 }, 'height': 3120, 'iso': 100, 'orientation': 6, 'width': 4160, 'camera': 'motorola: motorola one', 'size': 4524705 } ()", "module": "test", - "msecs": 958.815336227417, + "msecs": 706.2201499938965, "msg": "Expectation (%s): result = %s (%s)", "name": "__unittest__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 284.0571403503418, + "relativeCreated": 555.6278228759766, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread" } ], - "msecs": 958.895206451416, + "msecs": 706.3190937042236, "msg": "Media data for image_exif_gps.jpg is correct (Content %s and Type is %s).", "name": "__tLogger__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 284.1370105743408, + "relativeCreated": 555.7267665863037, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread", - "time_consumption": 7.987022399902344e-05 + "time_consumption": 9.894371032714844e-05 }, { "args": [ "{'time': 1515143529, 'exposure_program': 'Program Normal', 'exposure_time': 0.03, 'flash': 'Fired', 'aperture': 2.2, 'focal_length': 4.5, 'height': 3968, 'iso': 160, 'orientation': 0, 'width': 2976, 'size': 2837285, 'camera': 'HUAWEI: EVA-L09'}", "" ], - "asctime": "2020-08-29 20:16:23,961", - "created": 1598724983.9613633, + "asctime": "2021-01-14 00:59:07,709", + "created": 1610582347.7093408, "exc_info": null, "exc_text": null, "filename": "test.py", "funcName": "equivalency_chk", "levelname": "INFO", "levelno": 20, - "lineno": 142, + "lineno": 144, "message": "Media data for image_exif_no_gps.jpg is correct (Content {'time': 1515143529, 'exposure_program': 'Program Normal', 'exposure_time': 0.03, 'flash': 'Fired', 'aperture': 2.2, 'focal_length': 4.5, 'height': 3968, 'iso': 160, 'orientation': 0, 'width': 2976, 'size': 2837285, 'camera': 'HUAWEI: EVA-L09'} and Type is ).", "module": "test", "moduleLogger": [ - { - "args": [ - "time", - "'2018:01:05 10:12:09'" - ], - "asctime": "2020-08-29 20:16:23,960", - "created": 1598724983.9604533, - "exc_info": null, - "exc_text": null, - "filename": "metadata.py", - "funcName": "__get_exif_data__", - "levelname": "DEBUG", - "levelno": 10, - "lineno": 134, - "message": "Converting time out of '2018:01:05 10:12:09'", - "module": "metadata", - "msecs": 960.4532718658447, - "msg": "Converting %s out of %s", - "name": "MEDIA", - "pathname": "src/media/metadata.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 285.69507598876953, - "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, - { - "args": [ - "exposure_program", - "2" - ], - "asctime": "2020-08-29 20:16:23,960", - "created": 1598724983.9605558, - "exc_info": null, - "exc_text": null, - "filename": "metadata.py", - "funcName": "__get_exif_data__", - "levelname": "DEBUG", - "levelno": 10, - "lineno": 134, - "message": "Converting exposure_program out of 2", - "module": "metadata", - "msecs": 960.5557918548584, - "msg": "Converting %s out of %s", - "name": "MEDIA", - "pathname": "src/media/metadata.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 285.7975959777832, - "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, - { - "args": [ - "exposure_time", - "(30000000, 1000000000)" - ], - "asctime": "2020-08-29 20:16:23,960", - "created": 1598724983.9606068, - "exc_info": null, - "exc_text": null, - "filename": "metadata.py", - "funcName": "__get_exif_data__", - "levelname": "DEBUG", - "levelno": 10, - "lineno": 134, - "message": "Converting exposure_time out of (30000000, 1000000000)", - "module": "metadata", - "msecs": 960.6068134307861, - "msg": "Converting %s out of %s", - "name": "MEDIA", - "pathname": "src/media/metadata.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 285.84861755371094, - "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, - { - "args": [ - "flash", - "1" - ], - "asctime": "2020-08-29 20:16:23,960", - "created": 1598724983.9606538, - "exc_info": null, - "exc_text": null, - "filename": "metadata.py", - "funcName": "__get_exif_data__", - "levelname": "DEBUG", - "levelno": 10, - "lineno": 134, - "message": "Converting flash out of 1", - "module": "metadata", - "msecs": 960.6537818908691, - "msg": "Converting %s out of %s", - "name": "MEDIA", - "pathname": "src/media/metadata.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 285.89558601379395, - "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, - { - "args": [ - "aperture", - "(220, 100)" - ], - "asctime": "2020-08-29 20:16:23,960", - "created": 1598724983.9606962, - "exc_info": null, - "exc_text": null, - "filename": "metadata.py", - "funcName": "__get_exif_data__", - "levelname": "DEBUG", - "levelno": 10, - "lineno": 134, - "message": "Converting aperture out of (220, 100)", - "module": "metadata", - "msecs": 960.6962203979492, - "msg": "Converting %s out of %s", - "name": "MEDIA", - "pathname": "src/media/metadata.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 285.938024520874, - "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, - { - "args": [ - "focal_length", - "(4500, 1000)" - ], - "asctime": "2020-08-29 20:16:23,960", - "created": 1598724983.9607368, - "exc_info": null, - "exc_text": null, - "filename": "metadata.py", - "funcName": "__get_exif_data__", - "levelname": "DEBUG", - "levelno": 10, - "lineno": 134, - "message": "Converting focal_length out of (4500, 1000)", - "module": "metadata", - "msecs": 960.7367515563965, - "msg": "Converting %s out of %s", - "name": "MEDIA", - "pathname": "src/media/metadata.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 285.9785556793213, - "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, - { - "args": [ - "height", - "3968" - ], - "asctime": "2020-08-29 20:16:23,960", - "created": 1598724983.960779, - "exc_info": null, - "exc_text": null, - "filename": "metadata.py", - "funcName": "__get_exif_data__", - "levelname": "DEBUG", - "levelno": 10, - "lineno": 134, - "message": "Converting height out of 3968", - "module": "metadata", - "msecs": 960.7789516448975, - "msg": "Converting %s out of %s", - "name": "MEDIA", - "pathname": "src/media/metadata.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 286.02075576782227, - "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, - { - "args": [ - "iso", - "160" - ], - "asctime": "2020-08-29 20:16:23,960", - "created": 1598724983.9608154, - "exc_info": null, - "exc_text": null, - "filename": "metadata.py", - "funcName": "__get_exif_data__", - "levelname": "DEBUG", - "levelno": 10, - "lineno": 134, - "message": "Converting iso out of 160", - "module": "metadata", - "msecs": 960.8154296875, - "msg": "Converting %s out of %s", - "name": "MEDIA", - "pathname": "src/media/metadata.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 286.0572338104248, - "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, - { - "args": [ - "camera_vendor", - "'HUAWEI'" - ], - "asctime": "2020-08-29 20:16:23,960", - "created": 1598724983.9608507, - "exc_info": null, - "exc_text": null, - "filename": "metadata.py", - "funcName": "__get_exif_data__", - "levelname": "DEBUG", - "levelno": 10, - "lineno": 134, - "message": "Converting camera_vendor out of 'HUAWEI'", - "module": "metadata", - "msecs": 960.850715637207, - "msg": "Converting %s out of %s", - "name": "MEDIA", - "pathname": "src/media/metadata.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 286.09251976013184, - "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, - { - "args": [ - "camera_model", - "'EVA-L09'" - ], - "asctime": "2020-08-29 20:16:23,960", - "created": 1598724983.9608898, - "exc_info": null, - "exc_text": null, - "filename": "metadata.py", - "funcName": "__get_exif_data__", - "levelname": "DEBUG", - "levelno": 10, - "lineno": 134, - "message": "Converting camera_model out of 'EVA-L09'", - "module": "metadata", - "msecs": 960.8898162841797, - "msg": "Converting %s out of %s", - "name": "MEDIA", - "pathname": "src/media/metadata.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 286.1316204071045, - "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, - { - "args": [ - "orientation", - "0" - ], - "asctime": "2020-08-29 20:16:23,960", - "created": 1598724983.9609244, - "exc_info": null, - "exc_text": null, - "filename": "metadata.py", - "funcName": "__get_exif_data__", - "levelname": "DEBUG", - "levelno": 10, - "lineno": 134, - "message": "Converting orientation out of 0", - "module": "metadata", - "msecs": 960.9243869781494, - "msg": "Converting %s out of %s", - "name": "MEDIA", - "pathname": "src/media/metadata.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 286.1661911010742, - "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, - { - "args": [ - "width", - "2976" - ], - "asctime": "2020-08-29 20:16:23,960", - "created": 1598724983.9609733, - "exc_info": null, - "exc_text": null, - "filename": "metadata.py", - "funcName": "__get_exif_data__", - "levelname": "DEBUG", - "levelno": 10, - "lineno": 134, - "message": "Converting width out of 2976", - "module": "metadata", - "msecs": 960.9732627868652, - "msg": "Converting %s out of %s", - "name": "MEDIA", - "pathname": "src/media/metadata.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 286.21506690979004, - "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, { "args": [ "Media data for image_exif_no_gps.jpg", "{ 'time': 1515143529, 'exposure_program': 'Program Normal', 'exposure_time': 0.03, 'flash': 'Fired', 'aperture': 2.2, 'focal_length': 4.5, 'height': 3968, 'iso': 160, 'orientation': 0, 'width': 2976, 'size': 2837285, 'camera': 'HUAWEI: EVA-L09' }", "" ], - "asctime": "2020-08-29 20:16:23,961", - "created": 1598724983.9611175, + "asctime": "2021-01-14 00:59:07,709", + "created": 1610582347.7091756, "exc_info": null, "exc_text": null, "filename": "test.py", @@ -6046,15 +3933,15 @@ "lineno": 22, "message": "Result (Media data for image_exif_no_gps.jpg): { 'time': 1515143529, 'exposure_program': 'Program Normal', 'exposure_time': 0.03, 'flash': 'Fired', 'aperture': 2.2, 'focal_length': 4.5, 'height': 3968, 'iso': 160, 'orientation': 0, 'width': 2976, 'size': 2837285, 'camera': 'HUAWEI: EVA-L09' } ()", "module": "test", - "msecs": 961.1175060272217, + "msecs": 709.1755867004395, "msg": "Result (%s): %s (%s)", "name": "__unittest__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 286.3593101501465, + "relativeCreated": 558.5832595825195, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread" }, { @@ -6063,8 +3950,8 @@ "{ 'time': 1515143529, 'exposure_program': 'Program Normal', 'exposure_time': 0.03, 'flash': 'Fired', 'aperture': 2.2, 'focal_length': 4.5, 'height': 3968, 'iso': 160, 'orientation': 0, 'width': 2976, 'camera': 'HUAWEI: EVA-L09', 'size': 2837285 }", "" ], - "asctime": "2020-08-29 20:16:23,961", - "created": 1598724983.9612248, + "asctime": "2021-01-14 00:59:07,709", + "created": 1610582347.7092588, "exc_info": null, "exc_text": null, "filename": "test.py", @@ -6074,81 +3961,55 @@ "lineno": 26, "message": "Expectation (Media data for image_exif_no_gps.jpg): result = { 'time': 1515143529, 'exposure_program': 'Program Normal', 'exposure_time': 0.03, 'flash': 'Fired', 'aperture': 2.2, 'focal_length': 4.5, 'height': 3968, 'iso': 160, 'orientation': 0, 'width': 2976, 'camera': 'HUAWEI: EVA-L09', 'size': 2837285 } ()", "module": "test", - "msecs": 961.2247943878174, + "msecs": 709.2587947845459, "msg": "Expectation (%s): result = %s (%s)", "name": "__unittest__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 286.4665985107422, + "relativeCreated": 558.666467666626, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread" } ], - "msecs": 961.3633155822754, + "msecs": 709.3408107757568, "msg": "Media data for image_exif_no_gps.jpg is correct (Content %s and Type is %s).", "name": "__tLogger__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 286.6051197052002, + "relativeCreated": 558.7484836578369, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread", - "time_consumption": 0.0001385211944580078 + "time_consumption": 8.20159912109375e-05 }, { "args": [ "{'size': 1139092, 'time': 1449870515, 'tm_is_subst': True}", "" ], - "asctime": "2020-08-29 20:16:23,962", - "created": 1598724983.9621167, + "asctime": "2021-01-14 00:59:07,710", + "created": 1610582347.7100043, "exc_info": null, "exc_text": null, "filename": "test.py", "funcName": "equivalency_chk", "levelname": "INFO", "levelno": 20, - "lineno": 142, + "lineno": 144, "message": "Media data for image_non_exif.jpg is correct (Content {'size': 1139092, 'time': 1449870515, 'tm_is_subst': True} and Type is ).", "module": "test", "moduleLogger": [ - { - "args": [ - "/user_data/data/dirk/prj/unittest/media/unittest/input_data/image_non_exif.jpg" - ], - "asctime": "2020-08-29 20:16:23,961", - "created": 1598724983.9617333, - "exc_info": null, - "exc_text": null, - "filename": "metadata.py", - "funcName": "__get_exif_data__", - "levelname": "DEBUG", - "levelno": 10, - "lineno": 113, - "message": "/user_data/data/dirk/prj/unittest/media/unittest/input_data/image_non_exif.jpg does not have any exif information", - "module": "metadata", - "msecs": 961.733341217041, - "msg": "%s does not have any exif information", - "name": "MEDIA", - "pathname": "src/media/metadata.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 286.9751453399658, - "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, { "args": [ "Media data for image_non_exif.jpg", "{ 'size': 1139092, 'time': 1449870515, 'tm_is_subst': True }", "" ], - "asctime": "2020-08-29 20:16:23,961", - "created": 1598724983.9619246, + "asctime": "2021-01-14 00:59:07,709", + "created": 1610582347.7098835, "exc_info": null, "exc_text": null, "filename": "test.py", @@ -6158,15 +4019,15 @@ "lineno": 22, "message": "Result (Media data for image_non_exif.jpg): { 'size': 1139092, 'time': 1449870515, 'tm_is_subst': True } ()", "module": "test", - "msecs": 961.9245529174805, + "msecs": 709.883451461792, "msg": "Result (%s): %s (%s)", "name": "__unittest__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 287.1663570404053, + "relativeCreated": 559.2911243438721, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread" }, { @@ -6175,8 +4036,8 @@ "{ 'time': 1449870515, 'tm_is_subst': True, 'size': 1139092 }", "" ], - "asctime": "2020-08-29 20:16:23,962", - "created": 1598724983.962017, + "asctime": "2021-01-14 00:59:07,709", + "created": 1610582347.7099423, "exc_info": null, "exc_text": null, "filename": "test.py", @@ -6186,432 +4047,55 @@ "lineno": 26, "message": "Expectation (Media data for image_non_exif.jpg): result = { 'time': 1449870515, 'tm_is_subst': True, 'size': 1139092 } ()", "module": "test", - "msecs": 962.0170593261719, + "msecs": 709.9423408508301, "msg": "Expectation (%s): result = %s (%s)", "name": "__unittest__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 287.2588634490967, + "relativeCreated": 559.3500137329102, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread" } ], - "msecs": 962.1167182922363, + "msecs": 710.0043296813965, "msg": "Media data for image_non_exif.jpg is correct (Content %s and Type is %s).", "name": "__tLogger__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 287.35852241516113, + "relativeCreated": 559.4120025634766, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread", - "time_consumption": 9.965896606445312e-05 + "time_consumption": 6.198883056640625e-05 }, { "args": [ "{'time': 1226149915, 'exposure_program': 'Program Normal', 'exposure_time': 0.008, 'flash': 'Fill Fired', 'aperture': 7.1, 'focal_length': 170.0, 'height': 2592, 'iso': 400, 'orientation': 1, 'width': 3888, 'size': 1301272, 'camera': 'Canon: Canon EOS 40D'}", "" ], - "asctime": "2020-08-29 20:16:23,964", - "created": 1598724983.9645047, + "asctime": "2021-01-14 00:59:07,712", + "created": 1610582347.7125683, "exc_info": null, "exc_text": null, "filename": "test.py", "funcName": "equivalency_chk", "levelname": "INFO", "levelno": 20, - "lineno": 142, + "lineno": 144, "message": "Media data for image_extraction_failed.jpg is correct (Content {'time': 1226149915, 'exposure_program': 'Program Normal', 'exposure_time': 0.008, 'flash': 'Fill Fired', 'aperture': 7.1, 'focal_length': 170.0, 'height': 2592, 'iso': 400, 'orientation': 1, 'width': 3888, 'size': 1301272, 'camera': 'Canon: Canon EOS 40D'} and Type is ).", "module": "test", "moduleLogger": [ - { - "args": [ - "time", - "'2008:11:08 14:11:55'" - ], - "asctime": "2020-08-29 20:16:23,963", - "created": 1598724983.963678, - "exc_info": null, - "exc_text": null, - "filename": "metadata.py", - "funcName": "__get_exif_data__", - "levelname": "DEBUG", - "levelno": 10, - "lineno": 134, - "message": "Converting time out of '2008:11:08 14:11:55'", - "module": "metadata", - "msecs": 963.6778831481934, - "msg": "Converting %s out of %s", - "name": "MEDIA", - "pathname": "src/media/metadata.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 288.91968727111816, - "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, - { - "args": [ - "exposure_program", - "2" - ], - "asctime": "2020-08-29 20:16:23,963", - "created": 1598724983.963793, - "exc_info": null, - "exc_text": null, - "filename": "metadata.py", - "funcName": "__get_exif_data__", - "levelname": "DEBUG", - "levelno": 10, - "lineno": 134, - "message": "Converting exposure_program out of 2", - "module": "metadata", - "msecs": 963.7930393218994, - "msg": "Converting %s out of %s", - "name": "MEDIA", - "pathname": "src/media/metadata.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 289.0348434448242, - "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, - { - "args": [ - "exposure_time", - "(1, 125)" - ], - "asctime": "2020-08-29 20:16:23,963", - "created": 1598724983.963845, - "exc_info": null, - "exc_text": null, - "filename": "metadata.py", - "funcName": "__get_exif_data__", - "levelname": "DEBUG", - "levelno": 10, - "lineno": 134, - "message": "Converting exposure_time out of (1, 125)", - "module": "metadata", - "msecs": 963.8450145721436, - "msg": "Converting %s out of %s", - "name": "MEDIA", - "pathname": "src/media/metadata.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 289.08681869506836, - "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, - { - "args": [ - "flash", - "9" - ], - "asctime": "2020-08-29 20:16:23,963", - "created": 1598724983.9638903, - "exc_info": null, - "exc_text": null, - "filename": "metadata.py", - "funcName": "__get_exif_data__", - "levelname": "DEBUG", - "levelno": 10, - "lineno": 134, - "message": "Converting flash out of 9", - "module": "metadata", - "msecs": 963.8903141021729, - "msg": "Converting %s out of %s", - "name": "MEDIA", - "pathname": "src/media/metadata.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 289.13211822509766, - "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, - { - "args": [ - "aperture", - "(71, 10)" - ], - "asctime": "2020-08-29 20:16:23,963", - "created": 1598724983.9639342, - "exc_info": null, - "exc_text": null, - "filename": "metadata.py", - "funcName": "__get_exif_data__", - "levelname": "DEBUG", - "levelno": 10, - "lineno": 134, - "message": "Converting aperture out of (71, 10)", - "module": "metadata", - "msecs": 963.9341831207275, - "msg": "Converting %s out of %s", - "name": "MEDIA", - "pathname": "src/media/metadata.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 289.17598724365234, - "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, - { - "args": [ - "focal_length", - "(170, 1)" - ], - "asctime": "2020-08-29 20:16:23,963", - "created": 1598724983.963975, - "exc_info": null, - "exc_text": null, - "filename": "metadata.py", - "funcName": "__get_exif_data__", - "levelname": "DEBUG", - "levelno": 10, - "lineno": 134, - "message": "Converting focal_length out of (170, 1)", - "module": "metadata", - "msecs": 963.9749526977539, - "msg": "Converting %s out of %s", - "name": "MEDIA", - "pathname": "src/media/metadata.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 289.2167568206787, - "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, - { - "args": [ - "gps", - "{0: b'\\x02\\x02\\x00\\x00'}" - ], - "asctime": "2020-08-29 20:16:23,964", - "created": 1598724983.9640152, - "exc_info": null, - "exc_text": null, - "filename": "metadata.py", - "funcName": "__get_exif_data__", - "levelname": "DEBUG", - "levelno": 10, - "lineno": 134, - "message": "Converting gps out of {0: b'\\x02\\x02\\x00\\x00'}", - "module": "metadata", - "msecs": 964.0152454376221, - "msg": "Converting %s out of %s", - "name": "MEDIA", - "pathname": "src/media/metadata.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 289.2570495605469, - "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, - { - "args": [ - "{0: b'\\x02\\x02\\x00\\x00'}" - ], - "asctime": "2020-08-29 20:16:23,964", - "created": 1598724983.964053, - "exc_info": null, - "exc_text": null, - "filename": "metadata.py", - "funcName": "__gps_conv__", - "levelname": "WARNING", - "levelno": 30, - "lineno": 234, - "message": "GPS data extraction failed for {0: b'\\x02\\x02\\x00\\x00'}", - "module": "metadata", - "msecs": 964.0529155731201, - "msg": "GPS data extraction failed for %s", - "name": "MEDIA", - "pathname": "src/media/metadata.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 289.2947196960449, - "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, - { - "args": [ - "height", - "2592" - ], - "asctime": "2020-08-29 20:16:23,964", - "created": 1598724983.9640956, - "exc_info": null, - "exc_text": null, - "filename": "metadata.py", - "funcName": "__get_exif_data__", - "levelname": "DEBUG", - "levelno": 10, - "lineno": 134, - "message": "Converting height out of 2592", - "module": "metadata", - "msecs": 964.0955924987793, - "msg": "Converting %s out of %s", - "name": "MEDIA", - "pathname": "src/media/metadata.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 289.3373966217041, - "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, - { - "args": [ - "iso", - "400" - ], - "asctime": "2020-08-29 20:16:23,964", - "created": 1598724983.9641345, - "exc_info": null, - "exc_text": null, - "filename": "metadata.py", - "funcName": "__get_exif_data__", - "levelname": "DEBUG", - "levelno": 10, - "lineno": 134, - "message": "Converting iso out of 400", - "module": "metadata", - "msecs": 964.1344547271729, - "msg": "Converting %s out of %s", - "name": "MEDIA", - "pathname": "src/media/metadata.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 289.37625885009766, - "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, - { - "args": [ - "camera_vendor", - "'Canon'" - ], - "asctime": "2020-08-29 20:16:23,964", - "created": 1598724983.9641695, - "exc_info": null, - "exc_text": null, - "filename": "metadata.py", - "funcName": "__get_exif_data__", - "levelname": "DEBUG", - "levelno": 10, - "lineno": 134, - "message": "Converting camera_vendor out of 'Canon'", - "module": "metadata", - "msecs": 964.1695022583008, - "msg": "Converting %s out of %s", - "name": "MEDIA", - "pathname": "src/media/metadata.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 289.4113063812256, - "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, - { - "args": [ - "camera_model", - "'Canon EOS 40D'" - ], - "asctime": "2020-08-29 20:16:23,964", - "created": 1598724983.964204, - "exc_info": null, - "exc_text": null, - "filename": "metadata.py", - "funcName": "__get_exif_data__", - "levelname": "DEBUG", - "levelno": 10, - "lineno": 134, - "message": "Converting camera_model out of 'Canon EOS 40D'", - "module": "metadata", - "msecs": 964.2040729522705, - "msg": "Converting %s out of %s", - "name": "MEDIA", - "pathname": "src/media/metadata.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 289.4458770751953, - "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, - { - "args": [ - "orientation", - "1" - ], - "asctime": "2020-08-29 20:16:23,964", - "created": 1598724983.9642413, - "exc_info": null, - "exc_text": null, - "filename": "metadata.py", - "funcName": "__get_exif_data__", - "levelname": "DEBUG", - "levelno": 10, - "lineno": 134, - "message": "Converting orientation out of 1", - "module": "metadata", - "msecs": 964.2412662506104, - "msg": "Converting %s out of %s", - "name": "MEDIA", - "pathname": "src/media/metadata.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 289.48307037353516, - "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, - { - "args": [ - "width", - "3888" - ], - "asctime": "2020-08-29 20:16:23,964", - "created": 1598724983.9642766, - "exc_info": null, - "exc_text": null, - "filename": "metadata.py", - "funcName": "__get_exif_data__", - "levelname": "DEBUG", - "levelno": 10, - "lineno": 134, - "message": "Converting width out of 3888", - "module": "metadata", - "msecs": 964.2765522003174, - "msg": "Converting %s out of %s", - "name": "MEDIA", - "pathname": "src/media/metadata.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 289.5183563232422, - "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, { "args": [ "Media data for image_extraction_failed.jpg", "{ 'time': 1226149915, 'exposure_program': 'Program Normal', 'exposure_time': 0.008, 'flash': 'Fill Fired', 'aperture': 7.1, 'focal_length': 170.0, 'height': 2592, 'iso': 400, 'orientation': 1, 'width': 3888, 'size': 1301272, 'camera': 'Canon: Canon EOS 40D' }", "" ], - "asctime": "2020-08-29 20:16:23,964", - "created": 1598724983.9643793, + "asctime": "2021-01-14 00:59:07,712", + "created": 1610582347.7124102, "exc_info": null, "exc_text": null, "filename": "test.py", @@ -6621,15 +4105,15 @@ "lineno": 22, "message": "Result (Media data for image_extraction_failed.jpg): { 'time': 1226149915, 'exposure_program': 'Program Normal', 'exposure_time': 0.008, 'flash': 'Fill Fired', 'aperture': 7.1, 'focal_length': 170.0, 'height': 2592, 'iso': 400, 'orientation': 1, 'width': 3888, 'size': 1301272, 'camera': 'Canon: Canon EOS 40D' } ()", "module": "test", - "msecs": 964.3793106079102, + "msecs": 712.4102115631104, "msg": "Result (%s): %s (%s)", "name": "__unittest__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 289.62111473083496, + "relativeCreated": 561.8178844451904, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread" }, { @@ -6638,8 +4122,8 @@ "{ 'time': 1226149915, 'exposure_program': 'Program Normal', 'exposure_time': 0.008, 'flash': 'Fill Fired', 'aperture': 7.1, 'focal_length': 170.0, 'height': 2592, 'iso': 400, 'orientation': 1, 'width': 3888, 'camera': 'Canon: Canon EOS 40D', 'size': 1301272 }", "" ], - "asctime": "2020-08-29 20:16:23,964", - "created": 1598724983.964436, + "asctime": "2021-01-14 00:59:07,712", + "created": 1610582347.7124856, "exc_info": null, "exc_text": null, "filename": "test.py", @@ -6649,406 +4133,55 @@ "lineno": 26, "message": "Expectation (Media data for image_extraction_failed.jpg): result = { 'time': 1226149915, 'exposure_program': 'Program Normal', 'exposure_time': 0.008, 'flash': 'Fill Fired', 'aperture': 7.1, 'focal_length': 170.0, 'height': 2592, 'iso': 400, 'orientation': 1, 'width': 3888, 'camera': 'Canon: Canon EOS 40D', 'size': 1301272 } ()", "module": "test", - "msecs": 964.4360542297363, + "msecs": 712.4855518341064, "msg": "Expectation (%s): result = %s (%s)", "name": "__unittest__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 289.67785835266113, + "relativeCreated": 561.8932247161865, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread" } ], - "msecs": 964.5047187805176, + "msecs": 712.5682830810547, "msg": "Media data for image_extraction_failed.jpg is correct (Content %s and Type is %s).", "name": "__tLogger__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 289.7465229034424, + "relativeCreated": 561.9759559631348, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread", - "time_consumption": 6.866455078125e-05 + "time_consumption": 8.273124694824219e-05 }, { "args": [ "{'time': 1590940859, 'exposure_program': 'Program Normal', 'exposure_time': 0.01, 'flash': 'Off', 'aperture': 2.0, 'focal_length': 3.463, 'height': 3120, 'iso': 124, 'orientation': 6, 'width': 4160, 'size': 3500036, 'camera': 'motorola: motorola one'}", "" ], - "asctime": "2020-08-29 20:16:23,966", - "created": 1598724983.9669585, + "asctime": "2021-01-14 00:59:07,715", + "created": 1610582347.715816, "exc_info": null, "exc_text": null, "filename": "test.py", "funcName": "equivalency_chk", "levelname": "INFO", "levelno": 20, - "lineno": 142, + "lineno": 144, "message": "Media data for faulty_gps_data.jpg is correct (Content {'time': 1590940859, 'exposure_program': 'Program Normal', 'exposure_time': 0.01, 'flash': 'Off', 'aperture': 2.0, 'focal_length': 3.463, 'height': 3120, 'iso': 124, 'orientation': 6, 'width': 4160, 'size': 3500036, 'camera': 'motorola: motorola one'} and Type is ).", "module": "test", "moduleLogger": [ - { - "args": [ - "time", - "'2020:05:31 18:00:59'" - ], - "asctime": "2020-08-29 20:16:23,966", - "created": 1598724983.9661198, - "exc_info": null, - "exc_text": null, - "filename": "metadata.py", - "funcName": "__get_exif_data__", - "levelname": "DEBUG", - "levelno": 10, - "lineno": 134, - "message": "Converting time out of '2020:05:31 18:00:59'", - "module": "metadata", - "msecs": 966.1197662353516, - "msg": "Converting %s out of %s", - "name": "MEDIA", - "pathname": "src/media/metadata.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 291.36157035827637, - "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, - { - "args": [ - "exposure_program", - "2" - ], - "asctime": "2020-08-29 20:16:23,966", - "created": 1598724983.9662254, - "exc_info": null, - "exc_text": null, - "filename": "metadata.py", - "funcName": "__get_exif_data__", - "levelname": "DEBUG", - "levelno": 10, - "lineno": 134, - "message": "Converting exposure_program out of 2", - "module": "metadata", - "msecs": 966.2253856658936, - "msg": "Converting %s out of %s", - "name": "MEDIA", - "pathname": "src/media/metadata.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 291.46718978881836, - "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, - { - "args": [ - "exposure_time", - "(1, 100)" - ], - "asctime": "2020-08-29 20:16:23,966", - "created": 1598724983.9662786, - "exc_info": null, - "exc_text": null, - "filename": "metadata.py", - "funcName": "__get_exif_data__", - "levelname": "DEBUG", - "levelno": 10, - "lineno": 134, - "message": "Converting exposure_time out of (1, 100)", - "module": "metadata", - "msecs": 966.2785530090332, - "msg": "Converting %s out of %s", - "name": "MEDIA", - "pathname": "src/media/metadata.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 291.520357131958, - "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, - { - "args": [ - "flash", - "16" - ], - "asctime": "2020-08-29 20:16:23,966", - "created": 1598724983.9663231, - "exc_info": null, - "exc_text": null, - "filename": "metadata.py", - "funcName": "__get_exif_data__", - "levelname": "DEBUG", - "levelno": 10, - "lineno": 134, - "message": "Converting flash out of 16", - "module": "metadata", - "msecs": 966.3231372833252, - "msg": "Converting %s out of %s", - "name": "MEDIA", - "pathname": "src/media/metadata.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 291.56494140625, - "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, - { - "args": [ - "aperture", - "(20, 10)" - ], - "asctime": "2020-08-29 20:16:23,966", - "created": 1598724983.966366, - "exc_info": null, - "exc_text": null, - "filename": "metadata.py", - "funcName": "__get_exif_data__", - "levelname": "DEBUG", - "levelno": 10, - "lineno": 134, - "message": "Converting aperture out of (20, 10)", - "module": "metadata", - "msecs": 966.3660526275635, - "msg": "Converting %s out of %s", - "name": "MEDIA", - "pathname": "src/media/metadata.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 291.6078567504883, - "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, - { - "args": [ - "focal_length", - "(3463, 1000)" - ], - "asctime": "2020-08-29 20:16:23,966", - "created": 1598724983.9664068, - "exc_info": null, - "exc_text": null, - "filename": "metadata.py", - "funcName": "__get_exif_data__", - "levelname": "DEBUG", - "levelno": 10, - "lineno": 134, - "message": "Converting focal_length out of (3463, 1000)", - "module": "metadata", - "msecs": 966.4068222045898, - "msg": "Converting %s out of %s", - "name": "MEDIA", - "pathname": "src/media/metadata.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 291.64862632751465, - "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, - { - "args": [ - "gps", - "{0: b'\\x00\\x00\\x00\\x00', 1: '\\x00', 2: ((0, 0), (0, 0), (0, 0)), 3: '\\x00', 4: ((0, 0), (0, 0), (0, 0)), 5: b'\\x00', 6: (0, 0), 7: ((0, 0), (0, 0), (0, 0)), 18: '\\x00\\x00\\x00\\x00\\x00\\x00', 27: '\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00', 29: '\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00'}" - ], - "asctime": "2020-08-29 20:16:23,966", - "created": 1598724983.966493, - "exc_info": null, - "exc_text": null, - "filename": "metadata.py", - "funcName": "__get_exif_data__", - "levelname": "DEBUG", - "levelno": 10, - "lineno": 134, - "message": "Converting gps out of {0: b'\\x00\\x00\\x00\\x00', 1: '\\x00', 2: ((0, 0), (0, 0), (0, 0)), 3: '\\x00', 4: ((0, 0), (0, 0), (0, 0)), 5: b'\\x00', 6: (0, 0), 7: ((0, 0), (0, 0), (0, 0)), 18: '\\x00\\x00\\x00\\x00\\x00\\x00', 27: '\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00', 29: '\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00'}", - "module": "metadata", - "msecs": 966.4928913116455, - "msg": "Converting %s out of %s", - "name": "MEDIA", - "pathname": "src/media/metadata.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 291.7346954345703, - "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, - { - "args": [ - "height", - "3120" - ], - "asctime": "2020-08-29 20:16:23,966", - "created": 1598724983.9665625, - "exc_info": null, - "exc_text": null, - "filename": "metadata.py", - "funcName": "__get_exif_data__", - "levelname": "DEBUG", - "levelno": 10, - "lineno": 134, - "message": "Converting height out of 3120", - "module": "metadata", - "msecs": 966.5625095367432, - "msg": "Converting %s out of %s", - "name": "MEDIA", - "pathname": "src/media/metadata.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 291.80431365966797, - "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, - { - "args": [ - "iso", - "124" - ], - "asctime": "2020-08-29 20:16:23,966", - "created": 1598724983.9666007, - "exc_info": null, - "exc_text": null, - "filename": "metadata.py", - "funcName": "__get_exif_data__", - "levelname": "DEBUG", - "levelno": 10, - "lineno": 134, - "message": "Converting iso out of 124", - "module": "metadata", - "msecs": 966.6006565093994, - "msg": "Converting %s out of %s", - "name": "MEDIA", - "pathname": "src/media/metadata.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 291.8424606323242, - "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, - { - "args": [ - "camera_vendor", - "'motorola'" - ], - "asctime": "2020-08-29 20:16:23,966", - "created": 1598724983.9666395, - "exc_info": null, - "exc_text": null, - "filename": "metadata.py", - "funcName": "__get_exif_data__", - "levelname": "DEBUG", - "levelno": 10, - "lineno": 134, - "message": "Converting camera_vendor out of 'motorola'", - "module": "metadata", - "msecs": 966.639518737793, - "msg": "Converting %s out of %s", - "name": "MEDIA", - "pathname": "src/media/metadata.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 291.8813228607178, - "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, - { - "args": [ - "camera_model", - "'motorola one'" - ], - "asctime": "2020-08-29 20:16:23,966", - "created": 1598724983.9666739, - "exc_info": null, - "exc_text": null, - "filename": "metadata.py", - "funcName": "__get_exif_data__", - "levelname": "DEBUG", - "levelno": 10, - "lineno": 134, - "message": "Converting camera_model out of 'motorola one'", - "module": "metadata", - "msecs": 966.6738510131836, - "msg": "Converting %s out of %s", - "name": "MEDIA", - "pathname": "src/media/metadata.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 291.9156551361084, - "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, - { - "args": [ - "orientation", - "6" - ], - "asctime": "2020-08-29 20:16:23,966", - "created": 1598724983.9667075, - "exc_info": null, - "exc_text": null, - "filename": "metadata.py", - "funcName": "__get_exif_data__", - "levelname": "DEBUG", - "levelno": 10, - "lineno": 134, - "message": "Converting orientation out of 6", - "module": "metadata", - "msecs": 966.7074680328369, - "msg": "Converting %s out of %s", - "name": "MEDIA", - "pathname": "src/media/metadata.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 291.9492721557617, - "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, - { - "args": [ - "width", - "4160" - ], - "asctime": "2020-08-29 20:16:23,966", - "created": 1598724983.9667428, - "exc_info": null, - "exc_text": null, - "filename": "metadata.py", - "funcName": "__get_exif_data__", - "levelname": "DEBUG", - "levelno": 10, - "lineno": 134, - "message": "Converting width out of 4160", - "module": "metadata", - "msecs": 966.742753982544, - "msg": "Converting %s out of %s", - "name": "MEDIA", - "pathname": "src/media/metadata.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 291.98455810546875, - "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, { "args": [ "Media data for faulty_gps_data.jpg", "{ 'time': 1590940859, 'exposure_program': 'Program Normal', 'exposure_time': 0.01, 'flash': 'Off', 'aperture': 2.0, 'focal_length': 3.463, 'height': 3120, 'iso': 124, 'orientation': 6, 'width': 4160, 'size': 3500036, 'camera': 'motorola: motorola one' }", "" ], - "asctime": "2020-08-29 20:16:23,966", - "created": 1598724983.966836, + "asctime": "2021-01-14 00:59:07,715", + "created": 1610582347.715625, "exc_info": null, "exc_text": null, "filename": "test.py", @@ -7058,15 +4191,15 @@ "lineno": 22, "message": "Result (Media data for faulty_gps_data.jpg): { 'time': 1590940859, 'exposure_program': 'Program Normal', 'exposure_time': 0.01, 'flash': 'Off', 'aperture': 2.0, 'focal_length': 3.463, 'height': 3120, 'iso': 124, 'orientation': 6, 'width': 4160, 'size': 3500036, 'camera': 'motorola: motorola one' } ()", "module": "test", - "msecs": 966.8359756469727, + "msecs": 715.6250476837158, "msg": "Result (%s): %s (%s)", "name": "__unittest__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 292.07777976989746, + "relativeCreated": 565.0327205657959, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread" }, { @@ -7075,8 +4208,8 @@ "{ 'time': 1590940859, 'exposure_program': 'Program Normal', 'exposure_time': 0.01, 'flash': 'Off', 'aperture': 2.0, 'focal_length': 3.463, 'height': 3120, 'iso': 124, 'orientation': 6, 'width': 4160, 'camera': 'motorola: motorola one', 'size': 3500036 }", "" ], - "asctime": "2020-08-29 20:16:23,966", - "created": 1598724983.9668906, + "asctime": "2021-01-14 00:59:07,715", + "created": 1610582347.7157173, "exc_info": null, "exc_text": null, "filename": "test.py", @@ -7086,44 +4219,44 @@ "lineno": 26, "message": "Expectation (Media data for faulty_gps_data.jpg): result = { 'time': 1590940859, 'exposure_program': 'Program Normal', 'exposure_time': 0.01, 'flash': 'Off', 'aperture': 2.0, 'focal_length': 3.463, 'height': 3120, 'iso': 124, 'orientation': 6, 'width': 4160, 'camera': 'motorola: motorola one', 'size': 3500036 } ()", "module": "test", - "msecs": 966.8905735015869, + "msecs": 715.7173156738281, "msg": "Expectation (%s): result = %s (%s)", "name": "__unittest__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 292.1323776245117, + "relativeCreated": 565.1249885559082, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread" } ], - "msecs": 966.9585227966309, + "msecs": 715.8160209655762, "msg": "Media data for faulty_gps_data.jpg is correct (Content %s and Type is %s).", "name": "__tLogger__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 292.20032691955566, + "relativeCreated": 565.2236938476562, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread", - "time_consumption": 6.794929504394531e-05 + "time_consumption": 9.870529174804688e-05 }, { "args": [ "{'width': 800, 'height': 480, 'ratio': 1.6666666666666667, 'duration': 3.964, 'bitrate': 2341765, 'time': 1414948303, 'size': 1160345}", "" ], - "asctime": "2020-08-29 20:16:24,020", - "created": 1598724984.020073, + "asctime": "2021-01-14 00:59:07,777", + "created": 1610582347.777557, "exc_info": null, "exc_text": null, "filename": "test.py", "funcName": "equivalency_chk", "levelname": "INFO", "levelno": 20, - "lineno": 142, + "lineno": 144, "message": "Media data for video.3gp is correct (Content {'width': 800, 'height': 480, 'ratio': 1.6666666666666667, 'duration': 3.964, 'bitrate': 2341765, 'time': 1414948303, 'size': 1160345} and Type is ).", "module": "test", "moduleLogger": [ @@ -7133,8 +4266,8 @@ "{ 'width': 800, 'height': 480, 'ratio': 1.6666666666666667, 'duration': 3.964, 'bitrate': 2341765, 'time': 1414948303, 'size': 1160345 }", "" ], - "asctime": "2020-08-29 20:16:24,019", - "created": 1598724984.019838, + "asctime": "2021-01-14 00:59:07,777", + "created": 1610582347.7772825, "exc_info": null, "exc_text": null, "filename": "test.py", @@ -7144,15 +4277,15 @@ "lineno": 22, "message": "Result (Media data for video.3gp): { 'width': 800, 'height': 480, 'ratio': 1.6666666666666667, 'duration': 3.964, 'bitrate': 2341765, 'time': 1414948303, 'size': 1160345 } ()", "module": "test", - "msecs": 19.83809471130371, + "msecs": 777.2824764251709, "msg": "Result (%s): %s (%s)", "name": "__unittest__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 345.0798988342285, + "relativeCreated": 626.690149307251, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread" }, { @@ -7161,8 +4294,8 @@ "{ 'width': 800, 'height': 480, 'ratio': 1.6666666666666667, 'duration': 3.964, 'bitrate': 2341765, 'time': 1414948303, 'size': 1160345 }", "" ], - "asctime": "2020-08-29 20:16:24,019", - "created": 1598724984.0199897, + "asctime": "2021-01-14 00:59:07,777", + "created": 1610582347.7774618, "exc_info": null, "exc_text": null, "filename": "test.py", @@ -7172,44 +4305,44 @@ "lineno": 26, "message": "Expectation (Media data for video.3gp): result = { 'width': 800, 'height': 480, 'ratio': 1.6666666666666667, 'duration': 3.964, 'bitrate': 2341765, 'time': 1414948303, 'size': 1160345 } ()", "module": "test", - "msecs": 19.989728927612305, + "msecs": 777.4617671966553, "msg": "Expectation (%s): result = %s (%s)", "name": "__unittest__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 345.2315330505371, + "relativeCreated": 626.8694400787354, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread" } ], - "msecs": 20.07293701171875, + "msecs": 777.5568962097168, "msg": "Media data for video.3gp is correct (Content %s and Type is %s).", "name": "__tLogger__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 345.31474113464355, + "relativeCreated": 626.9645690917969, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread", - "time_consumption": 8.320808410644531e-05 + "time_consumption": 9.512901306152344e-05 }, { "args": [ "{'width': 1920, 'height': 1080, 'ratio': 1.7777777777777777, 'duration': 12.453, 'bitrate': 17883888, 'time': 1503125482, 'size': 27838508}", "" ], - "asctime": "2020-08-29 20:16:24,165", - "created": 1598724984.1652443, + "asctime": "2021-01-14 00:59:07,936", + "created": 1610582347.9361918, "exc_info": null, "exc_text": null, "filename": "test.py", "funcName": "equivalency_chk", "levelname": "INFO", "levelno": 20, - "lineno": 142, + "lineno": 144, "message": "Media data for video.mp4 is correct (Content {'width': 1920, 'height': 1080, 'ratio': 1.7777777777777777, 'duration': 12.453, 'bitrate': 17883888, 'time': 1503125482, 'size': 27838508} and Type is ).", "module": "test", "moduleLogger": [ @@ -7219,8 +4352,8 @@ "{ 'width': 1920, 'height': 1080, 'ratio': 1.7777777777777777, 'duration': 12.453, 'bitrate': 17883888, 'time': 1503125482, 'size': 27838508 }", "" ], - "asctime": "2020-08-29 20:16:24,164", - "created": 1598724984.1649804, + "asctime": "2021-01-14 00:59:07,935", + "created": 1610582347.9359295, "exc_info": null, "exc_text": null, "filename": "test.py", @@ -7230,15 +4363,15 @@ "lineno": 22, "message": "Result (Media data for video.mp4): { 'width': 1920, 'height': 1080, 'ratio': 1.7777777777777777, 'duration': 12.453, 'bitrate': 17883888, 'time': 1503125482, 'size': 27838508 } ()", "module": "test", - "msecs": 164.98041152954102, + "msecs": 935.929536819458, "msg": "Result (%s): %s (%s)", "name": "__unittest__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 490.2222156524658, + "relativeCreated": 785.3372097015381, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread" }, { @@ -7247,8 +4380,8 @@ "{ 'width': 1920, 'height': 1080, 'ratio': 1.7777777777777777, 'duration': 12.453, 'bitrate': 17883888, 'time': 1503125482, 'size': 27838508 }", "" ], - "asctime": "2020-08-29 20:16:24,165", - "created": 1598724984.165148, + "asctime": "2021-01-14 00:59:07,936", + "created": 1610582347.9361064, "exc_info": null, "exc_text": null, "filename": "test.py", @@ -7258,111 +4391,55 @@ "lineno": 26, "message": "Expectation (Media data for video.mp4): result = { 'width': 1920, 'height': 1080, 'ratio': 1.7777777777777777, 'duration': 12.453, 'bitrate': 17883888, 'time': 1503125482, 'size': 27838508 } ()", "module": "test", - "msecs": 165.1480197906494, + "msecs": 936.1064434051514, "msg": "Expectation (%s): result = %s (%s)", "name": "__unittest__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 490.3898239135742, + "relativeCreated": 785.5141162872314, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread" } ], - "msecs": 165.24434089660645, + "msecs": 936.1917972564697, "msg": "Media data for video.mp4 is correct (Content %s and Type is %s).", "name": "__tLogger__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 490.48614501953125, + "relativeCreated": 785.5994701385498, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread", - "time_consumption": 9.632110595703125e-05 + "time_consumption": 8.535385131835938e-05 }, { "args": [ "{'width': 320, 'height': 240, 'duration': 26.531264, 'bitrate': 840554, 'time': 1086778620, 'size': 2787622}", "" ], - "asctime": "2020-08-29 20:16:24,215", - "created": 1598724984.2156014, + "asctime": "2021-01-14 00:59:07,989", + "created": 1610582347.9896364, "exc_info": null, "exc_text": null, "filename": "test.py", "funcName": "equivalency_chk", "levelname": "INFO", "levelno": 20, - "lineno": 142, + "lineno": 144, "message": "Media data for video_special_time.avi is correct (Content {'width': 320, 'height': 240, 'duration': 26.531264, 'bitrate': 840554, 'time': 1086778620, 'size': 2787622} and Type is ).", "module": "test", "moduleLogger": [ - { - "args": [ - "'N/A'", - "ratio", - "ratio" - ], - "asctime": "2020-08-29 20:16:24,214", - "created": 1598724984.2148387, - "exc_info": null, - "exc_text": null, - "filename": "metadata.py", - "funcName": "__get_xxprobe_data__", - "levelname": "WARNING", - "levelno": 30, - "lineno": 103, - "message": "Can't convert 'N/A' (ratio) for ratio", - "module": "metadata", - "msecs": 214.83874320983887, - "msg": "Can't convert %s (%s) for %s", - "name": "MEDIA", - "pathname": "src/media/metadata.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 540.0805473327637, - "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, - { - "args": [ - "'N/A'", - "duration", - "duration" - ], - "asctime": "2020-08-29 20:16:24,215", - "created": 1598724984.2151425, - "exc_info": null, - "exc_text": null, - "filename": "metadata.py", - "funcName": "__get_xxprobe_data__", - "levelname": "WARNING", - "levelno": 30, - "lineno": 103, - "message": "Can't convert 'N/A' (duration) for duration", - "module": "metadata", - "msecs": 215.14248847961426, - "msg": "Can't convert %s (%s) for %s", - "name": "MEDIA", - "pathname": "src/media/metadata.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 540.3842926025391, - "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, { "args": [ "Media data for video_special_time.avi", "{ 'width': 320, 'height': 240, 'duration': 26.531264, 'bitrate': 840554, 'time': 1086778620, 'size': 2787622 }", "" ], - "asctime": "2020-08-29 20:16:24,215", - "created": 1598724984.2154577, + "asctime": "2021-01-14 00:59:07,989", + "created": 1610582347.98934, "exc_info": null, "exc_text": null, "filename": "test.py", @@ -7372,15 +4449,15 @@ "lineno": 22, "message": "Result (Media data for video_special_time.avi): { 'width': 320, 'height': 240, 'duration': 26.531264, 'bitrate': 840554, 'time': 1086778620, 'size': 2787622 } ()", "module": "test", - "msecs": 215.45767784118652, + "msecs": 989.34006690979, "msg": "Result (%s): %s (%s)", "name": "__unittest__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 540.6994819641113, + "relativeCreated": 838.7477397918701, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread" }, { @@ -7389,8 +4466,8 @@ "{ 'width': 320, 'height': 240, 'duration': 26.531264, 'bitrate': 840554, 'time': 1086778620, 'size': 2787622 }", "" ], - "asctime": "2020-08-29 20:16:24,215", - "created": 1598724984.2155287, + "asctime": "2021-01-14 00:59:07,989", + "created": 1610582347.9895322, "exc_info": null, "exc_text": null, "filename": "test.py", @@ -7400,44 +4477,44 @@ "lineno": 26, "message": "Expectation (Media data for video_special_time.avi): result = { 'width': 320, 'height': 240, 'duration': 26.531264, 'bitrate': 840554, 'time': 1086778620, 'size': 2787622 } ()", "module": "test", - "msecs": 215.5287265777588, + "msecs": 989.5322322845459, "msg": "Expectation (%s): result = %s (%s)", "name": "__unittest__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 540.7705307006836, + "relativeCreated": 838.939905166626, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread" } ], - "msecs": 215.60144424438477, + "msecs": 989.6364212036133, "msg": "Media data for video_special_time.avi is correct (Content %s and Type is %s).", "name": "__tLogger__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 540.8432483673096, + "relativeCreated": 839.0440940856934, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread", - "time_consumption": 7.271766662597656e-05 + "time_consumption": 0.00010418891906738281 }, { "args": [ "{'width': 640, 'height': 480, 'ratio': 1.3333333333333333, 'duration': 11.016, 'bitrate': 2153411, 'size': 2965248, 'time': 1158528375, 'tm_is_subst': True}", "" ], - "asctime": "2020-08-29 20:16:24,269", - "created": 1598724984.2698467, + "asctime": "2021-01-14 00:59:08,047", + "created": 1610582348.0474625, "exc_info": null, "exc_text": null, "filename": "test.py", "funcName": "equivalency_chk", "levelname": "INFO", "levelno": 20, - "lineno": 142, + "lineno": 144, "message": "Media data for video_no_date.avi is correct (Content {'width': 640, 'height': 480, 'ratio': 1.3333333333333333, 'duration': 11.016, 'bitrate': 2153411, 'size': 2965248, 'time': 1158528375, 'tm_is_subst': True} and Type is ).", "module": "test", "moduleLogger": [ @@ -7447,8 +4524,8 @@ "{ 'width': 640, 'height': 480, 'ratio': 1.3333333333333333, 'duration': 11.016, 'bitrate': 2153411, 'size': 2965248, 'time': 1158528375, 'tm_is_subst': True }", "" ], - "asctime": "2020-08-29 20:16:24,269", - "created": 1598724984.2695417, + "asctime": "2021-01-14 00:59:08,047", + "created": 1610582348.0471385, "exc_info": null, "exc_text": null, "filename": "test.py", @@ -7458,15 +4535,15 @@ "lineno": 22, "message": "Result (Media data for video_no_date.avi): { 'width': 640, 'height': 480, 'ratio': 1.3333333333333333, 'duration': 11.016, 'bitrate': 2153411, 'size': 2965248, 'time': 1158528375, 'tm_is_subst': True } ()", "module": "test", - "msecs": 269.54174041748047, + "msecs": 47.13845252990723, "msg": "Result (%s): %s (%s)", "name": "__unittest__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 594.7835445404053, + "relativeCreated": 896.5461254119873, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread" }, { @@ -7475,8 +4552,8 @@ "{ 'width': 640, 'height': 480, 'ratio': 1.3333333333333333, 'duration': 11.016, 'bitrate': 2153411, 'time': 1158528375, 'tm_is_subst': True, 'size': 2965248 }", "" ], - "asctime": "2020-08-29 20:16:24,269", - "created": 1598724984.269737, + "asctime": "2021-01-14 00:59:08,047", + "created": 1610582348.0473437, "exc_info": null, "exc_text": null, "filename": "test.py", @@ -7486,41 +4563,41 @@ "lineno": 26, "message": "Expectation (Media data for video_no_date.avi): result = { 'width': 640, 'height': 480, 'ratio': 1.3333333333333333, 'duration': 11.016, 'bitrate': 2153411, 'time': 1158528375, 'tm_is_subst': True, 'size': 2965248 } ()", "module": "test", - "msecs": 269.73700523376465, + "msecs": 47.34373092651367, "msg": "Expectation (%s): result = %s (%s)", "name": "__unittest__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 594.9788093566895, + "relativeCreated": 896.7514038085938, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread" } ], - "msecs": 269.84667778015137, + "msecs": 47.46246337890625, "msg": "Media data for video_no_date.avi is correct (Content %s and Type is %s).", "name": "__tLogger__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 595.0884819030762, + "relativeCreated": 896.8701362609863, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread", - "time_consumption": 0.00010967254638671875 + "time_consumption": 0.00011873245239257812 } ], - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread", - "time_consumption": 0.529137372970581, - "time_finished": "2020-08-29 20:16:24,269", - "time_start": "2020-08-29 20:16:23,740" + "time_consumption": 0.7477762699127197, + "time_finished": "2021-01-14 00:59:08,047", + "time_start": "2021-01-14 00:59:07,299" }, "_wvLDcEYCEequ74M7usLaPw": { "args": null, - "asctime": "2020-08-29 20:16:24,991", - "created": 1598724984.9910464, + "asctime": "2021-01-14 00:59:08,798", + "created": 1610582348.7981238, "exc_info": null, "exc_text": null, "filename": "__init__.py", @@ -7531,13 +4608,13 @@ "message": "_wvLDcEYCEequ74M7usLaPw", "module": "__init__", "moduleLogger": [], - "msecs": 991.0464286804199, + "msecs": 798.123836517334, "msg": "_wvLDcEYCEequ74M7usLaPw", "name": "__tLogger__", "pathname": "/user_data/data/dirk/prj/unittest/media/unittest/src/tests/__init__.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 1316.2882328033447, + "relativeCreated": 1647.531509399414, "stack_info": null, "testcaseLogger": [ { @@ -7545,52 +4622,26 @@ "True", "" ], - "asctime": "2020-08-29 20:16:25,179", - "created": 1598724985.1796708, + "asctime": "2021-01-14 00:59:08,992", + "created": 1610582348.9929388, "exc_info": null, "exc_text": null, "filename": "test.py", "funcName": "equivalency_chk", "levelname": "INFO", "levelno": 20, - "lineno": 142, + "lineno": 144, "message": "Filecompare for image_data.jpg is correct (Content True and Type is ).", "module": "test", "moduleLogger": [ - { - "args": [ - "'/user_data/data/dirk/prj/unittest/media/unittest/input_data/image_exif_no_gps.jpg'" - ], - "asctime": "2020-08-29 20:16:25,093", - "created": 1598724985.093121, - "exc_info": null, - "exc_text": null, - "filename": "__init__.py", - "funcName": "load_from_file", - "levelname": "DEBUG", - "levelno": 10, - "lineno": 116, - "message": "loading image from '/user_data/data/dirk/prj/unittest/media/unittest/input_data/image_exif_no_gps.jpg'", - "module": "__init__", - "msecs": 93.12105178833008, - "msg": "loading image from %s", - "name": "MEDIA", - "pathname": "src/media/__init__.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 1418.3628559112549, - "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, { "args": [ "Filecompare for image_data.jpg", "True", "" ], - "asctime": "2020-08-29 20:16:25,179", - "created": 1598724985.1795387, + "asctime": "2021-01-14 00:59:08,992", + "created": 1610582348.9927306, "exc_info": null, "exc_text": null, "filename": "test.py", @@ -7600,15 +4651,15 @@ "lineno": 22, "message": "Result (Filecompare for image_data.jpg): True ()", "module": "test", - "msecs": 179.53872680664062, + "msecs": 992.7306175231934, "msg": "Result (%s): %s (%s)", "name": "__unittest__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 1504.7805309295654, + "relativeCreated": 1842.1382904052734, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread" }, { @@ -7617,8 +4668,8 @@ "True", "" ], - "asctime": "2020-08-29 20:16:25,179", - "created": 1598724985.1796253, + "asctime": "2021-01-14 00:59:08,992", + "created": 1610582348.9928594, "exc_info": null, "exc_text": null, "filename": "test.py", @@ -7628,41 +4679,41 @@ "lineno": 26, "message": "Expectation (Filecompare for image_data.jpg): result = True ()", "module": "test", - "msecs": 179.6252727508545, + "msecs": 992.8593635559082, "msg": "Expectation (%s): result = %s (%s)", "name": "__unittest__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 1504.8670768737793, + "relativeCreated": 1842.2670364379883, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread" } ], - "msecs": 179.6708106994629, + "msecs": 992.938756942749, "msg": "Filecompare for image_data.jpg is correct (Content %s and Type is %s).", "name": "__tLogger__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 1504.9126148223877, + "relativeCreated": 1842.346429824829, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread", - "time_consumption": 4.553794860839844e-05 + "time_consumption": 7.939338684082031e-05 } ], - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread", - "time_consumption": 0.18862438201904297, - "time_finished": "2020-08-29 20:16:25,179", - "time_start": "2020-08-29 20:16:24,991" + "time_consumption": 0.19481492042541504, + "time_finished": "2021-01-14 00:59:08,992", + "time_start": "2021-01-14 00:59:08,798" }, "_zQ29EEYCEequ74M7usLaPw": { "args": null, - "asctime": "2020-08-29 20:16:25,183", - "created": 1598724985.1837823, + "asctime": "2021-01-14 00:59:08,996", + "created": 1610582348.9964385, "exc_info": null, "exc_text": null, "filename": "__init__.py", @@ -7673,13 +4724,13 @@ "message": "_zQ29EEYCEequ74M7usLaPw", "module": "__init__", "moduleLogger": [], - "msecs": 183.78233909606934, + "msecs": 996.4385032653809, "msg": "_zQ29EEYCEequ74M7usLaPw", "name": "__tLogger__", "pathname": "/user_data/data/dirk/prj/unittest/media/unittest/src/tests/__init__.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 1509.0241432189941, + "relativeCreated": 1845.846176147461, "stack_info": null, "testcaseLogger": [ { @@ -7687,78 +4738,26 @@ "True", "" ], - "asctime": "2020-08-29 20:16:25,319", - "created": 1598724985.3192937, + "asctime": "2021-01-14 00:59:09,124", + "created": 1610582349.1245594, "exc_info": null, "exc_text": null, "filename": "test.py", "funcName": "equivalency_chk", "levelname": "INFO", "levelno": 20, - "lineno": 142, + "lineno": 144, "message": "Returnvalue of successful resize method is correct (Content True and Type is ).", "module": "test", "moduleLogger": [ - { - "args": [ - "'/user_data/data/dirk/prj/unittest/media/unittest/input_data/image_exif_gps.jpg'" - ], - "asctime": "2020-08-29 20:16:25,312", - "created": 1598724985.3129094, - "exc_info": null, - "exc_text": null, - "filename": "__init__.py", - "funcName": "load_from_file", - "levelname": "DEBUG", - "levelno": 10, - "lineno": 116, - "message": "loading image from '/user_data/data/dirk/prj/unittest/media/unittest/input_data/image_exif_gps.jpg'", - "module": "__init__", - "msecs": 312.9093647003174, - "msg": "loading image from %s", - "name": "MEDIA", - "pathname": "src/media/__init__.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 1638.1511688232422, - "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, - { - "args": [ - 300 - ], - "asctime": "2020-08-29 20:16:25,313", - "created": 1598724985.3130522, - "exc_info": null, - "exc_text": null, - "filename": "__init__.py", - "funcName": "resize", - "levelname": "DEBUG", - "levelno": 10, - "lineno": 141, - "message": "Resizing picture to max 300 pixel in whatever direction", - "module": "__init__", - "msecs": 313.0521774291992, - "msg": "Resizing picture to max %d pixel in whatever direction", - "name": "MEDIA", - "pathname": "src/media/__init__.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 1638.293981552124, - "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, { "args": [ "Returnvalue of successful resize method", "True", "" ], - "asctime": "2020-08-29 20:16:25,319", - "created": 1598724985.3191264, + "asctime": "2021-01-14 00:59:09,124", + "created": 1610582349.1243987, "exc_info": null, "exc_text": null, "filename": "test.py", @@ -7768,15 +4767,15 @@ "lineno": 22, "message": "Result (Returnvalue of successful resize method): True ()", "module": "test", - "msecs": 319.1263675689697, + "msecs": 124.39870834350586, "msg": "Result (%s): %s (%s)", "name": "__unittest__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 1644.3681716918945, + "relativeCreated": 1973.806381225586, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread" }, { @@ -7785,8 +4784,8 @@ "True", "" ], - "asctime": "2020-08-29 20:16:25,319", - "created": 1598724985.3192487, + "asctime": "2021-01-14 00:59:09,124", + "created": 1610582349.1245084, "exc_info": null, "exc_text": null, "filename": "test.py", @@ -7796,81 +4795,55 @@ "lineno": 26, "message": "Expectation (Returnvalue of successful resize method): result = True ()", "module": "test", - "msecs": 319.2486763000488, + "msecs": 124.50838088989258, "msg": "Expectation (%s): result = %s (%s)", "name": "__unittest__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 1644.4904804229736, + "relativeCreated": 1973.9160537719727, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread" } ], - "msecs": 319.293737411499, + "msecs": 124.55940246582031, "msg": "Returnvalue of successful resize method is correct (Content %s and Type is %s).", "name": "__tLogger__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 1644.5355415344238, + "relativeCreated": 1973.9670753479004, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread", - "time_consumption": 4.506111145019531e-05 + "time_consumption": 5.1021575927734375e-05 }, { "args": [ "300", "" ], - "asctime": "2020-08-29 20:16:25,320", - "created": 1598724985.3204536, + "asctime": "2021-01-14 00:59:09,125", + "created": 1610582349.1257198, "exc_info": null, "exc_text": null, "filename": "test.py", "funcName": "equivalency_chk", "levelname": "INFO", "levelno": 20, - "lineno": 142, + "lineno": 144, "message": "Resulution of resized image is correct (Content 300 and Type is ).", "module": "test", "moduleLogger": [ - { - "args": [ - "'/user_data/data/dirk/prj/unittest/media/unittest/output_data/resized_image.jpg'" - ], - "asctime": "2020-08-29 20:16:25,319", - "created": 1598724985.3193824, - "exc_info": null, - "exc_text": null, - "filename": "__init__.py", - "funcName": "save", - "levelname": "DEBUG", - "levelno": 10, - "lineno": 124, - "message": "Saving image to '/user_data/data/dirk/prj/unittest/media/unittest/output_data/resized_image.jpg'", - "module": "__init__", - "msecs": 319.3824291229248, - "msg": "Saving image to %s", - "name": "MEDIA", - "pathname": "src/media/__init__.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 1644.6242332458496, - "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, { "args": [ "Resulution of resized image", "300", "" ], - "asctime": "2020-08-29 20:16:25,320", - "created": 1598724985.3203554, + "asctime": "2021-01-14 00:59:09,125", + "created": 1610582349.125621, "exc_info": null, "exc_text": null, "filename": "test.py", @@ -7880,15 +4853,15 @@ "lineno": 22, "message": "Result (Resulution of resized image): 300 ()", "module": "test", - "msecs": 320.3554153442383, + "msecs": 125.62108039855957, "msg": "Result (%s): %s (%s)", "name": "__unittest__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 1645.597219467163, + "relativeCreated": 1975.0287532806396, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread" }, { @@ -7897,8 +4870,8 @@ "300", "" ], - "asctime": "2020-08-29 20:16:25,320", - "created": 1598724985.3204107, + "asctime": "2021-01-14 00:59:09,125", + "created": 1610582349.1256766, "exc_info": null, "exc_text": null, "filename": "test.py", @@ -7908,79 +4881,55 @@ "lineno": 26, "message": "Expectation (Resulution of resized image): result = 300 ()", "module": "test", - "msecs": 320.41072845458984, + "msecs": 125.67663192749023, "msg": "Expectation (%s): result = %s (%s)", "name": "__unittest__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 1645.6525325775146, + "relativeCreated": 1975.0843048095703, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread" } ], - "msecs": 320.4536437988281, + "msecs": 125.71978569030762, "msg": "Resulution of resized image is correct (Content %s and Type is %s).", "name": "__tLogger__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 1645.695447921753, + "relativeCreated": 1975.1274585723877, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread", - "time_consumption": 4.291534423828125e-05 + "time_consumption": 4.315376281738281e-05 }, { "args": [ "False", "" ], - "asctime": "2020-08-29 20:16:25,320", - "created": 1598724985.3206787, + "asctime": "2021-01-14 00:59:09,125", + "created": 1610582349.1258855, "exc_info": null, "exc_text": null, "filename": "test.py", "funcName": "equivalency_chk", "levelname": "INFO", "levelno": 20, - "lineno": 142, + "lineno": 144, "message": "Returnvalue of failed resize method is correct (Content False and Type is ).", "module": "test", "moduleLogger": [ - { - "args": [], - "asctime": "2020-08-29 20:16:25,320", - "created": 1598724985.320532, - "exc_info": null, - "exc_text": null, - "filename": "__init__.py", - "funcName": "resize", - "levelname": "WARNING", - "levelno": 30, - "lineno": 138, - "message": "No image available to be resized", - "module": "__init__", - "msecs": 320.53208351135254, - "msg": "No image available to be resized", - "name": "MEDIA", - "pathname": "src/media/__init__.py", - "process": 47545, - "processName": "MainProcess", - "relativeCreated": 1645.7738876342773, - "stack_info": null, - "thread": 140223083710272, - "threadName": "MainThread" - }, { "args": [ "Returnvalue of failed resize method", "False", "" ], - "asctime": "2020-08-29 20:16:25,320", - "created": 1598724985.3205733, + "asctime": "2021-01-14 00:59:09,125", + "created": 1610582349.1258063, "exc_info": null, "exc_text": null, "filename": "test.py", @@ -7990,15 +4939,15 @@ "lineno": 22, "message": "Result (Returnvalue of failed resize method): False ()", "module": "test", - "msecs": 320.5733299255371, + "msecs": 125.80633163452148, "msg": "Result (%s): %s (%s)", "name": "__unittest__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 1645.815134048462, + "relativeCreated": 1975.2140045166016, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread" }, { @@ -8007,8 +4956,8 @@ "False", "" ], - "asctime": "2020-08-29 20:16:25,320", - "created": 1598724985.3206325, + "asctime": "2021-01-14 00:59:09,125", + "created": 1610582349.1258485, "exc_info": null, "exc_text": null, "filename": "test.py", @@ -8018,40 +4967,40 @@ "lineno": 26, "message": "Expectation (Returnvalue of failed resize method): result = False ()", "module": "test", - "msecs": 320.6324577331543, + "msecs": 125.84853172302246, "msg": "Expectation (%s): result = %s (%s)", "name": "__unittest__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 1645.874261856079, + "relativeCreated": 1975.2562046051025, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread" } ], - "msecs": 320.6787109375, + "msecs": 125.8854866027832, "msg": "Returnvalue of failed resize method is correct (Content %s and Type is %s).", "name": "__tLogger__", "pathname": "src/unittest/test.py", - "process": 47545, + "process": 21433, "processName": "MainProcess", - "relativeCreated": 1645.9205150604248, + "relativeCreated": 1975.2931594848633, "stack_info": null, - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread", - "time_consumption": 4.6253204345703125e-05 + "time_consumption": 3.695487976074219e-05 } ], - "thread": 140223083710272, + "thread": 140195114268480, "threadName": "MainThread", - "time_consumption": 0.13689637184143066, - "time_finished": "2020-08-29 20:16:25,320", - "time_start": "2020-08-29 20:16:25,183" + "time_consumption": 0.12944698333740234, + "time_finished": "2021-01-14 00:59:09,125", + "time_start": "2021-01-14 00:59:08,996" } }, "testrun_id": "p3", - "time_consumption": 5.086660623550415, + "time_consumption": 5.461077928543091, "uid_list_sorted": [ "_XzMFcHYZEem_kd-7nxt1sg", "_Fv7V4EYCEequ74M7usLaPw", diff --git a/_testresults_/unittest.pdf b/_testresults_/unittest.pdf index f9654a543f7ff1433b6187cda51efa70d094e68d..be58d27a827eabac3fce46688d17cad7c601ddf4 100644 GIT binary patch delta 109082 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