public void Test_CreateDeployemntTask_RunsProperly_WhenAllIsWell()
        {
            var objectFactory = new Mock<IObjectFactory>(MockBehavior.Strict);
              var envInfoRepository = new Mock<IEnvironmentInfoRepository>(MockBehavior.Strict);
              var artifactsRepository = new Mock<IArtifactsRepository>(MockBehavior.Strict);
              var taskScheduler = new Mock<ITaskScheduler>(MockBehavior.Strict);
              var ntServiceManager = new Mock<INtServiceManager>(MockBehavior.Strict);

              var projectInfo = new TerminalAppProjectInfo(
            _Name,
            _ArtifactsRepositoryName,
            _ArtifactsRepositoryDirName,
            _ArtifactsAreNotEnvirionmentSpecific,
            _TerminalAppName,
            _TerminalAppDirName,
            _TerminalAppExeName);

              objectFactory.Setup(o => o.CreateEnvironmentInfoRepository()).Returns(envInfoRepository.Object);
              objectFactory.Setup(o => o.CreateArtifactsRepository()).Returns(artifactsRepository.Object);
              objectFactory.Setup(o => o.CreateTaskScheduler()).Returns(taskScheduler.Object);
              objectFactory.Setup(o => o.CreateNtServiceManager()).Returns(ntServiceManager.Object);

              projectInfo.CreateDeploymentTask(
              objectFactory.Object, "configName", "buildID", "targetEnvironmentName");
        }
        public void Test_CreateDeployemntTask_RunsProperly_WhenAllIsWell()
        {
            var objectFactory = new Mock<IObjectFactory>(MockBehavior.Strict);
              var envInfoRepository = new Mock<IEnvironmentInfoRepository>(MockBehavior.Strict);
              var artifactsRepository = new Mock<IArtifactsRepository>(MockBehavior.Strict);
              var taskScheduler = new Mock<ITaskScheduler>(MockBehavior.Strict);
              var ntServiceManager = new Mock<INtServiceManager>(MockBehavior.Strict);
              var projInfoRepository = new Mock<IProjectInfoRepository>(MockBehavior.Strict);
              var directoryAdapter = new Mock<IDirectoryAdapter>(MockBehavior.Loose);
              var fileAdapter = new Mock<IFileAdapter>(MockBehavior.Loose);
              var zipFileAdapter = new Mock<IZipFileAdapter>(MockBehavior.Loose);

              var projectInfo = new TerminalAppProjectInfo(
            _Name,
            _ArtifactsRepositoryName,
            _AllowedEnvironmentNames,
            _ArtifactsRepositoryDirName,
            _ArtifactsAreNotEnvirionmentSpecific,
            _TerminalAppName,
            _TerminalAppDirName,
            _TerminalAppExeName);

              objectFactory.Setup(o => o.CreateEnvironmentInfoRepository()).Returns(envInfoRepository.Object);
              objectFactory.Setup(o => o.CreateArtifactsRepository()).Returns(artifactsRepository.Object);
              objectFactory.Setup(o => o.CreateTaskScheduler()).Returns(taskScheduler.Object);
              objectFactory.Setup(o => o.CreateNtServiceManager()).Returns(ntServiceManager.Object);
              objectFactory.Setup(o => o.CreateProjectInfoRepository()).Returns(projInfoRepository.Object);
              objectFactory.Setup(o => o.CreateDirectoryAdapter()).Returns(directoryAdapter.Object);
              objectFactory.Setup(o => o.CreateFileAdapter()).Returns(fileAdapter.Object);
              objectFactory.Setup(o => o.CreateZipFileAdapter()).Returns(zipFileAdapter.Object);

              projectInfo.CreateDeploymentTask(objectFactory.Object);
        }
        public void Test_CreateDeployemntTask_Throws_WhenObjectFactory_null()
        {
            var projectInfo = new TerminalAppProjectInfo(
            _Name,
            _ArtifactsRepositoryName,
            _ArtifactsRepositoryDirName,
            _ArtifactsAreNotEnvirionmentSpecific,
            _TerminalAppName,
            _TerminalAppDirName,
            _TerminalAppExeName);

              Assert.Throws<ArgumentNullException>(()=>projectInfo.CreateDeploymentTask(
              null, "configName", "buildID", "targetEnvironmentName"));
        }