public void InfoEndpointMiddleware_PathAndVerbMatching_ReturnsExpected()
        {
            var opts     = new InfoOptions();
            var contribs = new List <IInfoContributor>()
            {
                new GitInfoContributor()
            };
            var ep     = new InfoEndpoint(opts, contribs);
            var middle = new InfoEndpointMiddleware(null, ep);

            Assert.True(middle.RequestVerbAndPathMatch("GET", "/info"));
            Assert.False(middle.RequestVerbAndPathMatch("PUT", "/info"));
            Assert.False(middle.RequestVerbAndPathMatch("GET", "/badpath"));
        }
        public void InfoEndpointMiddleware_PathAndVerbMatching_ReturnsExpected()
        {
            var opts     = new InfoEndpointOptions();
            var mopts    = TestHelpers.GetManagementOptions(opts);
            var contribs = new List <IInfoContributor>()
            {
                new GitInfoContributor()
            };
            var ep     = new InfoEndpoint(opts, contribs);
            var middle = new InfoEndpointMiddleware(null, ep, mopts);

            Assert.True(middle.RequestVerbAndPathMatch("GET", "/cloudfoundryapplication/info"));
            Assert.False(middle.RequestVerbAndPathMatch("PUT", "/cloudfoundryapplication/info"));
            Assert.False(middle.RequestVerbAndPathMatch("GET", "/cloudfoundryapplication/badpath"));
        }
        public async void HandleInfoRequestAsync_ReturnsExpected()
        {
            var opts     = new InfoOptions();
            var contribs = new List <IInfoContributor>()
            {
                new GitInfoContributor()
            };
            var ep      = new TestInfoEndpoint(opts, contribs);
            var middle  = new InfoEndpointMiddleware(null, ep);
            var context = CreateRequest("GET", "/loggers");
            await middle.HandleInfoRequestAsync(context);

            context.Response.Body.Seek(0, SeekOrigin.Begin);
            StreamReader rdr  = new StreamReader(context.Response.Body);
            string       json = await rdr.ReadToEndAsync();

            Assert.Equal("{}", json);
        }
예제 #4
0
        public void IsInfoRequest_ReturnsExpected()
        {
            var opts     = new InfoOptions();
            var contribs = new List <IInfoContributor>()
            {
                new GitInfoContributor()
            };
            var ep     = new InfoEndpoint(opts, contribs);
            var middle = new InfoEndpointMiddleware(null, ep);

            var context = CreateRequest("GET", "/info");

            Assert.True(middle.IsInfoRequest(context));

            var context2 = CreateRequest("PUT", "/info");

            Assert.False(middle.IsInfoRequest(context2));

            var context3 = CreateRequest("GET", "/badpath");

            Assert.False(middle.IsInfoRequest(context3));
        }