Exemplo n.º 1
0
        public async Task error_on_invalid_programid()
        {
            const string response = @"
                <CRMMessage language=""en_US"" currency=""DKK"" isTrustedSAT=""false"" hostversion=""1.00"">
                    <RequestCode>GetProgram</RequestCode>
                    <ResponseCode>A</ResponseCode>
                    <ResultSet>
                        <ResultSetMetaData>
                        <RSColumn name=""programcode"" type=""string"" nullable=""true""></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.GetProgramAsync(
                    "programid = ?",
                    new[] { new ColumnValue("programid", "123") },
                    new[] { new Column("programcode") });

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

            var columnNames = columnList.Row.Columns.Select(c => new Column(c.Key)).ToArray();
            var programId   = account.Rows[0].Columns["PROGRAMID"].ToString();
            var program     = await client.GetProgramAsync(
                "programid = ?",
                new[] { new ColumnValue("programid", programId) },
                columnNames);

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

            Assert.Single(program.Rows);
            Assert.Equal("EMPDISC", program.Rows[0].Columns["PROGRAMCODE"]);
            return(program);
        }