/// /// Copyright (c) 2013-2015 Sensus Metering Systems /// Author: Milan Hanajík /// using System; using System.Collections.Generic; using log4net; using Config.Entities; using TBF.BenchControl; namespace TBF.BenchControl.TestMethods.FlyingStartCollectionMethod { public class TestMethod : ComponentBase, GenericDevices.ITestMethod { private static readonly ILog log = LogManager.GetLogger(typeof(TestMethod)); public override string ToString() { return string.Format("TestMethods.FlyingStartCollectionMethod({0})", Cfg.ToString(1)); } readonly TestMethodCfg testMethodCfg; public bool Evaluate(Test test) { TestParams tp = new TestParams(); foreach (var tstPrms in test.MoreParams) { if (tstPrms.CmpntName.Equals(Name)) { tp.UpdateTestParams(tstPrms); return tp.Evaluate; } } return true; } public bool Publish(Test test) { TestParams tp = new TestParams(); foreach (var tstPrms in test.MoreParams) { if (tstPrms.CmpntName.Equals(Name)) { tp.UpdateTestParams(tstPrms); return tp.Publish; } } return true; } public bool CanTest(MetersKind meters) { return meters == MetersKind.Single; } public TestMethod() { } public TestMethod(TestMethodCfg cfg) : base(cfg) { testMethodCfg = cfg; log.Debug(this.ToString()); } public IList Execute(Test test) { return (new FlyingStartCollectionMethodSeq()).Execute(test, testMethodCfg.TestParams); } } }