public void Registering_registered_provider_replaces_provider() { var mockProviderServices = new Mock<DbProviderServices>(); var resolver = new DbProviderServicesResolver(); resolver.Register(mockProviderServices.Object.GetType(), SqlClientInvariantName); resolver.Register(typeof(SqlProviderServices), SqlClientInvariantName); Assert.Same( SqlProviderServices.Instance, resolver.GetService(typeof(DbProviderServices), SqlClientInvariantName)); resolver.Unregister(SqlClientInvariantName); Assert.IsType<LegacyDbProviderServicesWrapper>( resolver.GetService(typeof(DbProviderServices), SqlClientInvariantName)); }
public void Registering_registered_provider_replaces_provider() { var mockProviderServices = new Mock <DbProviderServices>(); var resolver = new DbProviderServicesResolver(); resolver.Register(mockProviderServices.Object.GetType(), SqlClientInvariantName); resolver.Register(typeof(SqlProviderServices), SqlClientInvariantName); Assert.Same( SqlProviderServices.Instance, resolver.GetService(typeof(DbProviderServices), SqlClientInvariantName)); resolver.Unregister(SqlClientInvariantName); Assert.IsType <LegacyDbProviderServicesWrapper>( resolver.GetService(typeof(DbProviderServices), SqlClientInvariantName)); }
public static void RegisterProvider(Type type, string invariantName) { Debug.Assert(type != null, "type != null"); Debug.Assert( typeof(DbProviderServices).IsAssignableFrom(type), "expected type derived from DbProviderServices"); Debug.Assert(!string.IsNullOrWhiteSpace(invariantName), "invariantName cannot be null or empty string"); ProviderServicesResolver.Register(type, invariantName); }
public void Resolving_provider_whose_Instance_returns_non_DbProviderServices_throws() { var resolver = new DbProviderServicesResolver(); resolver.Register(typeof(ProviderFake), "fakeProvider"); Assert.Equal( string.Format( CultureInfo.CurrentCulture, Resources_VersioningFacade.EF6Providers_NotDbProviderServices, typeof(ProviderFake).AssemblyQualifiedName), Assert.Throws <InvalidOperationException>( () => resolver.GetService(typeof(DbProviderServices), "fakeProvider")).Message); }
public void Can_register_unregister_provider() { var resolver = new DbProviderServicesResolver(); resolver.Register(typeof(SqlProviderServices), SqlClientInvariantName); Assert.Same( SqlProviderServices.Instance, resolver.GetService(typeof(DbProviderServices), SqlClientInvariantName)); resolver.Unregister(SqlClientInvariantName); Assert.IsType<LegacyDbProviderServicesWrapper>( resolver.GetService(typeof(DbProviderServices), SqlClientInvariantName)); }
public void Can_register_unregister_provider() { var resolver = new DbProviderServicesResolver(); resolver.Register(typeof(SqlProviderServices), SqlClientInvariantName); Assert.Same( SqlProviderServices.Instance, resolver.GetService(typeof(DbProviderServices), SqlClientInvariantName)); resolver.Unregister(SqlClientInvariantName); Assert.IsType <LegacyDbProviderServicesWrapper>( resolver.GetService(typeof(DbProviderServices), SqlClientInvariantName)); }
public void Resolving_provider_without_static_Instance_field_or_property_throws() { var mockProviderServices = new Mock<DbProviderServices>(); var resolver = new DbProviderServicesResolver(); resolver.Register(mockProviderServices.Object.GetType(), "fakeProvider"); Assert.Equal( string.Format( CultureInfo.CurrentCulture, Resources_VersioningFacade.EF6Providers_InstanceMissing, mockProviderServices.Object.GetType().AssemblyQualifiedName), Assert.Throws<InvalidOperationException>( () => resolver.GetService(typeof(DbProviderServices), "fakeProvider")).Message); }
public void Resolving_provider_without_static_Instance_field_or_property_throws() { var mockProviderServices = new Mock <DbProviderServices>(); var resolver = new DbProviderServicesResolver(); resolver.Register(mockProviderServices.Object.GetType(), "fakeProvider"); Assert.Equal( string.Format( CultureInfo.CurrentCulture, Resources_VersioningFacade.EF6Providers_InstanceMissing, mockProviderServices.Object.GetType().AssemblyQualifiedName), Assert.Throws <InvalidOperationException>( () => resolver.GetService(typeof(DbProviderServices), "fakeProvider")).Message); }
public void Resolving_provider_whose_Instance_returns_non_DbProviderServices_throws() { var resolver = new DbProviderServicesResolver(); resolver.Register(typeof(ProviderFake), "fakeProvider"); Assert.Equal( string.Format( CultureInfo.CurrentCulture, Resources_VersioningFacade.EF6Providers_NotDbProviderServices, typeof(ProviderFake).AssemblyQualifiedName), Assert.Throws<InvalidOperationException>( () => resolver.GetService(typeof(DbProviderServices), "fakeProvider")).Message); }