lets write some tests for it