yavsc/test/yavscTests/DumpHtml.cs

40 lines
1.6 KiB
C#
Raw Normal View History

2026-06-14 23:04:24 +01:00
using System.Net.Http;
namespace Yavsc.Tests
{
[Collection("Yavsc Server")]
public class DumpHtml : IClassFixture<WebServerFixture>
{
readonly WebServerFixture _server;
public DumpHtml(WebServerFixture server) { _server = server; }
2026-06-15 00:00:39 +01:00
// FIXME [Fact]
2026-06-14 23:04:24 +01:00
[Trait("debug", "html")]
public void DumpHomePageHtml()
{
var settings = _server.SiteSettings;
var handler = new HttpClientHandler
{
ServerCertificateCustomValidationCallback = (_, _, _, _) => true,
};
var httpsUrl = _server.Addresses.FirstOrDefault(u => u.StartsWith("https:"))
?? _server.Addresses.FirstOrDefault() ?? "";
2026-06-15 00:00:39 +01:00
// var httpsUrl = "https://localhost:5001" ;
2026-06-14 23:04:24 +01:00
using var client = new HttpClient(handler) { BaseAddress = new Uri(httpsUrl) };
var paths = new[] { "/Home/About", "/css/site.css", "/lib/bootstrap.quartz.min.css", "/nonexistent" };
var sb = new System.Text.StringBuilder();
sb.AppendLine($"BaseAddress = {httpsUrl}");
foreach (var p in paths)
{
var r = client.GetAsync(p).GetAwaiter().GetResult();
var b = r.Content.ReadAsStringAsync().GetAwaiter().GetResult();
sb.AppendLine($"GET {p} => {r.StatusCode} len={b.Length} ct={r.Content.Headers.ContentType}");
if (b.Length > 0 && b.Length < 500)
sb.AppendLine($" body: {b.Substring(0, Math.Min(300, b.Length))}");
}
Assert.Fail(sb.ToString());
}
}
}