public ActionResult Edit(Article article) { if (!ModelState.IsValid) return View(article); try { Article dbArticle; if (article.Id == 0) { var currentUser = _repo.GetWhere<User>(u => u.UserName == User.Identity.Name).Single(); dbArticle = new Article {Author = currentUser}; _repo.Add(dbArticle); } else { dbArticle = _repo.Get<Article>(article.Id); } dbArticle.Title = article.Title; dbArticle.Summary = article.Summary; dbArticle.Body = article.Body; dbArticle.PublishDate = article.PublishDate; dbArticle.EmailAddress = article.EmailAddress; _repo.SaveChanges(); if (Request.Files != null && Request.Files.Count > 0 && Request.Files[0].ContentLength > 0) { _attachmentLogic.SaveAttachment(article.Id, Request.Files[0]); } return RedirectToAction("Index"); } catch { return View(article); } }
public ArticleListModel(Article article) { Id = article.Id; Title = article.Title; AuthorUserName = article.Author.UserName; Summary = article.Summary; }
public void GetGradeAverage_ShouldYieldArithmeticAverage_WhenThereIsOneNeutralGrade() { var article = new Article(); AddGrades(article, 3); decimal grade = article.GetGradeAverage(); Assert.That(grade, Is.EqualTo(3m)); }
public void GetGradeAverage_ShouldYieldArithmeticAverage_WhenThereAreManyGrades() { var article = new Article(); AddGrades(article, 2, 5, 2, 3, 2, 1, 4, 5); decimal grade = article.GetGradeAverage(); Assert.That(grade, Is.EqualTo(3m)); }
public void GetGradeAverage_ShouldYieldArithmeticAverageWithDecimals() { var article = new Article(); AddGrades(article, 2); decimal grade = article.GetGradeAverage(); Assert.That(grade, Is.EqualTo(2.5m)); }
public void GetGradeAverage_ShouldYieldArithmeticAverageRoundedDownToTwoDecimals_WhenThereAreManyGrades() { var article = new Article(); AddGrades(article, 4, 1); decimal grade = article.GetGradeAverage(); Assert.That(grade, Is.EqualTo(2.66m)); }
public void ArticleDetailsModel_ShouldShowGradeAverageWithTwoDecimals() { var article = new Article(); article.Author = new User {UserName = "******"}; article.Body = ""; var model = new ArticleDetailsModel(article, "asmunde"); Assert.That(model.GradeAverage, Is.EqualTo("3.00")); }
public void ArticleDetailsModel_ShouldShowGradeGivenByCurrentUser() { var article = new Article(); article.Author = new User {UserName = "******"}; article.Grades.Add(new Grade {User = article.Author, GradeValue = 4}); article.Body = ""; var model = new ArticleDetailsModel(article, "asmunde"); Assert.That(model.GradeValue, Is.EqualTo(4)); }
private Response UpdateArticle(string title, Article updatedArticle) { var existingArticle = LoadArticle(title); if (existingArticle == null) return 404; existingArticle.Title = updatedArticle.Title; existingArticle.Content = updatedArticle.Content; _session.Store(existingArticle); _session.SaveChanges(); return Response.AsJson(existingArticle); }
public ArticleDetailsModel(Article article, string currentUserName) { Title = article.Title; AuthorUserName = article.Author.UserName; GradeAverage = Format.Grade(article.GetGradeAverage()); Summary = article.Summary; Body = article.Body; EmailAddress = article.EmailAddress; var userGrade = article.Grades.SingleOrDefault(g => g.User.UserName == currentUserName); GradeValue = (userGrade == null ? null : (int?)userGrade.GradeValue); }
public Article Put(string title, Article article) { var existingArticle = LoadArticle(title); if (existingArticle != null) { existingArticle.Title = article.Title; existingArticle.Content = article.Content; _session.Store(existingArticle); _session.SaveChanges(); } return existingArticle; }
public ActionResult Update(string articletitle, Article article) { var existingArticle = LoadArticle(articletitle); if (existingArticle != null) { existingArticle.Title = article.Title; existingArticle.Content = article.Content; _session.Store(existingArticle); _session.SaveChanges(); return Json(existingArticle); } throw new HttpException(404, "Resource not found"); }
public void GradeArticle_ShouldCreateANewGrade_WhenTheUserHasNotGradedTheArticleBefore() { var article = new Article {Id = 20}; var currentUser = new User {UserName = "******"}; var mockRepo = new Mock<IRepository>(); mockRepo.Setup(r => r.Get<Article>(20)).Returns(article); mockRepo.Setup(r => r.GetWhere<User>(It.IsAny<Expression<Func<User, bool>>>())).Returns(new[]{currentUser}.AsQueryable()); var logic = new GradeLogic(mockRepo.Object); logic.GradeArticle(20, "asmunde", 4); Assert.That(article.Grades.Count, Is.EqualTo(1)); Assert.That(currentUser.Grades.Count, Is.EqualTo(1)); var grade = article.Grades.Single(); Assert.That(grade, Is.SameAs(currentUser.Grades.Single())); Assert.That(grade.GradeValue, Is.EqualTo(4)); mockRepo.Verify(r => r.SaveChanges()); }
public Article Post(Article article) { _session.Store(article); _session.SaveChanges(); return article; }
public void GetGradeAverage_ShouldYield3_WhenThereAreNoGrades() { var article = new Article(); decimal grade = article.GetGradeAverage(); Assert.That(grade, Is.EqualTo(3m)); }
/// <summary> /// Create a new Article object. /// </summary> /// <param name="id">Initial value of the Id property.</param> /// <param name="authorId">Initial value of the AuthorId property.</param> /// <param name="title">Initial value of the Title property.</param> /// <param name="summary">Initial value of the Summary property.</param> /// <param name="body">Initial value of the Body property.</param> /// <param name="version">Initial value of the Version property.</param> public static Article CreateArticle(global::System.Int32 id, global::System.Guid authorId, global::System.String title, global::System.String summary, global::System.String body, global::System.Byte[] version) { Article article = new Article(); article.Id = id; article.AuthorId = authorId; article.Title = title; article.Summary = summary; article.Body = body; article.Version = version; return article; }
/// <summary> /// Deprecated Method for adding a new object to the Articles EntitySet. Consider using the .Add method of the associated ObjectSet<T> property instead. /// </summary> public void AddToArticles(Article article) { base.AddObject("Articles", article); }
public ActionResult Create(Article article) { _session.Store(article); _session.SaveChanges(); return Json(article); }
private void AddGrades(Article article, params int[] gradeValues) { foreach (int gradeValue in gradeValues) article.Grades.Add(new Grade {GradeValue = gradeValue}); }
public ActionResult Create() { var article = new Article {Title = "New article", Summary = "", Body = "", EmailAddress = "", PublishDate = DateTime.Today}; return View("Edit", article); }
private Response CreateArticle(Article article) { _session.Store(article); _session.SaveChanges(); return Response.AsJson(article); }