Ejemplo n.º 1
0
        public void MapSetsDataRecorderMetaDataToResultOfMetaDataFactoryCall()
        {
            const int organizationRoleUserCreatorId = 23;
            var       dateCreated = new DateTime(2001, 1, 1);
            var       expectedDataRecorderMetaData = new DataRecorderMetaData();
            var       orderDetailEntity            = GetValidOrderDetailEntity();

            orderDetailEntity.DateCreated = dateCreated;
            orderDetailEntity.OrganizationRoleUserCreatorId = organizationRoleUserCreatorId;

            Expect.Call(_mockedDataRecorderMetaDataFactory.CreateDataRecorderMetaData
                            (organizationRoleUserCreatorId, dateCreated)).
            Return(expectedDataRecorderMetaData);
            Expect.Call(_mockedOrderItemStatusFactory.CreateOrderItemStatus
                            ((OrderItemType)orderDetailEntity.OrderItem.Type, orderDetailEntity.Status)).
            Return(FakeOrderItemStatus.StatusZero);

            _mocks.ReplayAll();
            OrderDetail orderDetail = _mapper.Map(orderDetailEntity);

            _mocks.VerifyAll();

            Assert.AreEqual(expectedDataRecorderMetaData, orderDetail.DataRecorderMetaData,
                            "The OrderDetail's DataRecorderMetaData was not set correctly.");
        }
Ejemplo n.º 2
0
        public void CreateNewOrderMapsDataRecorderCreatorIdToDataRecorderMetaData()
        {
            const int expectedDataRecorderCreatorId = 3;

            Expect.Call(_dataRecorderMetaDataFactory.
                        CreateDataRecorderMetaData(expectedDataRecorderCreatorId)).Return(null);

            _mocks.ReplayAll();
            _orderFactory.CreateNewOrder(OrderType.Retail, expectedDataRecorderCreatorId);
            _mocks.VerifyAll();
        }
Ejemplo n.º 3
0
        public long SavePayment(IEnumerable <PaymentInstrument> paymentInstruments, string notes,
                                long dataRecorderCreatorId)
        {
            if (paymentInstruments == null || !paymentInstruments.Any() ||
                paymentInstruments.Contains(null))
            {
                throw new InvalidOperationException("The payment must include at least one payment instrument, and may not contain null payment instruments");
            }

            var payment = new Payment
            {
                Notes = notes,
                DataRecorderMetaData = _dataRecorderMetaDataFactory.
                                       CreateDataRecorderMetaData(dataRecorderCreatorId, DateTime.Now)
            };

            using (var scope = new TransactionScope())
            {
                payment = _paymentRepository.Save(payment);
                foreach (var paymentInstrument in paymentInstruments)
                {
                    paymentInstrument.PaymentId = payment.Id;
                }
                _combinedPaymentInstrumentRepository.SavePaymentInstruments(paymentInstruments);
                scope.Complete();
            }
            return(payment.Id);
        }
Ejemplo n.º 4
0
        public void MapSetsDataRecorderMetaDataToReturnedObjectOfMetaDataFactoryCall()
        {
            const int organizationRoleUserCreatorId = 3;
            var       dateCreated  = new DateTime(2003, 1, 1);
            var       refundEntity = new RefundEntity {
                OrganizationRoleUserCreatorId =
                    organizationRoleUserCreatorId, DateCreated = dateCreated
            };
            var expectedDataRecorderMetaData = new DataRecorderMetaData
            {
                DataRecorderCreator = new OrganizationRoleUser(organizationRoleUserCreatorId),
                DateCreated         = dateCreated
            };

            Expect.Call(_dataRecorderMetaDataFactory.CreateDataRecorderMetaData
                            (organizationRoleUserCreatorId, dateCreated)).Return(expectedDataRecorderMetaData);

            _mocks.ReplayAll();
            Refund refund = _refundFactory.Map(refundEntity);

            _mocks.VerifyAll();

            Assert.AreEqual(expectedDataRecorderMetaData, refund.DataRecorderMetaData,
                            "Refund DataRecorderMetaData mapped incorrectly.");
        }
