/// /// Copyright (c) 2013-2018 Sensus Slovensko a.s. /// using System; using System.IO; namespace Config.Entities { public class ComponentTest { public virtual int Id { get; protected set; } public virtual string CmpntName { get; set; } /// Component name public virtual string Parameters { get; set; } public virtual Test Test { get; set; } IParamsProvider paramsProvider; /// public virtual IParamsProvider GetParamsProvider() { return paramsProvider; } public virtual void SetParamsProvider(IParamsProvider paramsProvider) { this.paramsProvider = paramsProvider; } protected ComponentTest() { } public ComponentTest(string name, string parameters, Test test) { this.CmpntName = name; this.Parameters = parameters; this.Test = test; } public virtual ComponentTest Clone() { return new ComponentTest(CmpntName, Parameters, Test); } public virtual void Export(StreamWriter output) { output.WriteLine(CmpntName); output.WriteLine(Parameters.Replace(Environment.NewLine, "~")); } public static ComponentTest Import(StreamReader input, Test newTest) { string firstLine = input.ReadLine(); if (string.IsNullOrEmpty(firstLine)) return null; try { string cmptnName = firstLine; string parameters = input.ReadLine().Replace("~", Environment.NewLine); return new ComponentTest(cmptnName, parameters, newTest); } catch (Exception) { return null; } } } }