-written some unit tests