示例#1
0
        public async Task <ContractV1> DeleteContractByIdAsync(string correlationId, string id)
        {
            var contract = await _persistence.GetByIdAsync(correlationId, id);

            if (contract != null)
            {
                await _customersConnector.DeleteCustomerByIdAsync(correlationId, contract.Customer.Id);
            }

            return(await _persistence.DeleteByIdAsync(correlationId, id));
        }
        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);
        }