public async Task AddTemplate_Should_Create_Template_In_Repository() { // Arrange. ITemplateManager manager = GetManager(); var template = new MessageTemplate { Name = TestTemplateName, Title = TestTemplateTitle, Body = TestTemplateBody }; // Act. await manager.AddTemplate(template); // Assert. MessageTemplate created = await manager.GetTemplate(TestTemplateName); Assert.NotNull(created); Assert.Equal(template, created); }
public async Task AddTemplate_Should_Throw_Exception_On_Incorrect_Template_Fields( string name, string parent, string title, string body, Engines engine, string expectedMessage) { // Arrange. ITemplateManager manager = GetManager(); var template = new MessageTemplate { Name = name, Title = title, Body = body, Parent = parent, EngineType = engine }; // Act. Exception exception = await Assert.ThrowsAnyAsync <Exception>(() => manager.AddTemplate(template)); // Assert. Assert.Equal(expectedMessage, exception.Message .Replace("\r", string.Empty) .Replace("\n", string.Empty)); }
public async Task AddTemplate(TemplateInput input) { if (string.IsNullOrEmpty(input.Content)) { input.Content = string.Empty; } if (!string.IsNullOrEmpty(input.CopyFrom)) { input.Content = (await _templateManager.GetTemplateContentAsync(input.CopyFrom)).Content; } var template = await _templateManager.GetTemplateContentAsync(input.TemplateName); if (template != null) { template.Content = input.Content; var resultEdit = await _templateManager.EditTemplate(template); if (resultEdit.HasError) { throw new UserFriendlyException(L(resultEdit.ErrorMessage)); } return; } var result = await _templateManager.AddTemplate(new TemplateInfo() { Content = input.Content, IsPartial = input.IsPartial, Name = input.TemplateName.Sluggify(), }); if (result.HasError) { throw new UserFriendlyException(L(result.ErrorMessage)); } }