class FileTestMixin(object): def setUp(self): with warnings.catch_warnings(): warnings.simplefilter('ignore', RuntimeWarning) self.filename = tempfile.mktemp(suffix=self.file_extension) self.fp = MWKFile(self.filename) def tearDown(self): self.fp.close() # OK to close even if not opened if os.path.exists(self.filename): try: self.fp.unindex() except mworks.data.IndexingException: pass os.remove(self.filename) def create_file(self, events=()): fp = self.file_writer(self.filename) for code, time, data in events: fp.write_event(code, time, data) def open_file(self): self.fp.open() def assertEvent(self, evt, code, time, value): self.assertIsInstance(evt, EventWrapper) self.assertFalse(evt.empty) self.assertIsInstance(evt.code, int) self.assertEqual(code, evt.code) self.assertIsInstance(evt.time, (int, long)) self.assertEqual(time, evt.time) self.assertIsInstance(evt.value, type(value)) self.assertEqual(value, evt.value) # Alternative name for value self.assertIsInstance(evt.data, type(evt.value)) self.assertEqual(evt.value, evt.data)
class MWKFileTestMixin(DataTestMixin): def setUp(self): with warnings.catch_warnings(): warnings.simplefilter("ignore", RuntimeWarning) self.filename = os.tempnam() + ".mwk" self.fp = MWKFile(self.filename) def tearDown(self): self.fp.close() # OK to close even if not opened if os.path.exists(self.filename): try: self.fp.unindex() except mworks.data.IndexingException: pass os.remove(self.filename) def create_file(self, events=()): with MWKStream._create_file(self.filename) as fp: for evt in events: fp._write(evt) def open_file(self): self.fp.open()
class MWKFileTestMixin(DataTestMixin): def setUp(self): with warnings.catch_warnings(): warnings.simplefilter('ignore', RuntimeWarning) self.filename = os.tempnam() + '.mwk' self.fp = MWKFile(self.filename) def tearDown(self): self.fp.close() # OK to close even if not opened if os.path.exists(self.filename): try: self.fp.unindex() except mworks.data.IndexingException: pass os.remove(self.filename) def create_file(self, events=()): with MWKStream._create_file(self.filename) as fp: for evt in events: fp._write(evt) def open_file(self): self.fp.open()