public void TestSafeMode_WTimeout(bool enabledDefault, int? ms, string formatString, string[] values)
{
#pragma warning disable 618
var wtimeout = (ms == null) ? (TimeSpan?)null : TimeSpan.FromMilliseconds(ms.Value);
var safeMode = new SafeMode(enabledDefault) { W = 2 };
if (wtimeout != null) { safeMode.WTimeout = wtimeout.Value; }
var built = new MongoUrlBuilder { Server = _localhost, SafeMode = safeMode };
var canonicalConnectionString = string.Format(formatString, values[0]);
foreach (var url in EnumerateBuiltAndParsedUrls(built, formatString, values))
{
Assert.AreEqual(true, url.SafeMode.Enabled);
Assert.AreEqual(2, url.SafeMode.W);
Assert.AreEqual(wtimeout ?? TimeSpan.Zero, url.SafeMode.WTimeout);
Assert.AreEqual(canonicalConnectionString, url.ToString());
}
#pragma warning restore
}