Exemple #1
0
        public void EditEntity_EditUserNameAndPassword()
        {
            // arrange
            var userRepository = new TsqlUserRepository(_connectionString);
            var testedUser     = new User()
            {
                UserID       = -1,
                LoginName    = "editTest",
                UserPassword = "******"
            };

            testedUser = userRepository.CreateEntity(testedUser);
            createdUserIDs.Add(testedUser.UserID);


            // act
            testedUser.LoginName    = "Edited_editTest";
            testedUser.UserPassword = "******";
            userRepository.EditEntity(testedUser);
            testedUser = userRepository.GetEntityByID(testedUser.UserID);

            // assert
            Assert.AreEqual("Edited_editTest", testedUser.LoginName);
            Assert.AreEqual("Edited", testedUser.UserPassword);
        }
Exemple #2
0
        public void DeleteEntity_RemoveUserByLogin()
        {
            // arrange
            var userRepository = new TsqlUserRepository(_connectionString);
            var testedUser     = new User()
            {
                UserID       = -1,
                LoginName    = "deleteByLoginTest",
                UserPassword = "******"
            };

            testedUser = userRepository.CreateEntity(testedUser);
            bool flag;

            // act
            try
            {
                userRepository.DeleteEntity("deleteByLoginTest");
                flag = true;
            }
            catch (Exception)
            {
                flag = false;
            }

            // assert
            Assert.IsTrue(flag);
        }
Exemple #3
0
        public void RemoveUserWhithAccess_RemoveSecondUserWhithAccess()
        {
            // arrange
            var tagRepository  = new TsqlTagRepository(_connectionString);
            var userRepository = new TsqlUserRepository(_connectionString);
            var noteRepository = new TsqlNoteRepository(_connectionString, userRepository, tagRepository);
            var testedTag      = new Tag()
            {
                TagID   = -1,
                TagName = "remUATestTag"
            };

            testedTag = tagRepository.CreateEntity(testedTag);
            createdTagIDs.Add(testedTag.TagID);
            var testedUser = new User()
            {
                UserID       = -1,
                LoginName    = "remUATestName",
                UserPassword = "******"
            };

            testedUser = userRepository.CreateEntity(testedUser);
            createdUserIDs.Add(testedUser.UserID);
            var secondUser = new User()
            {
                UserID       = -1,
                LoginName    = "remUASecond",
                UserPassword = "******"
            };

            secondUser = userRepository.CreateEntity(secondUser);
            createdUserIDs.Add(secondUser.UserID);

            var testedNote = new Note
            {
                NoteID           = -1,
                Aurhor           = testedUser,
                Topic            = "remUATest",
                Text             = "text",
                Tags             = new Tag[] { testedTag },
                UsersWhithAccess = new User[] { testedUser }
            };

            testedNote = noteRepository.CreateEntity(testedNote);
            bool flag;

            // act
            try
            {
                noteRepository.RemoveUserWhithAccess(testedNote.NoteID, secondUser.UserID);
                flag = true;
            }
            catch (Exception)
            {
                flag = false;
            }

            // assert
            Assert.IsTrue(flag);
        }
Exemple #4
0
        public void SendLetter()
        {
            // Arrange
            TsqlUserRepository userRepository = new TsqlUserRepository(_connectionString);
            var user1 = userRepository.FindUserByLogin("Alleshka");
            var user2 = userRepository.FindUserByLogin("Alleshka2");

            Letter letter = new Letter()
            {
                Head           = "Тестовое письмо",
                ContentMessage = "Тестовое содержание",
                Sender         = userRepository.GetUserInfo(user1.Id)
            };

            // Act
            TsqlLetterRepository tsqlLetter = new TsqlLetterRepository(_connectionString, new TsqlUserRepository(_connectionString));

            letter = tsqlLetter.CreateLetter(letter);
            tsqlLetter.SendLetter(letter.Id, user2.Id);

            System.Threading.Thread.Sleep(500);

            int countLetters1 = tsqlLetter.GetNewLetters(user2.Id).ToList().Count;

            tsqlLetter.ReadLetter(letter.Id, user2.Id); // Читаем сообщение
            int countLetters2 = tsqlLetter.GetNewLetters(user2.Id).ToList().Count;

            // Asserts
            Assert.AreEqual(1, countLetters1);
            Assert.AreEqual(0, countLetters2);
        }
