added some unit test with google mocks