Ejemplo n.º 5
0
        protected override void MapDomainFields(ShippingDetailEntity entity,
                                                ShippingDetail domainObjectToMapTo)
        {
            DataRecorderMetaData dataRecorderMetaData = _dataRecorderMetaDataFactory.
                                                        CreateDataRecorderMetaData(entity.OrganizationRoleUserCreatorId, entity.DateCreated, entity.ModifiedBy, entity.DateModified);

            domainObjectToMapTo.Id = entity.ShippingDetailId;

            domainObjectToMapTo.DataRecorderMetaData = dataRecorderMetaData;

            domainObjectToMapTo.ShipmentDate = entity.ShipmentDate;


            domainObjectToMapTo.ShippingOption = entity.ShippingOption != null
                                                     ? _shippingOptionMapper.Map(entity.ShippingOption)
                                                     : new ShippingOption(entity.ShippingOptionId);

            domainObjectToMapTo.ShippingAddress = entity.Address != null
                ? _addressFactory.CreateAddressDomain(entity.Address) : new Address(entity.ShippingAddressId);

            domainObjectToMapTo.Status = (ShipmentStatus)entity.Status;

            domainObjectToMapTo.ActualPrice            = entity.ActualPrice;
            domainObjectToMapTo.IsExclusivelyRequested = entity.IsExclusivelyRequested;
            domainObjectToMapTo.ShippedByOrgRoleUserId = entity.ShippedByOrgRoleUserId;
        }
Ejemplo n.º 6
0
        public void CreateMedicalVendorEarningReturnsEarningWhenGivenValidArguments()
        {
            const long dataRecorderCreatorId = 0;
            var        dateCreated           = new DateTime();

            Expect.Call(_dataRecorderMetaDataFactory.CreateDataRecorderMetaData(dataRecorderCreatorId,
                                                                                dateCreated)).Return(new DataRecorderMetaData());

            _mocks.ReplayAll();
            MedicalVendorEarning medicalVendorEarning = _medicalVendorEarningFactory.
                                                        CreateMedicalVendorEarning(new MedicalVendorEarningAggregate(),
                                                                                   dataRecorderCreatorId, dateCreated);

            _mocks.VerifyAll();

            Assert.IsNotNull(medicalVendorEarning);
        }
Ejemplo n.º 7
0
        public void CreateDataRecorderMetaDataCreatesOrganizationRoleUserForDataCreator()
        {
            var dataRecorderMetaData = _dataRecorderMetaDataFactory.CreateDataRecorderMetaData(3);

            Assert.IsNotNull(dataRecorderMetaData.DataRecorderCreator);
            Assert.IsInstanceOf <OrganizationRoleUser>(dataRecorderMetaData.DataRecorderCreator);
        }
Ejemplo n.º 8
0
        protected override void MapDomainFields(PaymentEntity entity, Payment domainObjectToMapTo)
        {
            DataRecorderMetaData dataRecorderMetaData = _factory.CreateDataRecorderMetaData
                                                            (entity.OrganizationRoleUserCreatorId, entity.DateCreated);

            domainObjectToMapTo.Id    = entity.PaymentId;
            domainObjectToMapTo.Notes = entity.Notes;
            domainObjectToMapTo.DataRecorderMetaData = dataRecorderMetaData;
        }
Ejemplo n.º 9
0
        protected override void MapDomainFields(OrderEntity entity, Order domainObjectToMapTo)
        {
            DataRecorderMetaData dataRecorderMetaData = _dataRecorderMetaDataFactory.
                                                        CreateDataRecorderMetaData(entity.OrganizationRoleUserCreatorId,
                                                                                   entity.DateCreated);

            domainObjectToMapTo.Id = entity.OrderId;
            domainObjectToMapTo.DataRecorderMetaData = dataRecorderMetaData;
            domainObjectToMapTo.OrderType            = (OrderType)entity.Type;
        }