Exemple #5
0
        public void Clean()
        {
            var userRepository = new TsqlUserRepository(_connectionString);

            foreach (var id in createdUserIDs)
            {
                userRepository.DeleteEntity(id);
            }
        }
        public void Clean()
        {
            TsqlUserRepository userRepository = new TsqlUserRepository(_connectionString);

            foreach (Guid id in createdList)
            {
                userRepository.FullDeleteUser(id);
            }
        }
Exemple #7
0
        public void GetEntityByID_GetNote_NoteReturned()
        {
            // arrange
            var tagRepository  = new TsqlTagRepository(_connectionString);
            var userRepository = new TsqlUserRepository(_connectionString);
            var noteRepository = new TsqlNoteRepository(_connectionString, userRepository, tagRepository);
            var testedTag      = new Tag()
            {
                TagID   = -1,
                TagName = "getTestTag"
            };

            testedTag = tagRepository.CreateEntity(testedTag);
            createdTagIDs.Add(testedTag.TagID);
            var testedUser = new User()
            {
                UserID       = -1,
                LoginName    = "getTestName",
                UserPassword = "******"
            };

            testedUser = userRepository.CreateEntity(testedUser);
            createdUserIDs.Add(testedUser.UserID);

            var testedNote = new Note
            {
                NoteID           = -1,
                Aurhor           = testedUser,
                Topic            = "getTest",
                Text             = "text",
                Tags             = new Tag[] { testedTag },
                UsersWhithAccess = new User[] { testedUser }
            };

            testedNote = noteRepository.CreateEntity(testedNote);
            var testId = testedNote.NoteID;

            // act
            var returnedNote = noteRepository.GetEntityByID(testId);

            // assert
            Assert.AreEqual(testId, returnedNote.NoteID);
            Assert.AreEqual("getTest", returnedNote.Topic);
            Assert.AreEqual("text", returnedNote.Text);
            Assert.AreEqual("getTestName", returnedNote.Aurhor.LoginName);
            foreach (var tag in returnedNote.Tags)
            {
                Assert.AreEqual("getTestTag", tag.TagName);
            }
            foreach (var user in returnedNote.UsersWhithAccess)
            {
                Assert.AreEqual("getTestName", user.LoginName);
            }
        }
        public void LoginUserAccept()
        {
            // Assert
            String login    = "******";
            String password = "******";

            // Act
            TsqlUserRepository userRepository = new TsqlUserRepository(_connectionString);
            var user = userRepository.LoginEmployee(login, password); // Вход

            // Asserts
            Assert.AreEqual(login, user.Login);
        }
Exemple #9
0
        public void EditEntity_EditNote()
        {
            // arrange
            var tagRepository  = new TsqlTagRepository(_connectionString);
            var userRepository = new TsqlUserRepository(_connectionString);
            var noteRepository = new TsqlNoteRepository(_connectionString, userRepository, tagRepository);
            var testedTag      = new Tag()
            {
                TagID   = -1,
                TagName = "editTestTag"
            };

            testedTag = tagRepository.CreateEntity(testedTag);
            createdTagIDs.Add(testedTag.TagID);
            var testedUser = new User()
            {
                UserID       = -1,
                LoginName    = "editTestName",
                UserPassword = "******"
            };

            testedUser = userRepository.CreateEntity(testedUser);
            createdUserIDs.Add(testedUser.UserID);

            var testedNote = new Note
            {
                NoteID           = -1,
                Aurhor           = testedUser,
                Topic            = "editTest",
                Text             = "text",
                Tags             = new Tag[] { testedTag },
                UsersWhithAccess = new User[] { testedUser }
            };

            testedNote = noteRepository.CreateEntity(testedNote);
            var testId = testedNote.NoteID;

            // act
            testedNote.Topic = "edited";
            testedNote.Text  = "edited";
            noteRepository.EditEntity(testedNote);

            // assert
            Assert.AreEqual(testId, testedNote.NoteID);
            Assert.AreEqual("edited", testedNote.Topic);
            Assert.AreEqual("edited", testedNote.Text);
        }
