Quick way to check that all interviews are still properly installed on a docassemble server.
Going to the /list endpoint of a docassemble server actually makes docassemble check if all of the interviews setup with the dispatch block work correctly (or at least that it can load the interview, which is equivalent to loading the first page). If an interview can't load correctly, it's displayed in red with the dainterviewhaserror class, which we can see in the HTML source, and use that info to determine that the interview is broken.
This new action does exactly that with python (BeautifulSoup specifically) in a GitHub action.
Does a similar task to test_production_interviews, though test_production_interviews has more potential. If we want to eventually be able to do more than just confirm that the first page of each interview loads, we'll have to likely pivot to using Kiln somehow.
An example log of when it fails:
Run import bs4
Found these links that aren't installed correctly: [<a class="dainterviewhaserror" href="/start/modify209a/">docassemble.209aPlaintiffMotionToModify:data/questions/209a_plaintiff_s_motion_to_modify.yml</a>, <a class="dainterviewhaserror" href="/start/vacatehome/">docassemble.MAMotiontoVacateMaritalHome:data/questions/Motion to Vacate Marital Home.yml</a>]
Quick way to check that all interviews are still properly installed on a docassemble server.
Going to the
/list
endpoint of a docassemble server actually makes docassemble check if all of the interviews setup with the dispatch block work correctly (or at least that it can load the interview, which is equivalent to loading the first page). If an interview can't load correctly, it's displayed in red with thedainterviewhaserror
class, which we can see in the HTML source, and use that info to determine that the interview is broken.This new action does exactly that with python (BeautifulSoup specifically) in a GitHub action.
Does a similar task to test_production_interviews, though test_production_interviews has more potential. If we want to eventually be able to do more than just confirm that the first page of each interview loads, we'll have to likely pivot to using Kiln somehow.
An example log of when it fails:
And when it succeeds