public void Insert_GuardClauses() { // Arrange var config = new HttpConfiguration(); var defaultServices = new DefaultServices(config); // Act & assert Assert.ThrowsArgumentNull(() => defaultServices.Insert(serviceType: null, index: 0, service: new object()), "serviceType"); Assert.ThrowsArgumentNull(() => defaultServices.Insert(typeof(object), 0, service: null), "service"); Assert.ThrowsArgument( () => defaultServices.Insert(typeof(object), 0, new object()), "serviceType", "The service type Object is not supported."); Assert.ThrowsArgument( () => defaultServices.Insert(typeof(IHttpActionInvoker), 0, new object()), "service", "The type Object must derive from IHttpActionInvoker."); Assert.ThrowsArgumentOutOfRange( () => defaultServices.Insert(typeof(IHttpActionInvoker), -1, new Mock <IHttpActionInvoker>().Object), "index", "Index must be within the bounds of the List."); }
public void Insert_AddsElementAtTheRequestedLocation() { // Arrange var config = new HttpConfiguration(); var defaultServices = new DefaultServices(config); var filterProvider1 = new Mock <IFilterProvider>().Object; var filterProvider2 = new Mock <IFilterProvider>().Object; var newFilterProvider = new Mock <IFilterProvider>().Object; defaultServices.ReplaceRange(typeof(IFilterProvider), new[] { filterProvider1, filterProvider2 }); // Act defaultServices.Insert(typeof(IFilterProvider), 1, newFilterProvider); // Assert Assert.Equal(new[] { filterProvider1, newFilterProvider, filterProvider2 }, defaultServices.GetServices(typeof(IFilterProvider))); }
public void Insert_AddsElementAtTheRequestedLocation() { // Arrange var config = new HttpConfiguration(); var defaultServices = new DefaultServices(config); var filterProvider1 = new Mock<IFilterProvider>().Object; var filterProvider2 = new Mock<IFilterProvider>().Object; var newFilterProvider = new Mock<IFilterProvider>().Object; defaultServices.ReplaceRange(typeof(IFilterProvider), new[] { filterProvider1, filterProvider2 }); // Act defaultServices.Insert(typeof(IFilterProvider), 1, newFilterProvider); // Assert Assert.Equal(new[] { filterProvider1, newFilterProvider, filterProvider2 }, defaultServices.GetServices(typeof(IFilterProvider))); }
public void Insert_GuardClauses() { // Arrange var config = new HttpConfiguration(); var defaultServices = new DefaultServices(config); // Act & assert Assert.ThrowsArgumentNull(() => defaultServices.Insert(serviceType: null, index: 0, service: new object()), "serviceType"); Assert.ThrowsArgumentNull(() => defaultServices.Insert(typeof(object), 0, service: null), "service"); Assert.ThrowsArgument( () => defaultServices.Insert(typeof(object), 0, new object()), "serviceType", "The service type Object is not supported."); Assert.ThrowsArgument( () => defaultServices.Insert(typeof(IHttpActionInvoker), 0, new object()), "service", "The type Object must derive from IHttpActionInvoker."); Assert.ThrowsArgumentOutOfRange( () => defaultServices.Insert(typeof(ValueProviderFactory), -1, new Mock<ValueProviderFactory>().Object), "index", "Index must be within the bounds of the List."); }