Exemple #10
0
        public void CreateEntity_AddNote_NoteWhithActualIdReturned()
        {
            // arrange
            var tagRepository  = new TsqlTagRepository(_connectionString);
            var userRepository = new TsqlUserRepository(_connectionString);
            var noteRepository = new TsqlNoteRepository(_connectionString, userRepository, tagRepository);
            var testedTag      = new Tag()
            {
                TagID   = -1,
                TagName = "createTestTag"
            };

            testedTag = tagRepository.CreateEntity(testedTag);
            createdTagIDs.Add(testedTag.TagID);
            var testedUser = new User()
            {
                UserID       = -1,
                LoginName    = "createTestName",
                UserPassword = "******"
            };

            testedUser = userRepository.CreateEntity(testedUser);
            createdUserIDs.Add(testedUser.UserID);

            var testedNote = new Note
            {
                NoteID           = -1,
                Aurhor           = testedUser,
                Topic            = "createTest",
                Text             = "text",
                Tags             = new Tag[] { testedTag },
                UsersWhithAccess = new User[] { testedUser }
            };

            // act
            var addedNote = noteRepository.CreateEntity(testedNote);

            // assert
            Assert.AreEqual("createTest", addedNote.Topic);
            Assert.AreEqual("text", addedNote.Text);
            Assert.AreNotEqual(-1, addedNote.NoteID);
            createdNoteIDs.Add(addedNote.NoteID);
        }
Exemple #11
0
        public void CreateEntity_AddUser_UserWhithActualIdReturned()
        {
            // arrange
            var userRepository = new TsqlUserRepository(_connectionString);
            var testedUser     = new User()
            {
                UserID       = -1,
                LoginName    = "createTestName",
                UserPassword = "******"
            };

            // act
            var addedUser = userRepository.CreateEntity(testedUser);

            // assert
            Assert.AreEqual("createTestName", addedUser.LoginName);
            Assert.AreEqual("test", addedUser.UserPassword);
            Assert.AreNotEqual(-1, addedUser.UserID);
            createdUserIDs.Add(addedUser.UserID);
        }
Exemple #12
0
        public void Clean()
        {
            var tagRepository  = new TsqlTagRepository(_connectionString);
            var userRepository = new TsqlUserRepository(_connectionString);
            var noteRepository = new TsqlNoteRepository(_connectionString, userRepository, tagRepository);

            foreach (var id in createdNoteIDs)
            {
                noteRepository.DeleteEntity(id);
            }

            foreach (var id in createdTagIDs)
            {
                tagRepository.DeleteEntity(id);
            }

            foreach (var id in createdUserIDs)
            {
                userRepository.DeleteEntity(id);
            }
        }
Exemple #13
0
        public void UserAuthorization_InvalidAuthorization_IOExceptionReturned()
        {
            // arrange
            var userRepository = new TsqlUserRepository(_connectionString);
            var testedUser     = new User()
            {
                UserID       = -1,
                LoginName    = "authTestName2",
                UserPassword = "******"
            };

            testedUser = userRepository.CreateEntity(testedUser);
            var testedID = testedUser.UserID;

            createdUserIDs.Add(testedID);
            bool flag1 = false, flag2 = false;

            // act
            try
            {
                userRepository.UserAuthorization("authTestName2", "fake");
            }
            catch (IOException)
            {
                flag1 = true;
            }
            try
            {
                userRepository.UserAuthorization("fake", "test");
            }
            catch (IOException)
            {
                flag2 = true;
            }

            // assert
            Assert.IsTrue(flag1);
            Assert.IsTrue(flag2);
        }
        public void FindUserByLogin()
        {
            // Arrange
            Guid.TryParse("0f8fad5b-d9cb-469f-a165-70867728950e", out Guid testGuid);
            Employee emp = new Employee()
            {
                FirstName = "Alleshka",
                LastName  = "Alleshka",
                Login     = "******",
                Id        = testGuid
            };

            // Act
            TsqlUserRepository userRepository = new TsqlUserRepository(_connectionString);
            Employee           user           = userRepository.FindUserByLogin(emp.Login);

            // Asserts
            Assert.AreEqual(emp.Id, user.Id);
            Assert.AreEqual(emp.FirstName, user.FirstName);
            Assert.AreEqual(emp.LastName, user.LastName);
            Assert.AreEqual(emp.Login, user.Login);
        }
        public void LoginFalledP()
        {
            // Assert
            String login    = "******";
            String password = "******";
            bool   flag     = false;

            // Act
            TsqlUserRepository userRepository = new TsqlUserRepository(_connectionString);

            try
            {
                var user = userRepository.LoginEmployee(login, password);
                flag = false;
            }
            catch (Exception)
            {
                flag = true;
            }

            // Assert
            Assert.AreEqual(true, flag); // Если исключение сработало - значит ок
        }
        public void CreateUser()
        {
            // Arrange
            Employee emp = new Employee()
            {
                Id        = Guid.NewGuid(),
                FirstName = "Alleshka",
                LastName  = "Alleshka",
                Login     = Guid.NewGuid().ToString(),
                Password  = "******"
            };

            // Act
            TsqlUserRepository userRepository = new TsqlUserRepository(_connectionString);
            Employee           user           = userRepository.CreateEmployee(emp);

            createdList.Add(user.Id);

            // Asserts
            Assert.AreEqual(emp.Id, user.Id);
            Assert.AreEqual(emp.FirstName, user.FirstName);
            Assert.AreEqual(emp.LastName, user.LastName);
            Assert.AreEqual(emp.Login, user.Login);
        }
