import os import re from pprint import pprint # script to check if licenses generated have placeholders not replaced def check_scripts_for_placeholders(): brackets = [] for filename in os.listdir('../{{cookiecutter.project_slug}}/licenses'): file = open('../{{cookiecutter.project_slug}}/licenses/' + filename, 'r', encoding="utf8") # 'found' stores all found bracket instances found = [] # dashes counts the '---\n' lines in the licenses. # it skips instances of brackets until after 2 as to skip the jekyll header dashes = 0 for i, line in enumerate(file.readlines()): if line == '---\n': dashes += 1 # skips any possible brackets until the jekyll header is skipped if dashes < 2: continue line = re.findall(r'\[.*\]', line) if line != []: found += (i, line) # add any found instances of placeholders to the brackets array # print it after the loop is executed if found != []: brackets += (filename, found) if len(brackets) > 0: print() pprint(brackets) assert(len(brackets) == 0) if __name__ == "__main__": check_scripts_for_placeholders()