Você não pode selecionar mais de 25 tópicos Os tópicos devem começar com uma letra ou um número, podem incluir traços ('-') e podem ter até 35 caracteres.

51 linhas
1.3KB

  1. using System.Net;
  2. using Microsoft.AspNetCore.Mvc.Testing;
  3. namespace CartWise.Web.Tests;
  4. public class SmokeTests : IClassFixture<CartWiseWebApplicationFactory>
  5. {
  6. private readonly HttpClient _client;
  7. public SmokeTests(CartWiseWebApplicationFactory factory)
  8. {
  9. _client = factory.CreateClient(new WebApplicationFactoryClientOptions
  10. {
  11. AllowAutoRedirect = false
  12. });
  13. }
  14. [Fact]
  15. public async Task Home_ReturnsSuccess()
  16. {
  17. var response = await _client.GetAsync("/");
  18. Assert.Equal(HttpStatusCode.OK, response.StatusCode);
  19. }
  20. [Fact]
  21. public async Task ProtectedRoute_RedirectsAnonymousUserToLogin()
  22. {
  23. var response = await _client.GetAsync("/Home/Privacy");
  24. Assert.Equal(HttpStatusCode.Redirect, response.StatusCode);
  25. Assert.Contains("/Account/Login", response.Headers.Location?.ToString());
  26. }
  27. [Fact]
  28. public async Task LoginPage_ReturnsSuccess()
  29. {
  30. var response = await _client.GetAsync("/Account/Login");
  31. Assert.Equal(HttpStatusCode.OK, response.StatusCode);
  32. }
  33. [Fact]
  34. public async Task RegisterPage_ReturnsSuccess()
  35. {
  36. var response = await _client.GetAsync("/Account/Register");
  37. Assert.Equal(HttpStatusCode.OK, response.StatusCode);
  38. }
  39. }

Powered by TurnKey Linux.