Ложный SSL HttpRequest для модульного тестирования - PullRequest
2 голосов
/ 12 июня 2009

Я пытаюсь смоделировать SSL HttpRequest, но у меня возникают проблемы с выяснением, как установить протокол HTTPS в объекте запроса. Я начал с примера от Фила Хаака: http://haacked.com/archive/2005/06/11/simulating_httpcontext.aspx

Есть ли способ установить запрос на SSL?

public class MockHttpRequest : SimpleWorkerRequest
{
    private string _Host;

    public MockHttpRequest(
        string appVirtualDir, string appPhysicalDir, string page, string query, TextWriter output, string host) :
        base(appVirtualDir, appPhysicalDir, page, query, output)
    {
        if (string.IsNullOrEmpty(host))
        {
            throw new ArgumentException("Host must be provided.");
        }

        _Host = host;
    }
}

public static class UnitTestingHelper
{
    public static HttpContext CreateMockHttpContext(string host, string page)
    {
        string appVirtualDir = "/";
        string appPhysicalDir = @"C:\Documents and Settings\user\My Documents\Workspace\Project\";
        string query = string.Empty;
        TextWriter output = null;

        MockHttpRequest request
            = new MockHttpRequest(appVirtualDir, appPhysicalDir, "default.aspx", query, output, host);

        // How to make the request HTTPS?

        HttpContext context = new HttpContext(request);

        return new HttpContext(request);
    }
}

1 Ответ

1 голос
/ 12 июня 2009

Я думаю, что где-то в HttpContext.Request есть свойство IsSecureConnection, которое должно быть истинным.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...