restructure unit tests