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" }; }
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]; } }
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); }
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"); }
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)); }
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)); }