cookiecutter-django/scripts/check_licenses.py

39 lines
1.3 KiB
Python
Raw Normal View History

import os
import re
from pprint import pprint
from pathlib import Path
# script to check if licenses generated have placeholders not replaced with cookiecutter rendering
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 the first 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 instaces of bracket placeholders to the brackets array, and 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()