added some unit tetst