public virtual void InsertAndEmail(InvoiceDto invoice, int templateUid, EmailMessageDto emailMessage) { TasksRunner tasksRunner = new TasksRunner(this.WSAccessKey, this.FileUid); tasksRunner.Tasks.Add(this.CreateInsertTask(invoice, templateUid, emailMessage)); this.HandleInsertResult(tasksRunner.Execute(), invoice); invoice.IsSent = true; // Reaches here - no error. Assume invoice has been sent successfully. }
public void Insert1() { InvoiceProxy proxy = new InvoiceProxy(); InvoiceDto dto1 = this.GetSale1(); EmailMessageDto emailMessage = new EmailMessageDto(); emailMessage.From = ConfigurationSettings.AppSettings["NUnitTests.Email.From"]; emailMessage.To = ConfigurationSettings.AppSettings["NUnitTests.Email.To"]; emailMessage.Subject = "Invoice - Sent using NetAccounts OLA REST API (TestInsertAndEmail)."; emailMessage.Body = "Insert Invoice then email."; proxy.InsertAndEmail(dto1, emailMessage); Assert.IsTrue(dto1.Uid > 0, "Uid must be > 0 after save."); // // Ensure IsSent is updated. // dto1 = (InvoiceDto)proxy.GetByUid(dto1.Uid); Assert.IsTrue(dto1.IsSent, "Invoice should have been sent."); }
public void InsertAndEmailUsingShippingSlipTemplate() { InvoiceProxy proxy = new InvoiceProxy(); InvoiceDto dto1 = this.GetServiceSale(); EmailMessageDto emailMessage = new EmailMessageDto(); emailMessage.From = ConfigurationSettings.AppSettings["NUnitTests.Email.From"]; emailMessage.To = ConfigurationSettings.AppSettings["NUnitTests.Email.To"]; emailMessage.Subject = "Insert And Email: Shipping slip Template"; emailMessage.Body = "Insert Invoice then email."; proxy.InsertAndEmail(dto1, this.ShippingTemplateUid, emailMessage); Assert.IsTrue(dto1.Uid > 0, "Uid must be > 0 after save."); // // Ensure IsSent is updated. // dto1 = (InvoiceDto)proxy.GetByUid(dto1.Uid); Assert.IsTrue(dto1.IsSent, "Invoice should have been sent."); }
public void InsertAndEmailUsingInvalidTemplate() { InvoiceProxy proxy = new InvoiceProxy(); InvoiceDto dto1 = this.GetServiceSale(); EmailMessageDto emailMessage = new EmailMessageDto(); emailMessage.From = ConfigurationSettings.AppSettings["NUnitTests.Email.From"]; emailMessage.To = ConfigurationSettings.AppSettings["NUnitTests.Email.To"]; emailMessage.Subject = "Insert And Email: Template Not Specified"; emailMessage.Body = "Insert Invoice then email."; try { proxy.InsertAndEmail(dto1, 99999, emailMessage); throw new Exception("Expected exception not thrown."); } catch (RestException rex) { Assert.AreEqual("Unable to find the requested template.", rex.Message, "Incorrect error message."); } }
public void EmailPdfInvoiceUsingSpecificTemplate() { InvoiceProxy proxy = new InvoiceProxy(); InvoiceDto saleInfo = this.GetItemSale(); proxy.Insert(saleInfo); EmailMessageDto emailMessage = new EmailMessageDto(); emailMessage.From = ConfigurationSettings.AppSettings["NUnitTests.Email.From"]; emailMessage.To = ConfigurationSettings.AppSettings["NUnitTests.Email.To"]; emailMessage.Subject = "Invoice - Sent using NetAccounts OLA REST API."; emailMessage.Body = "Hello World. This email is sent using NetAccounts WSAPI"; proxy.Email(saleInfo.Uid, this.IncTaxTemplateUid, emailMessage); }
public void UpdateAndEmail() { InvoiceProxy proxy = new InvoiceProxy(); InvoiceDto dto1 = this.GetServiceSale(); proxy.Insert(dto1); int invoiceUid = dto1.Uid; string lastUpdatedUid = dto1.LastUpdatedUid; string invoiceNumber = dto1.InvoiceNumber; dto1 = this.GetServiceSale2(); dto1.Uid = invoiceUid; dto1.LastUpdatedUid = lastUpdatedUid; dto1.InvoiceNumber = invoiceNumber; EmailMessageDto emailMessage = new EmailMessageDto(); emailMessage.From = ConfigurationSettings.AppSettings["NUnitTests.Email.From"]; emailMessage.To = ConfigurationSettings.AppSettings["NUnitTests.Email.To"]; emailMessage.Subject = "Invoice - Sent using NetAccounts OLA REST API (TestUpdateAndEmail)."; emailMessage.Body = "Update Invoice then email."; proxy.UpdateAndEmail(dto1, this.IncTaxTemplateUid, emailMessage); InvoiceDto dto2 = (InvoiceDto)proxy.GetByUid(dto1.Uid); AssertEqual(dto1, dto2); }
protected virtual ITask CreateEmailTask(int invoiceUid, int templateUid, EmailMessageDto emailMessage) { EmailPdfInvoiceTask task = new EmailPdfInvoiceTask(); task.InvoiceUid = invoiceUid; task.TemplateUid = templateUid; task.EmailMessage = emailMessage; return task; }
public void InsertAndEmail(InvoiceDto invoice, EmailMessageDto emailMessage) { this.InsertAndEmail(invoice, 0, emailMessage); }
public virtual void Email(int invoiceUid, int templateUid, EmailMessageDto emailMessage) { TasksRunner tasksRunner = new TasksRunner(this.WSAccessKey, this.FileUid); tasksRunner.Tasks.Add(this.CreateEmailTask(invoiceUid, templateUid, emailMessage)); this.HandleEmailResult(tasksRunner.Execute()); }
public virtual void Email(int invoiceUid, EmailMessageDto emailMessage) { Email(invoiceUid, 0 /* Use default template */, emailMessage); }
protected virtual ITask CreateUpdateTask(InvoiceDto invoice, int templateUid, EmailMessageDto emailMessage) { UpdateInvoiceTask task = (UpdateInvoiceTask) base.CreateUpdateTask(invoice); task.EmailToContact = true; task.TemplateUid = templateUid; task.EmailMessage = emailMessage; return task; }