public async Task CreateTest() { // arrange var client = Fixture.CreateClient(); var options = new JsonSerializerOptions { PropertyNameCaseInsensitive = true, }; var parms = new BlogCreateParms { NomBlog = "xxx", TitolPrimerPost = "yyy" }; // act var response = await client.PostAsJsonAsync("/api/Blog/Create", parms); // assert: result code var expected_status_code = HttpStatusCode.OK; Assert.Equal(expected_status_code, response.StatusCode); // asert: content var content = await response.Content.ReadAsStringAsync(); var methodresult = JsonSerializer.Deserialize <MethodResult <BlogDto> >(content, options); var methodresult_expected = await new BlogBusinessFakeLayer().Create(parms); methodresult.Should().IsSameOrEqualTo(methodresult_expected); }
public async Task <MethodResult <BlogDto> > Create(BlogCreateParms parms) { var result = await HttpClient.PostAsJsonAsync("api/Blog/Create", parms); var r = await result.Content.ReadFromJsonAsync <MethodResult <BlogDto> >(); return(r !); }
public Task <MethodResult <BlogDto> > Create(BlogCreateParms parms) { var result = new MethodResult <BlogDto> { Data = new BlogDto { Id = 100, Nom = parms.NomBlog, TitolsDelsPosts = new() { parms.TitolPrimerPost } } }; return(Task.FromResult(result)); }
public async Task CreateTest() { // arrange var blogTransport = new BlogTransport(Fixture.CreateClient()); var parms = new BlogCreateParms { NomBlog = "xxx", TitolPrimerPost = "yyy" }; // act var response = await blogTransport.Create(parms); // asert: content var methodresult_expected = await new BlogBusinessFakeLayer().Create(parms); response.Should().IsSameOrEqualTo(methodresult_expected); }
public async Task <MethodResult <BlogDto> > Create(BlogCreateParms parms) { using var ctx = MyFactory.CreateDbContext(); // pre-condicions // body var blog = new Blog { Nom = parms.NomBlog }; var post = new Post { Blog = blog, Content = "Contingut del meu primer blog", Title = parms.TitolPrimerPost }; // persistim ctx.Add(post); ctx.Add(blog); await ctx.SaveChangesAsync(); // retornem MethodResult <BlogDto> result = new MethodResult <BlogDto> { Data = new BlogDto { Id = blog.BlogId, DataDePublicacio = blog.DiaDePublicacio, Nom = blog.Nom, TitolsDelsPosts = blog.Posts.Select(p => p.Title).ToList() } }; return(result); }
public Task <MethodResult <BlogDto> > Create([FromBody] BlogCreateParms parms) { return(_BlogBusinessLayer.Create(parms)); }