How to use pass_str method in avocado

Best Python code snippet using avocado_python

generator

Source:generator Github

copy

Full Screen

1#!/usr/bin/python32#-*- coding=utf-8 -*-3from mailmerge import MailMerge4from csv import DictReader5def csv_read(path, d):6 '''7 '''8 9 return DictReader(open(path, 'r'), delimiter=d)10def passport_prepare(pass_str, string_limit):11 '''12 '''13 strlim = int(string_limit)14 passport = ['','','']15 current_id = 016 # TODO: Fix that -17 if len(pass_str) > strlim:18 temp1 = pass_str[:strlim]19 l_pass = temp1.rfind(u' ')20 passport[0] = pass_str[:l_pass]21 pass_str = pass_str[l_pass:]22 if len(pass_str) > strlim:23 temp2 = pass_str[:strlim]24 l_pass = temp2.rfind(u' ')25 passport[1] = pass_str[:l_pass]26 pass_str = pass_str[l_pass:]27 if len(pass_str) > 0:28 passport[2] = pass_str29 else:30 passport[1] = pass_str31 else:32 passport[0] = pass_str33 34 return passport35def fill_form(user, template, string_limit, out_path):36 '''37 '''38 passport = passport_prepare(user['pass_seria']+' '+user['pass_number']+', выдан '+user['pass_wh_date']+' '+user['pass_wh'], string_limit)39 with MailMerge(template) as document:40 document.merge(41 FullName=user['secondname']+' '+user['firstname']+' '+user['thirdname'],42 SurName=user['secondname'],43 GivenName=user['firstname']+' '+user['thirdname'] if user['thirdname'] != '' else user['firstname'],44 Title=user['title'],45 OrgUnit=user['orgunit'],46 Email=user['email'],47 SNILS=user['snils'],48 ShortName=user['secondname']+' '+user['firstname'][0]+'.'+user['thirdname'][0]+'.' if user['thirdname'] != '' else user['secondname']+' '+user['firstname'][0]+'.',49 Passport_1=passport[0],50 Passport_2=passport[1],51 Passport_3=passport[2]52 )53 document.write(out_path+user['email'][:user['email'].find('@')]+".docx")54 55def clicker(users, template, string_limit, out_path):56 '''57 '''58 59 for user in users:60 fill_form(user, template, string_limit, out_path)61 print(user['email'][:user['email'].find('@')]+' done.')62def launcher():63 64 #####65 # Settings66 #####67 # Site168 input_file_s1 = './src/in_s1.csv'69 template_s1 = './templates/form_s1.docx'70 out_path_s1 = './output/s1/'71 # Site272 input_file_s2 = './src/in_s2.csv'73 template_s2_op1 = './templates/form_s2_op1.docx'74 template_s2_op2 = './templates/form_s2_op2.docx'75 out_path_s2 = './output/s2_op1/'76 out_path_s2 = './output/s2_op2/'77 # Site378 input_file_s3 = './src/in_s3.csv'79 template_s3 = './templates/form_s3.docx'80 out_path_s3 = './output/s3/'81 # CSV delimiter82 dlm = ';'83 # Passport string symbol limit on a row84 string_limit = 9885 #####86 # Run87 ####88 89 clicker(csv_read(input_file_s2, dlm), template_s2_op1, string_limit, out_path_s2_op1)90 clicker(csv_read(input_file_s2, dlm), template_s2_op2, string_limit, out_path_s2_op2)91 clicker(csv_read(input_file_s1, dlm), template_s1, string_limit, out_path_s1)92 clicker(csv_read(input_file_s3, dlm), template_s3, string_limit, out_path_s3)93if __name__ == '__main__':...

Full Screen

Full Screen

d2.py

Source:d2.py Github

copy

Full Screen

1with open('data/d2.data') as dataStream:2 rawData = dataStream.read().splitlines()3class Record:4 def __init__(self, word_min, word_max, pass_char, pass_str):5 self.word_min = int(word_min)6 self.word_max = int(word_max)7 self.pass_char = pass_char8 self.pass_str = pass_str9 def __repr__(self):10 return "min {} max {} char {} string {} \n".format(self.word_min, self.word_max, self.pass_char, self.pass_str )11def process_data(data):12 records = []13 for d in data:14 records.append(Record(d[0:d.find('-')], 15 d[d.find('-')+1:d.find(' ')], 16 d[d.find(' ')+1:d.find(':')],17 d[d.find(':')+2:len(d)]))18 return records19def num_valid_partone(tuples):20 print("num tuples:{}".format(len(tuples)) )21 errors = 022 for r in tuples:23 occurences = r.pass_str.count(r.pass_char)24 if occurences < r.word_min:25 errors += 126 elif occurences > r.word_max:27 errors += 128 print("num errors detected:{}".format(errors))29 print("num correct: {}".format(len(tuples) - errors))30def num_invalid(tuples):31 errors=032 for rec in tuples:33 if rec.pass_str[rec.word_min - 1] == rec.pass_char:34 if rec.pass_str[rec.word_max - 1] == rec.pass_char:35 errors += 136 if rec.pass_str[rec.word_min - 1] != rec.pass_char:37 if rec.pass_str[rec.word_max - 1] != rec.pass_char:38 errors += 139 return errors40d = process_data(rawData)...

Full Screen

Full Screen

day4a.py

Source:day4a.py Github

copy

Full Screen

1import re2pass_str = ''3pass_strings = []4valid_count = 05with open("day4.txt") as f:6 for line in f:7 if line.strip() != "":8 if pass_str == '':9 pass_str += line.strip()10 else:11 pass_str += " "12 pass_str += line.strip()13 else:14 pass_strings.append(pass_str)15 pass_str = ''16# I now have a List of passport strings with space-separated values17# print(len(pass_strings))18# patterns = ['byr:[0-9]{4,}', 'iyr:[0-9]{4,}', 'eyr:[0-9]{4,}', 'hgt:[0-9]+[a-z]+', 'hcl:#[0-9a-zA-Z]{6,}', 'ecl:[a-zA-Z]+', 'pid:[0-9]+']19patterns = ['byr:[0-9a-zA-Z#]+', 'iyr:[0-9a-zA-Z#]+', 'eyr:[0-9a-zA-Z#]+', 'hgt:[0-9a-zA-Z#]+', 'hcl:[0-9a-zA-Z#]+', 'ecl:[0-9a-zA-Z#]+', 'pid:[[0-9a-zA-Z#]+']20valid = True21for string in pass_strings:22 for pattern in patterns:23 if not re.search(pattern, string):24 valid = False 25 if valid == True:26 valid_count += 127 else:28 valid = True...

Full Screen

Full Screen

Automation Testing Tutorials

Learn to execute automation testing from scratch with LambdaTest Learning Hub. Right from setting up the prerequisites to run your first automation test, to following best practices and diving deeper into advanced test scenarios. LambdaTest Learning Hubs compile a list of step-by-step guides to help you be proficient with different test automation frameworks i.e. Selenium, Cypress, TestNG etc.

LambdaTest Learning Hubs:

YouTube

You could also refer to video tutorials over LambdaTest YouTube channel to get step by step demonstration from industry experts.

Run avocado automation tests on LambdaTest cloud grid

Perform automation testing on 3000+ real desktop and mobile devices online.

Try LambdaTest Now !!

Get 100 minutes of automation test minutes FREE!!

Next-Gen App & Browser Testing Cloud

Was this article helpful?

Helpful

NotHelpful