Skip to content

Commit

Permalink
Add DictBackend tests
Browse files Browse the repository at this point in the history
  • Loading branch information
terrorfisch committed Mar 7, 2018
1 parent 1df5b4f commit 17a5318
Show file tree
Hide file tree
Showing 2 changed files with 31 additions and 2 deletions.
3 changes: 2 additions & 1 deletion qctoolkit/serialization.py
Expand Up @@ -16,7 +16,8 @@
import tempfile
import json

__all__ = ["StorageBackend", "FilesystemBackend", "ZipFileBackend", "CachingBackend", "Serializable", "Serializer", "AnonymousSerializable"]
__all__ = ["StorageBackend", "FilesystemBackend", "ZipFileBackend", "CachingBackend", "Serializable", "Serializer",
"AnonymousSerializable", "DictBackend"]


class StorageBackend(metaclass=ABCMeta):
Expand Down
30 changes: 29 additions & 1 deletion tests/serialization_tests.py
Expand Up @@ -7,7 +7,7 @@
from typing import Optional, Dict, Any

from qctoolkit.serialization import FilesystemBackend, Serializer, CachingBackend, Serializable, ExtendedJSONEncoder,\
ZipFileBackend, AnonymousSerializable
ZipFileBackend, AnonymousSerializable, DictBackend
from qctoolkit.pulses.table_pulse_template import TablePulseTemplate
from qctoolkit.pulses.sequence_pulse_template import SequencePulseTemplate
from qctoolkit.expressions import Expression
Expand Down Expand Up @@ -281,6 +281,34 @@ def test_get_not_existing(self) -> None:
self.caching_backend.get(name)


class DictBackendTests(unittest.TestCase):
def setUp(self):
self.backend =DictBackend()

def test_put(self):
self.backend.put('a', 'data')

self.assertEqual(self.backend.storage, {'a': 'data'})

with self.assertRaises(FileExistsError):
self.backend.put('a', 'data2')

def test_get(self):
self.backend.put('a', 'data')
self.backend.put('b', 'data2')

self.assertEqual(self.backend.get('a'), 'data')
self.assertEqual(self.backend.get('b'), 'data2')

def test_exists(self):
self.backend.put('a', 'data')
self.backend.put('b', 'data2')

self.assertTrue(self.backend.exists('a'))
self.assertTrue(self.backend.exists('b'))
self.assertFalse(self.backend.exists('c'))


class SerializerTests(unittest.TestCase):

def setUp(self) -> None:
Expand Down

0 comments on commit 17a5318

Please sign in to comment.