30 lines
1.2 KiB
Python
30 lines
1.2 KiB
Python
from csv_utils import byte_ranges, detect_delimiter
|
|
|
|
|
|
def test_detect_delimiter():
|
|
with open('tests/samples/users.csv') as fp:
|
|
assert detect_delimiter(fp) == ','
|
|
|
|
|
|
def test_byte_ranges():
|
|
csvpath = 'tests/samples/users.csv'
|
|
ranges = byte_ranges(csvpath, 10)
|
|
*_, chunk = ranges
|
|
start_byte, end_byte = chunk
|
|
|
|
assert ranges == [(0, 808), (809, 1655), (1656, 2303)]
|
|
|
|
expected = """,RICARDO GALLES BONET,ricardo.bonet@fanucamerica.com,424.430.528-93,NR-10 (RECICLAGEM)
|
|
,RULIO SIEFERT SERA,rulio.sera@fanucamerica.com,063.916.859-08,NR-10 (RECICLAGEM)
|
|
,MACIEL FERREIRA BOMFIM,maciel.bomfim@fanucamerica.com,334.547.088-85,NR-10 (RECICLAGEM)
|
|
,JAIME EDUARDO GALVEZ AVILES,jaime.galvez@fanucamerica.com,280.238.818-50,NR-12
|
|
,JAIME EDUARDO GALVEZ AVILES,jaime.galvez@fanucamerica.com,280.238.818-50,NR-35 (RECICLAGEM)
|
|
,HIGOR MACHADO SILVA,higor.silva@fanucamerica.com,419.879.878-88,NR-12
|
|
,LÁZARO SOUZA DIAS,lazaro.dias@fanucamerica.com,067.179.825-19,NR-12
|
|
,JOÃO PEDRO AGUIAR GALASSO,joao.pedro@fanucamerica.com,570.403.588-40,NR-12"""
|
|
|
|
with open(csvpath, 'rb') as f:
|
|
f.seek(start_byte)
|
|
data = f.read(end_byte - start_byte + 1)
|
|
assert data.decode('utf-8') == expected
|