Exemplo n.º 1
0
        public async Task error_on_invalid_account()
        {
            const string response = @"
                <CRMMessage language=""en_US"" currency=""DKK"" isTrustedSAT=""false"" hostversion=""1.00"">
                    <RequestCode>GetAccount</RequestCode>
                    <ResponseCode>A</ResponseCode>
                    <ResultSet>
                        <ResultSetMetaData>
                            <RSColumn name=""programid"" type=""long"" nullable=""false""></RSColumn>
                        </ResultSetMetaData>
                        <Rows></Rows>
                    </ResultSet>
                </CRMMessage>";

            var handler  = CreateMockMessageHandler(HttpStatusCode.OK, CreateSoapResponse(response.Trim()));
            var executor = new OracleHospitalityExecutor(_options, _executorLogger, new HttpClient(handler));
            var sut      = new CrmClient(_options, executor);

            var actual =
                await sut.GetAccountAsync(
                    "accountposref = ?",
                    new[] { new ColumnValue("accountposref", "123") },
                    new[] { new Column("programid") });

            Assert.Empty(actual.Rows);
        }
Exemplo n.º 2
0
        private async Task <GetAccountResponse> GetAccount(CrmClient client, string accountNumber)
        {
            var columnList = await client.GetColumnListAsync("account");

            var columnNames = columnList.Row.Columns.Select(c => new Column(c.Key)).ToArray();
            var account     = await client.GetAccountAsync(
                "accountposref = ?",
                new[] { new ColumnValue("accountposref", accountNumber) },
                columnNames);

            InferMetaDataToFieldSpecifications(account.MetaData, columnList.Row.Columns);

            Assert.Single(account.Rows);
            Assert.Equal(accountNumber, account.Rows[0].Columns["ACCOUNTPOSREF"]);
            return(account);
        }