Arango.Tests.TransactionOperationsTests.Should_execute_transaction_with_object_parameter_and_return_document_ID C# (CSharp) Метод

Should_execute_transaction_with_object_parameter_and_return_document_ID() приватный Метод

        public void Should_execute_transaction_with_object_parameter_and_return_document_ID()
        {
            Database.ClearTestCollection(Database.TestDocumentCollectionName);
            var db = new ADatabase(Database.Alias);

            var transactionData = new TransactionEntity
            {
                Foo = "Some string value"
            };

            var transactionResult = db.Transaction
                .WriteCollection(Database.TestDocumentCollectionName)
                .Param("data", transactionData)
                .Execute<string>(@"
                function (params) {
                    var db = require('internal').db;

                    return db." + Database.TestDocumentCollectionName + @".save(params.data)._id;
                }
                ");

            Assert.AreEqual(200, transactionResult.StatusCode);
            Assert.IsTrue(transactionResult.Success);
            Assert.IsTrue(transactionResult.HasValue);
            Assert.IsFalse(string.IsNullOrEmpty(transactionResult.Value));

            var docId = transactionResult.Value;

            var getResult = db.Document
                .Get(docId);

            Assert.AreEqual(200, getResult.StatusCode);
            Assert.IsTrue(getResult.Success);
            Assert.IsTrue(getResult.HasValue);
            Assert.AreEqual(getResult.Value.ID(), docId);
            Assert.AreEqual(transactionData.Foo, getResult.Value.String("Foo"));
        }