예제 #1
0
        public ActionResult GetAll()
        {
            var allPeople = people.All().ProjectTo <PersonViewModel>().ToList();

            Thread.Sleep(2222);
            return(this.PartialView("_AllPeople", allPeople));
        }
        public ActionResult GetAll()
        {
            var allStudios = studios.All().ProjectTo <StudioViewModel>().ToList();

            Thread.Sleep(2222);
            return(this.PartialView("_AllStudios", allStudios));
        }
예제 #3
0
        // POST api/Songs
        public IHttpActionResult Post([FromBody] SongServiceModel value)
        {
            var artists = new GenericRepository <Artist>(Data);

            if (!artists.All().Any(x => x.Name == value.Artist))
            {
                var newArtist = new Artist {
                    Name = value.Artist
                };
                artists.Add(newArtist);
                Data.SaveChanges();
            }

            var song = new Song
            {
                Title      = value.Title,
                Genre      = value.Genre,
                ReleasedOn = value.ReleasedOn,
                Artist     = artists.All().FirstOrDefault(x => x.Name == value.Artist),
                ArtistId   = artists.All().Where(x => x.Name == value.Artist).Select(x => x.ArtistId).FirstOrDefault()
            };

            SongsRepository.Add(song);
            Data.SaveChanges();
            return(this.StatusCode(HttpStatusCode.Created));
        }
예제 #4
0
        public ActionResult Create()
        {
            var newPerson = new PersonViewModel()
            {
                AllStudios = studios.All().Select(x => x.Name).ToList()
            };

            return(PartialView("_Create", newPerson));
        }
        public void GetAllNews_Should_Return_All_News_From_The_Repository()
        {
            var repository = new GenericRepository<News>(new NewsContext());

            var newsCount = repository.All().Count();
            var news = repository.All();
            var actualResult = news.Count();

            Assert.AreEqual(newsCount, actualResult);
        }
        public AddressModel GetAddressTypes()
        {
            AddressModel addressModel = new AddressModel();

            List <AddressType> addressTypes = addressTypeRepository.All().ToList();

            addressModel.AddressTypes = addressTypes.Select(a => new SelectModel {
                Value = a.AddressTypeId, Text = a.Text
            }).ToList();

            return(addressModel);
        }
예제 #7
0
        public async Task AddCategory_WithCorrectData_ShouldAddCategory()
        {
            const string catName = "test-category";
            var          currentCategoriesBefore = _categoryRepo.All().Count();

            Assert.Equal(0, currentCategoriesBefore);

            await _categoryService.AddCategory(catName, CategoryType.Game);

            var currentCategoriesAfter = _categoryRepo.All().Count();

            Assert.Equal(1, currentCategoriesAfter);
        }
예제 #8
0
        // POST api/Albums
        public IHttpActionResult Post([FromBody] AlbumServiceModel value)
        {
            var artists = new GenericRepository <Artist>(Data);
            var songs   = new GenericRepository <Song>(Data);

            if (value.Artists != null)
            {
                foreach (var artist in value.Artists)
                {
                    if (!artists.All().Any(x => x.Name == artist))
                    {
                        var newArtist = new Artist {
                            Name = artist
                        };
                        artists.Add(newArtist);
                    }

                    Data.SaveChanges();
                }
            }

            if (value.Songs != null)
            {
                foreach (var song in value.Songs)
                {
                    if (!songs.All().Any(x => x.Title == song))
                    {
                        var newSong = new Song {
                            Title = song
                        };
                        songs.Add(newSong);
                    }

                    Data.SaveChanges();
                }
            }

            var album = new Album
            {
                Title      = value.Title,
                Genre      = value.Genre,
                ReleasedOn = value.ReleasedOn,
                Artists    = artists.All().Where(x => value.Artists.Contains(x.Name)).ToList(),
                Songs      = songs.All().Where(x => value.Songs.Contains(x.Title)).ToList()
            };

            AlbumsRepository.Add(album);
            Data.SaveChanges();
            return(this.StatusCode(HttpStatusCode.Created));
        }
예제 #9
0
        public void DeleteUserTest()
        {
            //Arrange
            _generatorContext = new SurveyGeneratorContext();
            _userRepository   = new GenericRepository <User>(_generatorContext);
            var users = _userRepository.All();

            //Assert
            _userRepository.Delete(users);

            //Act
            var usersAfterDelete = _userRepository.All();

            Assert.AreEqual(usersAfterDelete.Count(), 0);
        }
