add unit test ! yeah