'%/LICENSE.md': True,
'%/README.md': False,
'%/_extras/discuss.md': True,
- '%/_extras/figures.md': True,
'%/_extras/guide.md': True,
'%/index.md': True,
'%/reference.md': True,
'error',
'output',
'source',
- 'bash',
- 'make',
- 'matlab',
- 'python',
- 'r',
- 'sql'
+ 'language-bash',
+ 'html',
+ 'language-make',
+ 'language-matlab',
+ 'language-python',
+ 'language-r',
+ 'language-shell',
+ 'language-sql'
}
# What fields are required in teaching episode metadata?
for filename in docs.keys():
checker = create_checker(args, filename, docs[filename])
checker.check()
- check_figures(args.source_dir, args.reporter)
args.reporter.report()
reporter.check_field(config_file, 'configuration', config, 'kind', 'lesson')
reporter.check_field(config_file, 'configuration', config, 'carpentry', ('swc', 'dc', 'lc'))
reporter.check_field(config_file, 'configuration', config, 'title')
- reporter.check_field(config_file, 'configuration', config, 'contact')
+ reporter.check_field(config_file, 'configuration', config, 'email')
reporter.check({'values': {'root': '..'}} in config.get('defaults', []),
'configuration',
seen)
-def check_figures(source_dir, reporter):
- """Check that all figures are present and referenced."""
-
- # Get references.
- try:
- all_figures_html = os.path.join(source_dir, '_includes', 'all_figures.html')
- with open(all_figures_html, 'r') as reader:
- text = reader.read()
- figures = P_FIGURE_REFS.findall(text)
- referenced = [os.path.split(f)[1] for f in figures if '/fig/' in f]
- except FileNotFoundError as e:
- reporter.add(all_figures_html,
- 'File not found')
- return
-
- # Get actual image files (ignore non-image files).
- fig_dir_path = os.path.join(source_dir, 'fig')
- actual = [f for f in os.listdir(fig_dir_path) if os.path.splitext(f)[1] in IMAGE_FILE_SUFFIX]
-
- # Report differences.
- unexpected = set(actual) - set(referenced)
- reporter.check(not unexpected,
- None,
- 'Unexpected image files: {0}',
- ', '.join(sorted(unexpected)))
- missing = set(referenced) - set(actual)
- reporter.check(not missing,
- None,
- 'Missing image files: {0}',
- ', '.join(sorted(missing)))
-
-
def create_checker(args, filename, info):
"""Create appropriate checker for file."""