예제 #10
0
        public IHttpActionResult Post(TestRequestModel model)
        {
            if (model == null)
            {
                return this.BadRequest();
            }

            var db = new StudentSystemDbContext();
            var testsRepo = new GenericRepository<Test>(db);
            var coursesRepo = new GenericRepository<Course>(db);
            List<Course> allCourses = coursesRepo.All().ToList();
            var testCourse = new Course
            {
                Name = model.Course.Name,
                Description = model.Course.Description
            };

            var testToAdd = new Test
            {
                Course = testCourse
            };

            testsRepo.Add(testToAdd);
            testsRepo.SaveChanges();
            return this.Ok();
        }
        public void ComposedOnAllListExecutedInMemory()
        {
            var results = _dataStructureDataTypeRepository.All().Where(c => c.DataStructureTypeID == 1).ToList();

            WriteLog();
            Assert.IsTrue(results.Count() == 1);
        }
예제 #12
0
 public ICollection<Course> Get()
 {
     var db = new StudentSystemDbContext();
     var coursesRepo = new GenericRepository<Course>(db);
     List<Course> courses = coursesRepo.All().ToList();
     return courses;
 }
        public StudentModel Show(int studentId)
        {
            if (string.IsNullOrWhiteSpace(Convert.ToString(studentId)) || studentId < 1)
            {
                throw new Exception("Student id not valid");
            }

            var studentModel = new StudentModel();

            Student student = studentRepository.FindOne(x => x.StudentId == studentId);

            if (student != null)
            {
                studentModel.Id           = student.StudentId;
                studentModel.Name         = student.Name;
                studentModel.Phone        = student.Phone;
                studentModel.Email        = student.Email;
                studentModel.Organization = student.Organization;
                studentModel.Address      = addessService.Show(studentId);
            }
            List <AddressType> addressTypes = addressTypeRepository.All().ToList();

            studentModel.Address.AddressTypes = addressTypes.Select(a => new SelectModel {
                Value = a.AddressTypeId, Text = a.Value
            }).ToList();

            return(studentModel);
        }
예제 #14
0
 public ICollection<Test> Get()
 {
     var db = new StudentSystemDbContext();
     var testsRepo = new GenericRepository<Test>(db);
     List<Test> tests = testsRepo.All().ToList();
     return tests;
 }
 public ICollection<Homework> Get()
 {
     var db = new StudentSystemDbContext();
     var homeworksRepo = new GenericRepository<Homework>(db);
     List<Homework> homeworks = homeworksRepo.All().ToList();
     return homeworks;
 }
예제 #16
0
        public void AllTakeTen()
        {
            var repository = new GenericRepository <EmailSource>(SessionFactory.OpenSession());
            var taken      = repository.All().Take(10).ToList();

            Assert.IsTrue(taken.Count > 0);
        }
        public IHttpActionResult Post(HomeworkRequestModel model)
        {
            if (model == null)
            {
                return this.BadRequest();
            }

            var db = new StudentSystemDbContext();
            var homeworsRepo = new GenericRepository<Homework>(db);
            var coursesRepo = new GenericRepository<Course>(db);
            var studentsRepo = new GenericRepository<Student>(db);
            Course defaultCourse = coursesRepo.All().ToList().FirstOrDefault();
            Student defaultStudent = studentsRepo.All().ToList().FirstOrDefault();
            var homeworkToAdd = new Homework
            {
                FileUrl = model.FileUrl,
                TimeSent = new DateTime(model.TimeSentTicks),
                Course = defaultCourse,
                CourseId = defaultCourse.Id,
                Student = defaultStudent,
                StudentIdentification = defaultStudent.StudentIdentification
            };

            homeworsRepo.Add(homeworkToAdd);
            homeworsRepo.SaveChanges();
            return this.Ok();
        }
예제 #18
0
 public ICollection<Student> Get()
 {
     var db = new StudentSystemDbContext();
     var studentsRepo = new GenericRepository<Student>(db);
     List<Student> students = studentsRepo.All().ToList();
     return students;
 }
        public void GenericRepository_All()
        {
            // Can pass in any type of T to the method.
            var results = repository.All <Country>();

            Assert.IsNotNull(results);
        }