Exemple #17
0
        public void GetEntityByLogin_GetUserByLogin_UserReturned()
        {
            // arrange
            var userRepository = new TsqlUserRepository(_connectionString);
            var testedUser     = new User()
            {
                UserID       = -1,
                LoginName    = "getByLoginTestName",
                UserPassword = "******"
            };

            testedUser = userRepository.CreateEntity(testedUser);
            var testedID = testedUser.UserID;

            createdUserIDs.Add(testedID);

            // act
            var returnedUser = userRepository.GetEntityByLogin("getByLoginTestName");

            // assert
            Assert.AreEqual(testedID, returnedUser.UserID);
            Assert.AreEqual("getByLoginTestName", returnedUser.LoginName);
            Assert.AreEqual("test", returnedUser.UserPassword);
        }
Exemple #18
0
        public void UserAuthorization_ValidAuthorization_UserReturned()
        {
            // arrange
            var userRepository = new TsqlUserRepository(_connectionString);
            var testedUser     = new User()
            {
                UserID       = -1,
                LoginName    = "authTestName",
                UserPassword = "******"
            };

            testedUser = userRepository.CreateEntity(testedUser);
            var testedID = testedUser.UserID;

            createdUserIDs.Add(testedID);

            // act
            var returnedUser = userRepository.UserAuthorization("authTestName", "test");

            // assert
            Assert.AreEqual(testedID, returnedUser.UserID);
            Assert.AreEqual("authTestName", returnedUser.LoginName);
            Assert.AreEqual("test", returnedUser.UserPassword);
        }
Exemple #19
0
        public void AddUserWhithAccess_AddSecondUserWhithAccess()
        {
            // arrange
            var tagRepository  = new TsqlTagRepository(_connectionString);
            var userRepository = new TsqlUserRepository(_connectionString);
            var noteRepository = new TsqlNoteRepository(_connectionString, userRepository, tagRepository);
            var testedTag      = new Tag()
            {
                TagID   = -1,
                TagName = "addUATestTag"
            };

            testedTag = tagRepository.CreateEntity(testedTag);
            createdTagIDs.Add(testedTag.TagID);
            var testedUser = new User()
            {
                UserID       = -1,
                LoginName    = "addUATestName",
                UserPassword = "******"
            };

            testedUser = userRepository.CreateEntity(testedUser);
            createdUserIDs.Add(testedUser.UserID);
            var secondUser = new User()
            {
                UserID       = -1,
                LoginName    = "addUASecond",
                UserPassword = "******"
            };

            secondUser = userRepository.CreateEntity(secondUser);
            createdUserIDs.Add(secondUser.UserID);

            var testedNote = new Note
            {
                NoteID           = -1,
                Aurhor           = testedUser,
                Topic            = "addNTTest",
                Text             = "text",
                Tags             = new Tag[] { testedTag },
                UsersWhithAccess = new User[] { testedUser }
            };

            testedNote = noteRepository.CreateEntity(testedNote);
            var testId = testedNote.NoteID;

            // act
            noteRepository.AddUserWhithAccess(testedNote.NoteID, secondUser.UserID);
            testedNote = noteRepository.GetEntityByID(testedNote.NoteID);

            // assert
            bool flag = false;

            foreach (var user in testedNote.UsersWhithAccess)
            {
                if (user.LoginName == "addUASecond")
                {
                    flag = true;
                    break;
                }
            }
            Assert.IsTrue(flag);
        }