website/Website.Tests/Data/BlogRepositoryTests.cs

55 lines
No EOL
1.5 KiB
C#

using System;
using System.Collections.Generic;
using System.Data;
using System.Threading.Tasks;
using Dapper;
using FluentAssertions;
using NSubstitute;
using NSubstitute.ExceptionExtensions;
using Website.Data;
using Website.Data.States;
using Website.Models;
using Xunit;
namespace Website.Tests.Data
{
public class BlogRepositoryTests
{
// [Fact]
// public void GetPostAsync_WithValidId_ReturnsBlogPost() {
// var blogPostState = new BlogPostState
// {
// Post_Id = 1,
// Post_Title = "title",
// Post_Content = "content",
// Post_Timestamp = new DateTime(),
// Post_Deleted = false,
// Post_Draft = "draft",
// Post_Url = "url",
// User_Id = 1
// };
// var connection = Substitute.For<IDbConnection>();
// connection.QueryAsync(null, null, (Func<object[], BlogPostState>)null, null, null, false, null, null, null).ReturnsForAnyArgs(new[]{ blogPostState });
// var provider = Substitute.For<IDatabaseProvider>();
// provider.NewConnection().Returns(connection);
// var repo = new BlogRepository(provider);
// var post = repo.GetPostAsync(1);
// var expected = new BlogPost
// {
// Id = 1,
// Title = "title",
// Content = "content",
// Timestamp = new DateTime(),
// Draft = "draft",
// Url = "url",
// UserId = 1
// }; ;
// post.Should().BeEquivalentTo(expected);
// }
//public async Task GetPostAsync_WithInvalidId_ReturnsNull()
//public async Task GetPostAsync_WithDeletedPost_ReturnsNull()
}
}