using System;
|
|
namespace OpenTap.Addin.Util
|
{
|
public class VariableResolverFactory
|
{
|
public static IVariableResolver DEFAULT { get; set; }
|
|
private static IVariableResolverCreator Instance { get; set; }
|
public static void Register(IVariableResolverCreator resolver)
|
{
|
Instance = resolver;
|
DEFAULT = resolver.CreateResolver();
|
}
|
|
public static IVariableResolver CreateResolver()
|
{
|
return Instance.CreateResolver();
|
}
|
}
|
|
public interface IVariableResolverCreator
|
{
|
IVariableResolver CreateResolver();
|
}
|
|
public interface IVariableResolver
|
{
|
event EventHandler<string> DataChanged;
|
dynamic Resolve(TestPlanRun run, ITestStep step, string expr);
|
|
T Resolve<T>(TestPlanRun run, ITestStep step, string expr);
|
|
dynamic Resolve(TestPlanRun run, ITestStep step, string expr, Type targetType);
|
void Update(TestPlanRun run, ITestStep step, string expr);
|
|
void Update(TestPlanRun run, ITestStep step, string name, object value);
|
}
|
}
|