Split up functional_tests into utils and the tests themselves