root/trunk/Wierszowki/Wierszowki.Tests/Core/UserRepositoryTests.cs @ 752

Wersja 752, 4.0 KB (wprowadzona przez marek, 17 years temu)

wiersz

Line 
1using NUnit.Framework;
2using Wierszowki.Core.Interfaces;
3using Wierszowki.Core.Linq;
4using Wierszowki.Services;
5
6namespace Wierszowki.Tests.Core
7{
8    [TestFixture]
9    public class UserRepositoryTests
10    {
11        [Test]
12        public void User_Tries_To_Find_User_Returns_True()
13        {
14            const string login = "marek";
15            const string password = "marek";
16           
17            IRepository<User> userRepository = new LinqRepository<User>();
18            //IRepository<User> userRepository = new TestUserRepository();
19
20            User user;
21            var found = userRepository.TryFindOne(u => u.Login == login && u.Password == password, out user);
22
23            Assert.That(found, Is.True);
24            Assert.That(user, Is.Not.Null);
25            Assert.That(user.Login, Is.EqualTo(login));
26            Assert.That(user.Password, Is.EqualTo(password));
27        }
28
29        [Test]
30        public void User_Can_Add_New()
31        {
32            var user = new User { FirstName = "Test", LastName = "User", Login = "test_login", Password = "test" };
33
34            IRepository<User> userRepository = new LinqRepository<User>();
35            userRepository.Insert(user);
36
37            User userFromDb;
38            var found = userRepository.TryFindOne(u => u.Login == user.Login && u.Password == u.Password, out userFromDb);
39
40            Assert.That(found, Is.True);
41            Assert.That(userFromDb, Is.Not.Null);
42
43            userRepository.Delete(user);
44        }
45
46
47        [Test]
48        public void User_Can_Delete_New()
49        {
50            var user = new User { FirstName = "Test", LastName = "User", Login = "test_login", Password = "test" };
51
52            IRepository<User> userRepository = new LinqRepository<User>();
53            userRepository.Insert(user);
54
55            var userToDelete = userRepository.FindOne(u => u.Login == user.Login);
56            userRepository.Delete(userToDelete);
57
58            User userFromDb;
59            var found = userRepository.TryFindOne(u => u.Login == user.Login, out userFromDb);
60
61            Assert.That(found, Is.False);
62            Assert.That(userFromDb, Is.Null);
63        }
64
65        [Test]
66        public void Can_Update_FirstName()
67        {
68            const string login = "marek";
69            const string newFirstName = "Maras";
70
71            IRepository<User> userRepository = new LinqRepository<User>();
72            var user = userRepository.FindOne(u => u.Login == login);
73            var firstName = user.FirstName;
74            user.FirstName = newFirstName;
75            userRepository.Update(user);
76
77            var userFromDb = userRepository.FindOne(u => u.Login == login);
78            Assert.That(userFromDb.FirstName, Is.EqualTo(newFirstName));
79            userFromDb.FirstName = firstName;
80            userRepository.Update(userFromDb);
81        }
82
83        [Test]
84        public void User_Can_Find_By_FirstName()
85        {
86            const string firstName = "marek";
87
88            IRepository<User> userRepository = new LinqRepository<User>();
89            var user = userRepository.FindOne(u => u.FirstName == firstName);
90            Assert.That(user, Is.Not.Null);
91            Assert.That(user.FirstName.ToLower(), Is.EqualTo(firstName));
92        }
93       
94        [Test]
95        public void UserService_LoginUser_LogsUserIn()
96        {
97            IRepository<User> userRepository = new LinqRepository<User>();
98
99            var userService = new UserService(userRepository);
100
101            var isLoginSuccess = userService.LoginUser("marek", "marek");
102            Assert.That(isLoginSuccess, Is.True, "User could not log in");
103        }
104
105        [Test]
106        public void UserService_LoginUser_DoesNotLogsUserIn()
107        {
108            IRepository<User> userRepository = new LinqRepository<User>();
109            var userService = new UserService(userRepository);
110
111            var isLoginSuccess = userService.LoginUser("user", "password");
112            Assert.That(isLoginSuccess, Is.False, "User could log in");
113        }
114    }
115}
Notatka: Zobacz TracBrowser aby uzyskać więcej informacji.