public void With_invariant_name_delegates_to_internal_configuration()
{
var mockInternalConfiguration = new Mock<InternalConfiguration>(null, null, null, null, null);
var provider = SqlSpatialServices.Instance;
Func<object, bool> keyPredicate = null;
mockInternalConfiguration.Setup(
m => m.RegisterSingleton<DbSpatialServices>(
provider,
It.IsAny<Func<object, bool>>())).Callback<DbSpatialServices, Func<object, bool>>((s, k) => { keyPredicate = k; });
new DbConfiguration(mockInternalConfiguration.Object).SetSpatialServices("Mini.Tattoo", provider);
mockInternalConfiguration.Verify(m => m.RegisterSingleton<DbSpatialServices>(provider, It.IsAny<Func<object, bool>>()));
Assert.True(keyPredicate(new DbProviderInfo("Mini.Tattoo", "Foo")));
Assert.False(keyPredicate(new DbProviderInfo("Maxi.Tattoo", "Foo")));
Assert.False(keyPredicate("Mini.Tattoo"));
Assert.False(keyPredicate(null));
}