public void SetUp()
 {
     _sut = new Customer { CustomerIDs = new CustomerAliases()
                                             {
                                                 LegacyCustomerID = BusinessPartner.FedEx.Code
                                             }, CustomerName = "Fedex" };
     _billToAddress = new Address
                  {
                      AddressName = "Fedex Headquarters",
                      Address1 = "21 Fedex Way",
                      AddressCode = new AddressCode { CustomerCode = "BillTo" },
                      AddressType = AddressTypeConstants.BillTo
                  };
     _shipToAddress = new Address
                  {
                      AddressName = "Fedex Airport",
                      Address1 = "5454 Mockingbird Ln",
                      AddressType = AddressTypeConstants.ShipTo
                  };
     _nonSpecificAddress = new Address
                 {
                     AddressName = "Fedex Airport",
                     Address1 = "5454 Mockingbird Ln"
                 };
 }
Exemplo n.º 2
0
 private static void process_address_line(Segment line, Address address, string elementDelimeter)
 {
     List<string> arr = line.GetElements(elementDelimeter);
     if (line.Label == EDIConstants.AddressNameLabel)
     {
         address.AddressType = get_address_type(arr[1]);
         address.AddressName = arr[2];
         if (arr.Count >= 4)
             address.AddressCode = arr[3];
     }
     if (line.Label == EDIConstants.AddressLineLabel)
         if (string.IsNullOrEmpty(address.Address1))
             address.Address1 = arr[1];
         else
         {
             if (string.IsNullOrEmpty(address.Address2))
                 address.Address2 = arr[1];
         }
     if (line.Label == EDIConstants.GeographicLabel)
     {
         address.City = arr[1];
         address.State = arr[2];
         address.Zip = arr[3];
     }
 }
Exemplo n.º 3
0
 private static Address process_address(List<Segment> addressSegments)
 {
     var addrStruct = new Address();
     string elementDelimeter = addressSegments[0].Contents.Substring(2, 1);
     addressSegments.ForEach(line => process_address_line(line, addrStruct, elementDelimeter));
     return addrStruct;
 }
 private static void handle_addr(IAddressSegmentCreator segCreator, AddressLoop container,
                                 ISegmentFactory factory, Address address)
 {
     if (segCreator.CanProcess(address.AddressType))
     {
         segCreator.AddAddressSegmentsTo(container, factory, address);
     }
 }
        public void can_add_addresses()
        {
            _sut.Customer = new Customer();
            var billToAddress = new Address{AddressType = AddressTypeConstants.BillTo};
            _sut.AddAddress(billToAddress);
            var shipToAddress = new Address{AddressType = AddressTypeConstants.ShipTo};
            _sut.AddAddress(shipToAddress);

            _sut.GetBillToAddress().ShouldBeSameAs(billToAddress);
            _sut.ShipToAddress.ShouldBeSameAs(shipToAddress);
        }
Exemplo n.º 6
0
        public void can_convert_Edi_AddressTypes_to_AutomationAddressTypes()
        {
            //ARRANGE
            var shipToAddress = new Address {AddressType = "ST"};
            var billToAddress = new Address {AddressType = "BT"};
            var shipFromAddress = new Address {AddressType = "SF"};

            //ACT
            string automationShipToAddressType = shipToAddress.GetAutomationAddressType();
            string automationBillToAddressType = billToAddress.GetAutomationAddressType();
            string automationShipFromAddressType = shipFromAddress.GetAutomationAddressType();

            //ASSERT
            automationShipToAddressType.ShouldEqual(AddressType.ShipTo.Text);
            automationBillToAddressType.ShouldEqual("billTo");
            automationShipFromAddressType.ShouldEqual("shipFrom");
        }
Exemplo n.º 7
0
 private static void process_address_line(Segment line, Address address, string elementDelimiter)
 {
     var arr = line.GetElements(elementDelimiter);
     if (line.Label == SegmentLabel.AddressNameLabel)
     {
         address.AddressType = get_address_type(arr[1]);
         address.AddressName = arr[2];
         address.AddressCode = new AddressCode();
         if (arr.Length >= 5)
         {
             address.AddressCode.CustomerCode = arr[4] ;
         }
     }
     if (line.Label == SegmentLabel.AddressLineLabel)
         if (string.IsNullOrEmpty(address.Address1))
             address.Address1 = arr[1];
         else
         {
             if (string.IsNullOrEmpty(address.Address2))
                 address.Address2 = arr[1];
         }
     if (line.Label == SegmentLabel.GeographicLabel)
     {
         address.City = arr[1];
         address.State = arr[2];
         address.Zip = arr[3];
         if(arr.Length > 4)
             address.Country = arr[4];
     }
     if (line.Label == SegmentLabel.ContactLabel)
     {
         address.ContactName = arr[2];
         if (arr.Length > 3)
             address.PhoneNumber = arr[4];
     }
 }
        public void AddAddress(Address address)
        {
            if (string.IsNullOrEmpty(address.AddressType))
                throw new ArgumentException("Address type is not specified");

            if (address.AddressType == AddressTypeConstants.ShipTo)
            {
                ShipToAddress = address;
                return;
            }
             if (address.AddressType == AddressTypeConstants.ShipFrom)
             {
                 ShipFromAddress = address;
                 return;
             }

            throw new ArgumentException(string.Format("Address type {0} is not useful here", address.AddressType));
        }
 public void AddAddress(Address address)
 {
     throw new System.NotImplementedException();
 }
 public void AddAddress(Address address)
 {
     if(address.AddressType == AddressTypeConstants.ShipTo)
     ShipToAddress = address;
 }
        public void AddAddress(Address address)
        {
            if (string.IsNullOrEmpty(address.AddressType))
                throw new ArgumentException("Address type is not specified");

            if (address.IsShipToAddress())
            {
                ShipToAddress = address;
                return;
            }
            if (address.IsBillToAddress())
            {
                Customer.BillToAddress = address;
                return;
            }

            throw new ArgumentException(string.Format("Address type {0} is not useful here", address.AddressType));
        }
Exemplo n.º 12
0
 public void AddAddress(Address addr, Qualifier codeQualifier)
 {
     AddSegment(_factory.GetAddressName(addr.AddressName, addr.AddressType, codeQualifier.Value, addr.AddressCode.CustomerCode));
     AddSegment(_factory.GetAddressLine(addr.Address1, addr.Address2));
     AddSegment(_factory.GetGeographicInfo(addr.City, addr.State, addr.Zip, addr.Country));
 }