public void Setup()
        {
            processCaller = Substitute.For<IProcessCaller>();
            validateFile = Substitute.For<IValidateFile>();

            createCloneGit = new CreateCloneGit(processCaller, validateFile);
        }
        public void ShouldFirstCallCreateFolderAndThanCloneFromSvn()
        {
            createCloneGit = Substitute.ForPartsOf<CreateCloneGit>(processCaller, validateFile);

            validateFile.Exist("projectName\\users.txt")
                        .Returns(true);

            validateFile.Exist("projectName\\svnclone\\perl.exe.stackdump")
                        .Returns(false);

            createCloneGit.Create("https://svn.com/project/svn", "users.txt", "projectName");

            Received.InOrder(() => {
                createCloneGit.CreateEmptyFolder("svnclone");
                processCaller.ExecuteSync(Arg.Any<string>(), Arg.Any<string>(), Arg.Any<string>());
            });
        }
        public void ShouldToDeleteSvnCloneFolderWhenCallCreateClone()
        {
            createCloneGit = Substitute.ForPartsOf<CreateCloneGit>(processCaller, validateFile);

            validateFile.Exist("projectName\\users.txt")
                        .Returns(true);

            validateFile.Exist("projectName\\svnclone\\perl.exe.stackdump")
                        .Returns(false);

            createCloneGit.Create("https://svn.com/project/svn", "users.txt", "projectName");

            createCloneGit.Received(1)
                          .CreateEmptyFolder("svnclone");
        }