예제 #20
0
        // PUT api/Songs/5
        public IHttpActionResult Put(int id, [FromBody] SongServiceModel value)
        {
            var songToUpdate = SongsRepository.All().FirstOrDefault(x => x.SongId == id);

            if (songToUpdate == null)
            {
                return(this.BadRequest("No such song"));
            }

            if (value.Title != null)
            {
                songToUpdate.Title = value.Title;
            }

            if (value.Genre != null)
            {
                songToUpdate.Genre = value.Genre;
            }

            if (value.ReleasedOn != null)
            {
                songToUpdate.ReleasedOn = value.ReleasedOn;
            }

            if (value.Artist != null)
            {
                var artists = new GenericRepository <Artist>(Data);

                if (!artists.All().Any(x => x.Name == value.Artist))
                {
                    var newArtist = new Artist {
                        Name = value.Artist
                    };
                    artists.Add(newArtist);
                    Data.SaveChanges();
                }

                songToUpdate.Artist   = artists.All().FirstOrDefault(x => x.Name == value.Artist);
                songToUpdate.ArtistId =
                    artists.All().Where(x => x.Name == value.Artist).Select(x => x.ArtistId).FirstOrDefault();
            }

            Data.SaveChanges();

            return(this.ResponseMessage(new HttpResponseMessage(HttpStatusCode.Accepted)));
        }
예제 #21
0
        public async Task AddProduct_WithValidData_ShouldAddProductInDb()
        {
            var product = await GenerateValidProduct(_categoryRepo);

            await _productService.AddProduct(product);

            Assert.Equal(1, _productRepo.All().Count());
        }
예제 #22
0
        public void GenericRepository_All()
        {
            // Can pass in any type of T to the method.
            var results = repository.All <Country>();

            Debug.WriteLine(log.ToString());
            Assert.IsNotNull(results);
            Assert.IsTrue(log.ToString().Contains("FROM [AppTemplate].[Countries]"));
        }
예제 #23
0
        public IQueryable <UserResponseModel> GetTopUsers()
        {
            GenericRepository <User> users = new GenericRepository <User>(new TeleImotDbContext());

            return(users
                   .All()
                   .OrderBy(u => u.Rating)
                   .Take(10)
                   .Select(UserResponseModel.FromUser)
                   .AsQueryable());
        }
예제 #24
0
        public IQueryable<UserResponseModel> GetTopUsers()
        {
            GenericRepository<User> users = new GenericRepository<User>(new TeleImotDbContext());

            return users
                .All()
                .OrderBy(u => u.Rating)
                .Take(10)
                .Select(UserResponseModel.FromUser)
                .AsQueryable();
        }
예제 #25
0
 public async Task <IActionResult> Get(int page = 1, int pagesize = -1)
 {
     try
     {
         IEnumerable <TEntity> result;
         if (pagesize > 0)
         {
             _logger.LogInformation($"Trying to get items from the page {page} with the pagesize {pagesize}");
             result = await _repo.All(page, pagesize);
         }
         else
         {
             _logger.LogInformation($"Trying to get items from the page {page}");
             result = await _repo.All(page);
         }
         return(Ok(result));
     }
     catch (System.Exception ex)
     {
         _logger.LogError(ex, "Cant get items");
     }
     return(BadRequest());
 }
        // POST api/Songs
        public IHttpActionResult Post([FromBody]SongServiceModel value)
        {
            var artists = new GenericRepository<Artist>(Data);

            if (!artists.All().Any(x => x.Name == value.Artist))
            {
                var newArtist = new Artist { Name = value.Artist };
                artists.Add(newArtist);
                Data.SaveChanges();
            }

            var song = new Song
            {
                Title = value.Title,
                Genre = value.Genre,
                ReleasedOn = value.ReleasedOn,
                Artist = artists.All().FirstOrDefault(x => x.Name == value.Artist),
                ArtistId = artists.All().Where(x => x.Name == value.Artist).Select(x => x.ArtistId).FirstOrDefault()
            };

            SongsRepository.Add(song);
            Data.SaveChanges();
            return this.StatusCode(HttpStatusCode.Created);
        }