Ejemplo n.º 10
0
        public Finance.Domain.Order CreateNewOrder(OrderType orderType, long dataRecorderCreatorId)
        {
            DataRecorderMetaData metaData = _dataRecorderMetaDataFactory.
                                            CreateDataRecorderMetaData(dataRecorderCreatorId);

            return(new Finance.Domain.Order
            {
                OrderType = orderType,
                DataRecorderMetaData = metaData
            });
        }
Ejemplo n.º 11
0
        protected override void MapDomainFields(RefundEntity entity, Refund domainObjectToMapTo)
        {
            DataRecorderMetaData dataRecorderMetaData = _dataRecorderMetaDataFactory.
                                                        CreateDataRecorderMetaData(entity.OrganizationRoleUserCreatorId,
                                                                                   entity.DateCreated);

            domainObjectToMapTo.Id                   = entity.RefundId;
            domainObjectToMapTo.RefundReason         = (RefundReason)entity.ReasonId;
            domainObjectToMapTo.Notes                = entity.Notes;
            domainObjectToMapTo.DataRecorderMetaData = dataRecorderMetaData;
            domainObjectToMapTo.Price                = entity.Amount;
        }
Ejemplo n.º 12
0
        protected override void MapDomainFields(PhysicianPaymentEntity entity,
                                                MedicalVendorPayment domainObjectToMapTo)
        {
            var dataRecorderMetaData = _dataRecorderMetaDataFactory.CreateDataRecorderMetaData
                                           (entity.DataRecoderCreatorId, entity.DateCreated);

            domainObjectToMapTo.Id = entity.PhysicianPaymentId;
            domainObjectToMapTo.DataRecorderMetaData = dataRecorderMetaData;
            domainObjectToMapTo.Notes           = entity.Notes;
            domainObjectToMapTo.PaymentStatus   = (PaymentStatus)entity.PaymentStatus;
            domainObjectToMapTo.ReferenceNumber = entity.ReferenceNumber;
        }
        private void ExpectCreateDataRecorderMetaData(PhysicianPaymentEntity medicalVendorPaymentEntity)
        {
            long     dataRecoderCreatorId = medicalVendorPaymentEntity.DataRecoderCreatorId;
            DateTime dateCreated          = medicalVendorPaymentEntity.DateCreated;
            var      dataRecorderMetaData = new DataRecorderMetaData
            {
                DataRecorderCreator = new OrganizationRoleUser(), DateCreated = dateCreated
            };

            Expect.Call(_mockedFactory.CreateDataRecorderMetaData(dataRecoderCreatorId, dateCreated)).
            Return(dataRecorderMetaData);
        }
        public void CreatePaymentInstrumentSetsMetaDataToCreatedMetaData()
        {
            var checkEntity = new CheckEntity
            {
                DateCreated           = new DateTime(2001, 1, 1),
                DateModified          = new DateTime(2002, 2, 2),
                DataRecoderCreatorId  = 234,
                DataRecoderModifierId = 456
            };
            var expectedDataRecorderMetaData = new DataRecorderMetaData();

            Expect.Call(_dataRecorderMetaDataFactory.CreateDataRecorderMetaData(checkEntity.DataRecoderCreatorId,
                                                                                checkEntity.DateCreated, checkEntity.DataRecoderModifierId, checkEntity.DateModified))
            .Return(expectedDataRecorderMetaData);

            _mocks.ReplayAll();
            PaymentInstrument paymentInstrument = _paymentInstrumentFactory.
                                                  CreatePaymentInstrument(checkEntity);

            _mocks.VerifyAll();

            Assert.AreEqual(expectedDataRecorderMetaData, paymentInstrument.DataRecorderMetaData);
        }
Ejemplo n.º 15
0
        public void CreateNewOrderDetailCreatesOrderItemStatusInInitialStateWithOrderableOrderItemType()
        {
            var orderable = new FakeOrderable();

            Expect.Call(_orderItemStatusFactory.CreateOrderItemStatus(orderable.OrderItemType,
                                                                      (int)OrderStatusState.Initial)).Return(null);
            Expect.Call(_dataRecorderMetaDataFactory.CreateDataRecorderMetaData(0)).IgnoreArguments().
            Return(null);

            _mocks.ReplayAll();
            _orderDetailFactory.CreateNewOrderDetail(orderable, 1, 0, 0, null, null, null);
            _mocks.VerifyAll();
        }
