Example #1
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);
        }
Example #2
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);
            }
        }
Example #3
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);
        }
Example #4
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);
        }
Example #5
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);
            }
        }
Example #6
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);
        }