diff --git a/.gitignore b/.gitignore new file mode 100644 index 000000000..9ef62e5ff --- /dev/null +++ b/.gitignore @@ -0,0 +1,5 @@ +__pycache__/ +tape.py +test/ +pytest.ini +website/ \ No newline at end of file diff --git a/scripts/lint.py b/scripts/lint.py index 3eae6198f..d99c6417c 100644 --- a/scripts/lint.py +++ b/scripts/lint.py @@ -1,5 +1,4 @@ import autopep8 -from yapf.yapflib.yapf_api import FormatCode import re import os files = os.listdir('snippets') diff --git a/scripts/readme.py b/scripts/readme.py index 5f72333a6..a95373f45 100644 --- a/scripts/readme.py +++ b/scripts/readme.py @@ -1,4 +1,3 @@ -import os import re codeRe = "```\s*python([\s\S]*?)```" def title_case(str): diff --git a/scripts/tdd.py b/scripts/tdd.py new file mode 100644 index 000000000..d1d5530d1 --- /dev/null +++ b/scripts/tdd.py @@ -0,0 +1,22 @@ +import os,re + +codeRe = "```\s*python([\s\S]*?)```" + +snippets = [string.replace('.md','') for string in os.listdir('snippets')] + +for snippet in snippets: + os.makedirs('test/' + snippet,exist_ok=True) + with open(f'snippets/{snippet}.md','r') as f: + content = f.read() + code = re.search(codeRe,content).group(1).strip() + file_to_write_to = open(f'test/{snippet}/{snippet}.py','w') + test_file = open(f'test/{snippet}/{snippet}_test.py','w') + file_to_write_to.write(code) + file_to_write_to.close() + test_file.write(f''' +import pytest,types,functools +from {snippet} import {snippet} +def {snippet}_test(): + assert isinstance({snippet}, (types.BuiltinFunctionType, types.FunctionType, functools.partial)) + '''.strip()) + test_file.close() \ No newline at end of file