public void ReturnsFactoryResults(
     DirectoryPath local,
     IGitRepository repo,
     ProvideRepositoryCheckouts sut)
 {
     sut.RepositoryFactory.Get(local).Returns(repo);
     using var checkout = sut.Get(local);
     checkout.Repository.Should().BeSameAs(repo);
 }
        public void PassesPathToFactory(
            DirectoryPath local,
            ProvideRepositoryCheckouts sut)
        {
            using var checkout = sut.Get(local);
            var repo = checkout.Repository;

            sut.RepositoryFactory.Received(1).Get(local);
        }
 public void CheckoutIsLazy(
     DirectoryPath local,
     ProvideRepositoryCheckouts sut)
 {
     using var checkout = sut.Get(local);
     sut.RepositoryFactory.DidNotReceiveWithAnyArgs().Get(default);