From f1111586108ff9be9c591016a08fd1f59fec166d Mon Sep 17 00:00:00 2001 From: Lisa Zangrando Date: Mon, 3 Oct 2016 14:42:57 +0200 Subject: [PATCH] Added unit tests - moved existing unit tests in synergy/tests/unit - added new unit test: synergy/tests/unit/test_serializer.py Change-Id: I5405570dc3cd11373d02eecf6d9c8181fb083f48 --- synergy/tests/unit/__init__.py | 0 .../tests/{ => unit}/test_manager_abstract.py | 0 .../{ => unit}/test_manager_implementation.py | 0 synergy/tests/unit/test_serializer.py | 58 +++++++++++++++++++ 4 files changed, 58 insertions(+) create mode 100644 synergy/tests/unit/__init__.py rename synergy/tests/{ => unit}/test_manager_abstract.py (100%) rename synergy/tests/{ => unit}/test_manager_implementation.py (100%) create mode 100644 synergy/tests/unit/test_serializer.py diff --git a/synergy/tests/unit/__init__.py b/synergy/tests/unit/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/synergy/tests/test_manager_abstract.py b/synergy/tests/unit/test_manager_abstract.py similarity index 100% rename from synergy/tests/test_manager_abstract.py rename to synergy/tests/unit/test_manager_abstract.py diff --git a/synergy/tests/test_manager_implementation.py b/synergy/tests/unit/test_manager_implementation.py similarity index 100% rename from synergy/tests/test_manager_implementation.py rename to synergy/tests/unit/test_manager_implementation.py diff --git a/synergy/tests/unit/test_serializer.py b/synergy/tests/unit/test_serializer.py new file mode 100644 index 0000000..808a755 --- /dev/null +++ b/synergy/tests/unit/test_serializer.py @@ -0,0 +1,58 @@ +# Licensed under the Apache License, Version 2.0 (the "License"); you may +# not use this file except in compliance with the License. You may obtain +# a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT +# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the +# License for the specific language governing permissions and limitations +# under the License. + +from synergy.common.serializer import SynergyEncoder +from synergy.common.serializer import SynergyObject +from synergy.tests import base + + +class TestSerializer(base.TestCase): + + def setUp(self): + super(TestSerializer, self).setUp() + self.ser = SynergyObject() + + def test_set_get_Id(self): + self.ser.setId('test_id') + self.assertEqual('test_id', self.ser.getId()) + + def test_set_get_Name(self): + self.ser.setName('test_name') + self.assertEqual('test_name', self.ser.getName()) + + def test_set_get(self): + self.ser.set('value', 'test_value') + self.assertEqual('test_value', self.ser.get('value')) + + def test_Serialize(self): + result = self.ser.serialize() + self.assertEqual('1.0', result["synergy_object"]["version"]) + self.assertEqual("synergy", result["synergy_object"]["namespace"]) + + def test_Deserialize(self): + synObj = SynergyObject() + synObj.setName('test_name') + synObjSer = synObj.serialize() + objInst = SynergyObject.deserialize(synObjSer) + self.assertEqual('test_name', objInst.getName()) + + +class TestSynergyEncoder(base.TestCase): + + def setUp(self): + super(TestSynergyEncoder, self).setUp() + self.se = SynergyEncoder() + + def test_SynergyEncoder(self): + synObj = SynergyObject() + synObjEnc = self.se.default(synObj) + self.assertEqual('1.0', synObjEnc["synergy_object"]["version"])