in lambdas/files_generator/app.py [0:0]
def generateFiles(bucket, numberOfFiles):
xmlTemplate = """<nf>
<tpAmb>2</tpAmb>
<tpTransm>N</tpTransm>
<dhTransm>{}</dhTransm>
<infLeitura>
<cUF>11</cUF>
<dhPass>2021-07-23T21:14:00-03:00</dhPass>
<CNPJOper>76500680000174</CNPJOper>
<cEQP>012345678901234</cEQP>
<latitude>1.970942</latitude>
<longitude>6.680008</longitude>
<tpSentido>E</tpSentido>
<placa>{}</placa>
<tpVeiculo>3</tpVeiculo>
<velocidade>120</velocidade>
<foto>cXVhZXF1YWVxdWFlcXVhZQ==</foto>
<indiceConfianca>95</indiceConfianca>
<pesoBrutoTotal>120</pesoBrutoTotal>
<nroEixos>3</nroEixos>
</infLeitura>
</nf>"""
#Generating WELL-FORMED files
for x in range(numberOfFiles):
logger.debug({
"message": "Generating file {} out of {}".format(x, numberOfFiles)
})
isValid = bool(random.getrandbits(1))
placa = "AWS2022" if isValid else "AWS20222"
timeNow = datetime.now()
xmlBody = xmlTemplate.format(timeNow, placa).encode("utf-8")
key = "nf-{}.xml".format(time.time())
s3.Bucket(bucket).put_object(Key=key, Body=xmlBody)
#Generating BAD-FORMED files(20%)
numberOfIncorrectFiles = round(numberOfFiles * _incorrect_factor)
for x in range(numberOfIncorrectFiles):
logger.debug({
"message": "Generating bad-formated file {} out of {}".format(x, numberOfIncorrectFiles)
})
placa = "AWS2022"
timeNow = datetime.now()
xmlBody = xmlTemplate.format(timeNow, placa).replace("</infLeitura>", "").encode("utf-8")
key = "invalid-nf-{}.xml".format(time.time())
s3.Bucket(bucket).put_object(Key=key, Body=xmlBody)