public object ReadRequestBody(Type bodyType, byte[] body) { // Extract text only from request body. var text = Encoding.UTF8.GetString(body ?? new byte[0]); return(QueryStringParser.ParseQueryString(text)); }
private static void Test(string query) { var parse1 = QueryStringParser.ParseQueryString(query); var parse2 = HttpUtility.ParseQueryString(query); // ignorecase because HttpUtility.UrlEncode uses lowercase hex digits while WebUtility uses uppercase if (!StringComparer.OrdinalIgnoreCase.Equals(parse1.ToString(), parse2.ToString())) { Assert.Fail($"Expected '{parse2}', got '{parse1}'. Failed on '{query}'"); } parse1.Count.ShouldEqual(parse2.Count, $"Failed on '{query}'"); }
public void TestAddAfterParse() { var p1 = QueryStringParser.ParseQueryString("a=2&c=3"); p1["a"] = "hi"; p1.Add("c", "x"); p1["b"] = "bye"; p1.ToString().ShouldEqual("a=hi&c=3&c=x&b=bye"); var p2 = HttpUtility.ParseQueryString("a=2&c=3"); p2["a"] = "hi"; p2.Add("c", "x"); p2["b"] = "bye"; p2.ToString().ShouldEqual("a=hi&c=3&c=x&b=bye"); }
public static Response Execute(RelativeUri uri, Func <ISchedulerWrapper> getScheduler) { var scheduler = getScheduler(); var querystring = QueryStringParser.ParseQueryString(uri.Query); var group = querystring["group"]; var jobNames = scheduler.GetJobKeys(GroupMatcher <JobKey> .GroupEquals(group)); var runningJobs = scheduler.GetCurrentlyExecutingJobs(); var jobs = jobNames.Select(j => { var job = scheduler.GetJobDetail(j); var interruptible = typeof(IInterruptableJob).IsAssignableFrom(job.JobType); var jobContext = runningJobs.FirstOrDefault(r => r.JobDetail.Key.ToString() == job.Key.ToString()); return(new JobWithContext(job, jobContext, interruptible)); }); var paused = scheduler.IsJobGroupPaused(group); var highlight = querystring["highlight"]; var view = Views.Views.JobGroup(group, paused, highlight, uri.PathAndQuery, jobs); return(new Response.XDocumentResponse(Helpers.XHTML(view))); }
public void TestArgumentValidation() { UnitTestHelpers.AssertThrows <ArgumentNullException>(() => QueryStringParser.ParseQueryString(null)); UnitTestHelpers.AssertThrows <ArgumentNullException>(() => HttpUtility.ParseQueryString(null)); }