public void does_not_passes_the_query_through()
    {
      var filter = new PassthroughUriFilter(new string[] { "does_not_exist" });

      var appWithQueryString = new Browser(with => with.Module<TestModule>(), defaults: to => to.Query("foo", "bar"));

      Uri result = filter.Apply(new Uri("http://www.nancyfx.org"), appWithQueryString.Get("").Context);

      Assert.Equal("", result.Query);
    }
    public void passes_multiple_queries_through_using_multiple_filters()
    {
      var filter = new PassthroughUriFilter(new string[] { "foo" }, new PassthroughUriFilter(new string[] { "blib" }));

      var appWithQueryString = new Browser(with => with.Module<TestModule>(), defaults: to => { to.Query("foo", "bar"); to.Query("blib", "blob"); });

      Uri result = filter.Apply(new Uri("http://www.nancyfx.org"), appWithQueryString.Get("").Context);

      Assert.Equal("?foo=bar&blib=blob", result.Query);
    }
    public void throw_if_apply_is_passed_null_as_context()
    {
      var filter = new PassthroughUriFilter(new string[] { });

      Assert.Throws<ArgumentNullException>(() => filter.Apply(new Uri("http://www.nancyfx.org"), null));
    }
    public void throw_if_apply_is_passed_null_as_uri()
    {
      var filter = new PassthroughUriFilter(new string[] { });

      Assert.Throws<ArgumentNullException>(() => filter.Apply(null, app.Get("").Context));
    }