public void TestAll()
        {
            var server   = MongoServer.Create();
            var settings = new MongoDatabaseSettings(server, "database")
            {
                Credentials = MongoCredentials.Create("username", "password"),
                SafeMode    = SafeMode.Create(5, TimeSpan.FromSeconds(5)),
                SlaveOk     = true
            };

            Assert.AreEqual("database", settings.DatabaseName);
            Assert.AreEqual(MongoCredentials.Create("username", "password"), settings.Credentials);
            Assert.AreEqual(GuidRepresentation.CSharpLegacy, settings.GuidRepresentation);
            Assert.AreEqual(SafeMode.Create(5, TimeSpan.FromSeconds(5)), settings.SafeMode);
            Assert.AreEqual(true, settings.SlaveOk);

            Assert.IsFalse(settings.IsFrozen);
            var hashCode             = settings.GetHashCode();
            var stringRepresentation = settings.ToString();

            Assert.AreEqual(settings, settings);

            settings.Freeze();
            Assert.IsTrue(settings.IsFrozen);
            Assert.AreEqual(hashCode, settings.GetHashCode());
            Assert.AreEqual(stringRepresentation, settings.ToString());
        }
        public void TestAll()
        {
            var settings = new MongoServerSettings();

            settings.ConnectionMode     = ConnectionMode.ReplicaSet;
            settings.ConnectTimeout     = TimeSpan.FromSeconds(1);
            settings.DefaultCredentials = MongoCredentials.Create("username", "password");
            settings.GuidRepresentation = GuidRepresentation.CSharpLegacy;
            settings.IPv6 = true;
            settings.MaxConnectionIdleTime = TimeSpan.FromSeconds(2);
            settings.MaxConnectionLifeTime = TimeSpan.FromSeconds(3);
            settings.MaxConnectionPoolSize = 99;
            settings.MinConnectionPoolSize = 11;
            settings.ReadPreference        = ReadPreference.Primary;
            settings.ReplicaSetName        = "replicaname";
            settings.SafeMode         = SafeMode.Create(5, TimeSpan.FromSeconds(4));
            settings.Server           = new MongoServerAddress("server");
            settings.SocketTimeout    = TimeSpan.FromSeconds(5);
            settings.UseSsl           = true;
            settings.WaitQueueSize    = 55;
            settings.WaitQueueTimeout = TimeSpan.FromSeconds(6);

            Assert.AreEqual(ConnectionMode.ReplicaSet, settings.ConnectionMode);
            Assert.AreEqual(TimeSpan.FromSeconds(1), settings.ConnectTimeout);
            Assert.AreEqual(MongoCredentials.Create("username", "password"), settings.DefaultCredentials);
            Assert.AreEqual(GuidRepresentation.CSharpLegacy, settings.GuidRepresentation);
            Assert.AreEqual(true, settings.IPv6);
            Assert.AreEqual(TimeSpan.FromSeconds(2), settings.MaxConnectionIdleTime);
            Assert.AreEqual(TimeSpan.FromSeconds(3), settings.MaxConnectionLifeTime);
            Assert.AreEqual(99, settings.MaxConnectionPoolSize);
            Assert.AreEqual(11, settings.MinConnectionPoolSize);
            Assert.AreEqual(ReadPreference.Primary, settings.ReadPreference);
            Assert.AreEqual("replicaname", settings.ReplicaSetName);
            Assert.AreEqual(SafeMode.Create(5, TimeSpan.FromSeconds(4)), settings.SafeMode);
            Assert.AreEqual(new MongoServerAddress("server"), settings.Server);
            Assert.IsTrue((new[] { new MongoServerAddress("server") }).SequenceEqual(settings.Servers));
            Assert.AreEqual(TimeSpan.FromSeconds(5), settings.SocketTimeout);
            Assert.AreEqual(true, settings.UseSsl);
            Assert.AreEqual(55, settings.WaitQueueSize);
            Assert.AreEqual(TimeSpan.FromSeconds(6), settings.WaitQueueTimeout);

            Assert.IsFalse(settings.IsFrozen);
            var hashCode             = settings.GetHashCode();
            var stringRepresentation = settings.ToString();

            Assert.AreEqual(settings, settings);

            settings.Freeze();
            Assert.IsTrue(settings.IsFrozen);
            Assert.AreEqual(hashCode, settings.GetHashCode());
            Assert.AreEqual(stringRepresentation, settings.ToString());
        }
        public void TestClone()
        {
            // set everything to non default values to test that all settings are cloned
            var settings = new MongoDatabaseSettings
            {
                Credentials        = MongoCredentials.Create("username", "password"),
                GuidRepresentation = GuidRepresentation.PythonLegacy,
                ReadPreference     = ReadPreference.Secondary,
                WriteConcern       = WriteConcern.W2
            };
            var clone = settings.Clone();

            Assert.IsTrue(clone.Equals(settings));
        }
Пример #4
0
        public void TestCreateAdminCredentials()
        {
            var credentials = MongoCredentials.Create("username(admin)", "password");

            Assert.AreEqual("username", credentials.Username);
            Assert.AreEqual("password", credentials.Password);
            Assert.IsTrue(credentials.Admin);

            credentials = new MongoCredentials("username(admin)", "password");
            Assert.AreEqual("username", credentials.Username);
            Assert.AreEqual("password", credentials.Password);
            Assert.IsTrue(credentials.Admin);

            credentials = new MongoCredentials("username", "password", true);
            Assert.AreEqual("username", credentials.Username);
            Assert.AreEqual("password", credentials.Password);
            Assert.IsTrue(credentials.Admin);
        }
        public void TestAll()
        {
            var settings = new MongoDatabaseSettings
            {
                Credentials        = MongoCredentials.Create("username", "password"),
                GuidRepresentation = GuidRepresentation.PythonLegacy,
                ReadPreference     = ReadPreference.Primary,
                WriteConcern       = WriteConcern.Acknowledged
            };

            Assert.AreEqual(MongoCredentials.Create("username", "password"), settings.Credentials);
            Assert.AreEqual(GuidRepresentation.PythonLegacy, settings.GuidRepresentation);
            Assert.AreSame(ReadPreference.Primary, settings.ReadPreference);
#pragma warning disable 618
            Assert.AreEqual(new SafeMode(false)
            {
                W = 1
            }, settings.SafeMode);
#pragma warning restore
            Assert.AreSame(WriteConcern.Acknowledged, settings.WriteConcern);
        }