public void ShouldResolveProjectsAndLogAllErrorsThatOccur()
        {
            //GIVEN
            var id1 = Any.ProjectId();
            var id2 = Any.ProjectId();
            var id3 = Any.ProjectId();
            var referencedProjectsIds = new[] { id1, id2, id3 };
            var support = Substitute.For <INScanSupport>();
            var exceptionFromResolution = Any.Instance <ReferencedProjectNotFoundInSolutionException>();
            var projects = new ReferencedProjects(referencedProjectsIds, support);
            var solution = Substitute.For <ISolutionContext>();
            var project  = Any.Instance <IReferencingProject>();

            solution.When(ResolvingReferencesFrom(project, id2)).Throw(exceptionFromResolution);

            //WHEN
            projects.ResolveFrom(project, solution);

            //THEN
            solution.Received(1).ResolveReferenceFrom(project, id1);
            solution.Received(1).ResolveReferenceFrom(project, id2);
            solution.Received(1).ResolveReferenceFrom(project, id3);
            support.Received(1).Report(exceptionFromResolution);
        }