public void TestCGuidGenerated()
        {
#pragma warning disable 618
            if (BsonDefaults.GuidRepresentationMode == GuidRepresentationMode.V2 && BsonDefaults.GuidRepresentation != GuidRepresentation.Unspecified)
            {
                _collection.RemoveAll();

                var id       = Guid.NewGuid();
                var document = new CGuid {
                    Id = id, A = 1
                };
                _collection.Save(document);
                Assert.Equal(id, document.Id);
                Assert.Equal(1, _collection.Count());

                document.A = 2;
                _collection.Save(document);
                Assert.Equal(id, document.Id);
                Assert.Equal(1, _collection.Count());

                document = _collection.FindOneAs <CGuid>();
                Assert.Equal(id, document.Id);
                Assert.Equal(2, document.A);
            }
#pragma warning restore 618
        }
        public void TestCGuidGenerated()
        {
            _collection.RemoveAll();

            var id       = Guid.NewGuid();
            var document = new CGuid {
                Id = id, A = 1
            };

            _collection.Save(document);
            Assert.AreEqual(id, document.Id);
            Assert.AreEqual(1, _collection.Count());

            document.A = 2;
            _collection.Save(document);
            Assert.AreEqual(id, document.Id);
            Assert.AreEqual(1, _collection.Count());

            document = _collection.FindOneAs <CGuid>();
            Assert.AreEqual(id, document.Id);
            Assert.AreEqual(2, document.A);
        }
        public void TestCGuidEmpty()
        {
            _collection.RemoveAll();

            var document = new CGuid {
                A = 1
            };

            Assert.AreEqual(Guid.Empty, document.Id);
            _collection.Save(document);
            Assert.AreNotEqual(Guid.Empty, document.Id);
            Assert.AreEqual(1, _collection.Count());

            var id = document.Id;

            document.A = 2;
            _collection.Save(document);
            Assert.AreEqual(id, document.Id);
            Assert.AreEqual(1, _collection.Count());

            document = _collection.FindOneAs <CGuid>();
            Assert.AreEqual(id, document.Id);
            Assert.AreEqual(2, document.A);
        }
        public void TestCGuidGenerated() {
            collection.RemoveAll();

            var id = Guid.NewGuid();
            var document = new CGuid { Id = id, A = 1 };
            collection.Save(document);
            Assert.AreEqual(id, document.Id);
            Assert.AreEqual(1, collection.Count());

            document.A = 2;
            collection.Save(document);
            Assert.AreEqual(id, document.Id);
            Assert.AreEqual(1, collection.Count());

            document = collection.FindOneAs<CGuid>();
            Assert.AreEqual(id, document.Id);
            Assert.AreEqual(2, document.A);
        }
        public void TestCGuidEmpty() {
            collection.RemoveAll();

            var document = new CGuid { A = 1 };
            Assert.AreEqual(Guid.Empty, document.Id);
            collection.Save(document);
            Assert.AreNotEqual(Guid.Empty, document.Id);
            Assert.AreEqual(1, collection.Count());

            var id = document.Id;
            document.A = 2;
            collection.Save(document);
            Assert.AreEqual(id, document.Id);
            Assert.AreEqual(1, collection.Count());

            document = collection.FindOneAs<CGuid>();
            Assert.AreEqual(id, document.Id);
            Assert.AreEqual(2, document.A);
        }