Beispiel #1
0
        public void UpdateMedia_CorrectMediaIdProvided_ReturnUpdatedMedia()
        {
            var connectionString = @"Data Source=(localdb)\MSSQLLocalDB;Initial Catalog=MediaLibrary;Integrated Security=True;Connect Timeout=30;Encrypt=False;TrustServerCertificate=False;ApplicationIntent=ReadWrite;MultiSubnetFailover=False";

            using (var connection = new SqlConnection(connectionString))
            {
                //ARRANGE
                var repository = new MediaRepository(connection);

                var media = new MediaLibrary.DAL.Entities.Media
                {
                    Name = "Use of Flexbox",
                    Url  = @"C:\Users\Ambroise\Desktop\UNamur",
                    Path = @"C:\Users\Ambroise\Desktop\UNamur",
                    Type = MediaType.Film,
                    Done = true
                };
                var addedMedia     = repository.Insert(media);
                var retrievedMedia = repository.GetAll().FirstOrDefault(m => m.Name.Equals(media.Name));
                retrievedMedia.Name = "New name";
                //ACT
                var result = repository.Update(retrievedMedia);
                //ASSERT
                Assert.IsNotNull(result);
                Assert.AreEqual("New name", result.Name);
            }
        }
Beispiel #2
0
        public void UpdateMedia_MediaProvidedWithBadId_ThrowArgumentException()
        {
            var connectionString = @"Data Source=(localdb)\MSSQLLocalDB;Initial Catalog=MediaLibrary;Integrated Security=True;Connect Timeout=30;Encrypt=False;TrustServerCertificate=False;ApplicationIntent=ReadWrite;MultiSubnetFailover=False";

            using (var connection = new SqlConnection(connectionString))
            {
                //ARRANGE
                var repository = new MediaRepository(connection);

                var media = new MediaLibrary.DAL.Entities.Media
                {
                    Name = "Use of Flexbox",
                    Url  = @"C:\Users\Ambroise\Desktop\UNamur",
                    Path = @"C:\Users\Ambroise\Desktop\UNamur",
                    Type = MediaType.Film,
                    Done = true
                };
                var addedMedia     = repository.Insert(media);
                var retrievedMedia = repository.GetAll().FirstOrDefault(m => m.Name.Equals(media.Name));
                retrievedMedia.Id = 0;
                //ACT
                //ASSERT
                Assert.ThrowsException <ArgumentException>(() => repository.Update(retrievedMedia));
            }
        }
        public MediaLibrary.DAL.Entities.Media InsertMedia(MediaLibrary.DAL.Entities.Media media)
        {
            if (media is null)
            {
                throw new ArgumentNullException();
            }

            try
            {
                var result = unitOfWork.MediaRepository.Insert(media);
                return(result);
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
        public void AddMedia_CorrectMediaProvided_ReturnAddedMedia()
        {
            var connectionString = @"Data Source=(localdb)\MSSQLLocalDB;Initial Catalog=MediaLibrary;Integrated Security=True;Connect Timeout=30;Encrypt=False;TrustServerCertificate=False;ApplicationIntent=ReadWrite;MultiSubnetFailover=False";

            using (var connection = new SqlConnection(connectionString))
            {
                //ARRANGE
                var repository = new MediaRepository(connection);
                var media      = new MediaLibrary.DAL.Entities.Media
                {
                    Name = "Programming in C#",
                    Url  = @"C:\Users\Ambroise\Desktop\UNamur",
                    Path = @"C:\Users\Ambroise\Desktop\UNamur",
                    Type = MediaType.Book,
                    Done = true
                };
                //ACT
                var result = repository.Insert(media);
                //ASSERT
                Assert.IsNotNull(result);
                Assert.AreEqual("Programming in C#", result.Name);
            }
        }