예제 #27
0
        public void ShouldInsertOrUpdateSuccessfully()
        {
            using (var dbEntities = new DbEntities())
            {
                var repository = new GenericRepository <Product>(dbEntities);
                var repositoryProductCategory = new GenericRepository <ProductCategory>(dbEntities);
                var product = GetProduct(dbEntities);

                repository.InsertOrUpdate(product);

                dbEntities.SaveChanges();

                var records = repository.All().Count();
                Assert.AreEqual(records, 1);
            }
        }
        // POST api/Albums
        public IHttpActionResult Post([FromBody]AlbumServiceModel value)
        {
            var artists = new GenericRepository<Artist>(Data);
            var songs = new GenericRepository<Song>(Data);

            if (value.Artists != null)
            {
                foreach (var artist in value.Artists)
                {
                    if (!artists.All().Any(x => x.Name == artist))
                    {
                        var newArtist = new Artist { Name = artist };
                        artists.Add(newArtist);
                    }

                    Data.SaveChanges();
                }
            }

            if (value.Songs != null)
            {
                foreach (var song in value.Songs)
                {
                    if (!songs.All().Any(x => x.Title == song))
                    {
                        var newSong = new Song { Title = song };
                        songs.Add(newSong);
                    }

                    Data.SaveChanges();
                }
            }

            var album = new Album
            {
                Title = value.Title,
                Genre = value.Genre,
                ReleasedOn = value.ReleasedOn,
                Artists = artists.All().Where(x => value.Artists.Contains(x.Name)).ToList(),
                Songs = songs.All().Where(x => value.Songs.Contains(x.Title)).ToList()
            };

            AlbumsRepository.Add(album);
            Data.SaveChanges();
            return this.StatusCode(HttpStatusCode.Created);
        }
예제 #29
0
        public void ReturnCorrectNumberOfCountries_WhenCalled()
        {
            var contextMock = new BookstoreContext(Effort.DbConnectionFactory.CreateTransient());

            var countryRepository = new GenericRepository <Author>(contextMock);

            var author = new Author()
            {
                AuthorName = "Cambodia"
            };

            contextMock.Authors.Add(author);

            contextMock.SaveChanges();

            var result = countryRepository.All();

            Assert.AreEqual(1, result.Count());
        }
        public TableauMetadataFactory(GenericRepository <TableauBlob> blobsRepo)
        {
            _blobs = blobsRepo.All();
            _xmls  = new List <TableauXml>();

            double count = blobsRepo.Count();
            double i     = 1;

            foreach (var b in _blobs)
            {
                _xmls.Add(new TableauXml()
                {
                    Id = b.Id, RepositoryId = b.RepositoryId, SiteId = b.SiteId, Xml = TableauFileReader.GetXML(b), SourceType = b.SourceType
                });
                var per_complete = Math.Round((i / count) * 100, 0);
                Console.Write("\r{0}% Parsing is Completed", per_complete);
                i++;
            }

            Console.WriteLine("");
        }
        public void GetAllCustomersReturnsViewModel()
        {
            //arrange
            var customer = new Customer {
                FirstName = "Julie", LastName = "Lerman",
                Orders    = new List <Order> {
                    new Order()
                }
            };
            IQueryable <Customer> customers = (new List <Customer> {
                customer
            }).AsQueryable();
            var mockContext = new Mock <OrderSystemContext>();
            Mock <DbSet <Customer> > queryableMockSet = GenericSetupQueryableMockSet(customers);

            mockContext.Setup(c => c.Customers.AsNoTracking()).Returns(queryableMockSet.Object);
            //act
            var repo = new GenericRepository <Customer>(mockContext.Object);

            //assert
            Assert.IsInstanceOfType(repo.All().FirstOrDefault(), typeof(CustomerViewModel));
        }
        public void DeleteNews_Should_Successfully_Delete_Object_If_It_Exists()
        {
            var repository = new GenericRepository<News>(new NewsContext());

            var newsModel = repository.All().FirstOrDefault();
            if (newsModel == null)
            {
                Assert.Fail("Cannot perform test - Unable to delete unexisting object.");
            }

            repository.Delete(newsModel);
            repository.SaveChanges();
        }
        public void UpdateNews_Should_Throw_Exeption_If_Data_Is_Invalid()
        {
            var repository = new GenericRepository<News>(new NewsContext());

            var newsToUpdate = repository.All().FirstOrDefault();
            if (newsToUpdate == null)
            {
                Assert.Fail("Cannot run test - no news in the repository");
            }

            var newsModel = new NewsBindingModel
            {
                Title = "Upda",
                Content = "Upda"
            };

            newsToUpdate.Title = newsModel.Title;
            newsToUpdate.Content = newsModel.Content;
            if (newsModel.PublishDate.HasValue)
            {
                newsToUpdate.PublishDate = newsModel.PublishDate.Value;
            }

            repository.Update(newsToUpdate);
            repository.SaveChanges();
        }
