Ejemplo n.º 1
0
		public void ShouldCreateWorkingDirectoryIfItDoesntExistOrIsNotARepository()
		{
			hg = new Mercurial((IHistoryParser) mockHistoryParser.MockInstance, (ProcessExecutor) mockProcessExecutor.MockInstance,
			                   (IFileSystem) mockFileSystem.MockInstance, (IFileDirectoryDeleter) mockFileDirectoryDeleter.MockInstance);
			hg.WorkingDirectory = tempWorkDir;
			hg.Repository = @"C:\foo";

			mockFileSystem.Expect("EnsureFolderExists", tempWorkDir);
			mockFileSystem.Expect("EnsureFolderExists", tempHgDir);
			mockFileSystem.ExpectAndReturn("DirectoryExists", true, tempWorkDir);
			mockFileSystem.ExpectAndReturn("DirectoryExists", false, tempHgDir);
			mockFileDirectoryDeleter.Expect("DeleteIncludingReadOnlyObjects", new object[] { tempWorkDir });
			mockFileSystem.ExpectAndReturn("DirectoryExists", false, tempWorkDir);
			ExpectToExecuteArguments(@"init " + StringUtil.AutoDoubleQuoteString(tempWorkDir), Directory.GetParent(Path.GetFullPath(tempWorkDir)).FullName);
			ExpectToExecuteArguments(@"pull C:\foo", tempWorkDir);

			hg.GetModifications(IntegrationResult(from), IntegrationResult(to));
		}