diff --git a/pyMetadata/__init__.py b/pyMetadata/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/pyMetadata/sources/result.py b/pyMetadata/sources/result.py index 5db78c7d..2718f8db 100644 --- a/pyMetadata/sources/result.py +++ b/pyMetadata/sources/result.py @@ -10,6 +10,9 @@ class Metadata: summary: str genres: List[str] + def to_dict(self): + return asdict(self) + @dataclass class DataResult: statusType: str diff --git a/pyMetadata/tests/test_result.py b/pyMetadata/tests/test_result.py new file mode 100644 index 00000000..39e263fb --- /dev/null +++ b/pyMetadata/tests/test_result.py @@ -0,0 +1,39 @@ +import unittest +import json +from sources.result import Metadata, DataResult + +class SerializationTest(unittest.TestCase): + def test_metadata_to_json(self): + metadata = Metadata( + title='Sample Title', + altTitle='Alternate Title', + cover='path/to/cover.jpg', + type='Movie', + summary='Lorem ipsum dolor sit amet', + genres=['Action', 'Drama', 'Thriller'] + ) + + metadata_json = json.dumps(metadata.to_dict()) + self.assertIsInstance(metadata_json, str) + + def test_data_result_to_json(self): + metadata = Metadata( + title='Sample Title', + altTitle='Alternate Title', + cover='path/to/cover.jpg', + type='Movie', + summary='Lorem ipsum dolor sit amet', + genres=['Action', 'Drama', 'Thriller'] + ) + + data_result = DataResult( + statusType='SUCCESS', + errorMessage=None, + data=metadata + ) + + data_result_json = json.dumps(data_result.to_dict()) + self.assertIsInstance(data_result_json, str) + +if __name__ == '__main__': + unittest.main()