Пример #1
0
 /// <summary>
 /// Enables ability to access currently executed step with <see cref="StepExecution.Current"/> extension methods.
 /// This feature depends on <see cref="ScenarioExecutionContext"/>, it enables it as well with <see cref="ScenarioExecutionContextConfigurationExtensions.EnableScenarioExecutionContext"/>().
 /// </summary>
 /// <param name="configuration">Configuration object.</param>
 /// <returns>Configuration object.</returns>
 public static ExecutionExtensionsConfiguration EnableCurrentScenarioTracking(this ExecutionExtensionsConfiguration configuration)
 {
     return(configuration
            .EnableScenarioExecutionContext()
            .EnableScenarioDecorator <CurrentScenarioDecorator>()
            .EnableStepDecorator <CurrentStepDecorator>());
 }
        public void EnableStepExtension_should_register_given_extension_only_once()
        {
            var cfg = new ExecutionExtensionsConfiguration()
                      .EnableStepExtension <StepExtension1>()
                      .EnableStepExtension <StepExtension1>()
                      .EnableStepExtension <StepExtension2>()
                      .EnableStepExtension <StepExtension2>();

            CollectionAssert.AreEquivalent(
                new[] { typeof(StepExtension1), typeof(StepExtension2) },
                cfg.StepExecutionExtensions.Select(e => e.GetType()).ToArray());
        }
        public void EnableScenarioDecorator_should_register_given_extension_only_once()
        {
            var cfg = new ExecutionExtensionsConfiguration()
                      .EnableScenarioDecorator <ScenarioDecorator1>()
                      .EnableScenarioDecorator <ScenarioDecorator1>()
                      .EnableScenarioDecorator <ScenarioDecorator2>()
                      .EnableScenarioDecorator <ScenarioDecorator2>();

            CollectionAssert.AreEquivalent(
                new[] { typeof(ScenarioDecorator1), typeof(ScenarioDecorator2) },
                cfg.ScenarioDecorators.Select(e => e.GetType()).ToArray());
        }
 /// <summary>
 /// Enables configuration feature in provided <paramref name="configuration"/> object.
 /// As this feature depends on <see cref="ScenarioExecutionContext"/>, it enables it as well with <see cref="ScenarioExecutionContextConfigurationExtensions.EnableScenarioExecutionContext"/>().
 /// </summary>
 /// <param name="configuration">Configuration object.</param>
 /// <returns>Configuration object.</returns>
 public static ExecutionExtensionsConfiguration EnableStepCommenting(this ExecutionExtensionsConfiguration configuration)
 {
     return(configuration
            .EnableScenarioExecutionContext()
            .EnableStepExtension <StepCommentingExecutionExtension>());
 }
 /// <summary>
 /// Enables <see cref="ScenarioExecutionContext"/> feature in provided <paramref name="configuration"/> object.
 /// </summary>
 /// <param name="configuration">Configuration object.</param>
 /// <returns>Configuration object.</returns>
 public static ExecutionExtensionsConfiguration EnableScenarioExecutionContext(this ExecutionExtensionsConfiguration configuration)
 {
     return(configuration.EnableScenarioDecorator <ScenarioExecutionContextDecorator>());
 }
Пример #6
0
 /// <summary>
 /// Enables ability to comment steps.
 /// This feature enables <see cref="FrameworkConfigurationExtensions.EnableCurrentScenarioTracking"/>() as it depends on it.
 /// </summary>
 /// <param name="configuration">Configuration object.</param>
 /// <returns>Configuration object.</returns>
 public static ExecutionExtensionsConfiguration EnableStepCommenting(this ExecutionExtensionsConfiguration configuration)
 {
     return(configuration.EnableCurrentScenarioTracking());
 }