示例#1
0
        public async Task <DataPage <ContractV1> > GetContractsAsync(string correlationId, FilterParams filter, PagingParams paging, SortParams sort)
        {
            DataPage <ContractV1> dataPage = await _persistence.GetPageByFilterAsync(correlationId, filter, paging, sort);

            foreach (var contract in dataPage.Data)
            {
                contract.Customer = ToInternal(await _customersConnector.GetByIdAsync(correlationId, contract.Customer.Id));
            }

            return(dataPage);
        }
        public async Task TestCrudOperationsAsync()
        {
            // Create items
            await TestCreateContractsAsync();

            // Get all contracts
            var page = await _persistence.GetPageByFilterAsync(
                null,
                new FilterParams(),
                new PagingParams(),
                new SortParams()
                );

            Assert.NotNull(page);
            Assert.Equal(3, page.Data.Count);

            var contract1 = page.Data[0];

            // Update the contract
            contract1.Number = "ABC";

            var contract = await _persistence.UpdateAsync(null, contract1);

            Assert.NotNull(contract);
            Assert.Equal(contract1.Id, contract.Id);
            Assert.Equal("ABC", contract.Number);

            // Delete the contract
            contract = await _persistence.DeleteByIdAsync(null, contract1.Id);

            Assert.NotNull(contract);
            Assert.Equal(contract1.Id, contract.Id);

            // Try to get deleted contract
            contract = await _persistence.GetByIdAsync(null, contract1.Id);

            Assert.Null(contract);
        }