public void CreateBehaviorForNormalFlowExecution(
            ProbeBase probeToConfigure,
            ItemType[] fakeItemsToReturnByItemTypeGenerator,
            CollectedItem[] fakeCollectedItemsToReturnByObjectCollector)
        {
            var mocksRepository = new MockRepository();
            var fakeConnectionManager = mocksRepository.DynamicMock<IConnectionManager>();
            var fakeObjectCollector = mocksRepository.DynamicMock<FileEffectiveRights53ObjectCollector>();
            var fakeItemTypeGenerator = mocksRepository.DynamicMock<IItemTypeGenerator>();

            Expect.Call(fakeItemTypeGenerator.GetItemsToCollect(null, null))
                 .IgnoreArguments()
                     .Return(fakeItemsToReturnByItemTypeGenerator);

            Expect.Call(fakeObjectCollector.CollectDataForSystemItem(null))
                 .IgnoreArguments()
                     .Return(fakeCollectedItemsToReturnByObjectCollector);

            mocksRepository.ReplayAll();

            probeToConfigure.ConnectionManager = fakeConnectionManager;
            probeToConfigure.ItemTypeGenerator = fakeItemTypeGenerator;
            probeToConfigure.ObjectCollector = fakeObjectCollector;
        }
        public void CreateBehaviorWithExceptionThrowing(ProbeBase probeToConfigure)
        {
            var mocksRepository = new MockRepository();
            var fakeConnectionManager = mocksRepository.DynamicMock<IConnectionManager>();
            var fakeObjectCollector = mocksRepository.DynamicMock<FileEffectiveRights53ObjectCollector>();
            var fakeItemTypeGenerator = mocksRepository.DynamicMock<IItemTypeGenerator>();

            Expect.Call(fakeItemTypeGenerator.GetItemsToCollect(null, null))
                .IgnoreArguments()
                .Throw(new Exception(ProberBehaviorCreator.FAKE_EXCEPTION_MESSAGE));

            Expect.Call(fakeObjectCollector.CollectDataForSystemItem(null))
                .IgnoreArguments()
                    .CallOriginalMethod(OriginalCallOptions.NoExpectation);

            mocksRepository.ReplayAll();

            probeToConfigure.ConnectionManager = fakeConnectionManager;
            probeToConfigure.ItemTypeGenerator = fakeItemTypeGenerator;
            probeToConfigure.ObjectCollector = fakeObjectCollector;
        }