public void Should_add_and_save_results()
        {
            var feature = Mocks.CreateFeatureResult("name", "description", "label");

            _subject.AddFeature(feature);
            _subject.Finished();
            _writer.AssertWasCalled(w => w.Save(feature));
        }
        public void SummaryGenerator_should_be_thread_safe()
        {
            var writer  = MockRepository.GenerateMock <ISummaryWriter>();
            var subject = new SummaryGenerator(writer);

            Enumerable.Range(0, _elementsCount)
            .Select(i => MockRepository.GenerateMock <IFeatureResult>())
            .ToArray()
            .AsParallel()
            .ForAll(subject.AddFeature);

            subject.Finished();
            writer.AssertWasCalled(w => w.Save(Arg <IFeatureResult[]> .Matches(r => r.Length == _elementsCount)));
        }