public void AddDirective_CreatesAndAddsToDirectiveFeatureIfItDoesNotExist() { // Arrange var builder = new DefaultRazorProjectEngineBuilder(RazorConfiguration.Default, Mock.Of <RazorProjectFileSystem>()); var expectedDirective = Mock.Of <DirectiveDescriptor>(); // Act builder.AddDirective(expectedDirective); // Assert var feature = Assert.Single(builder.Features); var directiveFeature = Assert.IsAssignableFrom <IRazorDirectiveFeature>(feature); var directive = Assert.Single(directiveFeature.Directives); Assert.Same(expectedDirective, directive); }
public void AddDirective_UsesExistingFeatureIfExistsAndAddsTo() { // Arrange var builder = new DefaultRazorProjectEngineBuilder(RazorConfiguration.Default, Mock.Of <RazorProjectFileSystem>()); var directiveFeature = new DefaultRazorDirectiveFeature(); builder.Features.Add(directiveFeature); var expecteDirective = Mock.Of <DirectiveDescriptor>(); // Act builder.AddDirective(expecteDirective); // Assert var feature = Assert.Single(builder.Features); Assert.Same(directiveFeature, feature); var directive = Assert.Single(directiveFeature.Directives); Assert.Same(expecteDirective, directive); }