[Fixes #294] Set DefaultHandler in RouteBuilder

This commit is contained in:
Ajay Bhargav Baaskaran 2016-03-10 11:17:30 -08:00
parent b7fc5f06cd
commit 3127e7a2e9
2 changed files with 24 additions and 0 deletions

View File

@ -32,6 +32,7 @@ namespace Microsoft.AspNetCore.Routing
}
ApplicationBuilder = applicationBuilder;
DefaultHandler = defaultHandler;
ServiceProvider = applicationBuilder.ApplicationServices;
Routes = new List<IRouter>();

View File

@ -3,6 +3,8 @@
using System;
using Microsoft.AspNetCore.Builder;
using Microsoft.AspNetCore.Routing.Internal;
using Microsoft.Extensions.DependencyInjection;
using Moq;
using Xunit;
@ -10,6 +12,27 @@ namespace Microsoft.AspNetCore.Routing
{
public class RouteBuilderTest
{
[Fact]
public void Ctor_SetsPropertyValues()
{
// Arrange
var services = new ServiceCollection();
services.AddSingleton(typeof(RoutingMarkerService));
var applicationServices = services.BuildServiceProvider();
var applicationBuilderMock = new Mock<IApplicationBuilder>();
applicationBuilderMock.Setup(a => a.ApplicationServices).Returns(applicationServices);
var applicationBuilder = applicationBuilderMock.Object;
var defaultHandler = Mock.Of<IRouter>();
// Act
var builder = new RouteBuilder(applicationBuilder, defaultHandler);
// Assert
Assert.Same(applicationBuilder, builder.ApplicationBuilder);
Assert.Same(defaultHandler, builder.DefaultHandler);
Assert.Same(applicationServices, builder.ServiceProvider);
}
[Fact]
public void Ctor_ThrowsInvalidOperationException_IfRoutingMarkerServiceIsNotRegistered()
{