def test_csv_quoted(self): readers = [ CSVReaderPerThread(os.path.join(os.path.dirname(__file__), "resources/data/quoted_utf8.csv"), loop=False), CSVReaderPerThread(os.path.join(os.path.dirname(__file__), "resources/data/quoted_utf16.csv"), loop=False), CSVReaderPerThread(os.path.join( os.path.dirname(__file__), "resources/data/unquoted_utf8.csv"), loop=False), CSVReaderPerThread(os.path.join( os.path.dirname(__file__), "resources/data/unquoted_utf16.csv"), loop=False) ] readers_data = [] for reader in readers: reader.read_vars() readers_data.append(reader.get_vars()) result = {'ac1': '1', 'bc1': '2', 'cc1': '3'} for data in readers_data: self.assertEqual(data, result)
def test_csv_encoding(self): reader_utf8 = CSVReaderPerThread(os.path.join(RESOURCES_DIR, "data/encoding_utf8.csv"), loop=False) reader_utf16 = CSVReaderPerThread(os.path.join(RESOURCES_DIR, "data/encoding_utf16.csv"), loop=False) data_utf8, data_utf16 = [], [] reader_utf8.read_vars() data_utf8.append(reader_utf8.get_vars()) reader_utf16.read_vars() data_utf16.append(reader_utf16.get_vars()) self.assertEqual(data_utf8, data_utf16)
def test_reader_without_loop(self): """ check different reading speed, fieldnames and separators """ reader = CSVReaderPerThread(os.path.join(RESOURCES_DIR, "data/source0.csv"), loop=False) data = [] try: for i in range(20): reader.read_vars() data.append(reader.get_vars()) except NormalShutdown: self.assertEqual(6, len(data)) return self.fail()
def test_csv_delimiter(self): readers = [ CSVReaderPerThread(os.path.join(RESOURCES_DIR, "data/encoding_utf8.csv"), loop=False), CSVReaderPerThread(os.path.join(RESOURCES_DIR, "data/delimiter_tab.csv"), loop=False), CSVReaderPerThread(os.path.join(RESOURCES_DIR, "data/delimiter_semicolon.csv"), loop=False)] readers_data = [] for reader in readers: reader.read_vars() readers_data.append(reader.get_vars()) result = {'ac1': '1', 'bc1': '2', 'cc1': '3'} for data in readers_data: self.assertEqual(data, result)
def test_csv_encoding(self): reader_utf8 = CSVReaderPerThread(os.path.join(os.path.dirname(__file__), "resources/data/encoding_utf8.csv"), loop=False) reader_utf16 = CSVReaderPerThread(os.path.join(os.path.dirname(__file__), "resources/data/encoding_utf16.csv"), loop=False) data_utf8, data_utf16 = [], [] reader_utf8.read_vars() data_utf8.append(reader_utf8.get_vars()) reader_utf16.read_vars() data_utf16.append(reader_utf16.get_vars()) self.assertEqual(data_utf8, data_utf16)
import os import unittest import apiritif from apiritif.thread import get_index, get_iteration from apiritif.csv import CSVReaderPerThread reader = CSVReaderPerThread(os.path.join(os.path.dirname(__file__), "data/source0.csv"), loop=False) def log_it(name, data): log_line = "%s-%s. %s:%s\n" % (get_index(), name, data["name"], data["pass"]) with apiritif.transaction(log_line): # write log_line into report file for checking purposes pass def setup(): # setup_module if get_iteration() > 6: # do one pass to set stop_cause once return reader.read_vars() # class Test0(unittest.TestCase): def test_00(self): log_it("00", reader.get_vars()) if get_iteration() > 5: raise BaseException("!!!")
import os import unittest import apiritif from apiritif.thread import get_index from apiritif.csv import CSVReaderPerThread reader0 = CSVReaderPerThread(os.path.join(os.path.dirname(__file__), "data/source0.csv"), quoted=True) reader1 = CSVReaderPerThread(os.path.join(os.path.dirname(__file__), "data/source1.csv"), fieldnames=["name+", "pass+"], delimiter="-") def log_it(name, data): variables = ":".join((data["name"], data["pass"], data["name+"], data["pass+"])) log_line = "%s-%s. %s\n" % (get_index(), name, variables) with apiritif.transaction(log_line): # write log_line into report file for checking purposes pass def setup(): # setup_module reader0.read_vars() reader1.read_vars() class Test1(unittest.TestCase): def setUp(self): self.vars = {} self.vars.update(reader0.get_vars()) self.vars.update(reader1.get_vars())