Everything works OK after serious changes:
- all components, componentCfg-s and parameter providers use base classes - less boilerplate code, simpler access to test/procedure parameters from code - CreateTestParams(test), CreateProcedureParams(procedure) methods added - TestBenchSim class is made static, it is not inheritted by any device anymore
This commit is contained in:
@@ -6,8 +6,8 @@ using TBF.Resources;
|
||||
|
||||
namespace TBF.UiControls
|
||||
{
|
||||
/// /---------------\
|
||||
/// / Path or other \
|
||||
/// ---------------
|
||||
/// / Path or other \
|
||||
/// |------------------------------
|
||||
/// | param1 param2 param3 ...
|
||||
/// Component1 |
|
||||
@@ -64,20 +64,10 @@ namespace TBF.UiControls
|
||||
|
||||
foreach (var cmpnt in selectedCmpnts)
|
||||
{
|
||||
if (cmpnt != null && cmpnt.Cfg.Factory.HasProcedureParams)
|
||||
if (cmpnt != null && (cmpnt.Cfg.GetProcedureParams() != null))
|
||||
{
|
||||
IParamsProvider procedureParams = BenchControl.TbfComponents.GetProcedureParams(cmpnt, parent.LoadedProcedure);
|
||||
if (procedureParams != null)
|
||||
{
|
||||
if (sampleToCreateHeader == null) sampleToCreateHeader = procedureParams;
|
||||
}
|
||||
else
|
||||
{
|
||||
Entities.ComponentProcedure entity = new Entities.ComponentProcedure();
|
||||
entity.CmpntName = cmpnt.Cfg.Name;
|
||||
entity.Procedure = parent.LoadedProcedure;
|
||||
procedureParams = cmpnt.Cfg.Factory.GetProcedureParams(entity);
|
||||
}
|
||||
IParamsProvider procedureParams = cmpnt.Cfg.CreateProcedureParams(parent.LoadedProcedure);
|
||||
if (sampleToCreateHeader == null) sampleToCreateHeader = procedureParams;
|
||||
cmpntsParams.Add(procedureParams);
|
||||
}
|
||||
else
|
||||
|
||||
@@ -6,8 +6,8 @@ using TBF.Resources;
|
||||
|
||||
namespace TBF.UiControls
|
||||
{
|
||||
// /-----------\
|
||||
// / Component \
|
||||
// -----------
|
||||
// / Component \
|
||||
// |------------------------------
|
||||
// | param1 param2 param3 ...
|
||||
// Test1 |
|
||||
@@ -20,7 +20,7 @@ namespace TBF.UiControls
|
||||
bool showTestsColumn;
|
||||
BenchControl.Generic.IComponent cmpnt;
|
||||
|
||||
IList<IParamsProvider> testsParams;
|
||||
IList<IParamsProvider> testParamsProviders;
|
||||
|
||||
int paramsCount;
|
||||
|
||||
@@ -32,7 +32,7 @@ namespace TBF.UiControls
|
||||
public TestParamsCtrl()
|
||||
{
|
||||
InitializeComponent();
|
||||
testsParams = new List<IParamsProvider>();
|
||||
testParamsProviders = new List<IParamsProvider>();
|
||||
}
|
||||
|
||||
public TestParamsCtrl(ProcedureDlg parent, BenchControl.Generic.IComponent cmpnt, bool showTestsColumn)
|
||||
@@ -64,27 +64,18 @@ namespace TBF.UiControls
|
||||
/// For each test (with an appropriate method in case of ITestMethod-s)
|
||||
foreach (var test in parent.LoadedProcedure.Tests)
|
||||
{
|
||||
if (!(cmpnt is BenchControl.GenericDevices.ITestMethod) || test.Method == cmpnt.Cfg.Name)
|
||||
if ((cmpnt.Cfg.GetTestParams() != null) &&
|
||||
(!(cmpnt is BenchControl.GenericDevices.ITestMethod) || (test.Method == cmpnt.Cfg.Name)))
|
||||
{
|
||||
/// Load ComponentTest entity or create it if it does not exist
|
||||
IParamsProvider testParams = BenchControl.TbfComponents.GetTestParams(cmpnt, test);
|
||||
if (testParams != null)
|
||||
{
|
||||
if (sampleToCreateHeader == null) sampleToCreateHeader = testParams;
|
||||
}
|
||||
else
|
||||
{
|
||||
Entities.ComponentTest entity = new Entities.ComponentTest();
|
||||
entity.CmpntName = cmpnt.Cfg.Name;
|
||||
entity.Test = test;
|
||||
testParams = cmpnt.Cfg.Factory.GetTestParams(entity);
|
||||
}
|
||||
testsParams.Add(testParams);
|
||||
IParamsProvider testParams = cmpnt.Cfg.CreateTestParams(test);
|
||||
if (sampleToCreateHeader == null) sampleToCreateHeader = testParams;
|
||||
testParamsProviders.Add(testParams);
|
||||
}
|
||||
else
|
||||
{
|
||||
/// In case of ITestMethod: Insert null for a test without an appropriate method.
|
||||
testsParams.Add(null);
|
||||
testParamsProviders.Add(null);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -131,9 +122,9 @@ namespace TBF.UiControls
|
||||
public void RedrawAll()
|
||||
{
|
||||
listViewEx.Items.Clear();
|
||||
for (int i = 0; i < testsParams.Count && i < parent.LoadedProcedure.Tests.Count; i++)
|
||||
for (int i = 0; i < testParamsProviders.Count && i < parent.LoadedProcedure.Tests.Count; i++)
|
||||
{
|
||||
DrawOne(testsParams[i], parent.LoadedProcedure.Tests[i].Name);
|
||||
DrawOne(testParamsProviders[i], parent.LoadedProcedure.Tests[i].Name);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -170,12 +161,12 @@ namespace TBF.UiControls
|
||||
entity.Test = test;
|
||||
IParamsProvider testParams =
|
||||
new BenchControl.TestMethods.CombinedWithDetection.CombinedWithDetTestParams(entity, cmpnt.Cfg.Name, test);
|
||||
testsParams.Add(testParams);
|
||||
testParamsProviders.Add(testParams);
|
||||
DrawOne(testParams, test.Name);
|
||||
}
|
||||
else
|
||||
{
|
||||
testsParams.Add(null);
|
||||
testParamsProviders.Add(null);
|
||||
DrawOne(null, null);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user