Ejemplo n.º 16
0
        protected override void MapDomainFields(ChargeCardPaymentEntity entity,
                                                ChargeCardPayment domainObjectToMapTo)
        {
            DataRecorderMetaData dataRecorderMetaData = _dataRecorderMetaDataFactory.
                                                        CreateDataRecorderMetaData(entity.OrganizationRoleUserCreatorId,
                                                                                   entity.DateCreated);

            domainObjectToMapTo.Id                      = entity.ChargeCardPaymentId;
            domainObjectToMapTo.Amount                  = entity.Amount;
            domainObjectToMapTo.ChargeCardId            = entity.ChargeCardId;
            domainObjectToMapTo.ChargeCardPaymentStatus = (ChargeCardPaymentStatus)entity.Status;
            domainObjectToMapTo.ProcessorResponse       = entity.ProcessorResponse;
            domainObjectToMapTo.PaymentId               = entity.PaymentId;
            domainObjectToMapTo.DataRecorderMetaData    = dataRecorderMetaData;
        }
Ejemplo n.º 17
0
        protected override void MapDomainFields(ChargeCardEntity entity, ChargeCard domainObjectToMapTo)
        {
            // TODO: persist encrypted fields.
            DataRecorderMetaData metaData = _metaDataFactory.CreateDataRecorderMetaData(
                entity.OrganizationRoleUserCreatorId,
                entity.DateCreated);

            domainObjectToMapTo.Id                   = entity.ChargeCardId;
            domainObjectToMapTo.CVV                  = _encrypter.Decrypt(entity.Cvv);
            domainObjectToMapTo.CardIssuer           = entity.CardIssuer;
            domainObjectToMapTo.ExpirationDate       = entity.ExpirationDate;
            domainObjectToMapTo.IsDebit              = entity.IsDebitCard;
            domainObjectToMapTo.NameOnCard           = entity.NameOnCard;
            domainObjectToMapTo.Number               = _encrypter.Decrypt(entity.Number);
            domainObjectToMapTo.TypeId               = (ChargeCardType)entity.TypeId;
            domainObjectToMapTo.DataRecorderMetaData = metaData;
        }
Ejemplo n.º 18
0
        protected override void MapDomainFields(CheckEntity entity, Check domainObjectToMapTo)
        {
            DataRecorderMetaData metaData = _metaDataFactory.CreateDataRecorderMetaData
                                                (entity.DataRecoderCreatorId, entity.DateCreated);

            domainObjectToMapTo.Id                   = entity.CheckId;
            domainObjectToMapTo.AccountNumber        = entity.AccountNumber;
            domainObjectToMapTo.Amount               = entity.Amount;
            domainObjectToMapTo.BankName             = entity.BankName;
            domainObjectToMapTo.CheckDate            = entity.CheckDate;
            domainObjectToMapTo.CheckNumber          = entity.CheckNumber;
            domainObjectToMapTo.Memo                 = entity.Memo;
            domainObjectToMapTo.PayableTo            = entity.PayableTo;
            domainObjectToMapTo.RoutingNumber        = entity.RoutingNumber;
            domainObjectToMapTo.DataRecorderMetaData = metaData;
            domainObjectToMapTo.AcountHolderName     = entity.AccountHolderName;
            domainObjectToMapTo.IsElectronicCheck    = entity.IsElectronic;
        }
Ejemplo n.º 19
0
        public MedicalVendorEarning CreateMedicalVendorEarning(MedicalVendorEarningAggregate
                                                               medicalVendorEarningAggregate, long dataRecorderCreatorId, DateTime dateCreated)
        {
            if (medicalVendorEarningAggregate == null)
            {
                throw new ArgumentNullException("medicalVendorEarningAggregate");
            }

            return(new MedicalVendorEarning
            {
                OrganizationRoleUserId = medicalVendorEarningAggregate.MedicalVendorMedicalVendorUserId,
                MedicalVendorUserEventTestLockId = medicalVendorEarningAggregate.
                                                   MedicalVendorUserEventTestLockId,
                MedicalVendorUserAmountEarned = medicalVendorEarningAggregate.
                                                MedicalVendorMedicalVendorUserAmountEarned,
                DataRecorderMetaData = _dataRecorderMetaDataFactory.
                                       CreateDataRecorderMetaData(dataRecorderCreatorId, dateCreated),
            });
        }
