public void CreateOrUpdateTemplate(TemplateInfo t) { var path = Path.Combine(Paths.TemplatesPath, Path.GetFileNameWithoutExtension(t.TemplateFilePath) + ".xml"); var templates = GetTemplates(true); if (string.IsNullOrEmpty(t.Id)) { if (File.Exists(path) || File.Exists(Path.Combine(Paths.TemplatesPath, Path.GetFileName(t.TemplateFilePath) ?? throw new InvalidOperationException()))) { throw new Exception("Szablon o takiej nazwie już istnieje"); } t.Id = Guid.NewGuid().ToString(); var fName = Path.GetFileName(t.TemplateFilePath); File.Copy(t.TemplateFilePath, Path.Combine(Paths.TemplatesPath, fName)); t.TemplateFilePath = fName; } else { var item = templates.SingleOrDefault(x => string.Equals(x.Id, t.Id)); if (item != null) { File.Delete(Path.Combine(Paths.TemplatesPath, item.Name + ".xml")); } } XmlFileSerializer.Serialize(TemplateMapper.ToTemplate(t), path); }
public CreateNotificationRequest(int notificationType, int templateType, int templateVersion, List <string> receiver, TemplateMapper templateMapper) { NotificationType = notificationType; TemplateType = templateType; TemplateVersion = templateVersion; Receiver = receiver; TemplateMapper = templateMapper; }
public void Map_WithDomainObject_ReturnsDtoObject() { // Arrange var mapper = new TemplateMapper(); // Act var dtoObject = mapper.Map(_domainObject); // Assert Assert.IsInstanceOfType(dtoObject, typeof(TemplateDto)); }
public void Map_WithDomainObjects_ReturnsDtoObjects() { // Arrange var mapper = new TemplateMapper(); // Act var dtoObjects = mapper.Map(_domainObjects); // Assert Assert.IsInstanceOfType(dtoObjects, typeof(List<TemplateDto>)); }
public void TemplateMapper_Can_Map_TemplateDto_To_TemplateModel() { // Arrange var mapper = new TemplateMapper(); var templateDto = new TemplateDto(Guid.NewGuid(), "TemplateName", "Script"); // Act var templateModel = mapper.Map(templateDto); // Assert templateModel.Should().BeEquivalentTo(templateDto, properties => properties .Including(x => x.Id) .Including(x => x.Name) .Including(x => x.Script)); }
public void TemplateMapper_Can_Map_TemplateModel_To_TemplateDto() { // Arrange var mapper = new TemplateMapper(); var templateModel = new Template { Id = Guid.NewGuid(), Name = "TemplateName", Script = "Script" }; // Act var templateDto = mapper.Map(templateModel); // Assert templateDto.Should().BeEquivalentTo(templateModel, properties => properties .Including(x => x.Id) .Including(x => x.Name) .Including(x => x.Script)); }
public IEnumerable <TemplateInfo> GetTemplates(bool includeDisabled = false) { if (!Directory.Exists(Paths.TemplatesPath)) { return(null); } var files = Directory.GetFiles(Paths.TemplatesPath, "*.xml"); var templates = new List <TemplateInfo>(); foreach (var file in files) { var template = XmlFileSerializer.Deserialize <Template>(file); if (!includeDisabled && !template.IsEnabled) { continue; } templates.Add(TemplateMapper.ToTemplateInfo(template)); } return(templates); }
public DefaultCodeTemplate GetDefaultCodeTemplate(string defaultTempalteFilePath, string templateName, string eventName) { DefaultCodeTemplate defaultTemlate = null; if (this.iOWrapper.DirectoryExists(defaultTempalteFilePath)) { var mappedTemplateName = TemplateMapper.GetAliasTemplateName(templateName); var file = this.iOWrapper.DirectoryGetFiles(defaultTempalteFilePath) .FirstOrDefault(fl => fl.Contains(mappedTemplateName + eventName)); if (file == null) { return(null); } XmlDocument doc = new XmlDocument(); doc.Load(file); var node = doc.GetElementsByTagName("default_code_template")[0]; defaultTemlate = new DefaultCodeTemplate(); defaultTemlate.TempalteName = node.Attributes["templateName"]?.InnerText; defaultTemlate.EventDataType = EventSpecificData.None; EventSpecificData eventData; if (Enum.TryParse <EventSpecificData>(node.Attributes["eventData"]?.InnerText, out eventData)) { defaultTemlate.EventDataType = eventData; } defaultTemlate.WrapperSourceCode = node.SelectSingleNode("wrapper_code")?.InnerText; defaultTemlate.SimpleSourceCode = node.SelectSingleNode("simple_code/source_code")?.InnerText; defaultTemlate.SimpleUnitTestsCode = node.SelectSingleNode("simple_code/test_code")?.InnerText; defaultTemlate.AdvancedSourceCode = node.SelectSingleNode("advanced_code/source_code")?.InnerText; defaultTemlate.AdvancedUnitTestsCode = node.SelectSingleNode("advanced_code/test_code")?.InnerText; } return(defaultTemlate); }