Esempio n. 1
0
 public IActionResult EditRSSUrl(RSSUrl rSSUrl)
 {
     if (ModelState.IsValid)
     {
         _rSSFeedsRepository.EditRSSUrl(rSSUrl);
         return(RedirectToAction("Index"));
     }
     return(View(rSSUrl));
 }
Esempio n. 2
0
        public IActionResult EditRSSUrl(int id)
        {
            RSSUrl rSSUrl = _rSSFeedsRepository.GetRSSUrl(id);

            if (rSSUrl == null)
            {
                return(StatusCode(404));
            }
            return(View(rSSUrl));
        }
Esempio n. 3
0
        public IActionResult DeleteRSSUrl(int id)
        {
            RSSUrl rSSUrl = _rSSFeedsRepository.GetRSSUrl(id);

            if (rSSUrl == null)
            {
                return(NotFound());
            }

            _rSSFeedsRepository.DeleteRSSUrl(rSSUrl);

            return(RedirectToAction("Index"));
        }
        public void CreateRSSUrlTest_Post_AddsRSSUrlToRepository_AndRedirectsToIndex()
        {
            // Arrange
            var mockRSSUrl = new RSSUrl {
                FeedName = "mock NT", Url = "http://www.nt.se/nyheter/norrkoping/rss/"
            };

            // Act
            var result = controller.CreateRSSUrl(mockRSSUrl);

            // Assert
            rSSRepoMock.Verify(repo => repo.CreateRSSUrl(mockRSSUrl));
            var viewResult = Assert.IsType <RedirectToActionResult>(result);

            Assert.Equal("Index", viewResult.ActionName);
        }
        public void EditRSSUrlTest_Post_ReturnsEditRSSUrlView_WhenModelStateIsInvalid()
        {
            // Arrange
            var mockRSSUrl = new RSSUrl {
                FeedName = "mock NT"
            };

            controller.ModelState.AddModelError("Url", "This field is required");

            // Act
            var result = controller.EditRSSUrl(mockRSSUrl);

            // Assert
            var viewResult = Assert.IsType <ViewResult>(result);

            Assert.Equal(mockRSSUrl, viewResult.ViewData.Model);
            rSSRepoMock.Verify(repo => repo.EditRSSUrl(mockRSSUrl), Times.Never());
        }
        public void DeleteRSSUrlTest_DeleteRSSUrlInRepository_AndRedirectsToIndex()
        {
            // Arrange
            var mockRSSUrlId = 1;
            var mockRSSUrl   = new RSSUrl {
                Id = 1, FeedName = "mock NT", Url = "http://www.nt.se/nyheter/norrkoping/rss/"
            };

            rSSRepoMock.Setup(repo => repo.GetRSSUrl(mockRSSUrlId)).Returns(mockRSSUrl);

            // Act
            var result = controller.DeleteRSSUrl(mockRSSUrlId);

            // Assert
            rSSRepoMock.Verify(repo => repo.GetRSSUrl(mockRSSUrlId));
            var viewResult = Assert.IsType <RedirectToActionResult>(result);

            Assert.Equal("Index", viewResult.ActionName);
        }
Esempio n. 7
0
        public LanguageInfo(Language language)
        {
            this.Language = language;
            Name          = ParseLanguageName(this.Language);

            var split = Name.Split(' ');

            if (split.Length == 3)
            {
                // Format: <lang> For <Lang>
                ApiUrl = string.Format(BaseUrl, split[0] + "-" + split[2]);
                RSSUrl = string.Format(RSSBaseUrl, split[0], "-for-" + split[2]);
            }
            else
            {
                ApiUrl = string.Format(BaseUrl, Name);
                RSSUrl = string.Format(RSSBaseUrl, Name, string.Empty);
            }

            ApiUrl = ApiUrl.ToLower();
            RSSUrl = RSSUrl.ToLower();
        }
Esempio n. 8
0
        public RSSUrl GetRSSUrl(int id)
        {
            RSSUrl rSSUrl = db.RSSUrls.SingleOrDefault(r => r.Id == id);

            return(rSSUrl);
        }
Esempio n. 9
0
 public void EditRSSUrl(RSSUrl rSSUrl)
 {
     db.Entry(rSSUrl).State = EntityState.Modified;
     db.SaveChanges();
 }
Esempio n. 10
0
 public void DeleteRSSUrl(RSSUrl rSSUrl)
 {
     db.Entry(rSSUrl).State = EntityState.Deleted;
     db.SaveChanges();
 }
Esempio n. 11
0
 public void CreateRSSUrl(RSSUrl rSSUrl)
 {
     db.RSSUrls.Add(rSSUrl);
     db.SaveChanges();
 }