public async Task CreateTransaction_CallswithCorrectParams_Test()
        {
            var transactionCreatePayload = new DragonchainTransactionCreatePayload
            {
                Version         = "1",
                TransactionType = "transaction",
                Payload         = "hi!",
                Tag             = "Awesome!"
            };
            await _dragonchainClient.CreateTransaction(transactionCreatePayload.TransactionType, transactionCreatePayload.Payload, transactionCreatePayload.Tag);

            _httpService.Verify(service => service.PostAsync <DragonchainTransactionCreateResponse>("/transaction", It.IsAny <DragonchainTransactionCreatePayload>(), ""), Times.Once);
        }
Beispiel #2
0
        public async Task Transaction_Tests()
        {
            if (AreLevel1TestsConfigured())
            {
                // register transaction type test
                var transactionType = "test";
                var registerTransactionTypeResult = await _dragonchainLevel1Client.CreateTransactionType(transactionType, new List <TransactionTypeCustomIndex>
                {
                    new TransactionTypeCustomIndex {
                        Key = "TestKey", Path = "TestPath"
                    }
                }
                                                                                                         );

                Assert.AreEqual(200, registerTransactionTypeResult.Status);
                Assert.IsTrue(registerTransactionTypeResult.Ok);
                Assert.IsInstanceOf <TransactionTypeSimpleResponse>(registerTransactionTypeResult.Response);

                try
                {
                    // update transaction type test
                    var updateTransactionTypeResult = await _dragonchainLevel1Client.UpdateTransactionType(transactionType, new List <TransactionTypeCustomIndex>
                    {
                        new TransactionTypeCustomIndex {
                            Key = "NewTestKey", Path = "NewTestPath"
                        }
                    });

                    Assert.AreEqual(200, updateTransactionTypeResult.Status);
                    Assert.IsTrue(updateTransactionTypeResult.Ok);
                    Assert.IsInstanceOf <TransactionTypeSimpleResponse>(updateTransactionTypeResult.Response);

                    // create transaction test
                    var createResult = await _dragonchainLevel1Client.CreateTransaction(transactionType, new { }, "pottery");

                    Assert.AreEqual(201, createResult.Status);
                    Assert.IsTrue(createResult.Ok);
                    Assert.IsInstanceOf <DragonchainTransactionCreateResponse>(createResult.Response);
                    Assert.IsNotEmpty(createResult.Response.TransactionId);

                    // create bulk transaction test
                    var newBulkTransaction = new BulkTransactionPayload
                    {
                        TransactionType = transactionType,
                        Tag             = "pottery",
                        Payload         = new { }
                    };
                    var createBulkResult = await _dragonchainLevel1Client.CreateBulkTransaction(
                        new List <BulkTransactionPayload> {
                        newBulkTransaction, newBulkTransaction, newBulkTransaction
                    }
                        );

                    Assert.AreEqual(207, createBulkResult.Status);
                    Assert.IsTrue(createBulkResult.Ok);
                    Assert.IsInstanceOf <DragonchainBulkTransactionCreateResponse>(createBulkResult.Response);
                }
                finally
                {
                    // delete transaction test
                    var deleteResult = await _dragonchainLevel1Client.DeleteTransactionType(transactionType);

                    Assert.AreEqual(200, deleteResult.Status);
                    Assert.IsTrue(deleteResult.Ok);
                    Assert.IsInstanceOf <TransactionTypeSimpleResponse>(deleteResult.Response);
                }
            }
            else
            {
                Assert.Warn("User secrets - dragonchain-sdk.tests-79a3edd0-2092-40a2-a04d-dcb46d5ca9ed not available");
            }
        }