Пример #1
0
        public void CreateCommand_should_return_expectedResult_when_WriteConcern_is_set(
            [Values(null, 1, 2)]
            int?w,
            [Values(false, true)]
            bool isWriteConcernSupported)
        {
            var indexName    = "x_1";
            var writeConcern = w.HasValue ? new WriteConcern(w.Value) : null;
            var subject      = new DropIndexOperation(_collectionNamespace, indexName, _messageEncoderSettings)
            {
                WriteConcern = writeConcern
            };
            var session = OperationTestHelper.CreateSession();
            var connectionDescription = OperationTestHelper.CreateConnectionDescription(serverVersion: Feature.CommandsThatWriteAcceptWriteConcern.SupportedOrNotSupportedVersion(isWriteConcernSupported));

            var result = subject.CreateCommand(session, connectionDescription);

            var expectedResult = new BsonDocument
            {
                { "dropIndexes", _collectionNamespace.CollectionName },
                { "index", indexName },
                { "writeConcern", () => writeConcern.ToBsonDocument(), writeConcern != null && isWriteConcernSupported }
            };

            result.Should().Be(expectedResult);
        }
Пример #2
0
        public void CreateCommand_should_return_expectedResult()
        {
            var indexName      = "x_1";
            var subject        = new DropIndexOperation(_collectionNamespace, indexName, _messageEncoderSettings);
            var expectedResult = new BsonDocument
            {
                { "dropIndexes", _collectionNamespace.CollectionName },
                { "index", indexName }
            };

            var result = subject.CreateCommand(null);

            result.Should().Be(expectedResult);
        }
Пример #3
0
        public void CreateCommand_should_return_expected_result_when_MaxTime_is_Set(long maxTimeTicks, int expectedMaxTimeMS)
        {
            var indexName = "x_1";
            var maxTime   = TimeSpan.FromTicks(maxTimeTicks);
            var subject   = new DropIndexOperation(_collectionNamespace, indexName, _messageEncoderSettings);

            subject.MaxTime = maxTime;
            var expectedResult = new BsonDocument
            {
                { "dropIndexes", _collectionNamespace.CollectionName },
                { "index", indexName },
                { "maxTimeMS", expectedMaxTimeMS }
            };

            var result = subject.CreateCommand(null);

            result.Should().Be(expectedResult);
            result["maxTimeMS"].BsonType.Should().Be(BsonType.Int32);
        }
        public void CreateCommand_should_return_expectedResult_when_WriteConcern_is_set(
            [Values(null, 1, 2)]
            int?w)
        {
            var indexName    = "x_1";
            var writeConcern = w.HasValue ? new WriteConcern(w.Value) : null;
            var subject      = new DropIndexOperation(_collectionNamespace, indexName, _messageEncoderSettings)
            {
                WriteConcern = writeConcern
            };
            var session = OperationTestHelper.CreateSession();
            var connectionDescription = OperationTestHelper.CreateConnectionDescription();

            var result = subject.CreateCommand(session);

            var expectedResult = new BsonDocument
            {
                { "dropIndexes", _collectionNamespace.CollectionName },
                { "index", indexName },
                { "writeConcern", () => writeConcern.ToBsonDocument(), writeConcern != null }
            };

            result.Should().Be(expectedResult);
        }