Ejemplo n.º 20
0
        public void MapSetsDataRecorderMetaDataToMetaDataFactoryCallReturnValue()
        {
            var orderEntity = new OrderEntity {
                OrganizationRoleUserCreatorId = 1,
                DateCreated = new DateTime(2003, 2, 2)
            };
            var expectedMetaData = new DataRecorderMetaData();

            Expect.Call(_dataRecorderMetaDataFactory.CreateDataRecorderMetaData(orderEntity.
                                                                                OrganizationRoleUserCreatorId, orderEntity.DateCreated)).Return(expectedMetaData);

            _mocks.ReplayAll();
            Order order = _mapper.Map(orderEntity);

            _mocks.VerifyAll();

            Assert.AreEqual(expectedMetaData, order.DataRecorderMetaData,
                            "Order returned with incorrect DataRecorderMetaData.");
        }
Ejemplo n.º 21
0
        protected override void MapDomainFields(GiftCertificateEntity entity,
                                                GiftCertificate domainObjectToMapTo)
        {
            DataRecorderMetaData dataRecorderMetaData = entity.OrgazizationRoleUserCreatorId.HasValue
                                                            ? _dataRecorderMetaDataFactory.
                                                        CreateDataRecorderMetaData(
                entity.OrgazizationRoleUserCreatorId.Value,
                entity.DateCreated)
                                                            : null;

            domainObjectToMapTo.Id                    = entity.GiftCertificateId;
            domainObjectToMapTo.Price                 = entity.Amount;
            domainObjectToMapTo.ClaimCode             = entity.ClaimCode;
            domainObjectToMapTo.DataRecorderMetaData  = dataRecorderMetaData;
            domainObjectToMapTo.ExpirationDate        = entity.ExpirationDate;
            domainObjectToMapTo.FromName              = entity.FromName;
            domainObjectToMapTo.GiftCertificateTypeId = entity.TypeId;
            domainObjectToMapTo.Message               = entity.Message;
            domainObjectToMapTo.ToName                = entity.ToName;
            domainObjectToMapTo.ApplicablePackageId   = entity.ApplicablePackageId;
            domainObjectToMapTo.ToEmail               = entity.ToEmail;
        }
Ejemplo n.º 22
0
        protected override void MapDomainFields(OrderDetailEntity entity, OrderDetail domainObjectToMapTo)
        {
            NullArgumentChecker.CheckIfNull(entity.OrderItem, "entity.OrderItem",
                                            "The OrderItem associated with the given OrderDetail must be provided.");

            OrderItemStatus orderItemStatus = _orderItemStatusFactory.CreateOrderItemStatus
                                                  ((OrderItemType)entity.OrderItem.Type, entity.Status);
            DataRecorderMetaData dataRecorderMetaData = _dataRecorderMetaDataFactory.
                                                        CreateDataRecorderMetaData(entity.OrganizationRoleUserCreatorId, entity.DateCreated);

            domainObjectToMapTo.Id          = entity.OrderDetailId;
            domainObjectToMapTo.OrderId     = entity.OrderId;
            domainObjectToMapTo.OrderItemId = entity.OrderItemId;
            domainObjectToMapTo.ForOrganizationRoleUserId = entity.ForOrganizationRoleUserId;
            domainObjectToMapTo.Description          = entity.Description;
            domainObjectToMapTo.Quantity             = entity.Quantity;
            domainObjectToMapTo.Price                = entity.Price;
            domainObjectToMapTo.DataRecorderMetaData = dataRecorderMetaData;
            domainObjectToMapTo.OrderItemStatus      = orderItemStatus;
            domainObjectToMapTo.DetailType           = (OrderItemType)entity.OrderItem.Type;
            domainObjectToMapTo.SourceId             = entity.SourceId;
        }
