split tests into more functions