def LoadPlugin(self, plugin): '''LoadPlugin(self, plugin) --> None Loads a data handler note that there is no UnLoad function since only one DataHandler can be plugged in at a time. ''' # Unload the plugins names = self.plugin_handler.loaded_plugins.copy() try: [self.plugin_handler.unload_plugin(pl) for pl in names] self.parent.SetStatusText('Unloaded data loader %s' % list(names.keys())[0]) except: #outp = StringIO.StringIO() outp = StringIO() traceback.print_exc(200, outp) tbtext = outp.getvalue() outp.close() ShowErrorDialog(self.parent, 'Can NOT unload plugin object'+ \ list(names.keys())[0] + '\nPython traceback below:\n\n' + tbtext) try: self.plugin_handler.load_plugin(plugin) self.parent.SetStatusText('Loaded data loader: %s' % plugin) except: outp = StringIO() traceback.print_exc(200, outp) tbtext = outp.getvalue() outp.close() ShowErrorDialog(self.parent, 'Can NOT load plugin ' + plugin\ + '\nPython traceback below:\n\n' + tbtext)
def test_truncate(): s = u"1234567890" sio = StringIO(s) raises(ValueError, sio.truncate, -1) sio.seek(6) res = sio.truncate() assert res == 6 assert sio.getvalue() == s[:6] res = sio.truncate(4) assert res == 4 assert sio.getvalue() == s[:4] # truncate() accepts long objects res = sio.truncate(4L) assert res == 4 assert sio.getvalue() == s[:4] assert sio.tell() == 6 sio.seek(0, 2) sio.write(s) assert sio.getvalue() == s[:4] + s pos = sio.tell() res = sio.truncate(None) assert res == pos assert sio.tell() == pos raises(TypeError, sio.truncate, '0') sio.close() raises(ValueError, sio.truncate, 0)
def test_iterator(): s = u"1234567890\n" sio = StringIO(s * 10) assert iter(sio) is sio assert hasattr(sio, "__iter__") assert hasattr(sio, "next") i = 0 for line in sio: assert line == s i += 1 assert i == 10 sio.seek(0) i = 0 for line in sio: assert line == s i += 1 assert i == 10 sio.seek(len(s) * 10 + 1) assert list(sio) == [] sio = StringIO(s * 2) sio.close() raises(ValueError, next, sio)
def wrapper(*args, **kwargs): m = StringIO() temp_func = memory_profiler.profile(func=function, stream=m, precision=4) output = temp_func(*args, **kwargs) print(m.getvalue()) m.close() return output
def test_getstate(): sio = StringIO() state = sio.__getstate__() assert len(state) == 4 assert isinstance(state[0], unicode) assert isinstance(state[1], str) assert isinstance(state[2], int) assert state[3] is None or isinstance(state[3], dict) sio.close() raises(ValueError, sio.__getstate__)
def test_tell(): s = u"1234567890" sio = StringIO(s) assert sio.tell() == 0 sio.seek(5) assert sio.tell() == 5 sio.seek(10000) assert sio.tell() == 10000 sio.close() raises(ValueError, sio.tell)
class FormatTest(unittest.TestCase): """ Test if different format specifiers are correctly printed even if the desired data has non-numerical columns """ fstrings = ["%.1f", "%.3f", "%.5f", "%.9f", "%16.5f", "%21.5f", "%28.5f", "%12.5f", "%9.5g", "%12.1g", "%9g", ] def setUp(self): """Redirect stdout""" self.out = StringIO() sys.stdout = self.out self.ev = IPETEvaluation(index="stringA stringB", indexsplit=1) self.numericcolumn = IPETEvaluationColumn(origcolname="numeric") self.ev.addColumn(self.numericcolumn) self.ev.addColumn(IPETEvaluationColumn(origcolname="Status", active="True", formatstr="%20s")) self.ev.addFilterGroup(IPETFilterGroup(name="FilterGroup")) def tearDown(self): """Close the String IO object""" self.out.close() sys.stdout = sys.__stdout__ def testFormat(self): """Test all fstrings """ for f in self.fstrings: self.numericcolumn.editAttribute("formatstr", f) ret, _ = self.ev.evaluate(HelperExperiment()) self.ev.streamDataFrame(ret, "Test", "stdout") # scan output and check if the formatted value is in there container = self.out.getvalue() mem = " {} ".format(f % val) msg = "Expected formatted number '{}' in output \n{}\n".format(mem, container) self.assertIn(mem, container, msg)
def test_setstate(): sio = StringIO() sio.__setstate__((u"no error", u"\n", 0, None)) sio.__setstate__((u"no error", u"", 0, {"spam": 3})) raises(ValueError, sio.__setstate__, (u"", u"f", 0, None)) raises(ValueError, sio.__setstate__, (u"", u"", -1, None)) raises(TypeError, sio.__setstate__, (b"", u"", 0, None)) raises(TypeError, sio.__setstate__, (u"", u"", 0.0, None)) raises(TypeError, sio.__setstate__, (u"", u"", 0, 0)) raises(TypeError, sio.__setstate__, (u"len-test", 0)) raises(TypeError, sio.__setstate__) raises(TypeError, sio.__setstate__, 0) sio.close() raises(ValueError, sio.__setstate__, (u"closed", u"", 0, None))
def test_capabilities(): sio = StringIO() assert sio.readable() assert sio.writable() assert sio.seekable() assert not sio.isatty() assert not sio.closed assert not sio.line_buffering sio.close() raises(ValueError, sio.readable) raises(ValueError, sio.writable) raises(ValueError, sio.seekable) raises(ValueError, sio.isatty) assert sio.closed assert sio.errors is None
def wrapper(*args, **kwargs): m = StringIO() pr = cProfile.Profile() pr.enable() temp_func = memory_profiler.profile(func=function, stream=m, precision=4) output = temp_func(*args, **kwargs) print(m.getvalue()) pr.disable() ps = pstats.Stats(pr) ps.sort_stats('cumulative').print_stats( '(?!.*memory_profiler.*)(^.*$)', 20) m.close() return output
def getTagAcessorias(self): """ Retorna uma string formatada com as tags acessórias ser incluído nos elementos. Essa implementação padrão possivelmente poderá ser utilizada em todos os widgets descendentes """ result = StringIO() if self.autofocus != None: result.write("autofocus ") if self.title != None: result.write("title='%s' " % self.title) if self.hidden != None: result.write("hidden ") if self.tabindex != None: result.write("tabindex='%d' " % self.tabindex) event_tag = result.getvalue() result.close() return event_tag
def test_seek(): s = u"1234567890" sio = StringIO(s) sio.read(5) sio.seek(0) r = sio.read() assert r == s sio.seek(3) r = sio.read() assert r == s[3:] raises(TypeError, sio.seek, 0.0) exc_info = raises(ValueError, sio.seek, -3) assert exc_info.value.args[0] == "Negative seek position -3" raises(ValueError, sio.seek, 3, -1) raises(ValueError, sio.seek, 3, -3) sio.close() raises(ValueError, sio.seek, 0)
def convert(self, fileName): logging.info("PDFConverter.convert STARTS") resourceManager = PDFResourceManager() retstr = StringIO() codec = 'utf-8' laparams = LAParams() device = TextConverter(resourceManager, retstr, codec=codec, laparams=laparams) filename = os.path.abspath(__file__ + '/../../../../../temp/' + fileName) fp = open(filename, "rb") interpreter = PDFPageInterpreter(resourceManager, device) password = "" maxpages = 0 caching = True pagenos = set() for page in PDFPage.get_pages(fp, pagenos, maxpages=maxpages, password=password, caching=caching, check_extractable=True): interpreter.process_page(page) text = retstr.getvalue() fp.close() device.close() retstr.close() os.remove(filename) logging.info("PDFConverter.convert ENDS") return text
def test_closed(): sio = StringIO() sio.close() raises(ValueError, sio.read, 1) raises(ValueError, sio.write, u"text")
f.write('hello world!!!') print(f.getvalue(), len(f.getvalue())) f.write('hello world!!!') print(f.getvalue(), len(f.getvalue())) f.truncate(0) f.write('start write!') print(f.tell()) print("next:\t", f.getvalue(), len(f.getvalue())) f_test = StringIO('Hello! Hi! Goodbye!') print("1:\t", f_test.read()) print(f_test.getvalue()) print(f_test.getvalue()) print("2:\t", f_test.read()) print("3:\t", f_test.read()) print("4:\t", f_test.read()) print("next:\t", f_test.getvalue(), len(f_test.getvalue())) f_test.close() f.close()