Ejemplo n.º 23
0
        public PaymentInstrument CreatePaymentInstrument(CheckEntity checkEntity)
        {
            if (checkEntity == null)
            {
                throw new ArgumentNullException("checkEntity", "Given CheckEntity cannot be null.");
            }

            DataRecorderMetaData dataRecorderMetaData = _dataRecorderMetaDataFactory.
                                                        CreateDataRecorderMetaData(checkEntity.DataRecoderCreatorId, checkEntity.DateCreated,
                                                                                   checkEntity.DataRecoderModifierId, checkEntity.DateModified);

            return(new Check(checkEntity.CheckId)
            {
                DataRecorderMetaData = dataRecorderMetaData,
                AccountNumber = checkEntity.AccountNumber,
                Amount = checkEntity.Amount,
                BankName = checkEntity.BankName,
                CheckDate = checkEntity.CheckDate,
                CheckNumber = checkEntity.CheckNumber,
                PayableTo = checkEntity.PayableTo,
                RoutingNumber = checkEntity.RoutingNumber,
                Memo = checkEntity.Memo
            });
        }
Ejemplo n.º 24
0
        public OrderDetail CreateNewOrderDetail(IOrderable orderable, int quantity,
                                                long forOrganizationRoleUserId, long dataRecorderCreatorId, SourceCode sourceCode,
                                                EventCustomer eventCustomer, ShippingDetail shippingDetail, long?sourceId = null)
        {
            if (orderable == null)
            {
                throw new ArgumentNullException("orderable");
            }
            if (orderable.Id == 0)
            {
                throw new InvalidOperationException("itemToOrder must already exist in the database.");
            }
            if (quantity < 1)
            {
                throw new ArgumentOutOfRangeException("quantity", "The quantity must be at least 1.");
            }
            DataRecorderMetaData dataRecorderMetaData = _dataRecorderMetaDataFactory.
                                                        CreateDataRecorderMetaData(dataRecorderCreatorId);
            OrderItemStatus orderItemStatus = _orderItemStatusFactory.CreateOrderItemStatus(orderable.
                                                                                            OrderItemType, (int)OrderStatusState.Initial);

            decimal price = orderable.Price;

            // TODO: Test source code logic.
            SourceCodeOrderDetail sourceCodeOrderDetail = null;

            if (sourceCode != null)
            {
                sourceCodeOrderDetail = new SourceCodeOrderDetail
                {
                    Amount       = sourceCode.CouponValue,
                    SourceCodeId = sourceCode.Id,
                    IsActive     = true,
                    OrganizationRoleUserCreatorId =
                        dataRecorderMetaData.DataRecorderCreator.Id
                };
            }

            EventCustomerOrderDetail eventCustomerOrderDetail = null;

            if (eventCustomer != null)
            {
                eventCustomerOrderDetail = new EventCustomerOrderDetail
                {
                    EventCustomerId = eventCustomer.Id,
                    IsActive        = true
                };
            }

            ShippingDetailOrderDetail shippingDetailOrderDetail = null;

            if (shippingDetail != null)
            {
                shippingDetailOrderDetail = new ShippingDetailOrderDetail
                {
                    ShippingDetailId = shippingDetail.Id,
                    IsActive         = true
                };
            }

            return(new OrderDetail
            {
                Description = orderable.Description,
                Price = price,
                Quantity = quantity,
                DetailType = orderable.OrderItemType,
                DataRecorderMetaData = dataRecorderMetaData,
                ForOrganizationRoleUserId = forOrganizationRoleUserId,
                OrderItemStatus = orderItemStatus,
                SourceCodeOrderDetail = sourceCodeOrderDetail,
                EventCustomerOrderDetail = eventCustomerOrderDetail,
                ShippingDetailOrderDetails = new List <ShippingDetailOrderDetail> {
                    shippingDetailOrderDetail
                },
                SourceId = sourceId
            });
        }