Ejemplo n.º 1
0
        private IEnumerable<SpecificationGroup> GenerateGroups()
        {
            var groups = new List<SpecificationGroup>();

            var features = this.Features;

            this.ReportFeaturesFound(features);

            foreach (var feature in features)
            {
                var spec = new SpecificationGroup(feature)
                {
                    @Tests = this.MakeTestsBuilder(feature),
                    @TestCheckers = this.MakeTestCheckersBuilder(feature),
                    @StepBuilderGenerator = (Scenario s) =>
                        {
                            return this.MakeStepsBuilder(
                                feature,
                                s);
                        }
                };

                foreach (var scenario in feature.Scenarios)
                {
                    spec.AddStepBuilder(scenario);
                }

                groups.Add(spec);
            }

            return groups;
        }