예제 #34
0
 public IQueryable <Category> DropDownListCategory_Select()
 {
     return(categories.All());
 }
        // PUT api/Albums/5
        public IHttpActionResult Put(int id, [FromBody]AlbumServiceModel value)
        {
            var albumToUpdate = AlbumsRepository.All().FirstOrDefault(x => x.AlbumId == id);

            if (albumToUpdate == null)
            {
                return this.BadRequest("No such album");
            }

            var artists = new GenericRepository<Artist>(Data);
            var songs = new GenericRepository<Song>(Data);

            if (value.Artists != null)
            {
                foreach (var artist in value.Artists)
                {
                    if (!artists.All().Any(x => x.Name == artist))
                    {
                        var newArtist = new Artist { Name = artist };
                        artists.Add(newArtist);
                    }

                    Data.SaveChanges();
                }

                albumToUpdate.Artists = artists.All().Where(x => value.Artists.Contains(x.Name)).ToList();
            }

            if (value.Songs != null)
            {
                foreach (var song in value.Songs)
                {
                    if (!songs.All().Any(x => x.Title == song))
                    {
                        var newSong = new Song { Title = song };
                        songs.Add(newSong);
                    }

                    Data.SaveChanges();
                }

                albumToUpdate.Songs = songs.All().Where(x => value.Songs.Contains(x.Title)).ToList();
            }

            if (value.Title != null)
            {
                albumToUpdate.Title = value.Title;
            }

            if (value.Genre != null)
            {
                albumToUpdate.Genre = value.Genre;
            }

            if (value.ReleasedOn != null)
            {
                albumToUpdate.ReleasedOn = value.ReleasedOn;
            }

            Data.SaveChanges();

            return this.ResponseMessage(new HttpResponseMessage(HttpStatusCode.Accepted));
        }
예제 #36
0
 private bool StockItemExists(int id)
 {
     return(_repository.All().Count(e => e.StockItemId == id) > 0);
 }
