Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Improvements in processing redirects with cookie containers. #2119

Draft
wants to merge 24 commits into
base: dev
Choose a base branch
from

Commits on Feb 28, 2024

  1. WIP

    alexeyzimarev authored and rassilon committed Feb 28, 2024
    Configuration menu
    Copy the full SHA
    164b45f View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    c6b39b5 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    00b718e View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    30eab16 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    9c56c06 View commit details
    Browse the repository at this point in the history
  6. Additional tests

    rassilon committed Feb 28, 2024
    Configuration menu
    Copy the full SHA
    1f9a142 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    d39f15c View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    653d0e0 View commit details
    Browse the repository at this point in the history
  9. Add new files..

    rassilon committed Feb 28, 2024
    Configuration menu
    Copy the full SHA
    487f138 View commit details
    Browse the repository at this point in the history
  10. FileParameter: Mark the obsoleted property as NOT CLSCompliant to red…

    …uce warnings..
    
    RequestContent: Don't use obsoleted property.
    RestClientOptions*: use new RedirectOptions class instead for FollowRedirects.
    rassilon committed Feb 28, 2024
    Configuration menu
    Copy the full SHA
    a0baaa6 View commit details
    Browse the repository at this point in the history
  11. Configuration menu
    Copy the full SHA
    d3c7806 View commit details
    Browse the repository at this point in the history
  12. Configuration menu
    Copy the full SHA
    28203df View commit details
    Browse the repository at this point in the history
  13. Fix coding style violation..

    rassilon committed Feb 28, 2024
    Configuration menu
    Copy the full SHA
    6557da7 View commit details
    Browse the repository at this point in the history
  14. Configuration menu
    Copy the full SHA
    eaae0b1 View commit details
    Browse the repository at this point in the history
  15. Fixes for Interceptor tests.

    rassilon committed Feb 28, 2024
    Configuration menu
    Copy the full SHA
    9d8baf5 View commit details
    Browse the repository at this point in the history
  16. Configuration menu
    Copy the full SHA
    6764396 View commit details
    Browse the repository at this point in the history
  17. Configuration menu
    Copy the full SHA
    a69b48e View commit details
    Browse the repository at this point in the history

Commits on Mar 11, 2024

  1. Configuration menu
    Copy the full SHA
    88d141b View commit details
    Browse the repository at this point in the history

Commits on Mar 12, 2024

  1. Configuration menu
    Copy the full SHA
    73df366 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    aecb8bb View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    7b969f5 View commit details
    Browse the repository at this point in the history
  4. Add secure test server end point to TestServer.

    Add secure test server untrusted certificate.
    Out of paranoia, don't let SimpleServer use either the secure or insecure ports from TestServer.
    Add tests both positive and negative for RedirectOptions.FollowRedirectsToInsecure
    
    Remember to override options.RemoteCertificateValidationCallback if you get a certificate validation error in new tests.
    rassilon committed Mar 12, 2024
    Configuration menu
    Copy the full SHA
    950be06 View commit details
    Browse the repository at this point in the history
  5. minor tweaks

    rassilon committed Mar 12, 2024
    Configuration menu
    Copy the full SHA
    ee5e151 View commit details
    Browse the repository at this point in the history

Commits on Mar 13, 2024

  1. RestClient.Async.cs: Convert lots of bools to a [Flag] enum setup.

    Add changes to allow the AlterVerb... RedirectOptions to work properly.
    RequestContent.cs: Add support for omitting the body (due to the HTTP Verb/Method changing under redirect processing)
    TestServer.cs:
    * Add certificate password for SSL test server.
    * Add HTTP verb changing related routes
    * Add dump-request route so that the method and hearders get dumped to response content to help enable authoring RedirectOption tests.
    * Minor tweaks to silence nullability warnings.
    RedirectTests.cs: Use new (Not)ContainCookieWithNameAndValue extension methods in tests, and use .And to cleanup the repetitive assertion code.
    RedirectOptionsTest.cs:
    * Add missing StatusCode assertions
    * Use new (Not)ContainCookieWithNameAndValue extension methods in the tests and .And. to cleanup the assertions.
    * For coverage reasons add initial request cookies to Can_RedirectForwardHeadersFalseWithCookie_DropHeaders.
    * New tests:
    Options.RedirectOptions.FollowRedirects = false
    Options.FollowRedirects = False (back compat)
    AllowForcedRedirectVerbChange = false with 302
    AllowForcedRedirectVerbChange = false with 303
    Change verb with defaults after 302
    Change verb with defaults after 303
    Don't chanve verb with defaults after 307
    Options.CookieContainer contains expected results after a redirection.
    Change verb with defaults after 303, but with ForceForwardBody so that the request body is forwarded on the new verb.
    
    Additionally, due to having VS 17.9.3 updated xunit/ms test sdk nuget pkgs that makes some of the dependabot PRs obsolete.
    rassilon committed Mar 13, 2024
    Configuration menu
    Copy the full SHA
    4ca3453 View commit details
    Browse the repository at this point in the history