public override Task Process(string parameter, HttpListenerContext context) { var modifiedUrl = HtmlProcessor.SimplifyUrl(parameter); var resource = ServerContext.ResourceManager.GetResource(modifiedUrl); if (resource != null && resource.IsDownloaded) { if (resource.ContentType != null && resource.ContentType.StartsWith("text/html")) { using var stream = resource.Get(); var pm = new PageModifier(stream, modifiedUrl); pm.Process(); ResultStream = pm.GetResult(); } else { ResultStream = resource.Get(); } ContentType = resource.ContentType; } else { StatusCode = 404; } return(Task.CompletedTask); }
public void PageModifier_Page_DefaultValue_ReturnsDefaultQueryParam() { // Arrange var modifier = new PageModifier(); // Act var queryParams = modifier.GetQueryParameters(); // Assert Assert.IsTrue(queryParams.TryGetValue("page", out var page)); Assert.AreEqual($"{Constants.DefaultPage}", page); }
public void PageModifier_Page_CustomValue_ReturnsCorrectQueryParam() { // Arrange var modifier = new PageModifier(); var customPage = 3; modifier.Page = customPage; // Act var queryParams = modifier.GetQueryParameters(); // Assert Assert.IsTrue(queryParams.TryGetValue("page", out var page)); Assert.AreEqual($"{customPage}", page); }