Exemple #1
0
        public Task <ITestRunnerExecutionAgent> GetExecutionAgent(ITestRunnerExecutionContext context, CancellationToken ct)
        {
            var handlers = context.Container.GetComponents <IProvideTestRunnerAgentMessageHandlers>()
                           .OrderBy(x => x.Priority)
                           .SelectMany(x => x.GetMessageHandlers(context))
                           .ToArray();

            var messageBroker = new MessageBroker(resolver, handlers);

            return(Task.FromResult <ITestRunnerExecutionAgent>(new ExecutionAgent(context, messageBroker)));
        }
 public ExecutionAgent(ITestRunnerExecutionContext context, IMessageBroker messageBroker)
 {
     Context       = context;
     MessageBroker = messageBroker;
 }
        protected override MspecSpecificationRemoteTask ToRemoteTask(MspecSpecificationTestElement element, ITestRunnerExecutionContext context)
        {
            var task = MspecSpecificationRemoteTask.ToClient(
                element.NaturalId.TestId,
                element.IgnoreReason,
                context.RunAllChildren(element),
                context.IsRunExplicitly(element));

            task.ContextTypeName = element.Context.TypeName.FullName;
            task.FieldName       = element.FieldName;
            task.BehaviorType    = element.BehaviorType;

            return(task);
        }
Exemple #4
0
        protected override MspecBehaviorSpecificationRemoteTask ToRemoteTask(MspecBehaviorSpecificationTestElement element, ITestRunnerExecutionContext context)
        {
            var task = MspecBehaviorSpecificationRemoteTask.ToClient(
                element.NaturalId.TestId,
                element.IgnoreReason,
                context.IsRunExplicitly(element));

            task.ContextTypeName = element.Specification.Context.TypeName.FullName;
            task.FieldName       = element.FieldName;
            task.ParentId        = $"{element.Specification.Context.TypeName.FullName}.{element.Specification.FieldName}";

            return(task);
        }
Exemple #5
0
        protected override MspecContextRemoteTask ToRemoteTask(MspecContextTestElement element, ITestRunnerExecutionContext context)
        {
            var task = MspecContextRemoteTask.ToClient(
                element.NaturalId.TestId,
                element.IgnoreReason,
                context.RunAllChildren(element),
                context.IsRunExplicitly(element));

            task.Subject = element.Subject;
            task.Tags    = element.OwnCategories?.Select(x => x.Name).ToArray() ?? Array.Empty <string>();

            return(task);
        }
Exemple #6
0
 public RemoteTask GetRemoteTask(TElement element, ITestRunnerExecutionContext context)
 {
     return(ToRemoteTask(element, context));
 }
Exemple #7
0
 protected abstract TTask ToRemoteTask(TElement element, ITestRunnerExecutionContext context);