예제 #37
0
        static void Main(string[] args)
        {
            //CreateRepository
            var CustomerRepository = new GenericRepository <Customer>();
            var OrderRepository    = new GenericRepository <Order>();
            var ProductRepository  = new GenericRepository <Product>();



            //Create first Customer and insert it to Repository
            var customer1 = new Customer(Guid.NewGuid(), "Dmitry", "Dudnik", "*****@*****.**", Common.Gender.Male, 18);
            var customer2 = new Customer(Guid.NewGuid(), "Bogdan", "Chopivsky", "*****@*****.**", Common.Gender.Male, 17);
            var customer3 = new Customer(Guid.NewGuid(), "Eugene", "Shtofel", "*****@*****.**", Common.Gender.Male, 18);
            var customer4 = new Customer(Guid.NewGuid(), "Roman", "Derkach", "*****@*****.**", Common.Gender.Male, 20);
            var customer5 = new Customer(Guid.NewGuid(), "Not", "Sure", "*****@*****.**", Common.Gender.Male, 42);

            CustomerRepository.Insert(customer1);
            CustomerRepository.Insert(customer2);
            CustomerRepository.Insert(customer3);
            CustomerRepository.Insert(customer4);
            CustomerRepository.Insert(customer5);


            //Create new Products and insert it to Repository
            var product1 = new Product(Guid.NewGuid(), "Dice20", "Icosahedral with numbers from 1 to 20 on sides of it", 20);
            var product2 = new Product(Guid.NewGuid(), "Dice12", "Dodecahedron with numbers from 1 to 12 on sides of it", 15);

            ProductRepository.Insert(product1);
            ProductRepository.Insert(product2);

            //Create first Order and insert it to Repository
            var orderItem1 = new OrderItem(Guid.NewGuid(), product1.Id, 3);

            orderItem1.Color = Common.Color.Blue | Common.Color.Red;
            orderItem1.Color = orderItem1.Color ^ Common.Color.Red;

            var orderItem2 = new OrderItem(Guid.NewGuid(), product2.Id, 5);

            var OrderItemRepository1 = new GenericRepository <OrderItem>();

            OrderItemRepository1.Insert(orderItem1);
            OrderItemRepository1.Insert(orderItem2);


            var Order1 = new Order(Guid.NewGuid(), customer1.Id, DateTime.Now, OrderItemRepository1.GetAllID());

            OrderRepository.Insert(Order1);


            //Create second Order and insert it to Repository
            var orderItem3 = new OrderItem(Guid.NewGuid(), product1.Id, 2);

            var OrderItemRepository2 = new GenericRepository <OrderItem>();

            OrderItemRepository2.Insert(orderItem3);


            var Order2 = new Order(Guid.NewGuid(), customer2.Id, DateTime.Now, OrderItemRepository2.GetAllID());

            OrderRepository.Insert(Order2);


            //Delete second Order

            OrderRepository.Delete(Order2.Id);

            //
            var GenreralRepository2 = new GenericRepository <Order>();

            GenreralRepository2.Insert(Order2);


            foreach (var Customer in CustomerRepository.All())
            {
                Customer.DisplayEntityInfo();
            }



            // var an = new { FirstName = "SSS" };

            //var customers = CustomerRepository.All().ToList();
            //Predicate<Customer> predicate = new Predicate<Customer>(StartWith);
            // var item = customers.Where(cust => cust.LastName.StartsWith("D", StringComparison.OrdinalIgnoreCase)).Select( x => new { id = x.Id, FirstNmae = x.FirstName });



            /*
             * //Create first Customer and insert it to Repository
             * var customer1 = new Customer(Guid.NewGuid(), "Dmitry");
             * customer1.LastName = "Dudnik";
             * customer1.EmailAddress = "*****@*****.**";
             *
             * var address1 = new Address(Guid.NewGuid());
             * address1.City = "Poltava";
             * address1.Country = "Ukraine";
             *
             * var AddressList = new List<Address>();
             * AddressList.Add(address1);
             * customer1.AddressList = AddressList;
             *
             * var CustomerRepository = new CustomerRepository();
             * CustomerRepository.Insert(customer1);
             *
             *
             * //Create new Products and insert it to Repository
             * var product1 = new Product(Guid.NewGuid(), "Dice20", "Icosahedral with numbers from 1 to 20 on sides of it", 20);
             * var product2 = new Product(Guid.NewGuid(), "Dice12", "Dodecahedron with numbers from 1 to 12 on sides of it", 15);
             * var ProductRepository = new ProductRepository();
             * ProductRepository.Insert(product1);
             * ProductRepository.Insert(product2);
             *
             *
             * //Create OrderRepository
             * var OrderRepository = new OrderRepository();
             *
             *
             * //Create first Order and insert it to Repository
             * var orderItem1 = new OrderItem(Guid.NewGuid(), product1, 3);
             * var orderItem2 = new OrderItem(Guid.NewGuid(), product2, 5);
             *
             * var OrderItemRepository1 = new OrderItemRepository();
             * OrderItemRepository1.Insert(orderItem1);
             * OrderItemRepository1.Insert(orderItem2);
             *
             *
             * var Order1 = new Order(Guid.NewGuid(), customer1, DateTime.Now, address1, OrderItemRepository1);
             * OrderRepository.Insert(Order1);
             *
             *
             * //Create second Order and insert it to Repository
             * var orderItem3 = new OrderItem(Guid.NewGuid(), product1, 2);
             *
             * var OrderItemRepository2 = new OrderItemRepository();
             * OrderItemRepository2.Insert(orderItem3);
             *
             *
             * var Order2 = new Order(Guid.NewGuid(), customer1, DateTime.Now, address1, OrderItemRepository2);
             * OrderRepository.Insert(Order2);
             *
             *
             * //Delete second Order
             *
             * OrderRepository.Delete(Order2.Id);
             *
             * //
             * var GenreralRepository2 = new GeneralRepositoryJSON();
             * GenreralRepository2.Insert(Order2);
             */

            Console.ReadKey();
        }
        // PUT api/Songs/5
        public IHttpActionResult Put(int id, [FromBody]SongServiceModel value)
        {
            var songToUpdate = SongsRepository.All().FirstOrDefault(x => x.SongId == id);

            if (songToUpdate == null)
            {
                return this.BadRequest("No such song");
            }

            if (value.Title != null)
            {
                songToUpdate.Title = value.Title;
            }

            if (value.Genre != null)
            {
                songToUpdate.Genre = value.Genre;
            }

            if (value.ReleasedOn != null)
            {
                songToUpdate.ReleasedOn = value.ReleasedOn;
            }

            if (value.Artist != null)
            {
                var artists = new GenericRepository<Artist>(Data);

                if (!artists.All().Any(x => x.Name == value.Artist))
                {
                    var newArtist = new Artist { Name = value.Artist };
                    artists.Add(newArtist);
                    Data.SaveChanges();
                }

                songToUpdate.Artist = artists.All().FirstOrDefault(x => x.Name == value.Artist);
                songToUpdate.ArtistId =
                    artists.All().Where(x => x.Name == value.Artist).Select(x => x.ArtistId).FirstOrDefault();
            }

            Data.SaveChanges();

            return this.ResponseMessage(new HttpResponseMessage(HttpStatusCode.Accepted));
        }
        public void UpdateNews_Should_Successfully_Update_News()
        {
            var repository = new GenericRepository<News>(new NewsContext());

            var newsToUpdate = repository.All().FirstOrDefault();
            if (newsToUpdate == null)
            {
                Assert.Fail("Cannot run test - no news in the repository");
            }

            var newsModel = new NewsBindingModel
            {
                Title = "Updated Sample title.",
                Content = "Updated Sample content",
                PublishDate = DateTime.Now
            };

            newsToUpdate.Title = newsModel.Title;
            newsToUpdate.Content = newsModel.Content;
            if (newsModel.PublishDate.HasValue)
            {
                newsToUpdate.PublishDate = newsModel.PublishDate.Value;
            }

            repository.Update(newsToUpdate);
            repository.SaveChanges();
        }
        public void ListAllMovieShouldReturnAllMovies()
        {
            var repo = new GenericRepository<Movie>(new MoviesGalleryContext());
            var fakeMovies = new List<Movie>()
            {
                new Movie()
                {
                    Id = 1,
                    Length = 1,
                    Ration = 1
                },
                new Movie()
                {
                    Id = 2,
                    Length = 2,
                    Ration = 2
                },
                new Movie()
                {
                    Id = 3,
                    Length = 3,
                    Ration = 3
                },
            };

            foreach (var fakeMovie in fakeMovies)
            {
                repo.Add(fakeMovie);
                repo.SaveChanges();
            }

            var fakeMovieLengths = fakeMovies.Select(m => m.Length).ToList();
            var movieDbLengths = repo.All().Select(m => m.Length).ToList();

            CollectionAssert.AreEqual(fakeMovieLengths, movieDbLengths);
        }
예제 #41
0
        public void NoTrackingQueriesDoNotCacheObjects()
        {
            var results = _customerRepository.All();

            Assert.AreEqual(0, _context.ChangeTracker.Entries().Count());
        }
예제 #42
0
        public Data.Models.User FormViewUserDetails_SelectData()
        {
            var currentUserId = Page.User.Identity.GetUserId();

            return(users.All().FirstOrDefault(u => u.Id == currentUserId));
        }
예제 #43
0
 public void NoTrackingQueriesDoNotCacheObjects()
 {
     _stockItemRepository.All();
     Assert.AreEqual(0, _context.ChangeTracker.Entries().Count());
 }
예제 #44
0
 public IQueryable <Category> GridViewCategories_SelectItem()
 {
     return(categories.All().OrderBy(c => c.Id));;
 }
 public ActionResult Index()
 {
     return(View(repo.All()));
 }
예제 #46
0
        public virtual IEnumerable <TViewModel> List()
        {
            IMapper iMapper = _config2.CreateMapper();

            return(repo.All().Select(c => iMapper.Map <TModel, TViewModel>(c)).ToList()); // ToList() olarak dondermezsen Gridviewde sorun yasiyorsun
        }