Пример #1
0
        public async Task GetTransactionRecordVerbose(string transactionRecordID, TransactionRecordResult expectedTransactionRecordResult)
        {
            using (var client = new TruliooApiClient(new Context(_username, _password)
            {
                Host = _hostEndpoint
            }))
            {
                var response = await client.Verification.GetTransactionRecordVerboseAsync(transactionRecordID);

                Assert.Equal(expectedTransactionRecordResult.TransactionID, response.TransactionID);

                Assert.Equal(expectedTransactionRecordResult.Errors.Count(), response.Errors.Count());

                Assert.Equal(expectedTransactionRecordResult.InputFields.Count(), response.InputFields.Count());

                List <string> expectedInputFieldNames = expectedTransactionRecordResult.InputFields.Select(x => x.FieldName).ToList();
                List <string> actualInputFieldNames   = response.InputFields.Select(x => x.FieldName).ToList();
                Assert.True(expectedInputFieldNames.All(actualInputFieldNames.Contains));

                List <string> expectedInputFieldValues = expectedTransactionRecordResult.InputFields.Select(x => x.Value).ToList();
                List <string> actualInputFieldValues   = response.InputFields.Select(x => x.Value).ToList();
                Assert.True(expectedInputFieldValues.All(actualInputFieldValues.Contains));

                Assert.Equal(expectedTransactionRecordResult.Record.RecordStatus, response.Record.RecordStatus);
                Assert.Equal(expectedTransactionRecordResult.Record.DatasourceResults.Count(), response.Record.DatasourceResults.Count());
            }
        }
Пример #2
0
        /// <summary>
        ///     Gets a transaction record with address cleansing information
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        public async Task <TransactionRecordResult> GetTransactionRecordAddressAsync(string id)
        {
            ResourceName            resource = new ResourceName("transactionrecord", id, "withaddress");
            TransactionRecordResult response = await this.Context.GetAsync <TransactionRecordResult>(this._verificationNamespace, resource)
                                               .ConfigureAwait(continueOnCapturedContext: false);

            return(response);
        }
Пример #3
0
        public void EqualsObjectCastTest()
        {
            string transactionID = "test-transactionID";
            TransactionRecordResult transactionRecordResult = new TransactionRecordResult(transactionID: transactionID);
            object obj = new TransactionRecordResult(transactionID: transactionID);

            Assert.True(transactionRecordResult.Equals(obj));
        }
Пример #4
0
        public void EqualsTest()
        {
            string transactionID = "test-transactionID";
            TransactionRecordResult transactionID1 = new TransactionRecordResult(transactionID: transactionID);

            Assert.Equal(transactionID1, transactionID1);
            Assert.Equal(transactionID1, new TransactionRecordResult(transactionID: transactionID));
            Assert.NotEqual(transactionID1, new TransactionRecordResult(transactionID: transactionID + "1"));
            Assert.False(transactionID1.Equals(null));
        }
Пример #5
0
        public async Task GetTransactionRecordVerboseTest()
        {
            TransactionRecordResult expected = new TransactionRecordResult(
                inputFields: new List <DataField> {
                new DataField(fieldName: "test-fieldName", value: "test-value")
            },
                uploadedDt: DateTime.Parse("2020-09-15T00:00:00+00:00"),
                record: new Trulioo.SDK.Model.Record(
                    datasourceResults: new List <DatasourceResult> {
                new DatasourceResult(datasourceFields: new List <DatasourceField> {
                    new DatasourceField(fieldName: "test-firstGivenName", status: "test-status")
                })
            },
                    recordStatus: "test-recordStatus",
                    transactionRecordID: "test-transactionRecordID"
                    ),
                errors: new List <ServiceError>()
                );

            mockServer
            .Given(
                Request.Create()
                .WithPath("/trial/verifications/v1/transactionrecord/test-transaction-guid/verbose")
                .WithHeader("x-trulioo-api-key", TEST_API_KEY)
                .UsingGet()
                )
            .RespondWith(
                Response.Create()
                .WithStatusCode(200)
                .WithHeader("Content-Type", "application/json")
                .WithBody(JsonConvert.SerializeObject(expected))
                );

            try
            {
                TransactionRecordResult result = verificationsApi.GetTransactionRecordVerbose("trial", "test-transaction-guid");
                Assert.Equal(result, expected);
            }
            catch (ApiException)
            {
                Assert.True(false, "Unexpected ApiException");
            }

            try
            {
                TransactionRecordResult result = await verificationsApi.GetTransactionRecordVerboseAsync("trial", "test-transaction-guid");

                Assert.Equal(result, expected);
            }
            catch (ApiException)
            {
                Assert.True(false, "Unexpected ApiException");
            }
        }
Пример #6
0
        public static IEnumerable <object[]> TransactionRecordVerboseTestData()
        {
            TransactionRecordResult transactionRecordResult;

            if (string.IsNullOrWhiteSpace(Common.Basefact.TransactionResult))
            {
                transactionRecordResult = new TransactionRecordResult()
                {
                    InputFields = new List <DataField>()
                    {
                        new DataField {
                            FieldName = "", Value = ""
                        }
                    },
                    TransactionID = "",
                    Record        = new Model.Record()
                    {
                        RecordStatus      = "",
                        DatasourceResults = new List <DatasourceResult>()
                        {
                            new DatasourceResult()
                            {
                                DatasourceName   = "",
                                DatasourceFields = new List <DatasourceField>()
                                {
                                    new DatasourceField()
                                    {
                                        FieldName = "", Status = ""
                                    },
                                    new DatasourceField()
                                    {
                                        FieldName = "", Status = ""
                                    }
                                }
                            }
                        }
                    },
                    Errors = new List <Model.Errors.ServiceError> {
                    }
                };
            }
            else
            {
                transactionRecordResult = JsonSerializer.Deserialize <TransactionRecordResult>(Common.Basefact.TransactionResult);
            }

            yield return(new object[] { Common.Basefact.TransactionRecordId, transactionRecordResult });
        }
Пример #7
0
        public void GetHashcodeTest()
        {
            TransactionRecordResult transactionRecordResult1 = new TransactionRecordResult();

            transactionRecordResult1.TransactionID       = "test-transactionID";
            transactionRecordResult1.UploadedDt          = DateTime.Parse("2020-09-15T00:00:00+00:00");
            transactionRecordResult1.CountryCode         = "test-countryCode";
            transactionRecordResult1.ProductName         = "test-productName";
            transactionRecordResult1.CustomerReferenceID = "test-customerReferenceID";

            TransactionRecordResult transactionRecordResult2 = new TransactionRecordResult();

            transactionRecordResult2.TransactionID       = "test-transactionID";
            transactionRecordResult2.UploadedDt          = DateTime.Parse("2020-09-15T00:00:00+00:00");
            transactionRecordResult2.CountryCode         = "test-countryCode";
            transactionRecordResult2.ProductName         = "test-productName";
            transactionRecordResult2.CustomerReferenceID = "test-customerReferenceID";

            Assert.Equal(transactionRecordResult1.GetHashCode(), transactionRecordResult2.GetHashCode());
        }
Пример #8
0
 public TransactionRecordResultTests()
 {
     transactionRecordResult = new TransactionRecordResult();
 }