public void CorrectlyRevivesMutlipleShardLocations() { const string expectedServerName01 = @"(localdb)\mssqllocaldb"; const string expectedServerName02 = @"(localdb)\.\SharedLocalDb"; const string expectedDatabaseName01 = "MyTestShard001"; const string expectedDatabaseName02 = "MyTestShard002"; var argValue = $"{expectedServerName01}|{expectedDatabaseName01},{expectedServerName02}|{expectedDatabaseName02}"; var actualShardLocations = ShardLocationsArgReviver.Revive(null, argValue); Assert.IsNotNull(actualShardLocations); Assert.IsNotNull(actualShardLocations.Locations); Assert.AreEqual(2, actualShardLocations.Locations.Length); var actualLocation01 = actualShardLocations.Locations[0]; Assert.AreEqual(expectedServerName01, actualLocation01.ServerName); Assert.AreEqual(expectedDatabaseName01, actualLocation01.DatabaseName); var actualLocation02 = actualShardLocations.Locations[1]; Assert.AreEqual(expectedServerName02, actualLocation02.ServerName); Assert.AreEqual(expectedDatabaseName02, actualLocation02.DatabaseName); }
public void CorrectlyReturnsEmptyLocationsArrayForEmtpyLocationValueAndDoesNotThrowException() { var actualEmptyLocations = ShardLocationsArgReviver.Revive(null, ","); Assert.IsNotNull(actualEmptyLocations); Assert.IsNotNull(actualEmptyLocations.Locations); Assert.IsFalse(actualEmptyLocations.Locations.Any()); }
public void CorrectlyReturnsNullForNullOrEmptyOrWhiteSpaceValue() { var actualNull = ShardLocationsArgReviver.Revive(null, null); Assert.IsNull(actualNull); var actualEmpty = ShardLocationsArgReviver.Revive(null, ""); Assert.IsNull(actualNull); var actualWhiteSpace = ShardLocationsArgReviver.Revive(null, "\t"); Assert.IsNull(actualNull); }
public void CorrectlyRevivesSingleShardLocationWithErrantPairSeperator() { const string expectedServerName = @"(localdb)\mssqllocaldb"; const string expectedDatabaseName = "MyTestShard001"; var actualShardLocations = ShardLocationsArgReviver.Revive(null, $"{expectedServerName}|{expectedDatabaseName}|"); Assert.IsNotNull(actualShardLocations); Assert.IsNotNull(actualShardLocations.Locations); Assert.AreEqual(1, actualShardLocations.Locations.Length); var actualLocation = actualShardLocations.Locations.Single(); Assert.AreEqual(expectedServerName, actualLocation.ServerName); Assert.AreEqual(expectedDatabaseName, actualLocation.DatabaseName); }
public void ThrowsExceptionForMissingDatabaseNameWhenMultipleLocationsSpecified() { var _ = ShardLocationsArgReviver.Revive(null, @"(localdb)\mssqllocaldb|,(localdb)\mssqllocaldb|MyTestShard002"); }
public void ThrowsExceptionForMissingDatabaseName() { var _ = ShardLocationsArgReviver.Revive(null, @"(localdb)\mssqllocaldb|"); }
public void ThrowsExceptionForMissingServerName() { var _ = ShardLocationsArgReviver.Revive(null, "|MyTestShard001"); }