Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using Freelancers.Infrastructure.Security;
- using Freelancers.Infrastructure.UnitOfWork;
- using Freelancers.Model;
- using Freelancers.Model.Interfaces;
- using Moq;
- using NUnit.Framework;
- namespace Freelancers.Services.Tests
- {
- [TestFixture]
- public class UserServiceTests
- {
- private User _user;
- private IUserService _userService;
- private Mock<IUserService> _userServiceMock;
- private Mock<IUserRepository> _userRepositoryMock;
- private Mock<ISecurityService> _securityServiceMock;
- private Mock<IUnitOfWork> _uowMock;
- [SetUp]
- public void Init()
- {
- _user = new Freelancer{Id=1, PasswordHash = ""};
- _userRepositoryMock = new Mock<IUserRepository>();
- _securityServiceMock = new Mock<ISecurityService>();
- _securityServiceMock.Setup(a => a.ComputeHash("newpass", 1)).Returns("hash");
- _uowMock = new Mock<IUnitOfWork>();
- _userServiceMock = new Mock<IUserService>();
- _userServiceMock.Setup(a => a.GetUser(1)).Returns(_user);
- _userService = new UserService(_userRepositoryMock.Object, _securityServiceMock.Object, _uowMock.Object);
- }
- [Test]
- public void ChangePasswordChangesUserObject()
- {
- var user = _userServiceMock.Object.GetUser(1);
- _userService.ChangePassword(user, "newpass");
- var user2 = _userServiceMock.Object.GetUser(1);
- Assert.AreEqual("hash", user2.PasswordHash);
- }
- [Test]
- public void ChangePasswordCallesSave()
- {
- var user = _userServiceMock.Object.GetUser(1);
- _userService.ChangePassword(user, "newpass");
- _uowMock.Verify(x => x.Commit());
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment