public void can_consume_shipped_order_message() { //ARRANGE var message = new OrderHasBeenShippedMessage(); message.Add(new ShippedLine()); var ediContentCreator = new Mock <ICreateEdiContentFrom <OrderHasBeenShippedMessage> >(); _businessPartnerResolver.Setup(x => x.ResolveFrom(message)).Returns(ediContentCreator.Object); var document = new EDIXmlInterchangeControl(_seg); var package = new EDITransmissionPackage(document, BusinessPartner.FedEx); _ediDocumentCreator.Setup(x => x.CreateDocumentWith(ediContentCreator.Object, message)) .Returns(package); _ediDocumentSaver.Setup(x => x.Save(It.IsAny <EDITransmissionPackage>())); _acceptMessages.Setup(x => x.Accept(message)).Returns(true); //ACT _sut.Consume(message); //ASSERT _executePostConsumeAction.Verify(x => x.Execute(message)); _ediDocumentSaver.VerifyAll(); _ediDocumentCreator.VerifyAll(); _businessPartnerResolver.VerifyAll(); }
public void can_consume_shipped_order_message() { //ARRANGE var message = new OrderHasBeenShippedMessage(); message.Add(new ShippedLine()); var ediContentCreator = new Mock<ICreateEdiContentFrom<OrderHasBeenShippedMessage>>(); var buildValues = new EdiXmlBuildValues {ElementDelimiter = "~", SegmentDelimiter = "\n"}; // ediContentCreator.Setup(c => c.ReceiverId).Returns("xxxi"); // ediContentCreator.Setup(c => c.ControlNumber).Returns(62); // ediContentCreator.Setup(c => c.EdiXmlBuildValues).Returns(buildValues); // ediContentCreator.Setup(c => c.FunctionalId).Returns("PO"); _resolver.Setup(r => r.GetBuildValueFactoryFor(BusinessPartner.FedEx)).Returns(new FedExBuildValueFactory()); _businessPartnerResolver.Setup(x => x.ResolveFrom(message)).Returns(ediContentCreator.Object); var document = new EDIXmlInterchangeControl(_seg); _ediDocumentCreator.Setup(x => x.CreateDocumentWith(ediContentCreator.Object, message)) .Returns(new EDITransmissionPackage(document, BusinessPartner.FedEx)); _ediDocumentSaver.Setup(x => x.Save(It.IsAny<EDITransmissionPackage>())); _acceptMessages.Setup(x => x.Accept(message)).Returns(true); //ACT _sut.Consume(message); //ASSERT _ediDocumentSaver.VerifyAll(); _ediDocumentCreator.VerifyAll(); _businessPartnerResolver.VerifyAll(); }
public void can_get_envelopes() { var ediXmlBuildValues = new EdiXmlBuildValues { ElementDelimiter = "~", SegmentDelimiter = "\n" }; var root = new XElement("file"); var ic = new EDIXmlInterchangeControl(_seg); var grp = new EDIXmlFunctionGroup(_seg); grp.AddTransactionSet(new EDIXmlTransactionSet(_seg)); grp.AddTransactionSet(new EDIXmlTransactionSet(_seg)); ic.AddFunctionGroup(grp); root.Add(ic); IEnumerable <XElement> ic_s = root.EDIInterchangeControls(); foreach (EDIXmlInterchangeControl i in ic_s) { IEnumerable <XElement> grp_s = i.EDIFunctionGroups(); foreach (EDIXmlFunctionGroup g in grp_s) { List <XElement> ts_s = g.EDITransactions().ToList(); foreach (EDIXmlTransactionSet t in ts_s) { Assert.That(t.Label == "ST"); } } } //Assert.That(root.EDINodes("ISA").ToList().Count == 1); }
public void can_create_document() { //ARRANGE var testMessageDocumentCreator = new Mock <ICreateEdiContentFrom <testMessage> >(); //testMessageDocumentCreator.Setup(x => x.ReceiverId).Returns("ReceiverId"); var transactionSet = new EDIXmlTransactionSet(_seg); transactionSet.ISA = new ISAEntity { ControlNumber = 1, GroupID = "IN" }; testMessageDocumentCreator.Setup(x => x.BuildFromMessage(_message)).Returns(transactionSet); testMessageDocumentCreator.Setup(x => x.SegmentFactory).Returns(_seg); _configuration.Setup(x => x.TestMode).Returns(true); _resolver.Setup(r => r.GetSegmentFactoryFor(It.IsAny <BusinessPartner>())).Returns(_seg); //ACT EDIXmlInterchangeControl expectedDocument = _sut.CreateDocumentWith(testMessageDocumentCreator.Object, _message).GetInterchangeControl(); //ASSERT testMessageDocumentCreator.VerifyAll(); _configuration.VerifyAll(); Assert.That(expectedDocument.EDIFunctionGroups() .First().EDITransactions() .First().Value == transactionSet.Value); }
public void can_consume_shipped_order_message() { //ARRANGE var message = new OrderHasBeenShippedMessage(); message.Add(new ShippedLine()); var ediContentCreator = new Mock <ICreateEdiContentFrom <OrderHasBeenShippedMessage> >(); var buildValues = new EdiXmlBuildValues { ElementDelimiter = "~", SegmentDelimiter = "\n" }; // ediContentCreator.Setup(c => c.ReceiverId).Returns("xxxi"); // ediContentCreator.Setup(c => c.ControlNumber).Returns(62); // ediContentCreator.Setup(c => c.EdiXmlBuildValues).Returns(buildValues); // ediContentCreator.Setup(c => c.FunctionalId).Returns("PO"); _resolver.Setup(r => r.GetBuildValueFactoryFor(BusinessPartner.Initech)).Returns(new InitechBuildValueFactory()); _businessPartnerResolver.Setup(x => x.ResolveFrom(message)).Returns(ediContentCreator.Object); var document = new EDIXmlInterchangeControl(_seg); _ediDocumentCreator.Setup(x => x.CreateDocumentWith(ediContentCreator.Object, message)) .Returns(new EDITransmissionPackage(document, BusinessPartner.Initech)); _ediDocumentSaver.Setup(x => x.Save(It.IsAny <EDITransmissionPackage>())); _acceptMessages.Setup(x => x.Accept(message)).Returns(true); //ACT _sut.Consume(message); //ASSERT _ediDocumentSaver.VerifyAll(); _ediDocumentCreator.VerifyAll(); _businessPartnerResolver.VerifyAll(); }
public EDITransmissionPackage CreateDocumentWith(ICreateEdiContentFrom <T> creator, T message) { var ediXmlInterchangeControl = new EDIXmlInterchangeControl(creator.SegmentFactory); EDIXmlTransactionSet ediTransactionSet = creator.BuildFromMessage(message); var isaControlNumber = ediTransactionSet.ISA.ControlNumber; var functionalID = ediTransactionSet.ISA.GroupID; ediXmlInterchangeControl.SetHeader(isaControlNumber, functionalID, _configuration.TestMode); ediXmlInterchangeControl.AddContent(ediTransactionSet); ediXmlInterchangeControl.SetFooter(isaControlNumber, 1); return(new EDITransmissionPackage(ediXmlInterchangeControl, creator.GetBusinessPartner())); }
public void can_consume_shipped_order_message() { //ARRANGE var message = new OrderHasBeenShippedMessage(); message.Add(new ShippedLine()); var ediContentCreator = new Mock<ICreateEdiContentFrom<OrderHasBeenShippedMessage>>(); _businessPartnerResolver.Setup(x => x.ResolveFrom(message)).Returns(ediContentCreator.Object); var document = new EDIXmlInterchangeControl(_seg); var package = new EDITransmissionPackage(document, BusinessPartner.Initech); _ediDocumentCreator.Setup(x => x.CreateDocumentWith(ediContentCreator.Object, message)) .Returns(package); _ediDocumentSaver.Setup(x => x.Save(It.IsAny<EDITransmissionPackage>())); _acceptMessages.Setup(x => x.Accept(message)).Returns(true); //ACT _sut.Consume(message); //ASSERT _executePostConsumeAction.Verify(x => x.Execute(message)); _ediDocumentSaver.VerifyAll(); _ediDocumentCreator.VerifyAll(); _businessPartnerResolver.VerifyAll(); }
public EDITransmissionPackage(EDIXmlInterchangeControl ic, BusinessPartner bp) { _ic = ic; _bp = bp; }
public void can_get_envelopes() { var ediXmlBuildValues = new EdiXmlBuildValues {ElementDelimiter = "~", SegmentDelimiter = "\n"}; var root = new XElement("file"); var ic = new EDIXmlInterchangeControl(_seg); var grp = new EDIXmlFunctionGroup(_seg); grp.AddTransactionSet(new EDIXmlTransactionSet(_seg)); grp.AddTransactionSet(new EDIXmlTransactionSet(_seg)); ic.AddFunctionGroup(grp); root.Add(ic); IEnumerable<XElement> ic_s = root.EDIInterchangeControls(); foreach (EDIXmlInterchangeControl i in ic_s) { IEnumerable<XElement> grp_s = i.EDIFunctionGroups(); foreach (EDIXmlFunctionGroup g in grp_s) { List<XElement> ts_s = g.EDITransactions().ToList(); foreach (EDIXmlTransactionSet t in ts_s) Assert.That(t.Label == "ST"); } } //Assert.That(root.EDINodes("ISA").ToList().Count == 1); }