コード例 #1
0
        public void GetAssetCustomer_ValidAssetCustomer_ReturnsResult()
        {
            //Arrange
            var assetCustomer = new DbAssetCustomer
            {
                AssetCustomerID        = 1,
                Fk_CustomerUID         = Guid.NewGuid(),
                Fk_AssetUID            = Guid.NewGuid(),
                fk_AssetRelationTypeID = 0,
                LastCustomerUTC        = DateTime.UtcNow
            };
            var config = new ComparisonConfig
            {
                IgnoreObjectTypes             = true,
                MaxMillisecondsDateDifference = 500,
                MaxDifferences = 0
            };
            var assetCustomerCompareLogic = new CompareLogic(config);

            transaction.Get <DbAssetCustomer>(Arg.Any <string>()).Returns(new List <DbAssetCustomer> {
                assetCustomer
            });

            //Act
            var resultData = customerAssetService.GetAssetCustomer(assetCustomer.Fk_CustomerUID, assetCustomer.Fk_AssetUID);

            //Arrange
            Assert.NotNull(resultData);
            ComparisonResult compareResult = assetCustomerCompareLogic.Compare(assetCustomer, resultData);

            Assert.True(compareResult.Differences.Count == 0);
        }
コード例 #2
0
        public IActionResult DissociateCustomerAsset([FromBody] DissociateCustomerAssetEvent customerAsset)
        {
            try
            {
                customerAsset.ReceivedUTC = DateTime.UtcNow;
                if (customerService.GetCustomer(customerAsset.CustomerUID) == null)
                {
                    logger.LogInformation(Messages.CustomerDoesntExist);
                    return(BadRequest(Messages.CustomerDoesntExist));
                }

                var customerAssetInDb
                    = customerAssetService.GetAssetCustomer(customerAsset.CustomerUID, customerAsset.AssetUID);
                if (customerAssetInDb == null)
                {
                    logger.LogInformation(Messages.CustomerAssetDoesntExist);
                    return(BadRequest(Messages.CustomerAssetDoesntExist));
                }

                if (customerAssetService.DissociateCustomerAsset(customerAsset))
                {
                    return(Ok());
                }

                logger.LogWarning(Messages.UnableToSaveToDb);
                return(BadRequest(Messages.UnableToSaveToDb));
            }
            catch (Exception ex)
            {
                logger.LogError(string.Format(Messages.ExceptionOccured, ex.Message, ex.StackTrace));
                return(StatusCode((int)HttpStatusCode.InternalServerError, ex.Message));
            }
        }