public async Task AddAddressShouldAddAddressCorectly()
        {
            var addressRepository = new Mock <IRepository <Address> >();
            var userRepository    = new Mock <IRepository <ApplicationUser> >();
            var userStoreMock     = new Mock <IUserStore <ApplicationUser> >();
            var userManager       = new Mock <UserManager <ApplicationUser> >(userStoreMock.Object, null, null, null, null, null, null, null, null);

            userRepository.Setup(r => r.All()).Returns(new List <ApplicationUser>
            {
                new ApplicationUser {
                    FirstName = "root"
                },
            }.AsQueryable());

            AddressBindingModel address = new AddressBindingModel();

            var user    = userRepository.Object.All().SingleOrDefault(x => x.FirstName == "root");
            var service = new ApplicationUserService(userRepository.Object, addressRepository.Object, userManager.Object);
            await service.AddAddress <AddressBindingModel>(address, user.Id);

            Assert.Single(userRepository.Object.All().SingleOrDefault(x => x.FirstName == "root").Addresses);
        }