public void CreateReviewAsync_Success() { FillReviews(); var reviewToCreate = new Review() { UserId = userIds[0], RestaurantId = restaurantIds[2], Heading = "awful", Content = "tasted like dog food", Rating = 6 }; var sut = new ReviewDataManager(DbContext); var result = sut.CreateReviewAsync(reviewToCreate).Result; Assert.IsTrue(result.Id > 0); Assert.AreEqual(result.Heading, "awful"); using (var reader = this.ExecuteReader("select * from Review where Id=@Id", System.Data.CommandType.Text, new System.Data.SqlClient.SqlParameter() { ParameterName = "Id", SqlDbType = System.Data.SqlDbType.Int, Value = result.Id })) { reader.Read(); var actualUser = reader.GetValue(reader.GetOrdinal("user_id")); var actualRestaurant = reader.GetValue(reader.GetOrdinal("restaurant_id")); var actualHeading = reader.GetValue(reader.GetOrdinal("heading")); var atualContent = reader.GetValue(reader.GetOrdinal("content")); var actualRating = (byte)reader.GetValue(reader.GetOrdinal("rating")); Assert.AreEqual(reviewToCreate.UserId, actualUser); Assert.AreEqual(reviewToCreate.RestaurantId, actualRestaurant); Assert.AreEqual(reviewToCreate.Heading, actualHeading); Assert.AreEqual(reviewToCreate.Content, atualContent); Assert.AreEqual(reviewToCreate.Rating, actualRating); } }
public void GetReviewsAsync_NoFilter_ReturnsAll() { FillReviews(); var sut = new ReviewDataManager(DbContext); var result = sut.GetReviewsAsync(1, 100, null).Result.ToList(); Assert.AreEqual(result.Count(), 4); }
public void DeleteReviewAsync_UserIdMisMatch_NotDeleted() { var ids = FillReviews(); var sut = new ReviewDataManager(DbContext); sut.DeleteReviewAsync(ids[0], userIds[1]).Wait(); var count = this.ExecuteScalar <int>(string.Format("select count(*) from Review where Id={0}", ids[0])); Assert.AreEqual(count, 1); }
public void GetReviewAsync_Success() { var ids = FillReviews(); var sut = new ReviewDataManager(DbContext); var result = sut.GetReviewAsync(ids.First()).Result; Assert.AreEqual(ids.First(), result.Id); Assert.AreEqual(userIds[0], result.UserId); Assert.AreEqual(restaurantIds[0], result.RestaurantId); Assert.AreEqual("yum", result.Heading); Assert.AreEqual("great service", result.Content); Assert.AreEqual(9, result.Rating); }
public void GetReviewsAsync_Paged_AreOrderedByHeading() { FillReviews(); var sut = new ReviewDataManager(DbContext); var result = sut.GetReviewsAsync(1, 2, null).Result.ToList(); Assert.AreEqual(2, result.Count(), 2); Assert.AreEqual(result[0].Heading, "good but..."); Assert.AreEqual(result[1].Heading, "love it"); result = sut.GetReviewsAsync(2, 2, null).Result.ToList(); Assert.AreEqual(2, result.Count(), 2); Assert.AreEqual("slow service", result[0].Heading); Assert.AreEqual("yum", result[1].Heading); }
public void GetReviewsAsync_FieldValues_Test() { FillReviews(); var sut = new ReviewDataManager(DbContext); var result = sut.GetReviewsAsync(1, 1, null).Result.ToList(); Assert.AreEqual(1, result.Count()); var review = result.First(); //they are sorted by heading so the 2nd review is the one that will be returned Assert.AreEqual(ids[1], review.Id); Assert.AreEqual(userIds[0], review.UserId); Assert.AreEqual(restaurantIds[1], review.RestaurantId); Assert.AreEqual("good but...", review.Heading); Assert.AreEqual("I think they sauce was stale", review.Content); Assert.AreEqual(5, review.Rating); }
public void GetReviewsAsync_FilterByUser_ReturnsAll() { FillReviews(); var sut = new ReviewDataManager(DbContext); var filter = new DbFilter <Review> { Field = "UserId", Operator = OperatorEnum.Equal, Value = userIds[1].ToString() }; var result = sut.GetReviewsAsync(1, 100, filter).Result.ToList(); Assert.AreEqual(result.Count(), 2); //the reviews should be sorted by heading so the 2nd one will be first //this is the test data that was created //ds.Add(InsertReview(userIds[1], restaurantIds[0], "slow service", null, 1)); //ids.Add(InsertReview(userIds[1], restaurantIds[2], "love it", "everything was great", 10)); Assert.AreEqual(result[0].Content, "everything was great"); Assert.IsTrue(string.IsNullOrEmpty(result[1].Content)); }