more restructure in tests and more tests