refactoring und tests, re #3425

git-svn-id: svn://develop.studip.de/studip/trunk@26668 c5b85792-5220-0410-ad23-ed5b6b8ad999