Config file checking 2
With a list of checks defined, I cracked on with actually coding the checks. Well, I cracked on with the coding after numbering my checks list so I could place a suitable reference in the code comments.
The first check, numbered 0 (due to it being needed to carrying out all the other checks), was to confirm the existence of the album.yaml file, and that it could be parsed successfully by the YAML parser. I made good use of Python's try/except blocks to catch errors generated during that process.
With that fundamental check in place I started on the rest, placing my code in a check() function, which can also take a track number as an argument to check just one track of the release. This will still check the album section however, as that still contains info required for the construction process.
I decided to skip check 2, 'File version', as I know this file will be compatible (it is a feature I envisage being useful further down the line). Otherwise I completed down to check 6 before running out of time.